]> code.delx.au - gnu-emacs/blob - src/ChangeLog
Add comment.
[gnu-emacs] / src / ChangeLog
1 2004-10-15 Stefan <monnier@iro.umontreal.ca>
2
3 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
4 Don't ignore menus, because where-is-internal already does it for us.
5
6 2004-10-15 Kim F. Storm <storm@cua.dk>
7
8 * xdisp.c (redisplay_window): Only update fringes and vertical
9 border on window frames.
10
11 2004-10-14 Andreas Schwab <schwab@suse.de>
12
13 * m/ia64.h (DATA_SEG_BITS): Don't define.
14
15 2004-10-14 Kim F. Storm <storm@cua.dk>
16
17 * xterm.h: Include Xutil.h after keysym.h to work around bug
18 in some X versions.
19
20 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
21
22 * fns.c (map_char_table): Add missing gcpros.
23
24 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
25
26 * keymap.c (get_keymap): An autoload form is not a keymap.
27
28 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
29
30 2004-10-13 Kim F. Storm <storm@cua.dk>
31
32 * callproc.c (Fcall_process): Simplify handling of display arg.
33 Resume `display_on_the_fly' once a coding system is determined.
34
35 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
36
37 2004-10-12 Kim F. Storm <storm@cua.dk>
38
39 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
40 caller, such as call-process, is not going to poll for input.
41 (calc_line_height_property): Handle case where it->object is nil.
42
43 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
44
45 2004-10-12 Kenichi Handa <handa@m17n.org>
46
47 * xdisp.c (get_next_display_element):
48 If unibyte_display_via_language_environment is zero, display 8-bit
49 chars in octal in unibyte buffer.
50
51 2004-10-12 Kim F. Storm <storm@cua.dk>
52
53 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
54 are no ordinary bindings.
55
56 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
57
58 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
59
60 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
61
62 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
63 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
64 (make_mac_frame): Add BLOCK_INPUT around the making of a
65 terminal frame.
66 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
67 * macgui.h (mktime): Use emacs_mktime.
68 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
69 Make a cancel file-open dialog be like C-g.
70 * mac.c (mktime): Use emacs_mktime.
71 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
72 (Fmac_paste_function): Add better error handling for carbon cut/paste.
73
74 2004-10-10 Kim F. Storm <storm@cua.dk>
75
76 * keyboard.c (timer_resume_idle): New function to resume idle
77 timer without resetting timers on the idle list.
78 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
79 (timer_start_idle, timer_stop_idle): Declare static.
80 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
81
82 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
83
84 2004-10-08 Steven Tamm <steventamm@mac.com>
85
86 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
87 * macterm.c (mac_check_for_quit_char): Remove warning for using
88 NULL where 0 should be used.
89 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
90 objc/malloc.h
91 * mac.c: Include time.h for Tiger compatibility.
92
93 2004-10-07 Kim F. Storm <storm@cua.dk>
94
95 * xdisp.c (redisplay_window): Fix flicker on vertical line between
96 windows. Update vertical line after drawing window fringes, but
97 only if actually drawing any bitmaps--or there is no fringe.
98
99 * xterm.c (x_update_window_end): Likewise.
100 * macterm.c (x_update_window_end): Likewise.
101 * w32term.c (x_update_window_end): Likewise.
102
103 * fringe.c (draw_window_fringes): Return value now indicates if
104 any fringe bitmaps were redrawn (or there are no fringes).
105
106 * dispextern.h (draw_window_fringes): Update prototype.
107
108 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
109
110 * macfns.c (mac_get_window_bounds): Add extern.
111 (x_real_positions): Use mac_get_window_bounds.
112
113 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
114 xmenu.c (YAILOM).
115
116 * macterm.c [!MAC_OSX]: Include Windows.h.
117 (front_emacs_window): Rename from mac_front_window. All uses
118 changed. Return the frontmost non-tooltip emacs window.
119 (mac_get_window_bounds): New function.
120 (x_calc_absolute_position): Use the difference of width and height
121 between the inner and outer window.
122 (x_set_offset): Specify window position by the coordinae of the
123 outer window. Adjust the position if the title bar is completely
124 outside the screen.
125 (app_is_suspended, app_sleep_time): Remove unused variables.
126 (do_app_resume, do_app_suspend): Remove their contents because
127 window-activate/deactivate events will do the job.
128 (do_zoom_window): Remove unused variables. Make compliant to the
129 standard way of zooming. Set f->left_pos and f->top_pos.
130 (XTread_socket): Don't use argument `expected'. Don't use
131 FrontWindow to determine the clicked window. Exclude unprocessed
132 mouseUp cases in the early stage. Add parentheses to fix operator
133 precedence.
134 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
135
136
137 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
138
139 * config.in: Regenerate.
140
141 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
142 HAVE_EXECSHIELD.
143
144 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
145
146 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
147 a row if Alt or Meta has been found for that row. Also stop scanning
148 for Keysyms for that row.
149
150 2004-10-04 Kim F. Storm <storm@cua.dk>
151
152 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
153 to list. Include overlay arrow bitmap in return value.
154
155 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
156 bars with fractional column width. If scroll bar separates two
157 windows, move it towards the window it belongs to. Only update
158 the padding area below the scroll bar widget when necessary,
159 i.e. when scroll bar widget is created, moved, or resized.
160
161 * xdisp.c (define_frame_cursor1): Do not change frame cursor
162 while tracking/dragging mouse.
163 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
164
165 * window.c (coordinates_in_window): Relax check for cursor
166 on vertial border between mode lines.
167 (Fset_window_fringes): Do not allow negative widths.
168 (Fset_window_scroll_bars): Likewise.
169
170 * .gdbinit (pp): Shorthand for p ARG + pr.
171 (ff): New command: flush frame updates (X only).
172
173 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
174
175 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
176
177 2004-09-30 Kenichi Handa <handa@m17n.org>
178
179 * process.c (send_process): Free composition data.
180
181 * fileio.c (Finsert_file_contents): Free composition data.
182
183 * coding.c (code_convert_region): Don't skip ASCIIs if there are
184 compositions to encode.
185 (encode_coding_string): Likewise. Free composition data.
186
187 2004-09-30 Florian Weimer <fw@deneb.enyo.de> (tiny change)
188
189 * coding.c (code_convert_region): Free composition data.
190
191 2004-09-29 Kim F. Storm <storm@cua.dk>
192
193 * fringe.c: Remove limit on number of bitmaps.
194 (fringe_bitmaps, fringe_faces): Change to pointers.
195 (max_fringe_bitmaps): New var.
196 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
197 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
198
199 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
200 (struct glyph_row): Reorder fringe_bitmap related fields.
201 (struct it): Likewise.
202
203 * w32term.c (fringe_bmp): Change to pointer.
204 (max_fringe_bmp): New var.
205 (w32_define_fringe_bitmap): Expand fringe_bmp.
206 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
207 (w32_destroy_fringe_bitmap): Likewise.
208
209 2004-09-29 Kim F. Storm <storm@cua.dk>
210
211 * fringe.c: Simplify last change.
212 (lookup_fringe_bitmap): New function.
213 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
214 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
215 Keep standard bitmaps in Vfringe_bitmaps.
216 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
217 (Fset_fringe_bitmap_face): Likewise.
218
219 * dispextern.h (lookup_fringe_bitmap): Add prototype.
220 (valid_fringe_bitmap_p): Remove prototype.
221
222 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
223
224 2004-09-29 Kim F. Storm <storm@cua.dk>
225
226 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
227 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
228
229 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
230
231 * fringe.c (Vfringe_bitmaps): New variable.
232 (syms_of_fringe): DEFVAR_LISP it.
233 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
234 Change arg to Lisp_Object and fail if not an integer.
235 (get_fringe_bitmap_name, resolve_fringe_bitmap)
236 (destroy_fringe_bitmap): New functions.
237 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
238 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
239 clear its fringe property.
240 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
241 Fdestroy_fringe_bitmap.
242 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
243 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
244 and set fringe property. Signal error if no free slots.
245 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
246 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
247
248 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
249 symbols with a fringe property.
250
251 2004-09-27 Kim F. Storm <storm@cua.dk>
252
253 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
254 Doc fix. Format may now be a symbol or alist, not a cons.
255
256 * fringe.c (update_window_fringes): Handle new formats of
257 indicate-buffer-boundaries (symbol or alist). No longer
258 allow a simple cons.
259 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
260
261 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
262
263 * config.in: Rebuild.
264
265 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
266
267 * config.in: Rebuild.
268
269 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
270
271 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
272
273 * xterm.c (x_term_init): Work around a bug in some X servers.
274
275 2004-09-18 Richard M. Stallman <rms@gnu.org>
276
277 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
278
279 * xdisp.c (try_window_reusing_current_matrix):
280 Handle the case where we reach the old displayed text,
281 out of sync with the old line boundary.
282
283 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
284
285 * fileio.c (Finsert_file_contents): Fix case of replacement in a
286 narrowed buffer.
287
288 2004-09-14 Kim F. Storm <storm@cua.dk>
289
290 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
291
292 * xfaces.c (Qface_no_inherit): New var.
293 (syms_of_xfaces): Intern and staticpro it.
294 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
295 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
296 Don't increment face_change_count when face has non-nil
297 face-no-inherit property.
298
299 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
300
301 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
302 (Fbyte_code): Remove dead code after `wrong_type_argument'.
303
304 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
305 before doing the mark_stack_check_gcpros since they're not on the stack.
306
307 2004-09-12 Kim F. Storm <storm@cua.dk>
308
309 * editfns.c (Fformat): Handle format strings with multiple text
310 properties. Reverse text property list from the format string,
311 so the positions are in increasing order.
312
313 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
314
315 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
316 x_uncatch_errors so that possible protocol errors are delivered.
317
318 2004-09-10 Eli Zaretskii <eliz@gnu.org>
319
320 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
321 blockinput.h.
322 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
323 charset.h, and coding.h
324 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
325 (term.o): Depend on window.h and keymap.h.
326 (abbrev.o): Depend on syntax.h.
327 (callint.o): Depend on keymap.h.
328 (casefiddle.o): Depend on charset.h and keymap.h.
329 (category.o): Depend on keymap.h.
330 (coding.o): Depend on dispextern.h.
331 (cmds.o): Depend on keyboard.h and keymap.h.
332 (dispnew.o): Depend on indent.h and intervals.h.
333 (doc.o): Depend on keymap.h.
334 (editfns.o): Depend on frame.h.
335 (emacs.o): Depend on dispextern.h.
336 (fileio.o): Don't depend on ccl.h.
337 (filelock.o): Depend on charset.h and coding.h.
338 (frame.o): Depend on w32term.h and macterm.h.
339 (insdel.o): Depend on region-cache.h.
340 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
341 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
342 (search.o): Depend on $(INTERVALS_SRC).
343 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
344 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
345 xterm.h, w32term.h, and macterm.h.
346 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
347 w32term.h, and macterm.h.
348 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
349 region-cache.h, xterm.h, w32term.h, and macterm.h.
350 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
351 (data.o): Depend on frame.h.
352 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
353 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
354 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
355 (intervals.o): Depend on keymap.h.
356
357 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
358 Add debugging print-out to termscript.
359
360 2004-09-09 Richard M. Stallman <rms@gnu.org>
361
362 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
363
364 2004-09-08 Richard M. Stallman <rms@gnu.org>
365
366 * window.c (Fset_window_buffer): Doc fix.
367
368 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
369
370 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
371
372 * minibuf.c (history_delete_duplicates): New variable.
373 (read_minibuf): Use it.
374 (syms_of_minibuf): Create the corresponding lisp variable.
375
376 2004-09-08 Kim F. Storm <storm@cua.dk>
377
378 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
379 overlay just before point.
380
381 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
382
383 * buffer.h (struct buffer): Add auto_save_file_format field.
384 * buffer.c (reset_buffer, init_buffer_once):
385 Handle auto_save_file_format field.
386 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
387 `buffer-auto-save-file-format'.
388 * fileio.c: Delete declaration for removed Vauto_save_file_format.
389 (build_annotations): Adapt to replacement of
390 `auto-save-file-format' with the new buffer-local variable
391 `buffer-auto-save-file-format'.
392 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
393
394 2004-09-07 Jason Rumney <jasonr@gnu.org>
395
396 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
397
398 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
399 Handle Unicode menu titles.
400
401 2004-09-07 Kim F. Storm <storm@cua.dk>
402
403 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
404 property from text property or overlay strings at point.
405
406 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
407
408 * xmenu.c (update_submenu_strings): YAILOM.
409 (set_frame_menubar): Make sure last_i is initialized.
410
411 2004-09-03 Jason Rumney <jasonr@gnu.org>
412
413 * w32menu.c (_widget_value): Add lname and lkey.
414 (digest_single_submenu): Set lname and lkey in widget_value
415 instead of name and key.
416 (update_submenu_strings): New function.
417 (set_frame_menubar): Remove call to inhibit_garbage_collection,
418 call update_submenu_strings.
419
420 * w32menu.c (globals_of_w32menu): Check for Unicode API.
421 (digest_single_submenu, w32_menu_show): Encode menu strings as
422 UTF-8 if Unicode API is available.
423 (utf8to16): New function.
424 (add_menu_item): Use it when calling Unicode API.
425
426 2004-09-03 Kim F. Storm <storm@cua.dk>
427
428 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
429 in overlay or text-property strings; set cursor on corresponding
430 glyph rather than at end of the string.
431
432 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
433
434 * macfns.c (x_real_positions): Save the current window port and
435 set a new one before obtaining the global coordinate.
436 Use FRAME_MAC_WINDOW.
437 (x_set_name, x_set_title): Encode title to UTF8.
438 Use SetWindowTitleWithCFString.
439 (Fx_server_version): Get correct OS version.
440
441 * macmenu.c (add_menu_item): Remove unused variable `i'.
442 Don't let separator items destroy refence constants of other menu items.
443
444 * macterm.c (x_update_end): Move SetPortWindowPort to inside
445 BLOCK_INPUT.
446 (x_set_offset): Use FRAME_MAC_WINDOW.
447
448 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
449 nontext_cursor if it is on a scroll bar.
450
451 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
452 Carbon support.
453 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
454 Use LIBS_CARBON.
455
456 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
457
458 * xfns.c (x_set_name_internal): New function. Check if we shall call
459 xfree before ENCODE_UTF_8.
460 (x_set_name, x_set_title): Call x_set_name_internal.
461
462 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
463
464 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
465 reload it.
466
467 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
468
469 * macmenu.c (_widget_value): Add lname and lkey.
470 (single_submenu): Set lname and lkey in widget_value
471 instead of name and key.
472 (update_submenu_strings): New function.
473 (set_frame_menubar): Remove call to inhibit_garbage_collection,
474 call update_submenu_strings.
475
476 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
477 instead of name and key.
478 (update_submenu_strings): New function.
479 (set_frame_menubar): Remove call to inhibit_garbage_collection,
480 call update_submenu_strings.
481
482 * gtkutil.h (_widget_value): Added lname and lkey.
483
484 2004-08-30 Steven Tamm <steventamm@mac.com>
485
486 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
487 by using different names for inner loop variables.
488
489 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
490
491 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
492 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
493
494 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
495 tool bar items is 0.
496
497 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
498
499 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
500 strings in menu items.
501 (single_submenu): Use ENCODE_MENU_STRING
502 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
503 button release isn't passed to event loop
504 (add_menu_item): Use SetMenuItemWithCFString
505
506 2004-08-26 Steven Tamm <steventamm@mac.com>
507
508 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
509 tool-bar/menu click
510 * macfns.c (Fx_file_dialog): Implemented using NavServices
511
512 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
513
514 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
515
516 * xfns.c (x_window_to_frame, x_any_window_to_frame)
517 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
518 (x_top_window_to_frame): Return 0 if wdesc is None.
519
520 2004-08-22 Richard M. Stallman <rms@gnu.org>
521
522 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
523 HAVE_TERMIOS]: If there's no char for this signal, drop through
524 and use system calls.
525
526 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
527
528 2004-08-20 Kim F. Storm <storm@cua.dk>
529
530 * process.c (wait_reading_process_output): Rename from
531 wait_reading_process_input. All uses changed.
532 (wait_reading_process_output_1): Rename from
533 wait_reading_process_input_1. All uses changed.
534
535 * dispnew.c (Fsleep_for): Remove obsolete code.
536
537 2004-08-20 Kenichi Handa <handa@m17n.org>
538
539 * syntax.c (skip_chars): Fix for unibyte case.
540
541 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
542
543 * syntax.c (char_quoted): Mixup byte/char pos.
544 (back_comment): Fixup globals in all cases.
545
546 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
547
548 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
549 passing it to gtk_window_set_title.
550
551 2004-08-19 Kim F. Storm <storm@cua.dk>
552
553 * process.c (wait_reading_process_input): Clean up.
554 Add wait_for_cell, wait_proc, and just_wait_proc args
555 to avoid overloading `read_kbd' and `do_display' args.
556 Change read_kbd arg to int. All callers changed.
557
558 * process.c (process_send_signal): Use CDISABLE.
559
560 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
561
562 2004-08-18 Kim F. Storm <storm@cua.dk>
563
564 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
565 forward to wait_reading_process_input via DO_DISPLAY arg.
566 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
567 object, only process output from that process; also inhibit
568 running timers if DO_DISPLAY==-2.
569
570 2004-08-17 Kim F. Storm <storm@cua.dk>
571
572 * process.c (process_send_signal): Fix last change--use
573 _POSIX_VDISABLE instead of CVDISABLE when available.
574
575 2004-08-16 Richard M. Stallman <rms@gnu.org>
576
577 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
578 Set VQUIT and VINTR chars to the standard ones if they are unset.
579 [AIX]: Don't do that here. And don't force VINTR to standard
580 when SIGNALS_VIA_CHARACTERS.
581
582 * process.c (process_send_signal)
583 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
584 Do nothing if the character is CVDISABLE.
585
586 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
587
588 * intervals.c (move_if_not_intangible):
589 Force POSITION to be between BEGV and ZV.
590
591 2004-08-14 John Paul Wallington <jpw@gnu.org>
592
593 * buffer.c (Frestore_buffer_modified_p): Doc fix.
594
595 * fileio.c (Fread_file_name): Doc fix.
596
597 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
598
599 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
600
601 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
602
603 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
604
605 * keyboard.c: Declare Qdisabled_command_function instead of
606 Qdisabled_command_hook.
607 (Fcommand_execute): Use Qdisabled_command_function instead of
608 Qdisabled_command_hook.
609 (syms_of_keyboard): Ditto.
610
611 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
612
613 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
614 (syms_of_keymap) <key-translation-map>: Doc fixes.
615
616 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
617
618 * window.c (window_list_1): YAILOM.
619
620 * fileio.c (make_temp_name): Handle multibyte prefixes.
621
622 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
623
624 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
625 Doc fix.
626
627 2004-08-03 Kenichi Handa <handa@m17n.org>
628
629 * coding.c (decode_coding_string): Adjust coding->consumed, and
630 etc. with shrinked_bytes.
631
632 2004-08-03 Kim F. Storm <storm@cua.dk>
633
634 * indent.c (compute_motion): Fix check for full width window
635 in non-window case. Do not count left truncation glyph on
636 window systems.
637
638 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
639
640 * data.c (Finteractive_form): Doc fix.
641
642 2004-08-02 Kim F. Storm <storm@cua.dk>
643
644 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
645 properly accounting for continuation glyph on non-window systems.
646 (Fcompute_motion): Use actual window width if WIDTH is nil, and
647 actual window width/height if TOPOS is nil, properly accounting for
648 continuation glyphs on non-window systems, and optional header lines.
649 (vmotion): Let compute_motion calculate actual window width.
650
651 * window.c (window_scroll_line_based): Let compute_motion
652 calculate actual window width.
653
654 2004-08-02 Kim F. Storm <storm@cua.dk>
655
656 * process.c (read_process_output): Use whole read buffer.
657 Don't trigger adaptive read buffering on errors.
658
659 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
660
661 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
662
663 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
664
665 * callint.c (Fcall_interactively): Doc fix.
666
667 2004-07-30 Richard M. Stallman <rms@gnu.org>
668
669 * abbrev.c (Fexpand_abbrev): Undo previous change.
670
671 2004-07-30 Kim F. Storm <storm@cua.dk>
672
673 * editfns.c (Fformat): Allocate extra (dummy) element in info.
674
675 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
676
677 * eval.c (Fdefvar, Fdefconst): Doc fixes.
678
679 2004-07-27 Kim F. Storm <storm@cua.dk>
680
681 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
682 we have ensured that the glyph fits on the current line (or returned
683 MOVE_LINE_CONTINUED otherwise).
684
685 2004-07-26 Kim F. Storm <storm@cua.dk>
686
687 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
688 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
689 if target position is at end of display line but char is not a newline.
690
691 2004-07-25 Richard M. Stallman <rms@gnu.org>
692
693 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
694 instead of ON_VERTICAL_BORDER, when on scroll bar.
695 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
696
697 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
698
699 * window.c (Fcoordinates_in_window_p):
700 Take account of FRAME_INTERNAL_BORDER_WIDTH.
701
702 * alloc.c (check_cons_list): New function (contents commented out).
703
704 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
705
706 * xfaces.c (Fcolor_supported_p): Doc fix.
707
708 * frame.c (Fselect_frame, Fset_frame_selected_window)
709 (Fframe_visible_p, Fraise_frame): Doc fixes.
710
711 2004-07-24 Richard M. Stallman <rms@gnu.org>
712
713 * keyboard.h (not_single_kboard_state): Declared.
714
715 * fileio.c (Fwrite_region): Doc fix.
716
717 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
718
719 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
720 only when a real abbrev is present.
721
722 * xfns.c (x_icon_verify): New function.
723 (Fx_create_frame): Use it.
724
725 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
726
727 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
728
729 2004-07-21 Kim F. Storm <storm@cua.dk>
730
731 * window.h (struct glyph_matrix): New members nrows_scale_factor
732 and ncols_scale_factor.
733
734 * window.c (make_window): Initialize nrows_scale_factor and
735 ncols_scale_factor members.
736
737 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
738 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
739 (required_matrix_height): Apply nrows_scale_factor.
740 (required_matrix_width): Apply ncols_scale_factor.
741
742 * xdisp.c (display_line): Increment nrows_scale_factor and set
743 fonts_changed_p if past last allocated row.
744 (append_glyph, append_composite_glyph, produce_image_glyph)
745 (append_stretch_glyph): Increment ncols_scale_factor and set
746 fonts_changed_p if current area is full.
747
748 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
749
750 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
751
752 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
753
754 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
755 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
756 (Fset_window_start, Fscroll_up, Fscroll_down)
757 (Fother_window_for_scrolling, Fscroll_other_window)
758 (Fsave_window_excursion, Fset_window_vscroll)
759 (syms_of_window) <window-size-fixed>: Doc fixes.
760
761 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
762
763 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
764 ENCODE_SYSTEM for filenames.
765
766 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
767
768 * mac.c (sys_select): Block input around call to
769 ReceiveNextEvent to prevent breakage. Correctly handle
770 blocking on event queue only by calling ReceiveNextEvent
771 instead of select (since GUI events aren't on an fd).
772 (sys_read): Remove function
773 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
774
775 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
776
777 * mac.c (sys_select): Redo sys_select to use alarm-based
778 polling instead of 1 sec timeouts (like solaris).
779
780 * macterm.c (x_make_frame_visible): Comment in polling on
781 frame creation.
782
783 * keyboard.c: Undef SIGIO on Carbon
784
785 * atimer.c (alarm_signal_handler): Call alarm handlers after
786 scheduling.
787
788 * eval.c (Feval): Remove quit_char test
789
790 * process.c (wait_reading_process_input): Remove clearing
791 stdin for select call on process input.
792
793 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
794
795 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
796 capitalization error in docstring.
797
798 2004-07-17 Juanma Barranquero <lektu@terra.es>
799
800 * keyboard.c (not_single_kboard_state): Do nothing unless
801 MULTI_KBOARD is defined.
802
803 2004-07-17 Richard M. Stallman <rms@gnu.org>
804
805 * window.c (coordinates_in_window): Inside the window but outside
806 its box to the L or R, return ON_VERTICAL_BORDER.
807 (window_list_1): Rotate the list to start with WINDOW.
808
809 * print.c (print_preprocess): Test for print_depth at limit
810 before entering in being_printed.
811
812 * keyboard.c (not_single_kboard_state): New function.
813 (stuff_buffered_input): Now no-op only if no SIGTSTP.
814
815 * frame.c (Fdelete_frame): If we're in single_bboard_state on
816 this kboard, and we delete its last frame, go to any_kboard_state.
817
818 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
819
820 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
821
822 * w32fns.c (Fx_file_dialog): Encode strings in system coding
823 system before passing them to OS functions for display.
824
825 2004-07-15 David Kastrup <dak@gnu.org>
826
827 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
828 Apparently fixes an abort condition.
829
830 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
831
832 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
833 instead of a cons.
834
835 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
836
837 * keyboard.c (echo_dash): Do nothing if there already is a dash
838 at the end of the echo string.
839
840 2004-07-12 Kim F. Storm <storm@cua.dk>
841
842 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
843 if GC_MARK_STACK.
844
845 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
846
847 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
848
849 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
850 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
851 (Freplace_buffer_in_windows, Fset_window_buffer)
852 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
853 (syms_of_window): Expand docstring of `display-buffer-function'.
854
855 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
856
857 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
858 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
859 that time values of the type (HIGH . LOW) are considered obsolete.
860
861 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
862
863 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
864 docstring.
865
866 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
867
868 2004-07-06 John Paul Wallington <jpw@gnu.org>
869
870 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
871
872 * fns.c (Fclear_string): Signal an error if STRING is not a string.
873
874 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
875
876 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
877 instead of CGMainDisplayID (only in OSX 10.2 and later).
878
879 2004-07-04 John Paul Wallington <jpw@gnu.org>
880
881 * fileio.c (read_file_name_completion_ignore_case): New variable.
882 (syms_of_fileio): Declare and initialise it.
883 (Fread_file_name): Bind `completion-ignore-case' to respect it.
884
885 2004-07-03 Eli Zaretskii <eliz@gnu.org>
886
887 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
888 for event.x and event.y.
889
890 2004-07-01 Kenichi Handa <handa@m17n.org>
891
892 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
893 after getting a new string by pre-write-conversion.
894
895 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
896
897 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
898 (x_calc_absolute_position): Remove unused var `child'.
899
900 * xfaces.c (x_supports_face_attributes_p)
901 (Fdisplay_supports_face_attributes_p): YAILOM.
902 (tty_supports_face_attributes_p): Remove unused var `i'.
903
904 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
905 back_unibyte_ok.
906
907 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
908
909 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
910
911 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
912
913 2004-06-30 Andreas Schwab <schwab@suse.de>
914
915 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
916 (Finit_image_library): Pass LIBRARIES through to
917 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
918 (lookup_image_type): Pass Qnil as second argument to
919 Finit_image_library.
920
921 * lisp.h: Declare Finit_image_library.
922
923 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
924
925 * macterm.c (do_window_activate, do_window_deactivate): Remove.
926 (XTread_socket): Send mouse button events to the toolbox
927 dispatcher even when the mouse is grabbed. Don't process window
928 activate events for non-Emacs windows. Replace function calls to
929 do_window_activate and do_window_deactivate with their contents.
930 Reset mouse grabbing status when a window is deactivated.
931
932 2004-06-29 Steven Tamm <steventamm@mac.com>
933
934 * macterm.c (mac_get_emulated_btn)
935 (mac_event_to_emacs_modifiers): Fix emulated mouse button
936 support to correctly mask out modifiers.
937
938 2004-06-29 David Kastrup <dak@gnu.org>
939
940 * search.c (Fset_match_data): Allow buffer before end of list
941 which can happen if set-match-data is using a pre-consed list.
942
943 2004-06-28 Steven Tamm <steventamm@mac.com>
944
945 * macterm.c (XTread_socket): Correctly set the frame position
946 after the window is moved.
947
948 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
949
950 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
951 gpix and gmask just before return to avoid memory leak.
952 (xg_get_image_for_pixmap): Add workaround for monochrome displays
953 so insensitive and activated icons look ok.
954
955 2004-06-27 Jason Rumney <jasonr@gnu.org>
956
957 * w32fns.c (file_dialog_callback): Disable edit control if set
958 to directories only on CDN_INITDONE message.
959 (Fx_file_dialog): Default to directories only when prompt starts
960 with "Dired".
961
962 2004-06-25 Kim F. Storm <storm@cua.dk>
963
964 * alloc.c (allocate_misc): Update total_free_markers.
965 (free_misc): New function.
966 (safe_alloca_unwind, free_marker): Use it.
967
968 * lisp.h (free_misc): Add prototype.
969
970 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
971
972 2004-06-24 Richard M. Stallman <rms@gnu.org>
973
974 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
975 (syms_of_emacs): Lisp variables deleted.
976
977 2004-06-23 David Kastrup <dak@gnu.org>
978
979 * search.c (Freplace_match): Adjust the match-data more thoroughly
980 when replacing strings in the buffer.
981 (Fmatch_data): When INTEGERS is non-nil and the last match was in
982 a buffer, add the buffer as last element to the match data.
983 (Fset_match_data): If an additional element of the match-data is a
984 buffer, restore it to last_thing_searched.
985 (save_search_regs): Save last_thing_searched as part of the match data.
986 (restore_match_data): Restore it again.
987
988 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
989
990 * keymap.c (Ftext_char_description): Doc fix.
991 * doc.c (Fsnarf_documentation): Doc fix.
992
993 2004-06-22 Kim F. Storm <storm@cua.dk>
994
995 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
996
997 * lisp.h (struct Lisp_Save_Value): New member dogc.
998 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
999 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1000 (SAFE_FREE_LISP): New macro.
1001
1002 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1003 (make_save_value): Init new dogc member.
1004 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1005
1006 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1007 SAFE_FREE_LISP macros.
1008
1009 2004-06-22 Kim F. Storm <storm@cua.dk>
1010
1011 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1012 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1013 in that memory area are unknown to GC. Add comments.
1014
1015 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1016
1017 2004-06-21 Kim F. Storm <storm@cua.dk>
1018
1019 * lisp.h (MAX_ALLOCA): Define here.
1020 (safe_alloca_unwind): Add prototype.
1021 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1022
1023 * alloc.c (safe_alloca_unwind): New function.
1024
1025 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1026
1027 * charset.c (Fstring): Use SAFE_ALLOCA.
1028
1029 * coding.c (MAX_ALLOCA): Remove define.
1030
1031 * data.c (MAX_ALLOCA): Remove define.
1032 (Faset): Use SAFE_ALLOCA.
1033
1034 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1035
1036 * fns.c (string_make_multibyte, string_to_multibyte)
1037 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1038 (MAX_ALLOCA): Remove define.
1039 (Fbase64_encode_region, Fbase64_encode_string)
1040 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1041 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1042 memory leak if encoding fails.
1043
1044 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1045
1046 2004-06-21 Eli Zaretskii <eliz@gnu.org>
1047
1048 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1049
1050 2004-06-20 Richard M. Stallman <rms@gnu.org>
1051
1052 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1053
1054 * search.c (match_limit): Cleaner err msg when no match data available.
1055
1056 * window.c (syms_of_window): Doc fix.
1057
1058 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1059 for Vtransient_mark_mode.
1060
1061 * buffer.c (syms_of_buffer): Doc fix.
1062
1063 2004-06-21 David Kastrup <dak@gnu.org>
1064
1065 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1066 and unbinding of `case-fold-search' according to
1067 `completion-ignore-case' around calls of string-match and
1068 predicates, respectively. Should give satisfactory performance
1069 in all relevant cases.
1070
1071 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1072
1073 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1074 clip_x/y_origin.
1075
1076 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1077
1078 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1079
1080 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1081 on Mac OSX.
1082
1083 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1084
1085 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1086
1087 2004-06-16 Kim F. Storm <storm@cua.dk>
1088
1089 * dispextern.h (Vimage_types): Remove extern.
1090
1091 2004-06-16 Miles Bader <miles@gnu.org>
1092
1093 * image.c (lookup_image_type): Initialize image type if necessary.
1094
1095 2004-06-15 Kim F. Storm <storm@cua.dk>
1096
1097 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1098 margin at top of window.
1099 (try_window_reusing_current_matrix): Calculate proper cursor position
1100 after scrolling up with non-zero scroll margin, as the old cursor
1101 position corresponds to value of PT before executing this command.
1102 (try_window_id): Consider scroll margin at bottom of window too;
1103 otherwise we fail to scroll when hl-line-mode is enabled.
1104
1105 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1106 proper format and class is a lower-case word.
1107
1108 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1109
1110 * gtkutil.c (xg_get_image_for_pixmap): New function.
1111 (xg_get_gdk_pixmap_and_mask): Remove.
1112 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1113 xg_get_gdk_pixmap_and_mask.
1114
1115 * xterm.h (struct x_display_info): Typo in comment fixed.
1116
1117 2004-06-14 Juanma Barranquero <lektu@terra.es>
1118
1119 * dispextern.h (Vimage_types): Make it conditional on
1120 HAVE_WINDOW_SYSTEM.
1121
1122 * image.c (Vimage_types): Move from xdisp.c.
1123 (Vimage_type_cache): New variable.
1124 (define_image_type): New argument indicating whether an image
1125 library was loaded; cache loaded status and return t on success,
1126 nil otherwise.
1127 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1128 (w32_delayed_load): New function to load an image library from a
1129 list of possible filenames.
1130 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1131 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1132 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1133 (Finit_image_library): New function, extracted from `init_image'.
1134 Try to initialize an image library on demand and cache whether we
1135 were successful or not.
1136 (syms_of_image): Initialize `Vimage_types' and
1137 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1138 Export `init-image-library'.
1139 (init_image): Remove initialization of all image types, except xbm
1140 and pbm.
1141
1142 * xdisp.c (Vimage_types): Delete (moved to image.c).
1143
1144 2004-06-14 Andreas Schwab <schwab@suse.de>
1145
1146 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1147 Avoid calling specbind when completion-regexp-list is empty.
1148
1149 2004-06-13 Richard M. Stallman <rms@gnu.org>
1150
1151 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1152 (re_wctype, re_iswctype, re_wctype_to_bit):
1153 Non-function definitions moved here from regex.c.
1154
1155 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1156 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1157 (re_wctype, re_iswctype, re_wctype_to_bit):
1158 Non-function definitions moved to regex.h.
1159
1160 * window.c (Fselect_window): Doc fix.
1161
1162 * syntax.c: Include regex.h.
1163 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1164 If requested, make a list of classes, then check the scanned
1165 chars for membership in them.
1166 (in_classes): New function.
1167 Doc fix.
1168
1169 * keyboard.c (cmd_error): Don't call any_kboard_state
1170 if inside a recursive edit level.
1171
1172 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1173
1174 * keyboard.c (command_loop): Call any_kboard_state before
1175 command_loop_2 when at top level.
1176
1177 2004-06-13 Andreas Schwab <schwab@suse.de>
1178
1179 * print.c (print_object): Always use %ld for printing EMACS_INT.
1180
1181 * keyboard.c (cancel_hourglass_unwind): Return a value.
1182 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1183 (Fexecute_extended_command): Likewise.
1184
1185 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1186 avoid clashes.
1187 (SYNTAX): Likewise.
1188 (SYNTAX_WITH_FLAGS): Likewise.
1189 (SYNTAX_MATCH): Likewise.
1190
1191 * syntax.c (char_quoted): Avoid warning about undefined operation.
1192 (find_defun_start): Likewise.
1193 (scan_lists): Likewise.
1194 (INC_FROM): Likewise.
1195 (scan_sexps_forward): Likewise.
1196
1197 * image.c: Include <ctype.h>.
1198
1199 * xfaces.c (face_attr_equal_p): Declare parameters.
1200
1201 2004-06-13 Kenichi Handa <handa@m17n.org>
1202
1203 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1204
1205 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1206
1207 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1208
1209 2004-06-12 Kenichi Handa <handa@m17n.org>
1210
1211 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1212 ccl_prog_stack_struct and update it.
1213 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1214 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1215 ccl->eof_ic on EOF.
1216 (ccl_debug_hook): New function.
1217 (struct ccl_prog_stack): New member eof_ic.
1218 (ccl_driver): Handle EOF in subrountine call correctly.
1219
1220 2004-06-11 Kenichi Handa <handa@m17n.org>
1221
1222 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1223
1224 2004-06-11 Kim F. Storm <storm@cua.dk>
1225
1226 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1227
1228 2004-06-11 Juanma Barranquero <lektu@terra.es>
1229
1230 * keyboard.c (Fposn_at_point): Doc fix.
1231
1232 2004-06-11 David Kastrup <dak@gnu.org>
1233
1234 * search.c (match_limit): Don't flag an error if match-data
1235 exceeding the allocated search_regs.num_regs gets requested, just
1236 return Qnil.
1237
1238 2004-06-08 Miles Bader <miles@gnu.org>
1239
1240 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1241
1242 2004-06-07 Juanma Barranquero <lektu@terra.es>
1243
1244 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1245 (Fcurrent_time_string, Fcurrent_time_zone)
1246 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1247
1248 2004-06-07 Miles Bader <miles@gnu.org>
1249
1250 * xfaces.c (struct named_merge_point): New type.
1251 (push_named_merge_point): New function.
1252 (merge_named_face): New function.
1253 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1254 Use `merge_named_face'.
1255 (merge_face_inheritance): Function removed.
1256 (merge_face_ref): Rename from `merge_face_vector_with_property'.
1257 Add new `err_msgs' and `named_merge_points' args. Return error
1258 status. Only print error messages if ERR_MSGS is true. Don't try to
1259 do :inherit attribute validation.
1260 (merge_face_heights): Handle `unspecified' in both directions.
1261 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1262 Call `merge_face_ref' instead of `merge_face_inheritance'.
1263 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1264 (compute_char_face, face_at_buffer_position)
1265 (face_at_string_position): Call `merge_face_ref' instead of
1266 `merge_face_vector_with_property'.
1267
1268 2004-06-07 Kenichi Handa <handa@m17n.org>
1269
1270 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1271 the necessary places.
1272
1273 2004-06-07 Kim F. Storm <storm@cua.dk>
1274
1275 * process.c (Fdelete_process): Undo 2004-05-28 change.
1276 Instead, call status_notify also for network process.
1277 (status_message): Use process instead of status as arg.
1278 Give messages "deleted" or "connection broken by remote peer" for
1279 an exited network process.
1280 (status_notify): Change call to status_message.
1281 (read_process_output): Increase readmax to 4096. Do not increase
1282 buffer size for datagram channels (default is now large enough).
1283
1284 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1285
1286 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1287 problem due to newly defined variable.
1288
1289 2004-06-06 Miles Bader <miles@gnu.org>
1290
1291 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1292 immediately if non-interactive or not initialized.
1293
1294 2004-06-05 Richard M. Stallman <rms@gnu.org>
1295
1296 * minibuf.c (Fcompleting_read): Doc fix.
1297
1298 2004-06-05 Andreas Schwab <schwab@suse.de>
1299
1300 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1301
1302 2004-06-05 Juanma Barranquero <lektu@terra.es>
1303
1304 * keymap.c (Fdescribe_vector): Fix docstring.
1305 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1306
1307 2004-06-05 Miles Bader <miles@gnu.org>
1308
1309 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1310 attributes have different values than the default face.
1311
1312 2004-06-04 Eli Zaretskii <eliz@gnu.org>
1313
1314 * xfaces.c (x_supports_face_attributes_p): Make this function
1315 conditional on HAVE_WINDOW_SYSTEM.
1316 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1317 Don't call x_supports_face_attributes_p if it was not compiled in.
1318
1319 2004-06-04 Miles Bader <miles@gnu.org>
1320
1321 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1322 from Ftty_supports_face_attributes_p.
1323 (x_supports_face_attributes_p): New function.
1324 (Ftty_supports_face_attributes_p): Function deleted.
1325 (Fdisplay_supports_face_attributes_p): New function.
1326 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
1327 (face_attr_equal_p): New function.
1328 (lface_equal_p): Use it.
1329
1330 2004-06-03 Juanma Barranquero <lektu@terra.es>
1331
1332 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1333 (Vw32_color_map): Fix typo in docstring.
1334 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1335 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1336 Make argument names match their use in docstring.
1337
1338 2004-06-02 Juanma Barranquero <lektu@terra.es>
1339
1340 Work around bugs/problems with MinGW builds of graphics libraries
1341 called from MSVC builds of Emacs.
1342
1343 * image.c (lookup_image): Make pointer to img static.
1344 (png_read_from_memory): Disable "global" optimization.
1345
1346 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1347
1348 * eval.c (Fcondition_case): Fix usage. Simplify.
1349
1350 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1351
1352 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1353
1354 * macfns.c: Don't include ccl.h.
1355 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
1356 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1357 TextUtils.h.
1358 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
1359 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1360 display height/width.
1361 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1362 (unwind_create_tip_frame, compute_tip_xy): New functions.
1363 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1364 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1365 and last_show_tip_args.
1366
1367 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1368 (Cursor, No_Cursor): New defines.
1369 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
1370 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1371
1372 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1373
1374 * macterm.c: Don't include Gestalt.h.
1375 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1376 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1377 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1378 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1379 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1380 (construct_mouse_click, XTmouse_position)
1381 (x_scroll_bar_report_motion, x_calc_absolute_position)
1382 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1383 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1384 (note_mouse_movement): Clear the mouse face and reset the pointer
1385 shape when the pointer goes outside the frame without grabbing.
1386 (mac_front_window): New function.
1387 (mac_window_to_frame): New macro.
1388 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1389 (do_window_activate, do_window_deactivate, do_app_resume)
1390 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1391 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1392 (mac_check_for_quit_char): Use mac_front_window and/or
1393 mac_window_to_frame.
1394 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1395 scroll-bar click event.
1396 (mac_define_frame_cursor): Change the pointer shape.
1397 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
1398 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
1399 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
1400 (do_window_update): Don't do anything if the updated window is the
1401 tooltip window.
1402 (do_mouse_moved): Handle mouse movement events here (previously in
1403 XTread_socket). Clear the mouse face if
1404 dpyinfo->mouse_face_hidden is set.
1405 (do_os_event, do_events): Remove (now in XTread_socket).
1406 (XTread_socket): Immediately return if interrupt_input_blocked.
1407 Loop until all the events in the queue are processed.
1408 Rearrange codes for mouse grabbing. Add tooltip support. Include the
1409 contents of do_os_event and do_events. Remove mouse movement
1410 handling (now in do_mouse_moved). Add the case where
1411 Vmouse_highlight has an integer value.
1412 (NewMacWindow): Remove.
1413 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1414 excess initializations.
1415 (make_mac_terminal_frame): Previous initializations in
1416 make_mac_frame are moved here.
1417 (mac_initialize_display_info):
1418 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
1419
1420 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1421 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1422
1423 2004-05-29 Richard M. Stallman <rms@gnu.org>
1424
1425 * lisp.h (truncate_undo_list): Update decl.
1426
1427 * alloc.c (undo_outer_limit): New variable.
1428 (syms_of_alloc): Defvar it.
1429 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1430
1431 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1432
1433 * alloc.c (lisp_align_malloc): Check for base == 0
1434 regardless of HAVE_POSIX_MEMALIGN.
1435 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1436
1437 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1438
1439 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1440 (marker_blocks_pending_free): Remove.
1441 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1442 Mark the undo lists after claning them up.
1443 Don't free block in marker_blocks_pending_free.
1444 (mark_buffer): Don't mark undo_list.
1445 (gc_sweep): Sweep hash-tables and strings first.
1446 Do free marker blocks that are empty.
1447
1448 2004-05-28 Jim Blandy <jimb@redhat.com>
1449
1450 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1451 after 'case wordend'. For symbeg and symend, print to stderr,
1452 like the other cases.
1453
1454 2004-05-28 Noah Friedman <friedman@splode.com>
1455
1456 * process.c (Fdelete_process): Do not call remove_process.
1457
1458 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1459
1460 * alloc.c (struct backtrace): Remove.
1461 (Fgarbage_collect): Use the new mark_backtrace.
1462
1463 * eval.c (mark_backtrace): New function.
1464
1465 * minibuf.c (run_exit_minibuf_hook): New function.
1466 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1467 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1468
1469 2004-05-27 Kim F. Storm <storm@cua.dk>
1470
1471 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1472 over display properties, e.g. images, that replace buffer text.
1473
1474 2004-05-25 Kim F. Storm <storm@cua.dk>
1475
1476 * alloc.c (marker_blocks_pending_free): New var.
1477 (gc_sweep): Store free marker blocks on that list.
1478 (Fgarbage_collect): Free them after undo-list cleanup.
1479
1480 * process.c (wait_reading_process_input): Check connect_wait_mask
1481 before actually accepting connection in case it has already been
1482 accepted due to recursion.
1483
1484 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1485
1486 * coding.c (Fset_safe_terminal_coding_system_internal):
1487 Set suppress_error in safe_terminal_coding, not terminal_coding.
1488
1489 2004-05-22 Richard M. Stallman <rms@gnu.org>
1490
1491 * alloc.c (Fmake_string): Doc fix.
1492
1493 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1494 and the alist pairs too.
1495
1496 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1497
1498 * emacs.c (main): Update copyright year.
1499
1500 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1501
1502 * insdel.c (del_range_2, replace_range): Don't write an anchor
1503 if the gap is empty.
1504
1505 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1506 scroll-down-aggressively is small but positive, put point
1507 near the screen edge.
1508
1509 2004-05-22 Juanma Barranquero <lektu@terra.es>
1510
1511 * keymap.c (Fdefine_key): Doc fix.
1512
1513 2004-05-22 Kim F. Storm <storm@cua.dk>
1514
1515 * alloc.c (struct backtrace): Add debug_on_exit member.
1516 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1517 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1518 the removed cons cells.
1519 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1520 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1521 any cons cells pointing to unallocated stings.
1522 Do not lisp_free any marker blocks, as there may still be pointers
1523 to them from buffer undo lists at this stage of GC.
1524
1525 * keyboard.c (struct backtrace): Add debug_on_exit member.
1526 (Fcommand_execute): Clear it.
1527
1528 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1529
1530 * intervals.c (lookup_char_property): Do not prematurely return nil.
1531
1532 2004-05-19 Jim Blandy <jimb@redhat.com>
1533
1534 Add support for new '\_<' and '\_>' regexp operators, matching the
1535 beginning and end of symbols.
1536
1537 * regex.c (enum syntaxcode): Add Ssymbol.
1538 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1539 (re_opcode_t): New opcodes `symbeg' and `symend'.
1540 (print_partial_compiled_pattern): Print the new opcodes properly.
1541 (regex_compile): Parse the new operators.
1542 (analyse_first): Skip sym(beg|end) (they match only the empty string).
1543 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1544 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1545 (re_match_2_internal): Match symbeg and symend.
1546
1547 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1548
1549 2004-05-19 Kim F. Storm <storm@cua.dk>
1550
1551 * .gdbinit (xsymbol): Fix last change.
1552
1553 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1554
1555 * .gdbinit (xprintstr): New fun.
1556 (xstring, xprintsym): Use it.
1557
1558 * w32proc.c (create_child): Use INTMASK.
1559
1560 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1561 unmarked elements of the undo list.
1562
1563 2004-05-18 David Ponce <david@dponce.com>
1564
1565 * print.c (print): Reset print_depth before to call print_object.
1566
1567 2004-05-18 Jason Rumney <jasonr@gnu.org>
1568
1569 * w32console.c: Prefix RIF functions with w32con_ to avoid
1570 namespace clash with functions in term.c and w32term.c.
1571
1572 * w32menu.c (add_menu_item, w32_menu_display_help)
1573 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1574
1575 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
1576
1577 2004-05-18 Eli Zaretskii <eliz@gnu.org>
1578
1579 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1580
1581 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1582 with make_number.
1583 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1584 with XINT.
1585
1586 2004-05-18 Kim F. Storm <storm@cua.dk>
1587
1588 * blockinput.h (INPUT_BLOCKED_P): New macros.
1589
1590 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1591 (Ftop_level): Unblock input if blocked.
1592
1593 * buffer.h (GET_OVERLAYS_AT): New macro.
1594 * msdos.c (IT_note_mouse_highlight): Use it.
1595 * textprop.c (get_char_property_and_overlay): Use it.
1596 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1597 * xfaces.c (face_at_buffer_position): Use it.
1598
1599 * print.c (print_object): Increase buf size.
1600
1601 2004-05-17 Jason Rumney <jasonr@gnu.org>
1602
1603 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1604 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1605 Lisp_Object using i member.
1606 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1607 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1608 consistently.
1609
1610 * w32proc.c (create_child): Use make_number instead of masking pid.
1611
1612 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1613 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1614 Use EQ to compare Lisp_Objects.
1615 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1616
1617 * w32term.c (w32_num_mouse_buttons): Rename from
1618 Vw32_num_mouse_buttons and make it an int.
1619
1620 * w32.c (init_environment): Use it.
1621
1622 * w32fns.c (w32_wnd_proc): Likewise.
1623
1624 * w32proc.c (w32_pipe_read_delay): Rename from
1625 Vw32_pipe_read_delay and make it an int.
1626
1627 * w32.c (_sys_read_ahead): Use it.
1628
1629 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1630
1631 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1632
1633 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1634 (key_event): Don't mix Lisp_Object and int.
1635
1636 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1637
1638 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1639 modifiers in language change event.
1640
1641 2004-05-17 Kim F. Storm <storm@cua.dk>
1642
1643 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1644 Such objects may be freed markers which still exist on an undo list.
1645
1646 2004-05-16 Juanma Barranquero <lektu@terra.es>
1647
1648 * data.c (Fset_default): Make argument names match their use in
1649 docstring.
1650
1651 2004-05-15 Andreas Schwab <schwab@suse.de>
1652
1653 * emacs.c (gdb_array_mark_flag): Define.
1654 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1655
1656 2004-05-15 Eli Zaretskii <eliz@gnu.org>
1657
1658 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1659 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1660 defined for the MS-DOS build.
1661
1662 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1663
1664 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1665
1666 2004-05-14 Kenichi Handa <handa@m17n.org>
1667
1668 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1669
1670 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1671
1672 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1673 section to frame.c section.
1674 (Fxw_display_color_p, Fx_file_dialog): Declare if
1675 HAVE_WINDOW_SYSTEM defined.
1676
1677 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
1678
1679 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
1680
1681 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1682 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1683 (XTread_socket): Fix int/Lisp_Object mixup.
1684 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
1685
1686 * macterm.h (struct frame, struct face, struct image)
1687 (display_x_get_resource, Fx_display_color_p)
1688 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1689 Add prototypes.
1690
1691 2004-05-14 Kim F. Storm <storm@cua.dk>
1692
1693 * process.c (wait_reading_process_input): Make reentrant.
1694 Make Available and Connecting non-static. Save and restore value
1695 of waiting_for_user_input_p.
1696
1697 2004-05-13 Kim F. Storm <storm@cua.dk>
1698
1699 * keyboard.c (mark_kboards): Don't mark x and y members
1700 that are overloaded in selection request events.
1701
1702 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1703
1704 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1705
1706 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1707
1708 * window.c (Fdisplay_buffer, Fsplit_window)
1709 (split-height-threshold): Doc fix.
1710
1711 2004-05-13 Juanma Barranquero <lektu@terra.es>
1712
1713 * xfaces.c (Ftty_supports_face_attributes_p)
1714 (Finternal_copy_lisp_face): Fix typo in docstring.
1715 (Finternal_get_lisp_face_attribute): Fix docstring.
1716
1717 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1718
1719 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1720
1721 2004-05-11 Steven Tamm <steventamm@mac.com>
1722
1723 * macfns.c (Fx_create_frame): Default to using tool-bar by
1724 setting tool-bar-lines to 1 in default-frame-alist.
1725
1726 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1727
1728 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1729 (xpm_get_color_table_v, xpm_make_color_table_h)
1730 (xpm_put_color_table_h, xpm_get_color_table_h)
1731 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1732 (syms_of_image): Support XPM on Carbon Emacs. Does not
1733 depend on libXpm, but only supports XPM version 3 without extensions.
1734
1735 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1736
1737 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
1738 instead of FRAME_X_P
1739
1740 2004-05-11 Kim F. Storm <storm@cua.dk>
1741
1742 * process.c (read_process_output): Grow decoding_buf when needed;
1743 this could cause a crash in allocate_string and compact_small_strings.
1744
1745 2004-04-29 Jim Blandy <jimb@redhat.com>
1746
1747 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1748 against proper opcode.
1749
1750 2004-05-10 Juanma Barranquero <lektu@terra.es>
1751
1752 * process.c (Fstart_process): Fix docstring.
1753
1754 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1755 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1756 (Fsplit_char, Fchar_charset): Make argument names match their use
1757 in docstring.
1758
1759 2004-05-10 Richard M. Stallman <rms@gnu.org>
1760
1761 * print.c (print_preprocess): Use being_printed, loop_count and
1762 halftail to detect overdeep nesting and cyclic cdr chains.
1763
1764 2004-05-10 Andreas Schwab <schwab@suse.de>
1765
1766 * lisp.h: Declare Fmake_symbolic_link.
1767
1768 * fileio.c (Frename_file): Remove extra argument in call to
1769 Fmake_symbolic_link.
1770
1771 2004-05-10 Kim F. Storm <storm@cua.dk>
1772
1773 * xdisp.c (calc_line_height_property): Use string position when
1774 object is a string.
1775
1776 2004-05-10 Kenichi Handa <handa@m17n.org>
1777
1778 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1779 inhibit-modification-hooks to t temporarily before calling
1780 Ferase_buffer.
1781
1782 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1783 inhibit-modification-hooks to t temporarily before calling
1784 Ferase_buffer.
1785
1786 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1787 inhibit-modification-hooks to t temporarily before calling
1788 Ferase_buffer.
1789
1790 * fns.c (count_combining): Delete it.
1791 (concat): Don't check combining bytes.
1792
1793 2004-05-09 Jason Rumney <jasonr@gnu.org>
1794
1795 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1796 (globals_of_w32fns): Set it.
1797
1798 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1799
1800 * data.c (Fquo): Simplify.
1801
1802 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1803
1804 * data.c (Fquo): If any argument is float, do the computation in
1805 floating point.
1806
1807 2004-05-08 Juanma Barranquero <lektu@terra.es>
1808
1809 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1810 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1811 Fix spelling of Emacs on docstring.
1812 (Fset_process_coding_system, Fprocess_coding_system)
1813 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1814 Make argument names match their use in docstring.
1815 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1816 Fix docstring.
1817
1818 * editfns.c (Finsert_buffer_substring): Make argument names match their
1819 use in docstring.
1820
1821 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1822
1823 2004-05-07 Steven Tamm <steventamm@mac.com>
1824
1825 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1826 around call to ReceiveEvent to avoid certain crashes.
1827
1828 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1829
1830 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1831 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1832 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1833 Save/restore the current graphics port and device handle when
1834 drawing into an offscreen graphics world.
1835
1836 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1837 (gif_load): Likewise.
1838
1839 2004-05-07 Juanma Barranquero <lektu@terra.es>
1840
1841 * window.c (Fset_window_buffer): Fix docstring.
1842
1843 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1844
1845 * emacs.c (main) [VMS]: Fix var ref.
1846
1847 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1848
1849 * data.c (Fsetq_default): Fix docstring.
1850
1851 2004-05-06 Jason Rumney <jasonr@gnu.org>
1852
1853 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1854 to avoid name clash.
1855
1856 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1857
1858 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1859 (Frename_file): Handle renaming of symlinks across file systems.
1860 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
1861
1862 2004-05-04 Kim F. Storm <storm@cua.dk>
1863
1864 * xdisp.c (Qtotal): New var.
1865 (syms_of_xdisp): Intern and staticpro it.
1866 (calc_line_height_property): New arg total. Set it if
1867 line-spacing property has format (total . VALUE).
1868 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1869 Handle total line-spacing property.
1870
1871 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1872
1873 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1874 "under" scroll bar when size/position changes.
1875
1876 2004-05-03 Jason Rumney <jasonr@gnu.org>
1877
1878 * makefile.nt: Remove.
1879
1880 2004-05-02 Eli Zaretskii <eliz@gnu.org>
1881
1882 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1883 Avoid compiler warnings.
1884
1885 * Makefile.in (region-cache.o): Depend on config.h.
1886
1887 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1888
1889 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1890 with continuation lines, too.
1891
1892 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1893
1894 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1895
1896 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1897
1898 * xdisp.c (calc_line_height_property): YAILOM (yet another
1899 int/Lisp_Object mixup).
1900
1901 2004-05-01 Eli Zaretskii <eliz@gnu.org>
1902
1903 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1904 undo bad effect of pack(4) in some versions of system headers.
1905
1906 2004-05-01 Jason Rumney <jasonr@gnu.org>
1907
1908 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1909
1910 2004-04-30 Kim F. Storm <storm@cua.dk>
1911
1912 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
1913 (syms_of_buffer) <cursor-type>: Doc fix.
1914
1915 * dispextern.h (struct it): Remove member use_default_face.
1916 Add members override_ascent, override_descent, override_boff.
1917
1918 * xdisp.c (init_iterator): Handle line-spacing float value.
1919 Initialize override_ascent member.
1920 (append_space_for_newline): Reset override_ascent.
1921 Remove use_default_face.
1922 (calc_line_height_property): New function to calculate value of
1923 line-height and line-spacing properties. Look at overlays, too.
1924 Set override_ascent, override_descent, override_boff members when
1925 using another face than the current face. Float values are now
1926 relative to the frame default font, by default; accept a cons
1927 of ratio and face name to specify value relative to a specific face.
1928 (x_produce_glyphs): Use calc_line_height_property.
1929 Use override_ascent etc. when set to handle different face heights.
1930 A negative line-spacing property value is interpreted as a total
1931 line height, rather than inter-line spacing.
1932 (note_mouse_highlight): Allocate room for 40 overlays initially.
1933
1934 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1935
1936 * data.c (Fsubr_name): New fun.
1937 (syms_of_data): Defsubr it.
1938
1939 2004-04-29 Kim F. Storm <storm@cua.dk>
1940
1941 * xdisp.c (null_glyph_slice): New var.
1942 (append_glyph, append_composite_glyph, append_stretch_glyph):
1943 Use it to initialize glyph slice.
1944
1945 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1946
1947 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1948 (on_hot_spot_p): Make sure we always return a value.
1949 (Flookup_image_map): Remove unused var ix and iy.
1950 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1951
1952 2004-04-27 Eli Zaretskii <eliz@gnu.org>
1953
1954 * msdos.c (init_environment): If one of the TMP... environment
1955 variables is set to a drive letter without a trailing slash,
1956 append a slash.
1957
1958 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1959
1960 * editfns.c (lisp_time_argument): Provide externally.
1961
1962 * fileio.c (Fset_file_times): New function.
1963 (syms_of_fileio): Intern and staticpro it.
1964
1965 2004-04-27 Kim F. Storm <storm@cua.dk>
1966
1967 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1968 header line strings.
1969
1970 * dispextern.h (struct it): New member use_default_face.
1971
1972 * xdisp.c (Qline_height): New variable.
1973 (syms_of_xdisp): Intern and staticpro it.
1974 (append_space_for_newline): Partially undo 2004-04-25 change;
1975 add default_face_p arg, and restore callers.
1976 Clear it->use_default_face after use.
1977 (x_produce_glyphs): Set default font for ascii char if
1978 it->use_default_font is set. Change line-spacing property to set
1979 just extra line spacing. Handle new line-height property.
1980
1981 2004-04-26 Andreas Schwab <schwab@suse.de>
1982
1983 * print.c (print_object): Print non-ascii characters in bool
1984 vector representation as octal escapes.
1985
1986 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1987 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1988 bool vectors.
1989 * lread.c (read1): Likewise.
1990 * alloc.c (Fmake_bool_vector): Likewise.
1991 * data.c (Faref, Faset): Likewise.
1992 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1993 (mapcar1): Likewise.
1994
1995 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1996
1997 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1998
1999 2004-04-26 Miles Bader <miles@gnu.org>
2000
2001 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2002
2003 2004-04-26 Juanma Barranquero <lektu@terra.es>
2004
2005 * buffer.c (Fpop_to_buffer): Fix docstring.
2006
2007 2004-04-26 Steven Tamm <steventamm@mac.com>
2008
2009 * lread.c (init_lread): Don't display missing lisp directory
2010 warnings with Carbon Emacs because self-contained bundled Emacs
2011 may be built without correct installation path.
2012
2013 2004-04-25 Kim F. Storm <storm@cua.dk>
2014
2015 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2016
2017 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2018
2019 * xdisp.c (append_space_for_newline): Rename from append_space.
2020 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2021 (x_produce_glyphs): Handle line-spacing property on newline char.
2022 If value is t, adjust ascent and descent to fit current row height.
2023 If value is an integer or float, set extra_line_spacing to integer
2024 value, or to float value x current line height.
2025
2026 2004-04-23 Kenichi Handa <handa@m17n.org>
2027
2028 * fontset.c (Finternal_char_font): If POSITION is nil, return
2029 font for displaying CH with the default face.
2030
2031 2004-04-23 Juanma Barranquero <lektu@terra.es>
2032
2033 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2034
2035 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2036
2037 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2038 Don't make assumptions about the relative place of i and val.
2039 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2040
2041 2004-04-21 Kim F. Storm <storm@cua.dk>
2042
2043 * dispextern.h (struct glyph_slice): New struct.
2044 (struct glyph): New member slice.
2045 (GLYPH_SLICE_EQUAL_P): New macro.
2046 (GLYPH_EQUAL_P): Use it.
2047 (struct glyph_string): New member slice.
2048 (struct it_slice): New struct.
2049 (struct it): New member slice, add member to stack too.
2050 New member constrain_row_ascent_descent_p.
2051 (image_ascent): Add prototype.
2052
2053 * dispnew.c (buffer_posn_from_coords): Return full image width
2054 and height even for image slices (posn is relative to full image).
2055 (marginal_area_string): Adjust x0,y0 for image slice.
2056
2057 * image.c (image_ascent): Add slice arg; calculate ascent for
2058 image slice (or full image).
2059
2060 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2061 (syms_of_keyboard): Defsubr them.
2062
2063 * lisp.h (pos_visible_p): Fix prototype.
2064
2065 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2066 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2067 (x_draw_image_foreground, x_draw_image_relief)
2068 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2069 Draw sliced images.
2070
2071 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2072 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2073 (x_draw_image_foreground, x_draw_image_relief)
2074 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2075 Draw sliced images.
2076
2077 * w32term.h (image_ascent): Remove prototype.
2078
2079 * window.c (Fpos_visible_in_window_p): Return pixel position if
2080 PARTIALLY arg is non-nil. Simplify. Doc fix.
2081 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2082 to return/set vscroll in pixels.
2083
2084 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2085
2086 * xdisp.c (Qslice): New variable.
2087 (syms_of_xdisp): Intern and staticpro it.
2088 (pos_visible_p): Return pixel position in new x and y args.
2089 (init_iterator): Reset it->slice info.
2090 (handle_display_prop): Parse (slice ...) property.
2091 (push_it, pop_it): Save/restore slice info.
2092 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2093 force repositioning of tall row if window is vscrolled, as that
2094 would reset vscroll.
2095 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2096 increasing row height if row is non-empty.
2097 (fill_image_glyph_string): Copy slice info.
2098 (take_vertical_position_into_account): Simplify.
2099 (produce_image_glyph): Handle iterator slice info, setup glyph
2100 slice info. Do not force minimum line height.
2101 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2102 do not increase height (ascent/descent) of non-empty row when
2103 adding normal character glyph; instead reduce glyph ascent/descent
2104 appropriately; if row is higher than current glyph, adjust glyph
2105 descent/ascent to reposition glyph within the existing row.
2106 Likewise, when char is newline, only set ascent/descent if row is
2107 currently empty.
2108 (note_mouse_highlight): Handle hotspots with sliced image.
2109
2110 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2111 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2112 (x_draw_image_foreground, x_draw_image_relief)
2113 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2114 Draw sliced images.
2115
2116 * xterm.h (image_ascent): Remove prototype.
2117
2118 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2119
2120 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2121
2122 2004-04-20 John Paul Wallington <jpw@gnu.org>
2123
2124 * fns.c (Fassoc, Feql): Fix indentation.
2125
2126 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2127
2128 2004-04-19 John Paul Wallington <jpw@gnu.org>
2129
2130 * fns.c (Feql): New function.
2131 (syms_of_fns): Defsubr it.
2132
2133 2004-04-18 Jason Rumney <jasonr@gnu.org>
2134
2135 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2136 after closing the clipboard.
2137
2138 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2139
2140 * buffer.c (Fbuffer_base_buffer): Doc fix.
2141
2142 2004-04-17 Kim F. Storm <storm@cua.dk>
2143
2144 * keymap.c (Fkey_description): Add optional PREFIX arg.
2145 Combine prefix with KEYS to make up the full key sequence to describe.
2146 Correlate meta_prefix_char and following (simple) key to describe
2147 as meta modifier. All callers changed.
2148 (describe_map): Rename arg `keys' to `prefix'. Remove local
2149 `elt_prefix' var. Use Fkey_description with prefix instead of
2150 elt_prefix combined with Fsingle_key_description.
2151 (describe_vector): Declare static. Replace arg `elt_prefix' with
2152 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2153 if !KEYMAP_P. Use Fkey_description with prefix instead of
2154 Fsingle_key_description.
2155
2156 * keymap.h (Fkey_description): Fix prototype.
2157 (describe_vector): Remove prototype.
2158
2159 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2160
2161 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2162 (png_load): Fix calculation of transparent background color on X
2163 and W32 platforms.
2164
2165 2004-04-16 Juanma Barranquero <lektu@terra.es>
2166
2167 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2168 not too large before computing how much to scroll.
2169
2170 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2171
2172 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2173
2174 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2175
2176 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2177 Add hyperlink to Elisp manual to the docstring.
2178
2179 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2180
2181 * callint.c (fix_command): Use XDCR.
2182
2183 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
2184
2185 * window.c (Fget_lru_window): Doc fix.
2186
2187 2004-04-14 Kim F. Storm <storm@cua.dk>
2188
2189 * editfns.c (Fformat): Fix allocation size of precision array.
2190
2191 * dispnew.c (update_window): Only set changed_p if
2192 scrolling_window actually did scroll.
2193 (scrolling_window): Only return 1 if we actually did scroll.
2194
2195 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2196 height to glyph height when cursor row is not fully visible.
2197 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2198 failure in case row is higher than window. Callers changed.
2199 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2200 Try to scroll partially visible, higher-than-window cursor row.
2201 (redisplay_window): Always try to scroll partially visible,
2202 higher-than-window cursor row - both initially and again with
2203 centering_position = 0.
2204 Clear desired matrix before retrying with centering_position = 0.
2205
2206 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2207
2208 * syntax.c (scan_lists): Simplify backward string scan.
2209 Fix off-by-one boundary check for string and comment fences.
2210
2211 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
2212
2213 * sheap.c, unexcw.c: New files.
2214
2215 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2216
2217 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2218 base buffer has been killed. Correct the error message if the
2219 base buffer does not exist.
2220
2221 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
2222
2223 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2224 Cygwin itself. Add support for Xaw3d scrollbars.
2225
2226 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2227
2228 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2229
2230 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2231 before Cygwin unexec.
2232
2233 * Makefile.in: Link changes for Cygwin unexec() support.
2234
2235 2004-04-12 Andreas Schwab <schwab@suse.de>
2236
2237 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2238
2239 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2240
2241 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2242 IGNORE argument equals NAME. Doc fix.
2243
2244 2004-04-11 Masatake YAMATO <jet@gyve.org>
2245
2246 * buffer.c (fix_start_end_in_overlays): Make overlays
2247 empty if they are backwards.
2248
2249 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2250
2251 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2252
2253 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2254
2255 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2256
2257 2004-04-06 Kim F. Storm <storm@cua.dk>
2258
2259 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2260 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2261
2262 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2263 clearing highlight.
2264
2265 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2266
2267 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2268 clearing highlight.
2269
2270 * indent.c (vmotion): Do not reserve one column for continuation
2271 marks on window frames.
2272
2273 2004-04-04 Eli Zaretskii <eliz@gnu.org>
2274
2275 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2276 from GCC.
2277
2278 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2279
2280 * .gdbinit-union: Remove.
2281
2282 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2283 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2284 ($nonvalbits): Remove.
2285 ($valmask): Set it by calling xreload to avoid redundancy.
2286
2287 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2288 (gdb_emacs_intbits): Remove.
2289
2290 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2291
2292 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
2293
2294 2004-03-30 Kenichi Handa <handa@m17n.org>
2295
2296 * editfns.c (Fformat): Fix initialization of the array info.
2297
2298 2004-03-30 Kim F. Storm <storm@cua.dk>
2299
2300 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2301 (syms_of_xterm): DEFVAR_BOOL it.
2302 (ignore_next_mouse_click_timeout): New var.
2303 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2304 Use it to filter mouse clicks following focus event.
2305
2306 2004-03-29 David Ponce <david@dponce.com>
2307
2308 * callint.c (Fcall_interactively): Fix last change.
2309
2310 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2311
2312 * eval.c (Fcommandp): Simplify.
2313
2314 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2315 Extend to handle all kinds of functions.
2316
2317 * lisp.h (Finteractive_form): Declare.
2318
2319 * callint.c (Fcall_interactively): Use it.
2320
2321 2004-03-26 Kim F. Storm <storm@cua.dk>
2322
2323 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2324 to catch errors in calc_pixel_width_or_height during redisplay.
2325
2326 2004-03-26 Masatake YAMATO <jet@gyve.org>
2327
2328 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
2329
2330 * lisp.h (fix_start_end_in_overlays): Likewise.
2331
2332 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
2333
2334 * editfns.c (Ftranspose_regions): Likewise.
2335
2336 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2337
2338 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
2339
2340 2004-03-19 Richard M. Stallman <rms@gnu.org>
2341
2342 * s/sol2-6.h: Delete previous change.
2343
2344 2004-03-19 Kim F. Storm <storm@cua.dk>
2345
2346 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2347 to_charpos corresponds to newline in right fringe. Use local
2348 BUFFER_POS_REACHED_P macro.
2349
2350 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2351
2352 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2353 to compile on non-window system.
2354
2355 2004-03-19 Kim F. Storm <storm@cua.dk>
2356
2357 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2358
2359 * image.c (Qcenter): Move to xdisp.c.
2360
2361 * xdisp.c (Qcenter): Declare here.
2362 (syms_of_xdisp): Intern and staticpro it.
2363 (handle_single_display_prop): Allow space display property on all
2364 platforms.
2365 (display_mode_line): Set mode_line_p before displaying line.
2366 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2367 handling. Remove complex cases for fringes and scroll-bars.
2368 Add left, right, and center alignment positions. Add text (area)
2369 width/height. Return width or height for image specs.
2370 (produce_stretch_glyph): Improve handling of :align-to. Is now
2371 relative to left of text area by default, but other base offsets
2372 can be specified -- also for text lines.
2373
2374 * term.c (produce_glyphs): Handle IT_STRETCH.
2375 (produce_stretch_glyph): New function to handle space width and
2376 align-to display properties on non-window systems.
2377
2378 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2379
2380 * fileio.c (Fread_file_name): Set completion-ignore-case for
2381 case-insensitive systems.
2382
2383 2004-03-14 Masatake YAMATO <jet@gyve.org>
2384
2385 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2386 when keymap and cursor are setup.
2387
2388 2004-03-14 Steven Tamm <steventamm@mac.com>
2389
2390 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
2391
2392 2004-03-14 Kim F. Storm <storm@cua.dk>
2393
2394 * dispextern.h (x_find_image_file): Add prototype.
2395
2396 * image.c (x_find_image_file): Make extern.
2397
2398 * xfns.c (x_find_image_file): Remove prototype.
2399
2400 2004-03-13 Eli Zaretskii <eliz@gnu.org>
2401
2402 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
2403
2404 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
2405
2406 2004-03-12 Richard M. Stallman <rms@gnu.org>
2407
2408 * fns.c (internal_equal): New arg PROPS controls comparing
2409 text properties. All callers changed.
2410 (Fequal_including_properties): New function.
2411 (syms_of_fns): defsubr it.
2412
2413 2004-03-12 Kim F. Storm <storm@cua.dk>
2414
2415 Fix image support on MAC. From YAMAMOTO Mitsuharu.
2416
2417 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2418 (image_background, image_background_transparent): Fix prototypes.
2419
2420 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
2421
2422 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2423 (x_query_font, x_find_ccl_program, x_set_window_size)
2424 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2425 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2426 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2427
2428 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2429 (x_query_font, x_find_ccl_program, x_set_window_size)
2430 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2431 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2432 (mac_draw_line_to_pixmap): Add prototypes.
2433
2434 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2435
2436 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2437
2438 2004-03-11 Kim F. Storm <storm@cua.dk>
2439
2440 * dispextern.h: Move image related prototypes from xfns.c section
2441 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2442 HAVE_X_WINDOWS.
2443
2444 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
2445 Move gtkutil.o to new GTK_OBJ list.
2446 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2447 (GTK_OBJ) [USE_GTK]: New declaration.
2448 (obj): Add $(GTK_OBJ) to list.
2449
2450 2004-03-11 Steven Tamm <steventamm@mac.com>
2451
2452 * image.c [MAC_OSX]: Include sys/stat.h
2453
2454 * macfns.c (syms_of_macfns): Remove definitions of things now
2455 defined in image.c
2456
2457 2004-03-11 Kim F. Storm <storm@cua.dk>
2458
2459 The following changes consolidates the identical/similar image
2460 support code previously found in xfns.c, w32fns.c, and macfns.c
2461 into a new file image.c.
2462
2463 * makefile.w32-in (OBJ1): Add image.o.
2464 ($(BLD)/image.$(O)): Add dependencies.
2465
2466 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2467 (image.o): Add dependencies.
2468
2469 * image.c: New file with consolidated image support code.
2470 (COLOR_TABLE_SUPPORT): New define to control whether
2471 color table support is available (X only).
2472 (Bitmap_Record): Common name for x_bitmap_record,
2473 w32_bitmap_record, and mac_bitmap_record.
2474 (XImagePtr): Common name for pointer to XImage or equivalent.
2475 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2476 to XImagePtr on X+MAC, and to HDC on W32.
2477 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2478 (NO_PIXMAP): Common name for "None" or equivalent.
2479 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2480 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2481 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
2482 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2483 Define with suitable equivalents on W32 and MAC for code sharing.
2484 (XDrawLine): Define on MAC for code sharing.
2485 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2486 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2487 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2488 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2489 (x_reference_bitmap, x_create_bitmap_from_data)
2490 (x_create_bitmap_from_file, x_destroy_bitmap)
2491 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2492 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2493 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2494 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2495 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2496 (define_image_type, lookup_image_type, valid_image_p)
2497 (image_error, enum image_value_type, struct image_keyword)
2498 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2499 (make_image, free_image, prepare_image_for_display, image_ascent)
2500 (four_corners_best, image_background, image_background_transparent)
2501 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2502 (make_image_cache, free_image_cache, clear_image_cache)
2503 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2504 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2505 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2506 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2507 (init_image_func_pointer, image_load_quartz2d)
2508 (struct ct_color, init_color_table, free_color_table)
2509 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2510 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2511 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2512 (x_disable_image, x_build_heuristic_mask)
2513 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2514 (TIFF support, GIF support, Ghostscript support): Consolidate image
2515 code from xfns.c, w32fns.c, and macfns.c.
2516 (syms_of_image): Consolidate image related symbol setup here.
2517 (init_image): Consolidate image related initializations here.
2518
2519 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2520 and init_image. Remove call to init_xfns.
2521
2522 * macterm.h (struct mac_bitmap_record): Add file member.
2523 Not currently used, but simplifies code sharing.
2524
2525 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2526 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2527 (x_reference_bitmap, x_create_bitmap_from_data)
2528 (x_create_bitmap_from_file, x_destroy_bitmap)
2529 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2530 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2531 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2532 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2533 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2534 (define_image_type, lookup_image_type, valid_image_p)
2535 (image_error, enum image_value_type, struct image_keyword)
2536 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2537 (make_image, free_image, prepare_image_for_display, image_ascent)
2538 (four_corners_best, image_background, image_background_transparent)
2539 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2540 (make_image_cache, free_image_cache, clear_image_cache)
2541 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2542 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2543 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2544 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2545 (init_image_func_pointer, image_load_quartz2d)
2546 (struct ct_color, init_color_table, free_color_table)
2547 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2548 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2549 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2550 (x_disable_image, x_build_heuristic_mask)
2551 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2552 (TIFF support, GIF support, Ghostscript support): Merge with image
2553 code from xfns.c and macfns.c into image.c.
2554 (syms_of_xfns): Move image related symbols to image.c.
2555 (init_external_image_libraries, init_xfns): Remove; initialization
2556 moved to init_image in image.c.
2557
2558 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2559 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2560 (x_reference_bitmap, x_create_bitmap_from_data)
2561 (x_create_bitmap_from_file, x_destroy_bitmap)
2562 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2563 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2564 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2565 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2566 (define_image_type, lookup_image_type, valid_image_p)
2567 (image_error, enum image_value_type, struct image_keyword)
2568 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2569 (make_image, free_image, prepare_image_for_display, image_ascent)
2570 (four_corners_best, image_background, image_background_transparent)
2571 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2572 (make_image_cache, free_image_cache, clear_image_cache)
2573 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2574 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2575 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2576 (struct ct_color, init_color_table, free_color_table)
2577 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2578 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2579 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2580 (x_disable_image, x_build_heuristic_mask)
2581 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2582 (TIFF support, GIF support, Ghostscript support): Merge with image
2583 code from xfns.c and macfns.c into image.c.
2584 (syms_of_xfns): Move image related symbols to image.c.
2585 (init_external_image_libraries, init_xfns): Remove; initialization
2586 moved to init_image in image.c.
2587
2588 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2589 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2590 (x_reference_bitmap, x_create_bitmap_from_data)
2591 (x_create_bitmap_from_file, x_destroy_bitmap)
2592 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2593 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2594 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2595 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2596 (define_image_type, lookup_image_type, valid_image_p)
2597 (image_error, enum image_value_type, struct image_keyword)
2598 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2599 (make_image, free_image, prepare_image_for_display, image_ascent)
2600 (four_corners_best, image_background, image_background_transparent)
2601 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2602 (make_image_cache, free_image_cache, clear_image_cache)
2603 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2604 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2605 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2606 (struct ct_color, init_color_table, free_color_table)
2607 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2608 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2609 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2610 (x_disable_image, x_build_heuristic_mask)
2611 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2612 (TIFF support, GIF support, Ghostscript support): Merge with
2613 w32fns.c and macfns.c image code into image.c.
2614 (syms_of_xfns): Move image related symbols to image.c.
2615 (init_xfns): Remove; initialization moved to init_image in image.c.
2616
2617 * lisp.h (syms_of_image, init_image): Add protoypes.
2618 (init_xfns): Remove prototype.
2619
2620 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2621 (x_reference_bitmap, x_create_bitmap_from_data)
2622 (x_create_bitmap_from_file, x_destroy_bitmap)
2623 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2624 (gamma_correct) [MAC_OS]: Add prototype.
2625
2626 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2627 (x_reference_bitmap, x_create_bitmap_from_data)
2628 (x_create_bitmap_from_file, x_destroy_bitmap)
2629 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2630
2631 2004-03-09 Kenichi Handa <handa@etlken2>
2632
2633 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2634 correctly.
2635
2636 2004-03-04 Richard M. Stallman <rms@gnu.org>
2637
2638 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2639
2640 * window.c (Fdisplay_buffer): Doc fix.
2641
2642 * buffer.c (Fpop_to_buffer): Doc fix.
2643
2644 2004-03-03 Kim F. Storm <storm@cua.dk>
2645
2646 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2647
2648 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2649
2650 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2651
2652 2004-03-02 Richard M. Stallman <rms@gnu.org>
2653
2654 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2655
2656 2004-03-02 Kenichi Handa <handa@m17n.org>
2657
2658 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2659
2660 2004-03-02 Kim F. Storm <storm@cua.dk>
2661
2662 * window.h (struct window): New member overlay_arrow_bitmap.
2663
2664 * window.c (make_window): Initialize overlay_arrow_bitmap.
2665
2666 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2667 implement and integrate multiple overlay arrows with redisplay.
2668 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2669 (last_arrow_position, last_arrow_string): Replace by properties.
2670 (Qlast_arrow_position, Qlast_arrow_string)
2671 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2672 (syms_of_xdisp): Intern and staticpro them.
2673 (overlay_arrow_string_or_property, update_overlay_arrows)
2674 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2675 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2676 (redisplay_internal): Use them instead of directly accessing
2677 Voverlay_arrow_position etc. for multiple overlay arrows.
2678 (mark_window_display_accurate): Use update_overlay_arrows.
2679 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2680 (try_window_id): Use overlay_arrows_changed_p.
2681 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2682 (display_line): Use overlay_arrow_at_row to check multiple
2683 overlay arrows, and get relevant overlay-arrow-string and
2684 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
2685 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2686 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2687
2688 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2689 (update_window_fringes): Remove unused code.
2690
2691 2004-03-01 Jason Rumney <jasonr@gnu.org>
2692
2693 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2694
2695 2004-03-01 Juanma Barranquero <lektu@terra.es>
2696
2697 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2698
2699 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2700
2701 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2702
2703 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2704 how many colors can be displayed.
2705
2706 2004-03-01 Kenichi Handa <handa@m17n.org>
2707
2708 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2709 correctly.
2710
2711 2004-02-28 Kim F. Storm <storm@cua.dk>
2712
2713 * dispnew.c (update_window): Update header line also if there are
2714 no other changes in window (move code after set_cursor label).
2715
2716 * lisp.h (mark_window_display_accurate): Remove prototype.
2717
2718 * window.c (window_loop, Fforce_window_update): Force mode line
2719 updates by setting prevent_redisplay_optimizations_p and
2720 update_mode_lines.
2721
2722 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2723
2724 * xfns.c (x_window): Fix indentation.
2725
2726 * xterm.c (x_calc_absolute_position): Call x_real_positions
2727 to get WM window sizes and use those to calculate position.
2728 (x_set_offset): Remove code commented out.
2729
2730 2004-02-28 Miles Bader <miles@gnu.org>
2731
2732 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2733
2734 2004-02-28 Kim F. Storm <storm@cua.dk>
2735
2736 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2737 an event into kbd fifo, but with special handling of quit event;
2738 a quit event is saved for later, and further events are discarded
2739 until the saved quit event has been processed.
2740 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2741 (gen_help_event): Store help event in kbd fifo.
2742 (NREAD_INPUT_EVENTS): Remove.
2743 (read_avail_input): Adapt to new read_socket_hook interface.
2744 Remove allocation and initialization of local input_event buffer,
2745 as read_socket_hook stores events directly in fifo. Allocate and
2746 initialize local hold_quit event to handle postponed quit event
2747 (and store it if set by kbd_buffer_store_event_hold).
2748
2749 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2750 (gen_help_event): Fix prototype.
2751
2752 * macterm.c (XTread_socket): Remove bufp_r and
2753 numcharsp args. Add hold_quit arg.
2754 Rework to use just one, local, inev input_event. Store inev
2755 directly in fifo using kbd_buffer_store_event_hold.
2756
2757 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2758 (read_input_waiting): Adapt to new read_socket_hook interface.
2759 Remove allocation and initialization of local input_event buffer,
2760 as read_socket_hook stores events directly in fifo. Allocate and
2761 initialize local hold_quit event to handle postponed quit event
2762 (and store it if set by kbd_buffer_store_event_hold).
2763
2764 * term.c (read_socket_hook): Fix arg list.
2765
2766 * termhooks.h (read_socket_hook): Fix prototype.
2767
2768 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2769 numcharsp args. Add hold_quit arg.
2770 Rework to use just one, local, inev input_event. Store inev
2771 directly in fifo using kbd_buffer_store_event_hold.
2772
2773 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2774
2775 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
2776 Add hold_quit arg. Rework to use just one, local, inev
2777 input_event. Store inev directly in fifo using
2778 kbd_buffer_store_event_hold. Update count in one place.
2779 Postpone call to gen_help_event until inev is stored; use new
2780 local do_help for this.
2781 Remove local emacs_event in handing of ButtonPress event; just use
2782 inev instead (so no reason to copy it later).
2783
2784 * xsmfns.c (x_session_check_input): Remove numchars arg.
2785
2786 * xterm.c (x_focus_changed, x_detect_focus_change):
2787 Remove numchars arg. Always store event into bufp arg.
2788 Return nothing. Callers changed accordingly.
2789 (glyph_rect): Simplify.
2790 (STORE_KEYSYM_FOR_DEBUG): New macro.
2791 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2792 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2793 (current_hold_quit) [USE_GTK]: Add.
2794 (event_handler_gdk): Adapt to new handle_one_xevent.
2795 (handle_one_xevent): Remove bufp_r and numcharsp args.
2796 Add hold_quit arg. Rework to use just one, local, inev
2797 input_event. Store inev directly in fifo using
2798 kbd_buffer_store_event_hold. Update count in one place.
2799 Postpone call to gen_help_event until inev is stored; use new
2800 local do_help for this.
2801 Simplify handling of keysyms (consolidate common code). Fix bug
2802 where count was updated with nchars instead of nbytes.
2803 Remove local emacs_event in handing of ButtonPress event; just use
2804 inev instead (so no reason to copy it later).
2805 Remove `out' label. Rename label `ret' to `done'; add various
2806 `goto done' to clarify code flow in deeply nested blocks.
2807 (x_dispatch_event): Simplify as handle_one_xevent now calls
2808 kbd_buffer_store_event itself.
2809 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
2810 arg. Call handle_one_xevent with new arglist. Store event from
2811 x_session_check_input in fifo.
2812 [USE_GTK]: Setup current_hold_quit.
2813 Decrement handling_signal before unblocking input.
2814 (x_initialize) [USE_GTK]: Initialize current_count.
2815
2816 * xterm.h (x_session_check_input): Fix prototype.
2817
2818 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2819
2820 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
2821
2822 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2823 macgui.h).
2824
2825 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
2826
2827 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2828 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2829 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2830 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2831 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2832 (Bitmap): Remove typedef.
2833 (Pixmap): Change int to GWorldPtr.
2834
2835 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2836
2837 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2838 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2839 New #define to extract 16-bit depth color components from unsigned
2840 long representation.
2841 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2842 colors used for masks.
2843 (struct mac_display_info): Add color_p. Remove n_cbits.
2844
2845 * macfns.c: Include sys/types.h and sys/stat.h.
2846 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2847 Include QuickTime/QuickTime.h.
2848 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2849 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2850 functions defined in macterm.c.
2851 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2852 (ZPixmap): New #define for compatibility with xfns.c.
2853 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2854 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
2855 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2856 New functions.
2857 (four_corners_best, x_create_x_image_and_pixmap)
2858 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2859 (x_edge_detection, init_color_table, colors_in_color_table)
2860 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2861 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2862 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2863 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2864 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2865 long mixup.
2866 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2867 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2868 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2869 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2870 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2871 (x_alloc_image_color, clear_image_cache, lookup_image)
2872 (x_find_image_file, xbm_read_bitmap_file_data)
2873 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2874 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2875 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2876 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2877 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
2878 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
2879 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2880 #if 0.
2881 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2882 #if 0. Free white_relief.gc and black_relief.gc.
2883 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2884 New functions (from xfns.c).
2885 (Fx_create_frame): Record unwind_create_frame.
2886 (Fxw_display_color_p): Use dpyinfo->color_p.
2887 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2888 dpyinfo->n_cbits.
2889 (Fx_display_color_cells): Use dpyinfo->n_planes;
2890 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2891 (Qheuristic, cross_disabled_images, emboss_matrix)
2892 (laplace_matrix): New variables (from xfns.c).
2893 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2894 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2895 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
2896 (image_background_transparent): New function (from xfns.c).
2897 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2898 (image_load_quicktime): Add declaration.
2899 [MAC_OSX] (image_load_quartz2d): Likewise.
2900 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2901 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
2902 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
2903 (xbm_load_image_from_file, x_laplace_read_row)
2904 (x_laplace_write_row, pbm_read_file): Remove functions.
2905 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2906 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2907 (colors_in_color_table): Sync with xfns.c (although not used).
2908 (lookup_rgb_color): Don't lookup color table. Just do gamma
2909 correction.
2910 (COLOR_INTENSITY): New #define (from xfns.c).
2911 (x_disable_image): New function (from xfns.c).
2912 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2913 (x_build_heuristic_mask): Sync with xfns.c.
2914 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2915 (HAVE_PBM): Remove #ifdef.
2916 (pbm_load): Sync with xfns.c. Set img->width and img->height
2917 before IMAGE_BACKGROUND.
2918 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
2919 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2920 Don't enclose with #if HAVE_PNG.
2921 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
2922 symbol _CGImageCreateWithPNGDataProvider is defined.
2923 Otherwise use image_load_quicktime.
2924 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
2925 [HAVE_PNG] (png_load): Sync with xfns.c.
2926 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2927 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2928 HAVE_JPEG.
2929 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2930 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2931 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2932 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2933 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2934 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2935 HAVE_TIFF.
2936 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2937 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2938 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
2939 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2940 New functions (from xfns.c).
2941 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
2942 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
2943 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2944 Don't enclose with #if HAVE_GIF.
2945 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2946 animated gif. Otherwise use image_load_quicktime.
2947 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2948 gif_DrawText to avoid conflict with QuickdrawText.h.
2949 [HAVE_GIF] (gif_load): Sync with xfns.c.
2950 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2951 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2952 Ghostscript is not supported yet).
2953 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2954 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2955 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2956 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2957 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2958 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2959 HAVE_PNG. Call EnterMovies to support animated gifs.
2960 Call init_image_func_pointer to bind a symbol
2961 _CGImageCreateWithPNGDataProvider if it is defined.
2962
2963 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2964 (x_draw_bar_cursor): Sync declaration with xterm.c.
2965 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2966 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2967 graphics).
2968 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2969 (mac_draw_line_to_pixmap, XCreatePixmap)
2970 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
2971 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2972 New functions.
2973 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2974 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2975 Cast bits to char *.
2976 (reflect_byte): New function (from w32fns.c).
2977 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2978 due to byte alignment.
2979 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2980 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2981 (XSetForeground): Remove static (now used in macfns.c).
2982 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2983 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2984 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2985 (x_draw_glyph_string_box, x_draw_image_foreground)
2986 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2987 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2988 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2989 Sync with xterm.c.
2990 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2991 than the xterm.c version when a strictly horizontal or vertical
2992 line is drawn.
2993 (XTset_terminal_window): Add static.
2994 (x_make_frame_visible): Add UNBLOCK_INPUT.
2995 (x_free_frame_resources): New funcion (from xterm.c).
2996 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2997 occurs in tool bar area.
2998 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2999 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3000 Initialize image cache.
3001 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3002 Enclose unused functions with #if 0.
3003 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3004 (decode_mac_font_name): New function to apply code conversions
3005 from a mac font name to an XLFD font name according to its script code.
3006 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3007 font name to a mac font name according to REGISTRY and ENCODING fields.
3008 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3009 whose name starts with `.'.
3010 (init_font_name_table): Use decode_mac_font_name. Add both
3011 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3012 of a font is smJapanese.
3013 (mac_do_list_fonts): New function to list fonts that match a given
3014 pattern.
3015 (x_list_fonts, XLoadQueryFont): Use it.
3016 (XLoadQueryFont): Set rbearing field for each variable width
3017 character to avoid needless redraw.
3018 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3019
3020 2004-02-26 Kim F. Storm <storm@cua.dk>
3021
3022 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3023 as read_socket_hook handler on X aborts if buffer is too small
3024 and W32 handler doesn't always check buffer limit.
3025
3026 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3027 right-fringe similar to a display margin image. Specifically,
3028 the characters having the fringe prop are no longer shown, and
3029 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3030 do this. Set fringe bitmap face_id in it->face_id.
3031 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3032 still realize it->face (i.e. the fringe bitmap face).
3033
3034 2004-02-25 Miles Bader <miles@gnu.org>
3035
3036 * xdisp.c (check_it): Check string/string_pos consistency.
3037 (init_iterator): Initialize string-related fields properly.
3038
3039 2004-02-11 Miles Bader <miles@gnu.org>
3040
3041 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3042
3043 2004-02-10 Miles Bader <miles@gnu.org>
3044
3045 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3046 BLOCK_INPUT can be nested, so it doesn't make much sense.
3047
3048 2004-02-24 Michael Mauger <mmaug@yahoo.com>
3049
3050 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3051 (xbm_read_bitmap_data): Use unsigned char for image data.
3052
3053 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3054
3055 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3056
3057 2004-02-22 Jason Rumney <jasonr@gnu.org>
3058
3059 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3060 correctly over other bitmaps.
3061
3062 2004-02-21 Eli Zaretskii <eliz@gnu.org>
3063
3064 * emacs.c (USAGE1): Split into two halves.
3065 (USAGE2): Second half of the old USAGE1.
3066 (USAGE3): Rename from USAGE2.
3067 (USAGE4): Rename from USAGE3.
3068
3069 2004-02-21 Juri Linkov <juri@jurta.org>
3070
3071 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3072 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3073 --file. Fix -f, -l. Sort options. Untabify.
3074 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3075
3076 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3077
3078 * category.c (Fdefine_category, Fcategory_docstring)
3079 (Fget_unused_category, Fset_category_table)
3080 (Fcategory_set_mnemonics): Doc fixes.
3081
3082 2004-02-20 Kim F. Storm <storm@cua.dk>
3083
3084 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3085 The following changes are relative to the 2004-01-21 revision.
3086 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3087 in one call to read_socket_hook. Value is 8.
3088 (read_avail_input): Separate and rework handling of read_socket_hook
3089 and non-read_socket_hook cases. Use smaller input_event buffer
3090 in read_socket_hook case, and repeat if full buffer is read.
3091 Use new local variable 'discard' to skip input after C-g.
3092 In non-read_socket_hook case, just use a single input_event, and
3093 call kbd_buffer_store_event on the fly for each character.
3094
3095 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3096
3097 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3098 Remove unused `gu' alternative.
3099
3100 2004-02-19 Andreas Schwab <schwab@suse.de>
3101
3102 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3103 warning.
3104
3105 2004-02-18 Kim F. Storm <storm@cua.dk>
3106
3107 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3108 Fix last change.
3109
3110 2004-02-17 Kim F. Storm <storm@cua.dk>
3111
3112 * xdisp.c (fast_find_position): Fix return value of new version;
3113 it was inverted compared to the 21.1 version.
3114 (get_window_cursor_type): Don't look at glyph if NULL.
3115 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3116
3117 * keyboard.c: Rework previous change; it didn't consider that the
3118 buf array was allocated on the stack.
3119 (prev_read): Remove variable.
3120 (read_avail_input_buf): New static event buffer array.
3121 (in_read_avail_input): New static variable to handle re-entrancy.
3122 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3123 Use in_read_avail_input to handle re-entrance; when re-entered,
3124 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3125 Do not initialize read_avail_input_buf in full here; instead assume it
3126 is always cleared on entry. To ensure that, we clear (just) the
3127 entries that were used before we return.
3128 (init_keyboard): Initialize read_avail_input_buf here.
3129
3130 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
3131
3132 * cmds.c (Fend_of_line): Doc fix.
3133
3134 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3135
3136 * keyboard.c (prev_read): New static variable.
3137 (read_avail_input): Use it to zero out only those slots in buf[]
3138 that were used last time we were called.
3139
3140 2004-02-16 Eli Zaretskii <eliz@gnu.org>
3141
3142 * Makefile.in (obj): Move fringe.o from here...
3143 (XOBJ, MAC_OBJ): ...to here.
3144
3145 2004-02-16 Stephen Eglen <stephen@gnu.org>
3146
3147 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3148
3149 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3150
3151 * data.c (Fbyteorder):
3152 * fringe.c (Fdefine_fringe_bitmap):
3153 * xdisp.c (handle_single_display_prop):
3154 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3155
3156 2004-02-16 Jason Rumney <jasonr@gnu.org>
3157
3158 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3159
3160 2004-02-15 Steven Tamm <steventamm@mac.com>
3161
3162 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3163 controlling emulation of a three button mouse with option and
3164 command keys.
3165 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3166 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3167
3168 2004-02-15 Kim F. Storm <storm@cua.dk>
3169
3170 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3171
3172 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3173 Perform byte-swapping.
3174
3175 2004-02-14 Kim F. Storm <storm@cua.dk>
3176
3177 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3178 bits from char to short to facilitate wider bitmaps.
3179 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3180 member.
3181
3182 * fringe.c (struct fringe_bitmap): Change member bits from char to
3183 short to facilitate 16 bits wide bitmaps. Modify all standard
3184 bitmaps accordingly.
3185 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3186 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3187 (draw_fringe_bitmap): Ditto.
3188 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3189 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3190 handle up to 16 bits wide bitmaps.
3191 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3192 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3193
3194 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3195 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3196 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3197
3198 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3199 so it is no longer necessary to expand them here.
3200
3201 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3202
3203 2004-02-12 Kim F. Storm <storm@cua.dk>
3204
3205 * window.c (Fwindow_fringes): Doc fix.
3206
3207 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3208
3209 * xselect.c (x_get_foreign_selection): Add new optional parameter
3210 time_stamp.
3211 (Fx_get_selection_internal): Ditto, pass time_stamp to
3212 x_get_foreign_selection.
3213
3214 * data.c (Fbyteorder): New function.
3215
3216 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3217
3218 * atimer.c: Move include stdio.h to same place as in other files.
3219
3220 * region-cache.c: Ditto.
3221
3222 * sysdep.c: Ditto.
3223
3224 * xfaces.c: Ditto.
3225
3226 2004-02-09 Sam Steingold <sds@gnu.org>
3227
3228 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
3229
3230 2004-02-09 Kim F. Storm <storm@cua.dk>
3231
3232 * fringe.c: New file. Move original fringe related declarations
3233 and code from dispextern.h and xdisp.c here.
3234 Rework code to support user defined fringe bitmaps, redefining
3235 standard bitmaps, ability to overlay user defined bitmap with
3236 overlay arrow bitmap, and add faces to bitmaps.
3237 (Voverflow_newline_into_fringe): Declare here.
3238 (enum fringe_bitmap_align): New enum.
3239 (..._bits): All bitmaps are now defined without bitswapping; that
3240 is now done in init_fringe_once (if necessary).
3241 (standard_bitmaps): New array with specifications for the
3242 standard fringe bitmaps.
3243 (fringe_faces): New array.
3244 (valid_fringe_bitmap_id_p): New function.
3245 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3246 (draw_fringe_bitmap): New function which draws fringe bitmap,
3247 possibly overlaying bitmap with cursor in right fringe or the
3248 overlay arrow in the left fringe.
3249 (update_window_fringes): Do not handle overlay arrow here.
3250 Compare and copy fringe bitmap faces.
3251 (init_fringe_bitmap): New function.
3252 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3253 define and destroy user defined fringe bitmaps.
3254 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3255 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3256 (syms_of_fringe): New function. Defsubr new DEFUNs.
3257 DEFVAR_LISP Voverflow_newline_into_fringe.
3258 (init_fringe_once, init_fringe): New functions.
3259 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
3260
3261 * Makefile.in (obj): Add fringe.o.
3262 (fringe.o): New dependencies.
3263
3264 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3265 bits allocated to hold a fringe number. Increase number of bits
3266 from 4 to 8 to allow user defined fringe bitmaps.
3267 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3268 left_user_fringe_face_id, right_user_fringe_bitmap,
3269 right_user_fringe_face_id.
3270 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3271 Move to new file fringe.c.
3272 (MAX_FRINGE_BITMAPS): Define here.
3273 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3274 and overlay_p. Change member which to int.
3275 (struct redisplay_interface): New members define_fringe_bitmap
3276 and destroy_fringe_bitmap.
3277 (valid_fringe_bitmap_id_p): Add prototype.
3278 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3279
3280 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3281 arrows.
3282 (update_frame): Do flush_display if force_flush_display_p to
3283 ensure display (specifically fringes) are updated in a timely
3284 manner when resizing the frame by dragging the mouse.
3285 (update_window_line): Update row if overlay arrow changed.
3286 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3287 or overlay arrow changed.
3288
3289 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3290 syms_of_fringe, and init_fringe.
3291
3292 * frame.h (struct frame): New member force_flush_display_p.
3293
3294 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3295 Add prototypes.
3296
3297 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
3298 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
3299 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3300 Use cursor color for displaying cursor in fringe.
3301 (x_redisplay_interface): Add null handlers for
3302 define_fringe_bitmap and destroy_fringe_bitmap functions.
3303
3304 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3305 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3306 for displaying cursor in fringe.
3307 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3308 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3309 (w32_redisplay_interface): Add them to redisplay_interface.
3310 (w32_term_init): Call w32_init_fringe instead of explicitly
3311 defining fringe bitmaps in fringe_bmp array.
3312 (x_delete_display): Call w32_reset_fringes instead of explicitly
3313 destroying fringe bitmaps in fringe_bmp array.
3314
3315 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3316 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3317 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3318 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3319 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3320 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3321 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3322 Move fringe handling vars and code to new file fringe.c.
3323 (handle_display_prop): Handle left-fringe and right-fringe
3324 display properties; store user fringe bitmaps in iterator.
3325 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3326 (clear_garbaged_frames): Set force_flush_display_p if resized.
3327 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3328 (display_line): Handle cursor in fringe at eob.
3329 (display_line): Set row user fringe bitmaps from iterator.
3330
3331 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3332 Use cursor color for displaying cursor in fringe.
3333 (x_redisplay_interface): Add null handlers for
3334 define_fringe_bitmap and destroy_fringe_bitmap functions.
3335
3336 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3337
3338 * macfns.c (Fx_change_window_property): Make doc string and
3339 parameters same as for X version.
3340
3341 * w32fns.c (Fx_change_window_property): Ditto.
3342
3343 2004-02-07 Kim F. Storm <storm@cua.dk>
3344
3345 * xdisp.c (hscroll_window_tree): Position cursor near to right
3346 margin in hscrolled window when jumping to end of line (rather
3347 than centering cursor).
3348
3349 * process.c (wait_reading_process_input): Don't do adaptive read
3350 buffering if waiting for a specific process.
3351
3352 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3353
3354 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3355 (Fread_minibuffer, Feval_minibuffer)
3356 (Fread_string, Fread_no_blanks_input)
3357 (Fcompleting_read): Doc fixes.
3358 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3359 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3360 (read_minibuf): Fix initial comment.
3361 (Ftry_completion, Fall_completions, Ftest_completion): Bind
3362 case-fold-search to the value of completion-ignore-case when
3363 checking completion-regexp-list.
3364 (Fdisplay_completion_list): Make it handle arguments that are
3365 symbols. Doc fix.
3366
3367 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3368
3369 * xterm.h: Add declaration of free_frame_menubar.
3370
3371 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3372 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
3373 (Fx_change_window_property): Add declaration of parameters type and
3374 format. Remove unused variable cons.
3375
3376 * xselect.c: Include stdio,h.
3377
3378 2004-02-05 Kenichi Handa <handa@m17n.org>
3379
3380 * fns.c (Fset_char_table_range): Fix previous change.
3381
3382 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3383
3384 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3385
3386 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3387
3388 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3389
3390 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3391 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3392
3393 2004-02-04 Kenichi Handa <handa@m17n.org>
3394
3395 * fns.c (Fset_char_table_range): Handle charsets ascii,
3396 eight-bit-control, and eight-bit-graphic correctly.
3397
3398 2004-02-03 Jason Rumney <jasonr@gnu.org>
3399
3400 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3401
3402 * w32fns.c (x_to_w32_font): Likewise.
3403
3404 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3405
3406 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3407 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3408
3409 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3410 ClientMessages.
3411
3412 * xselect.c: Include termhooks.h and X11/Xproto.h
3413 (x_check_property_data, x_fill_property_data)
3414 (x_property_data_to_lisp, mouse_position_for_drop)
3415 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
3416 (Fx_send_client_event): Move here from xfns.c.
3417 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3418
3419 * xfns.c (x-send-client-message): Move to xselect.c
3420 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3421 OUTER_P.
3422 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3423 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3424 if vector_ret_p is true.
3425 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
3426
3427 2004-02-02 Eli Zaretskii <eliz@gnu.org>
3428
3429 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3430 basename of FILE relative to it, not FILE itself.
3431
3432 2004-02-02 Kenichi Handa <handa@m17n.org>
3433
3434 * coding.c (coding_restore_composition): Check invalid
3435 composition data more rigidly.
3436
3437 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3438
3439 * fileio.c (Fread_file_name_internal): Correctly handle the case
3440 where insert-default-directory is nil.
3441 (Fread_file_name): Always return an empty string if the user exits
3442 with an empty minibuffer. Adapt the docstring accordingly.
3443 (syms_of_fileio): Adapt the docstring of insert-default-directory
3444 to the change in Fread_file_name.
3445
3446 2004-01-29 Eli Zaretskii <eliz@gnu.org>
3447
3448 * alloca.c [!alloca]: Fix the prototype for xfree.
3449
3450 2004-01-29 Kenichi Handa <handa@m17n.org>
3451
3452 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3453 (string_byte_to_char): Likewise.
3454
3455 2004-01-28 Peter Runestig <peter@runestig.com>
3456
3457 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3458
3459 2004-01-27 Steven Tamm <steventamm@mac.com>
3460
3461 * unexmacosx.c (unexec_copy): Do not copy more than was
3462 requested to prevent overwriting during unexec.
3463
3464 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3465
3466 * process.c (sigchld_handler): Add comment about not calling malloc.
3467
3468 * process.h: Add extern to synch_process_termsig.
3469
3470 2004-01-27 Steven Tamm <steventamm@mac.com>
3471
3472 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3473 Move setting of scroll bars from make_mac_frame to
3474 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
3475
3476 2004-01-26 Richard M. Stallman <rms@gnu.org>
3477
3478 * search.c (Freplace_match): Handle nonexistent
3479 back-references properly.
3480
3481 2004-01-03 Richard M. Stallman <rms@gnu.org>
3482
3483 * window.c (decode_any_window): New function.
3484 (Fwindow_height, Fwindow_width, Fwindow_edges)
3485 (Fwindow_pixel_edges, Fwindow_inside_edges)
3486 (Fwindow_inside_pixel_edges): Use decode_any_window.
3487
3488 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3489
3490 * process.h: synch_process_termsig new variable.
3491
3492 * callproc.c: Define synch_process_termsig.
3493 (Fcall_process): Initiate synch_process_termsig to zero and
3494 check if non-zero and get signal name after subprocess has ended.
3495
3496 * process.c (sigchld_handler): Set synch_process_termsig
3497 if terminated by a signal. synch_process_death setting removed.
3498
3499 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3500
3501 2004-01-26 Andreas Schwab <schwab@suse.de>
3502
3503 * print.c (print_preprocess): Declare size as EMACS_INT to not
3504 lose bits.
3505 (print_object): Likewise.
3506 * alloc.c (Fpurecopy): Likewise.
3507
3508 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3509
3510 * window.c (Fwindow_minibuffer_p): Doc fix.
3511
3512 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3513
3514 * editfns.c (Fformat): Make both passes accept the same set of flags.
3515
3516 2004-01-23 Kenichi Handa <handa@m17n.org>
3517
3518 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3519 one, set buffer to OBJECT temporarily.
3520
3521 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3522
3523 * keyboard.c (kbd_buffer_gcpro): Remove.
3524 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3525 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3526 Don't initialize and/or maintain the variable any more. It was made
3527 redundant by my commit of 2003-06-15.
3528
3529 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3530
3531 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3532
3533 * lisp.h: Add undef DECL_ALIGN.
3534
3535 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3536
3537 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3538 Check interrupt_input_pending explicitly.
3539
3540 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3541
3542 * keyboard.c (handle_async_input): New fun,
3543 extracted from input_available_signal.
3544 (input_available_signal, reinvoke_input_signal): Use it.
3545
3546 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3547
3548 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3549
3550 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3551 manipulation macros for when tags are in the lower bits.
3552 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3553 (DECL_ALIGN): New macro.
3554 (DEFUN): Use it.
3555
3556 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3557
3558 * s/darwin.h (__attribute__): Remove outdated workaround.
3559
3560 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3561
3562 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3563 Don't check range of malloc address.
3564 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3565
3566 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3567
3568 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3569
3570 2004-01-19 Kenichi Handa <handa@m17n.org>
3571
3572 * fontset.c (fontset_font_pattern): Fix previous change.
3573
3574 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3575
3576 * xdisp.c (Voverflow_newline_into_fringe)
3577 (move_it_in_display_line_to, redisplay_internal)
3578 (update_window_fringes, redisplay_window, display_line, window):
3579 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3580 that it compiles without a window-system.
3581 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3582
3583 2004-01-16 Kim F. Storm <storm@cua.dk>
3584
3585 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3586
3587 * buffer.c (init_buffer_once): Set buffer_defaults and
3588 buffer_local_flags for indicate_buffer_boundaries.
3589 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3590 default- variable for it.
3591
3592 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3593 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
3594 New members exact_window_width_line_p and cursor_in_fringe_p for
3595 overflowing newlines into right fringe.
3596 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3597 and indicate_bottom_line_p for buffer boundaries and scrolling.
3598 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3599 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3600 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3601 and HOLLOW_SQUARE_BITMAP.
3602 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3603 Add prototypes.
3604
3605 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3606 instead of related indicator fields.
3607 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3608 (direct_output_for_insert): Handle exact width lines like
3609 contined lines. Call update_window_fringes.
3610 (update_window): Call update_window_fringes.
3611 (scrolling_window): Don't skip desired rows with changed bitmaps.
3612 Check if fringe bitmaps changes when assigning scrolled rows.
3613
3614 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3615 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3616 (move_it_in_display_line_to): Overflow newline into fringe for
3617 rows that are exactly as wide as the window.
3618 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3619 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3620 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3621 (fringe_bitmaps): Add new bitmaps.
3622 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3623 Select proper bitmap for cursor in fringe when appropriate.
3624 Handle alignment of bitmap to top or bottom of row.
3625 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3626 done by update_window_fringes.
3627 (update_window_fringes, draw_window_fringes): New functions.
3628 (redisplay_internal): Call update_window_fringes in case only
3629 cursor row is updated.
3630 (redisplay_window): Call update_window_fringes.
3631 Explicitly call draw_window_fringes if redisplay was done using
3632 the current matrix or the overlay arrow is in the window.
3633 (try_window_reusing_current_matrix): Mark scrolled rows for
3634 fringe update (to update buffer-boundaries / scrolling icons).
3635 (find_last_unchanged_at_beg_row): Handle exact width lines line
3636 continued lines.
3637 (display_line): Overflow newline into fringe for rows that are
3638 exactly as wide as the window. Don't append space for newline
3639 in this case.
3640 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3641 in fringe as if it had been overwritten.
3642 (erase_phys_cursor): Erase cursor bitmap in fringe.
3643 (syms_of_xdisp): Mark show-trailing-whitespace and
3644 void-text-area-pointer as user options.
3645 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
3646
3647 * xterm.c (x_update_window_end): Call draw_window_fringes.
3648 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3649 in row instead of actually drawing fringe bitmaps.
3650 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3651 (x_draw_window_cursor): Draw cursor in fringe.
3652
3653 * w32term.c (x_update_window_end): Call draw_window_fringes.
3654 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3655 in row instead of actually drawing fringe bitmaps.
3656 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3657 (w32_draw_window_cursor): Draw cursor in fringe.
3658
3659 * macterm.c (x_update_window_end): Call draw_window_fringes.
3660 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3661 in row instead of actually drawing fringe bitmaps.
3662 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3663 (mac_draw_window_cursor): Draw cursor in fringe.
3664
3665 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3666
3667 * xterm.c (handle_one_xevent): Don't handle characters that are part
3668 of an old style (XLookupString) compose sequence.
3669
3670 2004-01-15 Kenichi Handa <handa@m17n.org>
3671
3672 * search.c (Freplace_match): Use make_multibyte_string or
3673 make_unibyte_string according to the buffer multibyteness.
3674
3675 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3676
3677 * alloc.c (struct interval_block, struct string_block)
3678 (struct symbol_block, struct marker_block, live_string_p)
3679 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3680 Better preserve alignment for objects in blocks.
3681 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3682
3683 * lread.c (defvar_per_buffer): Remove dead declaration.
3684
3685 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3686 space size.
3687
3688 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3689
3690 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3691 if a key press should pop down. Only pop down if a key is pressed
3692 outside the menu/dialog.
3693 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3694 popup_get_selection.
3695 (create_and_show_dialog): Pass 1 for down_on_keypress to
3696 popup_get_selection.
3697
3698 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3699
3700 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3701 BLOCK/UNBLOCK_INPUT.
3702
3703 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3704
3705 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3706 specified.
3707
3708 2004-01-08 Kenichi Handa <handa@m17n.org>
3709
3710 * editfns.c (Fformat): Fix '&' to '&&'.
3711
3712 2004-01-08 Andreas Schwab <schwab@suse.de>
3713
3714 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3715 size if PSEUDOVECTOR_FLAG is set.
3716
3717 2004-01-07 Kenichi Handa <handa@m17n.org>
3718
3719 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3720
3721 * fontset.c (fontset_ref_via_base): Fix previous change.
3722
3723 2004-01-07 Kim F. Storm <storm@cua.dk>
3724
3725 * process.c (read_process_output): Only activate adaptive
3726 buffering if we read less than 256 bytes at a time.
3727
3728 2004-01-06 Kim F. Storm <storm@cua.dk>
3729
3730 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3731 object and image object. Return glyph width and height.
3732 (mode_line_string, marginal_area_string): Ditto.
3733
3734 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3735 (marginal_area_string): Fix prototypes.
3736
3737 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
3738 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
3739 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3740
3741 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3742 buffer_posn_from_coords, and marginal_area_string functions to
3743 include both string object and image object in the lispy position.
3744 Also add actual glyph width and height to position.
3745 (read_key_sequence): Use real buffer position from mouse
3746 event to find keymap property even when click is in marginal area.
3747
3748 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3749 mode_line_string and marginal_area_string functions to handle
3750 both string object and image object properties.
3751
3752 2004-01-06 Andreas Schwab <schwab@suse.de>
3753
3754 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3755 character.
3756
3757 2004-01-02 Andreas Schwab <schwab@suse.de>
3758
3759 * macterm.c (emacs_options, x_initialized, same_x_server):
3760 Remove unused (and duplicated) definitions.
3761
3762 2004-01-02 Kim F. Storm <storm@cua.dk>
3763
3764 * process.h (struct Lisp_Process): New members for adaptive read
3765 buffering: adaptive_read_buffering, read_output_delay, and
3766 read_output_skip.
3767
3768 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3769 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3770 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3771 (process_output_delay_count, process_output_skip): New vars.
3772 (Vprocess_adaptive_read_buffering): New variable.
3773 (make_process): Initialize adaptive read buffering members.
3774 (Fstart_process): Set adaptive_read_buffering member.
3775 (deactivate_process): Cleanup adaptive read buffering.
3776 (wait_reading_process_input): Temporarily omit delayed
3777 subprocesses from the set of file descriptors to read from;
3778 adjust the select timeout if we skipped any subprocesses.
3779 (read_process_output): Increase adaptive read buffering delay if
3780 we read less than a full buffer; reduce delay when we read a
3781 full buffer.
3782 (send_process): Simplify using local Lisp_Process var.
3783 Reset adaptive read buffering delay after write.
3784 (init_process): Initialize process_output_delay_count and
3785 process_output_skip.
3786 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3787
3788 2004-01-01 Jason Rumney <jasonr@gnu.org>
3789
3790 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
3791
3792 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3793
3794 * print.c (Ferror_message_string): Add hyperlink in the docstring
3795 to the definition of `signal' in the Elisp manual.
3796 * eval.c (Fsignal): Ditto.
3797
3798 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
3799
3800 * fns.c (internal_equal): Return t for two NaN arguments.
3801
3802 2003-12-29 Richard M. Stallman <rms@gnu.org>
3803
3804 * data.c (store_symval_forwarding): Handle setting
3805 default-fill-column, etc., by changing the value in
3806 buffers that use the default.
3807
3808 * minibuf.c (Fset_minibuffer_window): Doc fix.
3809
3810 * fileio.c (choose_write_coding_system): Ignore auto_saving
3811 if using the visited file for auto saves.
3812 (Fwrite_region): Don't update SAVE_MODIFF
3813 if auto-saving in visited file.
3814
3815 2003-12-29 Kenichi Handa <handa@m17n.org>
3816
3817 * dispextern.h (face_font_available_p): Extern it.
3818
3819 * fontset.c (Voverriding_fontspec_alist): New variable.
3820 (lookup_overriding_fontspec): New function.
3821 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3822 (fontset_font_pattern): Likewise.
3823 (regulalize_fontname): New function.
3824 (Fset_fontset_font): Call regulalize_fontname.
3825 (Fset_overriding_fontspec_internal): New function.
3826 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3827 Defsubr Sset_overriding_fontspec_internal.
3828
3829 * xfaces.c (face_font_available_p): New function.
3830
3831 2003-12-28 Richard M. Stallman <rms@gnu.org>
3832
3833 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3834 or if its name is nil.
3835
3836 * buffer.c (Fkill_buffer): Don't delete auto-save file
3837 if it's the same as the visited file.
3838
3839 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3840
3841 * coding.c (Fcheck_coding_system): Doc fix.
3842
3843 2003-12-28 Kim F. Storm <storm@cua.dk>
3844
3845 * Makefile.in (eval.o): Depend on dispextern.h.
3846
3847 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3848 image glyph using image's ascent.
3849 (mode_line_string): Return image glyph as object clicked on.
3850 Adjust y0 for image glyph using image's ascent.
3851
3852 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3853 (struct glyph): New members, ascent and descent. Used to save
3854 this glyph's ascent and descent, instead of having.
3855 (struct glyph): Declare member face_id using FACE_ID_BITS.
3856 (find_hot_spot): Add prototype.
3857
3858 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3859 (QCmap): Declare extern.
3860 (make_lispy_position): When position is inside image hot-spot,
3861 use hot-spot element's id as posn element.
3862
3863 * lisp.h (IMAGEP): New macro to test for image object type.
3864 (Qimage): Declare extern.
3865
3866 * macfns.c (Qimage): Remove extern (now in lisp.h).
3867 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3868
3869 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3870
3871 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3872 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3873
3874 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3875
3876 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3877
3878 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3879 pointer types.
3880 (Qrelative_width, Qalign_to): Remove unused variables.
3881 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3882 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3883 image maps.
3884 (x_y_to_hpos_vpos): Return glyph relative coordinates through
3885 new dx and dy args.
3886 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3887 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3888 than row's ascent and height, to get sensible height on tall rows.
3889 (build_desired_tool_bar_string): Remove Qimage extern.
3890 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3891 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3892 image glyph is alone on the last line.
3893 (append_glyph, append_composite_glyph, produce_image_glyph)
3894 (append_stretch_glyph): Set glyph's ascent and descent.
3895 (on_hot_spot_p): New function to check if position is inside an
3896 rectangular, circular, or polygon-shaped image hot-spot,
3897 (find_hot_spot): New function to search for image hot-spot.
3898 (Flookup_image_map): New defun to search for image hot-spot.
3899 (define_frame_cursor1): New aux function to determine frame pointer.
3900 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3901 Handle `pointer' text property and :pointer image property to
3902 control frame pointer shape. Detect image hot-spots for pointer
3903 and help_echo properties. Use define_frame_cursor1.
3904 (note_mouse_highlight): Use Vvoid_text_area_pointer.
3905 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
3906 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3907
3908 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3909
3910 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3911 (Qimage): Remove extern (now in lisp.h).
3912 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3913
3914 * xmenu.c (show_help_event): Remove unused code.
3915
3916 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3917 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3918 row's ascent and descent, to get a sensible height on tall rows.
3919
3920 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3921
3922 * minibuf.c (Fcompleting_read): Undo previous change.
3923
3924 2003-12-25 Lars Hansen <larsh@math.ku.dk>
3925
3926 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3927 Arguments GCPRO'ed in call to file name handler.
3928
3929 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3930
3931 * termcap.c (tgetst1): Scan for "%pN"; if all
3932 N are continuous in [1,9], remove all "%pN".
3933
3934 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3935
3936 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3937
3938 * xfaces.c (lface_fully_specified_p): Take into account that
3939 MAC OS always have unspecified stipple.
3940
3941 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3942
3943 * tparam.c (tparam1): Add handling for `%pN', which
3944 means use param N for the next substitution.
3945
3946 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3947
3948 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3949 In case `frame' is nil, consult the selected frame.
3950 (Fcolor_supported_p): Likewise.
3951
3952 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3953
3954 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3955 Doc fixes.
3956
3957 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3958 and an integer. Adapt the introductory comment accordingly.
3959 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3960 Doc fix.
3961 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3962 read_minibuf.
3963 (Fcompleting_read): Delete code moved into read_minibuf.
3964 (Ftest_completion): Make it handle obarrays and hash tables correctly.
3965
3966 2003-12-03 Kenichi Handa <handa@m17n.org>
3967
3968 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3969 encoding sequence.
3970
3971 2003-12-01 Kenichi Handa <handa@m17n.org>
3972
3973 * composite.c (syms_of_composite): Don't make the compostion hash
3974 table week.
3975
3976 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3977
3978 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3979 * textprop.c (Fget_char_property_and_overlay): New function.
3980 (syms_of_textprop): Defsubr it.
3981
3982 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3983
3984 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3985 to compile on terminal configuration.
3986
3987 * fileio.c (Fread_file_name): Check use_file_dialog also before
3988 calling Fx_file_dialog.
3989
3990 * fns.c: use_file_dialog: New variable.
3991 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3992
3993 2003-11-29 Kim F. Storm <storm@cua.dk>
3994
3995 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3996 (syms_of_msdos): Don't intern and staticpro them.
3997
3998 2003-11-27 Kim F. Storm <storm@cua.dk>
3999
4000 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4001 coordinates relative to glyph at posn. If glyph is an image,
4002 return that as object at posn. Callers changed.
4003 (mode_line_string, marginal_area_string): Calculate and return
4004 pixel coordinates relative to glyph. Callers changed.
4005
4006 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4007 (marginal_area_string): Fix prototypes.
4008 (window_box_left_offset, window_box_right_offset): Add prototypes.
4009
4010 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4011 Remove prototypes.
4012
4013 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4014
4015 * keyboard.c (make_lispy_position): Add x and y coordinates
4016 relative to the current glyph as 7th element of position.
4017 If glyph is an image, return it in the object element.
4018 (read_key_sequence): Skip checks for keymap property in cases
4019 where POSN_STRING is not a string (e.g. an image).
4020
4021 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4022 (Vshow_text_cursor_in_void): New variable.
4023 (glyph_to_pixel_coords): Don't use negative hpos.
4024 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4025 (append_stretch_glyph): Change ascent arg to be actual value
4026 in pixels rather than ratio to height. Callers changed.
4027 (calc_pixel_width_or_height): New aux function, implementing
4028 pixel based artihmetic for glyph widths and heights.
4029 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4030 :width, :height, :align-to, and :ascent, thus allowing these to
4031 be specified in pixels as well as multiples of characters.
4032 Don't produce stretch glyphs with zero width or height.
4033 (get_specified_cursor_type): Declare static.
4034 (get_window_cursor_type): Declare static. Add glyph arg to be
4035 able to know when cursor is on an image; always substitute
4036 hollow-box cursor for filled-box cursor on images, to avoid
4037 negative images and flicker when blinking the cursor.
4038 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4039 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4040 than vertical scroll-bar cursor in display margins.
4041 (note_mouse_highlight): Use non-text cursor rather than text
4042 cursor in fringes and over images in the text area.
4043 Use non-text cursor when mouse pointer is outside editable text,
4044 i.e. in the void after end-of-line or end-of-buffer; this was
4045 already done for W32, but is now standard for all systems --
4046 user can toggle show-text-cursor-in-void to get old behaviour.
4047 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4048 Vdisplay_pixels_per_inch.
4049
4050 2003-11-25 Andreas Schwab <schwab@suse.de>
4051
4052 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4053 EMACS_INT to not lose bits.
4054 (Ffillarray): Don't set bits beyond the size of a bool vector.
4055
4056 2003-11-25 Kim F. Storm <storm@cua.dk>
4057
4058 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4059 define this defun on systems that cannot use stderr as lvalue.
4060
4061 2003-11-24 Gerd Moellmann <gerd@gnu.org>
4062
4063 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4064 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4065 ld's default is incompatible with unexec.
4066
4067 2003-11-23 Kim F. Storm <storm@cua.dk>
4068
4069 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4070 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4071 (Fforce_window_update): New defun.
4072 (syms_of_window): Defsubr it.
4073 (Fset_window_margins, Fset_window_fringes): Doc fix.
4074
4075 * print.c (Fredirect_debugging_output): New defun.
4076 (syms_of_print): Defsubr it.
4077
4078 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4079
4080 * fns.c (Fset_char_table_parent): Doc fix.
4081
4082 2003-11-22 Kim F. Storm <storm@cua.dk>
4083
4084 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4085 for glyph clicked on, rather than (unused) pixel positions.
4086 (mode_line_string, marginal_area_string): Change X and Y args to
4087 pointers for returning actual row/column for glyph clicked on.
4088 Simplify and optimize loops.
4089
4090 * dispextern.h (mode_line_string, marginal_area_string):
4091 Update prototypes.
4092
4093 * keyboard.c (make_lispy_position): New function for generating
4094 mouse click positions from frame and pixel coordinates.
4095 Enhanced to return buffer position and actual row/column for
4096 events outside the text area using updated mode_line_string and
4097 marginal_area_string functions.
4098 Return left-fringe and right-fringe clicks as such, rather than
4099 clicks in text area.
4100 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4101 pixel_to_glyph_coords, as we never use the results.
4102 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4103 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4104 Eliminate unused code in WHEEL_EVENT handling.
4105 (make_lispy_movement): Use make_lispy_position.
4106
4107 * window.c (coordinates_in_window): Remove redundant tests.
4108 Fix returned X pixel value for left-margin.
4109
4110 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4111 mode_line_string and marginal_area_string parameters.
4112
4113 2003-11-22 Lars Hansen <larsh@math.ku.dk>
4114
4115 * w32.c (struct the_group, getgrgid): Add.
4116 * mac.c (struct my_group, getgrgid): Add.
4117
4118 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4119
4120 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4121
4122 2003-11-21 Lars Hansen <larsh@math.ku.dk>
4123
4124 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4125 include in call to file name handler. Optionally translate numeric
4126 UID and GID to strings. Update docstring.
4127 (directory_files_internal): Add parameter ID-FORMAT.
4128 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4129 include in call to file name handler and call to
4130 directory_files_internal. Update Docstring.
4131 (Fdirectory_files): Add dummy parameter in call to
4132 directory_files_internal.
4133 * lisp.h (Qinteger): Add.
4134 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4135 (Ffile_attributes): Add parameter.
4136 * data.c (Qinteger): Export.
4137
4138 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4139
4140 * fns.c (Freverse, Fnreverse): Doc fixes.
4141
4142 2003-11-19 Kim F. Storm <storm@cua.dk>
4143
4144 * xdisp.c (init_iterator): Initialize it->start to position
4145 before reseating (in case start position is invisible).
4146 (init_to_row_start): Set it->start to row-start.
4147 (redisplay_window): Accept optional_new_start if start position
4148 is invisible (in which case IT_CHARPOS overshoots PT).
4149 (display_line): Setup row->start from it->start (rather than
4150 it->current which is wrong if first char on line is invisible).
4151 When done, reseat it->start to it->current (= start of next row).
4152 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4153 is only partially visible.
4154
4155 * dispextern.h (struct it): New member start.
4156
4157 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4158
4159 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4160 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4161 of block_index outside of the macro call.
4162 (Fgarbage_collect): Remove null code.
4163
4164 * m/amdx86-64.h: Don't redefine XPNTR.
4165
4166 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4167 of VALMASK.
4168
4169 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4170 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4171 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4172
4173 * lisp.h (VALMASK): Only define for non-union type.
4174 (MARKBIT): Remove.
4175 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4176 (XTYPE): Define unconditionally.
4177 (XSETTYPE): Remove one more remnant.
4178 (EQ): Define differently for the union and non-union cases.
4179 (INTMASK): New bit mask.
4180 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4181 (GC_EQ): Delegate to EQ.
4182
4183 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4184
4185 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4186
4187 * xterm.c (x_window_to_scroll_bar): Move check of display to
4188 where window_id is compared.
4189
4190 2003-11-17 Kim F. Storm <storm@cua.dk>
4191
4192 * dispextern.h (struct it): New member first_vpos.
4193
4194 * xdisp.c (start_display): Set it->first_vpos.
4195 (try_window_id): Use first_vpos to start display in first _text_
4196 line if no reusable lines at start of window with header line.
4197
4198 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4199
4200 * w32fns.c (XPutPixel):
4201 * w32bdf.c (w32_init_bdf_font):
4202 * sunfns.c (sel_read):
4203 * process.c (Fmake_network_process):
4204 * frame.c (store_frame_param):
4205 * fontset.c (Fset_fontset_font):
4206 * emacs.c (shut_down_emacs):
4207 * ccl.c (ccl_driver): Remove period at end of error message.
4208
4209 * config.in: Regenerate.
4210
4211 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4212 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4213 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4214 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4215 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4216
4217 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4218
4219 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4220 (XTmouse_position, handle_one_xevent): Pass Display* to
4221 x_window_to_scroll_bar.
4222 (x_window_to_scroll_bar): Take a Display* argument.
4223 Check that display for frame is equal to Display* argument.
4224 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
4225 x_display_info_for_display instead. Use Display in xev instead
4226 of GDK_DISPLAY.
4227 (x_dispatch_event): Call x_display_info_for_display.
4228 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
4229 (x_connection_closed): Call xg_display_close for GTK.
4230 (x_term_init): Call xg_display_open for additional displays.
4231 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4232 for GTK.
4233
4234 * xmenu.c (single_menu_item, mouse_position_for_popup)
4235 (x_activate_menubar): Formatting adjustments.
4236
4237 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4238 adjustments.
4239
4240 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4241 (xg_display_close, xg_create_default_cursor)
4242 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4243 handling.
4244 (xg_left_ptr_cursor): Remove.
4245 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
4246 cursor here.
4247 (xg_win_to_widget): Take Display* argument, call
4248 gdk_xid_table_lookup_for_display.
4249 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4250 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4251 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4252 in FRAME_X_DISPLAY_INFO.
4253 (xg_get_scroll_id_for_window): Take Display* argument.
4254 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
4255 (xg_initialize): Remove xg_left_ptr_cursor.
4256
4257 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4258 Display* argument also. Declare xg_display_open,
4259 xg_display_close, xg_create_default_cursor.
4260
4261 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4262
4263 * xterm.c (x_detect_focus_change): Do not change focus frame for
4264 Enter/LeaveNotify if the current focus frame has explicit focus.
4265
4266 2003-11-14 Kim F. Storm <storm@cua.dk>
4267
4268 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4269 is active and first glyph is only partially visible.
4270
4271 2003-11-13 Kenichi Handa <handa@m17n.org>
4272
4273 * xdisp.c (select_frame_for_redisplay): New function.
4274 (redisplay_internal): Record also selected_frame for
4275 unwind_redisplay. Call select_frame_for_redisplay before
4276 redrawing each frame.
4277 (unwind_redisplay): Argument changed to a cons.
4278
4279 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4280
4281 * fns.c (Fstring_to_multibyte): Doc fix.
4282
4283 2003-11-11 Kenichi Handa <handa@m17n.org>
4284
4285 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4286
4287 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4288
4289 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4290 program specified positions.
4291
4292 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4293
4294 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4295
4296 2003-11-08 Kenichi Handa <handa@m17n.org>
4297
4298 * Makefile.in (lisp): Add kannada.el.
4299 (shortlisp): Likewise.
4300
4301 2003-11-07 Kenichi Handa <handa@m17n.org>
4302
4303 * coding.c (coding_allocate_composition_data):
4304 Reset coding->composing to COMPOSITION_NO.
4305 (coding_restore_composition): Detect invalid composition data.
4306 Give Fstring and Fvector a Lispy integer, not C int.
4307
4308 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4309
4310 * floatfns.c (Flogb): Don't use VALMASK.
4311
4312 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4313 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4314
4315 * lisp.h (XINT): Move the cast to clarify what is going on.
4316 (GCTYPEMASK, XSETTYPE): Remove.
4317 (XGCTYPE): Make it an alias of XTYPE.
4318
4319 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4320
4321 * xterm.c (x_term_init): Fix formatting.
4322
4323 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4324
4325 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4326 and xg_did_tearoff.
4327
4328 * gtkutil.c: Remove variable xg_did_tearoff.
4329 (xg_have_tear_offs): New function.
4330 (tearoff_remove): Just decrease xg_detached_menus.
4331 (tearoff_activate): Increase xg_detached_menus and call
4332 tearoff_remove when tearoff is removed.
4333 (xg_keep_popup): Remove function.
4334 (create_menus): Give add_tearoff_p as argument to recursive
4335 call to create_menus.
4336 (xg_create_widget): Use variables instead of multiple
4337 strcmp. Tell create_menus to create tear off only for
4338 menu bar menus.
4339 (xg_update_menubar): Change title for a detached menu also.
4340 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4341 of deep_p.
4342 (xg_initialize): Initialize xg_detached_menus, remove
4343 initialization of xg_did_tearoff.
4344
4345 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4346 xg_have_tear_offs returns non-zero.
4347 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4348 call to xg_keep_popup.
4349
4350 2003-11-01 Andrew Choi <akochoi@shaw.ca>
4351
4352 * macterm.c (XTread_socket): Handle menubar selection and grow
4353 window only for mouseDown events.
4354
4355 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4356
4357 * xterm.c (x_term_init): For GTK part, increase x_initialized
4358 to check for more than one display. Use error instead of return 0.
4359
4360 2003-10-31 Andrew Choi <akochoi@shaw.ca>
4361
4362 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
4363 (copy_dysymtab): Call it.
4364
4365 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4366
4367 * eval.c (Fdefvaralias): Doc fix.
4368
4369 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
4370
4371 * data.c (Fsetplist): Doc fix.
4372
4373 2003-10-14 Lute Kamstra <lute@gnu.org>
4374
4375 * window.c (Fset_window_fringes): Clarify docstring.
4376
4377 2003-10-14 Kim F. Storm <storm@cua.dk>
4378
4379 * window.c (Fset_window_margins): Simplify arg checking.
4380
4381 2003-10-13 Richard M. Stallman <rms@gnu.org>
4382
4383 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4384 (print_partial_compiled_pattern): Replace assert with a printout.
4385 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4386
4387 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4388
4389 * window.c (Fset_window_margins): Allow only integers as args.
4390 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4391 Doc fixes.
4392
4393 2003-10-13 Lute Kamstra <lute@gnu.org>
4394
4395 * window.c (Fset_window_fringes): Elaborate docstring.
4396
4397 2003-10-12 Andrew Choi <akochoi@shaw.ca>
4398
4399 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
4400
4401 * s/darwin.h (GC_MARK_STACK): Define.
4402
4403 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4404
4405 * window.c (shrink_windows): New function.
4406 (size_window): Call shrink_windows to calculate window sizes when
4407 shrinking frame with more than one window.
4408
4409 2003-10-12 Kim F. Storm <storm@cua.dk>
4410
4411 * xdisp.c (compute_fringe_widths): Doc fix.
4412
4413 2003-10-08 Kenichi Handa <handa@m17n.org>
4414
4415 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
4416
4417 2003-10-07 Kenichi Handa <handa@m17n.org>
4418
4419 * coding.c (Qcoding_system_define_form): New variable.
4420 (syms_of_coding): Intern and staticpro it.
4421 (Fcheck_coding_system): Try to autoload the definition of
4422 CODING-SYSTEM.
4423
4424 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4425
4426 * fns.c (Frequire): Doc fix.
4427
4428 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4429
4430 * xfns.c (Fx_send_client_event): New function as a base for
4431 manipulating extended window manager hints.
4432 (Fx_send_client_event): Remove unused variable s.
4433
4434 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4435 that function is removed.
4436
4437 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4438 x/y_pixels_outer_diff.
4439 (x_check_expected_move): Calculate move_offset_left/top.
4440
4441 * xterm.h (struct x_output): New members: move_offset_top/left.
4442
4443 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
4444 call x_set_offset directly.
4445
4446 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4447
4448 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4449
4450 * xterm.c (x_delete_display): Free font names and font_encoder
4451 in dpyinfo->font_table.
4452
4453 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4454 Move xfree of font names to x_delete_display.
4455
4456 * xterm.h (struct x_display_info): New member, wm_type.
4457 (struct x_output): New members, expected_top/left and
4458 check_expected_move.
4459
4460 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4461 is received.
4462 (handle_one_xevent): Rename x_check_expected_move from
4463 x_check_fullscreen_move.
4464 (x_set_offset): Only add WM decoration sizes to modified_top/left
4465 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
4466 (x_check_expected_move): Rename from x_check_fullscreen_move.
4467 Removed fullscreen specific code. Use check_expected_move,
4468 expected_left/top instead. Also, set wm_type.
4469 (x_term_init): Initialize wm_type to unknown.
4470
4471 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4472 sizes to move_x/y.
4473
4474 2003-10-03 Kenichi Handa <handa@m17n.org>
4475
4476 * macterm.c (x_load_font): Clear all members of FONTP before start
4477 filling them.
4478
4479 2003-10-02 Kenichi Handa <handa@m17n.org>
4480
4481 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4482 before calling find_ccl_program_func. Call find_ccl_program_func
4483 only when fontp->font_encoder is not NULL.
4484
4485 * xterm.c (x_load_font): Clear all members of FONTP before start
4486 filling them.
4487
4488 2003-10-03 John Paul Wallington <jpw@gnu.org>
4489
4490 * keymap.c (map_keymap): Don't abort when binding is a vector.
4491
4492 2003-10-02 Jason Rumney <jasonr@gnu.org>
4493
4494 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4495 Sync dependencies with Makefile.in.
4496 (alloca.o): Remove.
4497
4498 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4499 filling them.
4500
4501 * w32bdf.c (w32_load_bdf_font): Likewise.
4502
4503 2003-09-30 Richard M. Stallman <rms@gnu.org>
4504
4505 * term.c (set_tty_color_mode): Calculate current_mode_spec
4506 regardless of value of VAL.
4507
4508 * intervals.c (graft_intervals_into_buffer):
4509 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4510 Handle over_used when splitting UNDER.
4511
4512 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4513
4514 * regex.c (regex_compile): Free the stack when returning from function.
4515
4516 2003-09-28 Kenichi Handa <handa@m17n.org>
4517
4518 * fontset.c (Finternal_char_font): Change return value to
4519 cons (FONT-NAME . GLYPH-CODE).
4520
4521 2003-09-28 Eli Zaretskii <eliz@gnu.org>
4522
4523 * term.c (tty_setup_colors): Treat any negative argument as -1.
4524
4525 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4526
4527 * process.c (send_process): Delete unused temp_buf.
4528
4529 2003-09-26 Dave Love <fx@gnu.org>
4530
4531 * xterm.c (x_bitmap_mask): Declare.
4532
4533 2003-09-25 Dave Love <fx@gnu.org>
4534
4535 * Makefile.in (fns.o): Depend on md5.h.
4536
4537 2003-09-25 Kim F. Storm <storm@cua.dk>
4538
4539 * window.c (set_window_buffer): Fix redisplay problems when
4540 switching between buffers with different display margin widths.
4541
4542 2003-09-23 Kim F. Storm <storm@cua.dk>
4543
4544 * process.c (set_socket_option): Fix :bindtodevice option.
4545 (Fset_network_process_option): Update process contact list when
4546 setting option succeeds.
4547 (Fmake_network_process): Doc fix.
4548
4549 2003-09-23 Dave Love <fx@gnu.org>
4550
4551 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
4552
4553 2003-09-22 Eli Zaretskii <eliz@gnu.org>
4554
4555 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4556 color mode is an integer number (it could be -1).
4557
4558 2003-09-22 Richard M. Stallman <rms@gnu.org>
4559
4560 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4561 in the case where OVER is longer than UNDER.
4562
4563 2003-09-22 Masatake YAMATO <jet@gyve.org>
4564
4565 * window.c (Fset_window_scroll_bars): Validate the value of
4566 `vertical_type'.
4567
4568 2003-09-21 Kim F. Storm <storm@cua.dk>
4569
4570 * frame.c (Vdefault_frame_scroll_bars): New variable.
4571 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4572 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4573 window-system default scroll bar position.
4574
4575 * window.c (Fwindow_scroll_bars): Doc fix.
4576
4577 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4578
4579 * xterm.c (x_set_offset): Take window manager decorations into account.
4580
4581 2003-09-19 Richard M. Stallman <rms@gnu.org>
4582
4583 * atimer.h: Don't include lisp.h.
4584 (P_): Define it here (as well as elsewhere).
4585
4586 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4587 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4588
4589 * data.c (Fvariable_binding_locus): New function.
4590 (syms_of_data): defsubr it.
4591 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4592
4593 2003-09-18 Dave Love <fx@gnu.org>
4594
4595 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4596
4597 * process.c (Fnetwork_interface_info): Fix type error.
4598 (Fnetwork_interface_list): Doc fix.
4599 (read_process_output, read_process_output): Delete unused var.
4600
4601 2003-09-17 Kim F. Storm <storm@cua.dk>
4602
4603 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4604 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4605 (Fnetwork_interface_info): Check that ifreq struct has required
4606 fields before accessing them; this requires that those fields are
4607 defined as macros, which may be too restrictive on some platforms,
4608 but it is better than failing on other platforms.
4609 (syms_of_process): Only defsubr above fns when included.
4610
4611 2003-09-17 Dave Love <fx@gnu.org>
4612
4613 * unexalpha.c: Don't include varargs.h.
4614
4615 2003-09-17 Kim F. Storm <storm@cua.dk>
4616
4617 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4618 for network process.
4619 (socket_options): Add `:' prefix to option names. Add optbit field.
4620 (set_socket_option): Remove no_error arg and special handling of s < 0.
4621 Return 1<<optbit for known option, 0 for unknown.
4622 Do not interpret 0 as false for boolean option (only nil).
4623 Pass failed option and value to report_file_error.
4624 (Fset_network_process_options): Replace by Fset_network_process_option.
4625 (Fset_network_process_option): New function to set just one option.
4626 (Fmake_network_process): Allow :coding arg to be a cons.
4627 Allow :server arg to be an integer specifying backlog size.
4628 Remove :options arg, and allow options to be specified directly
4629 as :KEY, VALUE pairs. Parse these options before binding socket.
4630 As before, :reuseaddr t is default for a server process, but this
4631 can now be disabled by specifying :reuseaddr nil.
4632 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4633 (init_process): Availability of network options is now checked with
4634 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4635 setup features.
4636 (syms_of_process): Fix defsubr's for the replaced functions.
4637
4638 2003-09-16 Dave Love <fx@gnu.org>
4639
4640 * Makefile.in: Depend on coding.h.
4641
4642 2003-09-14 Kim F. Storm <storm@cua.dk>
4643
4644 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4645 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4646 (syms_of_process): Defsubr them.
4647
4648 * config.in: Regenerate.
4649
4650 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4651
4652 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4653 * m/news-r6.h (XUNMARK): Remove.
4654 * m/mips.h (XUNMARK): Remove.
4655 * m/mips-siemens.h (XUNMARK): Remove.
4656 * m/iris4d.h (XUNMARK): Remove.
4657 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4658
4659 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4660
4661 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4662 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4663 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4664 (XTYPE): Use unsigned right-shift.
4665 (XMARKBIT, XMARK, XUNMARK): Remove.
4666
4667 * alloc.c (init_intervals, init_symbol, init_marker):
4668 Don't preallocate anything.
4669 (Fgarbage_collect, mark_object): Ignore the markbit.
4670
4671 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4672
4673 2003-09-08 Lute Kamstra <lute@gnu.org>
4674
4675 * xdisp.c (pint2hrstr): New function.
4676 (decode_mode_spec): Add `%i' and `%I' specs.
4677 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4678 for `mode-line-format'.
4679
4680 2003-09-07 Andreas Schwab <schwab@suse.de>
4681
4682 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4683 avoid warning.
4684
4685 2003-09-07 Eli Zaretskii <eliz@gnu.org>
4686
4687 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
4688
4689 2003-09-03 Kim F. Storm <storm@cua.dk>
4690
4691 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4692 change (superseded by 2002-08-30 change); the default blink-off
4693 cursor is now again "no cursor".
4694
4695 2003-09-01 Jason Rumney <jasonr@gnu.org>
4696
4697 * makefile.w32-in (alloca.o): Remove.
4698 (coding.o): Depend on intervals.h
4699 (emacs.o, bytecode.o): Depend on window.h
4700
4701 2003-09-01 Dave Love <fx@gnu.org>
4702
4703 * Makefile.in (alloca.o): Remove commands.
4704 (coding.o): Depend on intervals.h composite.h window.h.
4705 (emacs.o): Depend on window.h keyboard.h keymap.h.
4706 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4707 (bytecode.o): Depend on window.h.
4708
4709 2003-08-31 Jason Rumney <jasonr@gnu.org>
4710
4711 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4712 returned even when font_type is unknown.
4713
4714 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4715
4716 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4717
4718 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4719
4720 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4721 *_offset.
4722
4723 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4724 calculate pixel value.
4725
4726 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4727
4728 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4729 Don't tell redisplay display is accurate when it's actually been
4730 paused for pending input.
4731
4732 2003-08-29 Richard M. Stallman <rms@gnu.org>
4733
4734 * dispnew.c (adjust_glyph_matrix): Call window_box
4735 whenever W is nonzero.
4736
4737 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4738 (Fkill_local_variable, Fmake_variable_frame_local)
4739 (Flocal_variable_p, Flocal_variable_if_set_p):
4740 Use indirect_variable to trace thru variable aliases.
4741
4742 * config.in: Updated.
4743
4744 * callint.c (Fcall_interactively): Save and restore
4745 Vthis_command, Vthis_original_command, real_this_command,
4746 and current_kboard->Vlast_command.
4747
4748 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4749
4750 2003-08-29 Gerd Moellmann <gerd@gnu.org>
4751
4752 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4753
4754 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4755
4756 * coding.c (decode_coding_iso2022): Initialize local variable c2.
4757 (decode_coding_sjis_big5): Likewise.
4758
4759 2003-08-27 Jason Rumney <jasonr@gnu.org>
4760
4761 * w32.c (sys_pipe): Protect against file descriptor overflow.
4762
4763 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4764
4765 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4766
4767 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
4768
4769 * xfns.c (Vgtk_version_string): New variable.
4770 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4771
4772 2003-08-24 Eli Zaretskii <eliz@gnu.org>
4773
4774 * term.c (term_init): Remove `const' from buffer_size's declaration.
4775
4776 * Makefile.in (msdos.o): Depend on intervals.h.
4777
4778 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
4779
4780 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4781
4782 * xterm.h (struct x_display_info): New fields: client_leader_window
4783 and Xatom_wm_client_leader.
4784
4785 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4786 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4787
4788 * xsmfns.c (create_client_leader_window): New function.
4789 (x_session_initialize): Call create_client_leader_window, take
4790 dpyinfo as argument.
4791
4792 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4793
4794 * Makefile.in (xsmfns.o): Add more depenedencies.
4795
4796 2003-08-21 Dave Love <fx@gnu.org>
4797
4798 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4799
4800 2003-08-21 Kenichi Handa <handa@m17n.org>
4801
4802 * term.c (term_init): Fix previous change; don't rely on the
4803 length of `buffer' if TERMINFO is defined.
4804
4805 2003-08-20 Dave Love <fx@gnu.org>
4806
4807 * atimer.h: Include lisp.h.
4808
4809 * lisp.h (EMACS_LISP_H): New.
4810 (popup_activated_flag): Don't declare.
4811
4812 * alloca.c: Some merging with gnulib. Change logic and doc
4813 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4814 [DO_BLOCK_INPUT]: Don't include lisp.h.
4815 (xmalloc, xfree): Declare.
4816 (malloc): Don't declare.
4817
4818 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
4819 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4820 atimer.h, blockinput.h.
4821
4822 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4823
4824 * alloca.s: Removed.
4825
4826 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4827
4828 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4829 use -lncurses.
4830
4831 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4832 FreeBSD returns something longer than 2044. Abort if the end of
4833 the buffer is overwritten.
4834
4835 2003-08-19 Miles Bader <miles@gnu.org>
4836
4837 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4838
4839 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4840
4841 * alloc.c (lisp_align_malloc): Check for memory full when
4842 allocating ablocks, which also avoids freeing a pointer into an
4843 ablocks structure.
4844
4845 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4846
4847 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
4848
4849 2003-08-16 Richard M. Stallman <rms@gnu.org>
4850
4851 * editfns.c (Fencode_time): Doc fix.
4852
4853 2003-08-16 David Ponce <david@dponce.com>
4854
4855 * fileio.c (Fwrite_region): Fix conditional expression to issue
4856 the right message.
4857
4858 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4859
4860 * syntax.c (Fforward_word): Argument changed to optional.
4861 Set default value to 1.
4862
4863 2003-08-15 Kenichi Handa <handa@m17n.org>
4864
4865 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4866 what autoscaled.
4867 (best_matching_font): Once we find a better scalable font, set
4868 non_scalable_has_exact_height_p to 1.
4869 (try_font_list): Call try_alternative_families to try any family
4870 with the given registry.
4871
4872 2003-08-09 Andreas Schwab <schwab@suse.de>
4873
4874 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4875
4876 * print.c (print_string): Fix printing of multibyte string with
4877 nontrivial printcharfun.
4878
4879 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4880
4881 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4882
4883 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4884
4885 2003-07-31 Kenichi Handa <handa@m17n.org>
4886
4887 * process.c (read_process_output): Return the actually read bytes
4888 instead of the result of decoding.
4889
4890 2003-07-31 Kenichi Handa <handa@m17n.org>
4891
4892 * xterm.h (struct x_bitmap_record): New member have_mask.
4893
4894 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4895 to 0.
4896 (x_create_bitmap_from_file): Likewise.
4897 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4898 (x_destroy_all_bitmaps): Likewise.
4899 (x_create_bitmap_mask): Set have_mask member to 1.
4900
4901 2003-07-30 Richard M. Stallman <rms@gnu.org>
4902
4903 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4904
4905 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4906
4907 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4908
4909 2003-07-29 Richard M. Stallman <rms@gnu.org>
4910
4911 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4912 Conditionalize XIM code on HAVE_XIM.
4913
4914 * fns.c (Fclear_string): New function.
4915 (syms_of_fns): defsubr it.
4916
4917 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4918
4919 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
4920
4921 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4922
4923 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4924
4925 * buffer.c (delete_all_overlays): New function.
4926 * buffer.h (delete_all_overlays): Declare.
4927 * coding.c (run_pre_post_conversion_on_str):
4928 * print.c (temp_output_buffer_setup):
4929 * fileio.c (Finsert_file_contents):
4930 * minibuf.c (get_minibuffer): Use it.
4931
4932 2003-07-22 Andrew Choi <akochoi@shaw.ca>
4933
4934 * unexmacosx.c (unexec_regions_sort_compare):
4935 (unexec_regions_merge): New functions. Sort and merge unexec
4936 regions before dumping them.
4937
4938 2003-07-22 Dave Love <fx@gnu.org>
4939
4940 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4941
4942 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4943
4944 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4945 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4946 MARKBIT as the gcmarkbit for strings.
4947
4948 2003-07-21 Richard M. Stallman <rms@gnu.org>
4949
4950 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4951
4952 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
4953 (syms_of_fns): Corresponding change.
4954
4955 * alloc.c (syms_of_alloc): Doc fixes.
4956
4957 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4958
4959 * s/netbsd.h: Use -Wl syntax.
4960
4961 2003-07-17 Richard M. Stallman <rms@gnu.org>
4962
4963 * xterm.c (xim_initialize): Redo 6/24 change.
4964
4965 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4966
4967 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4968 (Fswitch_to_buffer): Don't signal an error when switching to the same
4969 buffer in a dedicated window.
4970
4971 * alloc.c: Use bitmaps for cons, as was done for floats.
4972 (init_float, init_cons): Let the normal code allocate the first block.
4973 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4974 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4975 New macros.
4976 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4977 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4978 (live_cons_p): Check the pointer is not past the `conses' array.
4979 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4980 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4981 (survives_gc_p): Use CONS_MARKED_P and simplify.
4982 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4983
4984 2003-07-13 Paul Eggert <eggert@twinsun.com>
4985
4986 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4987 puts it into BSS instead, at least on Solaris 8 and 9.
4988 This is a valid optimization, and it may occur on other platforms,
4989 so Emacs should not assume that initializing a static variable to
4990 zero puts it into data.
4991 * alloc.c (pure, staticvec):
4992 Initialize these arrays to nonzero, so that they're not
4993 put into BSS by that optimization.
4994
4995 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4996
4997 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4998 (lisp_align_malloc): Use posix_memalign is available.
4999 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5000 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5001 for consistency. Update users.
5002
5003 2003-07-13 Richard M. Stallman <rms@gnu.org>
5004
5005 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5006
5007 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5008
5009 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5010 and use the Gtk+ function gtk_window_icon_from_file if available.
5011
5012 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5013 handle mask of bitmaps.
5014 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5015 mask property.
5016 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5017
5018 * xterm.h (xg_set_icon): New function.
5019
5020 2003-07-12 Paul Eggert <eggert@twinsun.com>
5021
5022 * unexelf.c (unexec): Consider a section to precede the .bss
5023 section if its addresses overlap that of .bss.
5024
5025 2003-07-12 Richard M. Stallman <rms@gnu.org>
5026
5027 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5028
5029 * config.in (HAVE_CRTIN): Add #undef.
5030 (INLINE): Really inline only if OPTIMIZE is defined.
5031
5032 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5033 END_FILES_1.
5034 (START_FILES_1, END_FILES_1): New macros (conditional).
5035 (LD_SWITCH_SYSTEM_TEMACS): Define.
5036
5037 * s/openbsd.h: Don't include bsd4-3.h.
5038 (TERMINFO): Define.
5039 (LIBS_TERMCAP): Define.
5040 (LD_SWITCH_SYSTEM): Define (two definitions).
5041
5042 * xfns.c: Include libpng/png.h instead of png.h.
5043
5044 2003-07-11 Andreas Schwab <schwab@suse.de>
5045
5046 * buffer.c (modify_overlay): Update prototype.
5047 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5048 Likewise.
5049
5050 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5051
5052 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5053 (struct interval): Move to intervals.h.
5054 (struct Lisp_Marker): Use EMACS_INT for position info.
5055 (forward_point): Remove prototype of defunct function.
5056 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5057 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5058 (syms_of_textprop, set_text_properties): Remove prototypes that are
5059 already in intervals.h.
5060
5061 * intervals.h (struct interval): Move from lisp.h.
5062 Use EMACS_INT for position and size info.
5063
5064 * coding.c: Include intervals.h for Fset_text_properties.
5065
5066 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5067 position and length information.
5068
5069 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5070
5071 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5072 position and length information.
5073
5074 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5075
5076 Change overlays_after and overlays_before so the overlays themselves
5077 are linked into lists, rather than using cons cells. After all each
5078 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5079 Lisp_Overlay for free and save up one cons cell per overlay (not
5080 to mention one indirection when traversing the list of overlay).
5081
5082 * lisp.h (struct Lisp_Overlay): New field `next'.
5083
5084 * buffer.h (struct buffer): Change overlays_before and overlays_after
5085 from Lisp lists of overlays to pointers to overlays.
5086
5087 * buffer.c (overlay_strings, recenter_overlay_lists):
5088 Fix typo in eassert in last commit.
5089 (unchain_overlay): New function.
5090 (add_overlay_mod_hooklist): Use AREF.
5091 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5092 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5093 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5094 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5095 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5096 Adjust to new type of overlays_(before|after).
5097
5098 * alloc.c (mark_object): Mark the new `next' field of overlays.
5099 (mark_buffer): Manually mark the overlays_(after|before) fields.
5100
5101 * coding.c (run_pre_post_conversion_on_str):
5102 * editfns.c (overlays_around):
5103 * xdisp.c (load_overlay_strings):
5104 * fileio.c (Finsert_file_contents):
5105 * indent.c (current_column):
5106 * insdel.c (signal_before_change, signal_after_change):
5107 * intervals.c (set_point_both):
5108 * print.c (temp_output_buffer_setup): Use new type for
5109 overlays_(before|after).
5110
5111 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5112
5113 * buffer.c (report_overlay_modification): Don't run hooks while
5114 traversing the list of overlays.
5115
5116 * buffer.h (struct buffer): Use an int for overlay_center.
5117 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5118 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5119
5120 * buffer.c (reset_buffer, recenter_overlay_lists)
5121 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5122 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5123 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5124 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5125 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5126
5127 * xdisp.c (fast_find_position): Remove unused var.
5128
5129 * cmds.c (Qexpand_abbrev): New sym.
5130 (syms_of_cmds): Initialize it.
5131 (internal_self_insert): Use it to call expand-abbrev.
5132
5133 2003-07-09 Kim F. Storm <storm@cua.dk>
5134
5135 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5136 was configured with --without-xim.
5137 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5138
5139 2003-07-07 Richard M. Stallman <rms@gnu.org>
5140
5141 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5142
5143 * alloc.c (Fgarbage_collect): Doc fix.
5144
5145 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
5146
5147 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5148
5149 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5150
5151 * minibuf.c (read_minibuf): UNGCPRO before returning.
5152 (Ftry_completion, Fall_completions): Doc fix.
5153
5154 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5155 now that `floats' is not the last element of the struct any more.
5156
5157 2003-07-06 Jason Rumney <jasonr@gnu.org>
5158
5159 * w32term.h (ClipboardSequence_Proc): New type.
5160
5161 * w32fns.c (clipboard_sequence_fn): New variable.
5162 (globals_of_w32fns): Initialize it.
5163
5164 * w32select.c (last_clipboard_sequence_number): New variable.
5165 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5166 number if possible.
5167
5168 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5169
5170 * m/amdx86-64.h (MARKBIT):
5171 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5172 MARKBIT and ARRAY_MARK_FLAG any more.
5173
5174 * m/hp800.h (XSETMARKBIT):
5175 * m/sr2k.h (XSETMARKBIT):
5176 * lisp.h (XSETMARKBIT): Remove unused macro.
5177
5178 * lisp.h (mark_object): Change prototype.
5179
5180 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5181 (last_marked): Change accordingly.
5182 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5183 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5184 (mark_buffer): Update calls to mark_object.
5185
5186 * bytecode.c (mark_byte_stack):
5187 * fns.c (sweep_weak_table):
5188 * keyboard.c (mark_kboards): Update calls to mark_object.
5189
5190 2003-07-06 Jason Rumney <jasonr@gnu.org>
5191
5192 * alloc.c (struct ablock): Only include padding when there is some.
5193
5194 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5195
5196 * alloc.c (ALIGN): Add casts to simplify usage.
5197 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5198 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5199 (struct ablock, struct ablocks): New types.
5200 (free_ablock): New global var.
5201 (lisp_align_malloc, lisp_align_free): New functions.
5202 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5203 (struct float_block): Reorder and add gcmarkbits.
5204 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5205 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5206 (init_float, make_float): Use lisp_align_malloc.
5207 (free_float, live_float_p): Don't use `type' any more.
5208 (make_float): Use FLOAT_UNMARK to access to mark bit.
5209 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5210 Use FLOAT_MARKED_P to access the mark bit.
5211 (pure_alloc): Simplify use of ALIGN.
5212 (mark_object): Use FLOAT_MARK to access the mark bit.
5213 (gc_sweep): Use new macros to access the float's mark bit.
5214 (init_alloc_once): Init free_ablock.
5215
5216 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5217
5218 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5219
5220 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5221 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5222 (allocate_buffer): Move.
5223 (string_bytes): Don't mask markbit of `size_byte'.
5224 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5225 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5226 Use the `size' field of buffers (rather than the `name' field) for
5227 the mark bit, as is done for all other vectorlike objects.
5228 Use the new macros to access the mark bit of vectorlike objects.
5229
5230 2003-06-26 Richard M. Stallman <rms@gnu.org>
5231
5232 * puresize.h (BASE_PURESIZE): Increment base size.
5233
5234 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5235
5236 * xterm.c (xim_initialize): Undo previous change.
5237
5238 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5239
5240 * alloc.c (survives_gc_p): Simplify.
5241
5242 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5243
5244 * window.c (Fset_window_dedicated_p): Simplify.
5245 (display_buffer_1): Don't raise the win from which minibuf was entered.
5246 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5247 (Fminibuffer_selected_window): Simplify.
5248
5249 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5250
5251 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5252 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5253
5254 * insdel.c (check_markers, adjust_markers_for_delete)
5255 (adjust_markers_for_insert, adjust_markers_for_replace)
5256 (prepare_to_modify_buffer, RESTORE_VALUE):
5257 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5258 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5259 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5260 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5261 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5262 * editfns.c (save_excursion_restore, transpose_markers):
5263 * window.c (delete_window):
5264 * xdisp.c (message_dolog): Update for new types.
5265
5266 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5267
5268 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5269 (realize_default_face): Use default_face_done_p for the force_p
5270 argument to set_lface_from_font_name. Set default_face_done_p to one.
5271
5272 * frame.c (make_frame): Initialize default_face_done_p.
5273
5274 * frame.h (struct frame): Add default_face_done_p.
5275
5276 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5277 will be defined.
5278
5279 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5280
5281 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5282 Initialize the new field `gcmarkbit'.
5283 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5284 (mark_interval_tree): Don't mark the tree separately from the nodes.
5285 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5286 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5287 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5288
5289 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5290 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5291 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5292 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5293 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5294
5295 2003-06-24 Dave Love <fx@gnu.org>
5296
5297 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5298
5299 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5300 from gnulib.
5301
5302 2003-06-21 Richard M. Stallman <rms@gnu.org>
5303
5304 * fileio.c (Fwrite_region): Alternate messages
5305 for append and partial write.
5306
5307 * keyboard.c (read_key_sequence): When converting upcase fn key to
5308 downcase, update fkey and keytran so `backspace' gets translated.
5309
5310 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5311
5312 * process.c (wait_reading_process_input): Don't signal SIGIO
5313 in batch mode.
5314
5315 2003-06-17 Kenichi Handa <handa@m17n.org>
5316
5317 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5318 composite.h.
5319
5320 * xselect.c: Don't include charset.h, coding.h, composite.h.
5321 (Qforeign_selection): New variable.
5322 (syms_of_xselect): Intern and static it.
5323 (selection_data_to_lisp_data): Return a unibyte string made from
5324 data with `foreign-selection' text property.
5325
5326 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5327
5328 * termhooks.h (EVENT_INIT): New macro.
5329
5330 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5331
5332 * alloc.c (mark_kboards): Move to keyboard.c.
5333
5334 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5335 * xterm.c (x_dispatch_event):
5336 * xmenu.c (find_and_call_menu_selection):
5337 * xdisp.c (handle_tool_bar_click):
5338 * w32menu.c (menubar_selection_callback):
5339 * sysdep.c (kbd_input_ast, read_input_waiting):
5340 * msdos.c (dos_rawgetc):
5341 * macterm.c (mac_check_for_quit_char):
5342 * macmenu.c (menubar_selection_callback):
5343 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5344 data to kbd_buffer_store_event.
5345
5346 2003-06-15 Kim F. Storm <storm@cua.dk>
5347
5348 * xdisp.c (x_fix_overlapping_area): Always use area relative X
5349 to fix redisplay problem with tall characters (such as \e,AC\e(B).
5350
5351 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5352
5353 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5354
5355 2003-06-12 Kenichi Handa <handa@m17n.org>
5356
5357 * fileio.c (Fwrite_region): Save and restore restriction.
5358
5359 2003-06-12 Dave Love <fx@gnu.org>
5360
5361 * alloca.c (alloca): Declare arg as size_t.
5362
5363 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5364 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
5365
5366 2003-06-11 Dave Love <fx@gnu.org>
5367
5368 * search.c (shrink_regexp_cache): Use xrealloc.
5369 (syms_of_search): Use xmalloc.
5370
5371 2003-06-10 Kim F. Storm <storm@cua.dk>
5372
5373 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5374 Adjust phys_cursor.x to be relative to window box, rather than
5375 text area before checking -- to ensure cursor is redrawn when
5376 exposing window.
5377 Note: This also fixes a similar (older) bug if display margins
5378 are present.
5379
5380 2003-06-06 Kenichi Handa <handa@m17n.org>
5381
5382 * coding.c (encoding_buffer_size): If coding->type is
5383 coding_type_ccl, double magnification on CRLF encoding.
5384
5385 2003-06-06 Jason Rumney <jasonr@gnu.org>
5386
5387 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5388 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5389
5390 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5391 Mac too.
5392
5393 2003-06-05 Dave Love <fx@gnu.org>
5394
5395 * strftime.c: Merge changes from gnulib.
5396
5397 * mktime.c (__mktime_internal): Merge changes from gnulib
5398 involving year 69 and dst2.
5399
5400 Changes to merge with gnulib version and be consistent with the
5401 autoconf test:
5402
5403 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5404 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
5405 [HAVE_LOCALE_H]: Include locale.h.
5406 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5407
5408 2003-06-05 Kim F. Storm <storm@cua.dk>
5409
5410 * window.c (coordinates_in_window): Convert X and Y to window
5411 relative coordinates inside mode-line and header-line parts.
5412 Convert X and Y to margin area relative coordinates inside left
5413 and right display margin parts.
5414
5415 2003-06-05 Jason Rumney <jasonr@gnu.org>
5416
5417 * w32fns.c (add_system_logical_colors_to_map): New function.
5418 (Fx_open_connection): Use it.
5419
5420 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5421
5422 * process.c (allocate_pty): Revert part of the previous patch.
5423 (Faccept_process_output): Simplify.
5424
5425 2003-06-04 Jason Rumney <jasonr@gnu.org>
5426
5427 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5428
5429 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5430 (lispy_mouse_wheel_names): Remove.
5431 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5432 Always define drag_and_drop_syms.
5433
5434 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5435 WHEEL_EVENT events.
5436
5437 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5438
5439 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5440
5441 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5442
5443 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5444
5445 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5446 menu item label.
5447
5448 2003-06-03 Richard M. Stallman <rms@gnu.org>
5449
5450 * window.c (Fwindow_edges): Doc fix.
5451 (Fwindow_pixel_edges, Fwindow_inside_edges)
5452 (Fwindow_inside_pixel_edges): New functions.
5453 (syms_of_window): defsubr them.
5454
5455 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5456 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5457
5458 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5459
5460 * dispnew.c (Fsit_for): Don't lie about the number of args.
5461
5462 2003-06-02 Dave Love <fx@gnu.org>
5463
5464 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5465 (syms_of_callproc) <process-environment>: Doc fix.
5466
5467 * doc.c: Use HAVE_FCNTL_H, not USG5.
5468
5469 * xfaces.c (font_rescale_ratio): Fix for K&R.
5470
5471 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5472
5473 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5474
5475 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5476
5477 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5478 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5479
5480 * xterm.c (Qutf_8): Move to coding.c
5481
5482 * xmenu.c (ENCODE_MENU_STRING): New.
5483 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5484 Use it.
5485
5486 * coding.h (ENCODE_UTF_8): New.
5487 (Qutf_8): Declare.
5488
5489 * coding.c (Qutf_8): New.
5490 (syms_of_coding): Intern it.
5491
5492 * fns.c: Doc fixes.
5493
5494 2003-06-02 Kenichi Handa <handa@m17n.org>
5495
5496 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5497
5498 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5499
5500 * lread.c (openp): Make sure STR is a string.
5501
5502 2003-06-01 David Ponce <david@dponce.com>
5503
5504 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5505 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5506
5507 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5508 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5509 (discard_mouse_events): Discard WHEEL_EVENT events too.
5510 (lispy_wheel_names, wheel_syms): New.
5511 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5512 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5513 defined.
5514 (make_lispy_event): Add WHEEL_EVENT handler.
5515
5516 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5517 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5518 WHEEL_EVENT events.
5519
5520 2003-05-31 John Paul Wallington <jpw@gnu.org>
5521
5522 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5523 timer are in lisp/emacs-lisp.
5524
5525 2003-05-31 Kenichi Handa <handa@m17n.org>
5526
5527 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5528 region when a buffer is changed to unibyte.
5529
5530 * charset.h (VALID_LEADING_CODE_P): New macro.
5531 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5532
5533 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5534 is nonzero, accept multibyte form of eight-bit-control chars.
5535 (decode_composition_emacs_mule): Likewise.
5536 (decode_coding_emacs_mule): Likewise.
5537 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5538 multibyte form of eight-bit-control chars.
5539
5540 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5541 (Finsert_file_contents): If coding-system-for-read is bound to
5542 Qauto_save_coding, use the coding system emacs-mule with special
5543 setting for recovering a file.
5544 (choose_write_coding_system): On auto saving, use the coding
5545 system emacs-mule with special setting for auto saving.
5546 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5547
5548 2003-05-30 Kenichi Handa <handa@m17n.org>
5549
5550 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5551 properly before calling ccl_driver.
5552
5553 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
5554
5555 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5556 nonzero.
5557 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5558 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5559
5560 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5561
5562 * xfaces.c (realize_default_face): Do not abort if lface is
5563 non-existent - reverts change from 2003-05-19.
5564
5565 2003-05-29 Kenichi Handa <handa@m17n.org>
5566
5567 * coding.c (decode_coding_iso2022): Pay attention to the byte
5568 sequence of CTEXT extended segment, and retain those bytes as is.
5569
5570 2003-05-28 Kenichi Handa <handa@m17n.org>
5571
5572 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5573 of CODING_REPLACEMENT_CHARACTER.
5574 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5575 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5576 check this flag on encoding.
5577 (encode_coding_sjis_big5): Check
5578 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5579 (Fset_terminal_coding_system_internal): Set
5580 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5581 instead of setting CODING_FLAG_ISO_SAFE flag in
5582 terminal_coding.flags.
5583
5584 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5585 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5586 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5587
5588 2003-05-28 Richard M. Stallman <rms@gnu.org>
5589
5590 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5591
5592 * eval.c (unbind_to): Move init of this_binding to separate statement.
5593
5594 2003-05-28 Kim F. Storm <storm@cua.dk>
5595
5596 * xdisp.c (expose_window): Fix error in calculation of
5597 window relative coordinates of area to redisplay.
5598
5599 2003-05-27 Jason Rumney <jasonr@gnu.org>
5600
5601 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5602
5603 2003-05-27 David Ponce <david@dponce.com>
5604
5605 Handle W32 mouse wheel events as mouse click events, like in X.
5606
5607 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5608 MOUSE_WHEEL_EVENT anymore.
5609
5610 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5611 Scrolling down/up the mouse wheel is respectively mapped to mouse
5612 button 4 and 5.
5613 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5614 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5615 WM_MOUSEWHEEL events.
5616
5617 2003-05-27 Andreas Schwab <schwab@suse.de>
5618
5619 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5620
5621 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5622 partially visible line.
5623
5624 * alloc.c (Fgarbage_collect): Fix last change.
5625
5626 2003-05-26 John Paul Wallington <jpw@gnu.org>
5627
5628 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5629
5630 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5631
5632 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5633 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5634
5635 * window.h (window_box_text_cols): Declare.
5636
5637 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5638 (x_draw_vertical_border): Remove unused var `f'.
5639
5640 * xfaces.c (build_scalable_font_name): Remove `unused var
5641 pixel_size' warning.
5642
5643 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5644
5645 * unexelf.c (unexec): Remove `unused var n' warning.
5646
5647 * strftime.c (my_strftime_localtime_r): Remove `defined but
5648 unused' warning.
5649
5650 * process.c (allocate_pty): Remove `unused var stb' and
5651 `cp might be used uninitialized' warnings.
5652
5653 * dispnew.c (mode_line_string): Remove unused var `f'.
5654
5655 * coding.c (find_safe_codings): Remove unused var `i'.
5656
5657 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5658
5659 * buffer.c (Fkill_buffer): Remove unused var `list'.
5660
5661 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5662
5663 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5664
5665 * frame.c (make_frame): Condition want_fullscreen with
5666 HAVE_WINDOW_SYSTEM.
5667
5668 2003-05-25 Juanma Barranquero <lektu@terra.es>
5669
5670 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5671 (Fwindow_scroll_bars): Fix typo in docstring.
5672
5673 2003-05-24 Kim F. Storm <storm@cua.dk>
5674
5675 The following changes serve several purposes:
5676
5677 1) Swap the position of fringes and display margins in windows, i.e.
5678 the fringes are now displayed between the margins and the text area
5679 (by default).
5680
5681 2) Allow fringe and scroll bar parameters to be set per-buffer and
5682 per-window (like display margins). Such settings are now stored
5683 in window configurations, preserved when frames are resized, and
5684 copied when windows are split vertically or horizontally.
5685 Several bugs related to display margins have been fixed.
5686
5687 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
5688
5689 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5690 rather than FRAME_WIDTH (FRAME_FONT (f)).
5691
5692 5) Introduce a consistent naming of variables, members and macros
5693 depending on whether their value is measured in pixels or in
5694 canonical columns/lines. Pixel dimensions are named *_width and
5695 *_height, while canonical columns/lines are named *_cols and
5696 *_lines. Pixel positions are named *_x and *_y, while column/line
5697 positions are named *_col and *_line.
5698
5699 6) Consolidate more of the X, W32, and MAC gui code by moving
5700 common data into struct frame, and generalize it for the non-gui
5701 case by using suitable defaults.
5702
5703 7) Cleanup and consolidate the macros controlling frame and window
5704 layout into frame.h and window.h, and generalize the use of the
5705 various window_box_* functions (enhanced to handle the new fringe
5706 position and the per-window fringe and scroll bar settings).
5707
5708 * frame.h (struct frame): Rename members height to text_lines,
5709 width to text_cols, window_height to total_lines, window_width to
5710 total_cols, new_height to new_text_lines, new_width to
5711 new_text_cols. All uses changed.
5712 (struct frame): New members which consolidate common members of
5713 x_output, w32_output, and mac_output structures: left_pos,
5714 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5715 win_gravity, size_hint_flags, border_width, internal_border_width,
5716 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5717 want_fullscreen. All uses changed.
5718 (struct frame): New member column_width contaning the canonical
5719 column width, analogue to line_height. All uses changed.
5720 (struct frame): Rename members scroll_bar_pixel_width to
5721 config_scroll_bar_width, and scroll_bar_cols to
5722 config_scroll_bar_cols. All uses changed.
5723 (struct frame): New member scroll_bar_actual_width which
5724 consolidates and renames the vertical_scroll_bar_extra member of
5725 x_output, w32_output, and mac_output structures. All uses changed.
5726 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5727 from x/w32/macterm.h files. All uses changed. Also change code
5728 which referred to f->output_data...->pixel_height.
5729 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
5730 from x/w32/macterm.h files. All uses changed. Also change code
5731 which referred to f->output_data...->pixel_width.
5732 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5733 Also change code which referred to f->height.
5734 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5735 Also change code which referred to f->width.
5736 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5737 to update new_text_lines and new_text_cols members directly.
5738 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5739 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5740 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5741 FRAME_SCROLL_BAR_COLS. All uses changed.
5742 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5743 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5744 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5745 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5746 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5747 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5748 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5749 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5750 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5751 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5752 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5753 return line_height member (it now has proper value also for
5754 non-window frames).
5755 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5756 return new column_width member (rather than the default font width).
5757 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5758 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5759 from x/w32/macterm.h files. Unconditionally return corresponding
5760 member of frame structure (they now have proper values also for
5761 non-window frames).
5762 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5763 Calculate return value from left and right widths.
5764 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5765 internal_border_width member (has proper value for non-window frame).
5766 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5767 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5768 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5769 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5770 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5771 consolidated from xterm.h, macterm.h, and w32term.h.
5772 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5773 consolidated from xterm.h, macterm.h, and w32term.h.
5774 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5775 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5776 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5777 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5778 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5779 consolidated from x/mac/w32term.h.
5780 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5781 consolidated from x/mac/w32term.h.
5782 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5783 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5784 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5785 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5786
5787 * window.h (struct window): Rename members left to left_col,
5788 top to top_line, height to total_lines, width to total_cols,
5789 left_margin_width to left_margin_cols, right_margin_width to
5790 right_margin_cols, orig_height to orig_total_lines, orig_top to
5791 orig_top_line. All uses changed.
5792 (struct window): New members left_fringe_width, right_fringe_width,
5793 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5794 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5795 New macros primarily used to simplify other macros.
5796 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5797 referred to XINT (w->width).
5798 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5799 referred to XINT (w->height).
5800 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5801 referred to XINT (w->width) * canon_x_unit.
5802 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5803 referred to XINT (w->height) * canon_y_unit.
5804 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5805 referred to XINT (w->left).
5806 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5807 all uses and code that referred to XINT (w->left) + XINT (w->width).
5808 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5809 referred to XINT (w->top).
5810 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5811 referred to XINT (w->top) + XINT (w->height).
5812 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5813 referred to XINT (w->left) * canon_x_unit.
5814 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5815 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5816 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5817 referred to XINT (w->top) * canon_y_unit.
5818 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5819 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5820 (WINDOW_LEFTMOST_P): New macro.
5821 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5822 All uses changed.
5823 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5824 All uses changed.
5825 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5826 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5827 Do not exclude left fringe width.
5828 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5829 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5830 Do not exclude fringe widths.
5831 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5832 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5833 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5834 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5835 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5836 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5837 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5838 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5839 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5840 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5841 New macros. Change code which referenced corresponding
5842 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5843 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5844 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5845 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5846 allow per-window scroll-bar settings.
5847 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5848 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5849 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5850 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5851 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5852 FRAME_SCROLL_BAR_WIDTH.
5853 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
5854 (WINDOW_SCROLL_BAR_AREA_X): New macros.
5855 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5856 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5857 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5858 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5859 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5860 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5861 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5862 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5863 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5864 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5865 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5866 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5867 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5868 (window_from_coordinates): Update prototype.
5869 (Fset_window_buffer): Update EXFUN.
5870 (set_window_buffer): Update prototype.
5871
5872 * dispextern.h (struct glyph_matrix): Rename members window_left_x
5873 to window_left_col, window_top_y to window_top_line. All uses
5874 changed.
5875 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5876 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5877 internal_border_width is now set to 0 for non-window frames.
5878 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5879 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5880 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5881 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5882 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5883 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5884 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5885 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5886 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
5887 Move to window.h and renamed [see window.h changes].
5888 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5889 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
5890 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5891 Use WINDOW_TOTAL_LINES.
5892 (frame_update_line_height): Remove prototype.
5893
5894 * buffer.h (struct buffer): Rename members measured in columns:
5895 left_margin_width to left_margin_cols, right_margin_width to
5896 right_margin_cols. All uses changed.
5897 New members left_fringe_width, right_fringe_width,
5898 fringes_outside_margins for per-buffer fringe settings.
5899 New members scroll_bar_width and vertical_scroll_bar_type for
5900 per-buffer scroll bar settings.
5901
5902 * buffer.c (init_buffer_once): Set buffer_defaults and
5903 buffer_local_flags for new buffer-local variables
5904 left_fringe_width, right_fringe_width, fringes_outside_margins,
5905 scroll_bar_width, and vertical_scroll_bar_type.
5906 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5907 default-* variables for them.
5908
5909 * dispnew.c: Make (many) trivial substitutions for renamed and
5910 new macros in dispextern.h, frame.h and window.h.
5911 (mode_line_string): No need to adjust width for mode lines, as it
5912 is already adjusted by the caller.
5913 (marginal_area_string): Handle fringes inside/outside margins.
5914
5915 * frame.c: Make (many) trivial substitutions for renamed and
5916 new macros in dispextern.h, frame.h and window.h.
5917 (make_frame): Initialize left_fringe_width, right_fringe_width,
5918 fringe_cols, scroll_bar_actual_width, border_width,
5919 internal_border_width, column_width, line_height, x_pixels_diff,
5920 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5921 members with values suitable for a non-window frames.
5922
5923 * gtkutil.c: Make (many) trivial substitutions for renamed and
5924 new macros in dispextern.h, frame.h and window.h.
5925
5926 * indent.c: Make (few) trivial substitutions for renamed and
5927 new macros in dispextern.h, frame.h and window.h.
5928
5929 * keyboard.c: Make (many) trivial substitutions for renamed and
5930 new macros in dispextern.h, frame.h and window.h.
5931 (make_lispy_event): Use window positions returned from
5932 window_from_coordinates when constructing the lisp event for
5933 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5934 (incorrect) values locally.
5935 (make_lispy_movement): Use window positions returned from
5936 window_from_coordinates when constructing the lisp event, rather
5937 than calculating (incorrect) values locally.
5938
5939 * scroll.c: Make (some) trivial substitutions for renamed and
5940 new macros in dispextern.h, frame.h and window.h.
5941
5942 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5943 scroll-bars.
5944
5945 * sysdep.c: Make (few) trivial substitutions for renamed and
5946 new macros in dispextern.h, frame.h and window.h.
5947
5948 * term.c: Make (some) trivial substitutions for renamed and
5949 new macros in dispextern.h, frame.h and window.h.
5950
5951 * widget.c: Make (few) trivial substitutions for renamed and
5952 new macros in dispextern.h, frame.h and window.h.
5953
5954 * window.c: Make (many) trivial substitutions for renamed and
5955 new macros in dispextern.h, frame.h and window.h.
5956 (make_window): Initialize new members
5957 left_margin_cols, right_margin_cols, left_fringe_width,
5958 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5959 and vertical_scroll_bar_type.
5960 (coordinates_in_window): Adapted to new fringe/margin positions
5961 and per-window fringes and scroll-bars.
5962 Fix bug related to incorrectly adjusting coordinates by
5963 frame's internal_border_width (the effect normally negible since
5964 the internal_border_width is typically 0 or 1 pixel, but very
5965 noticeable for an internal_border_width of e.g. 25 pixels).
5966 Upon successful return (other than ON_NOTHING), the coordinates
5967 are now always properly converted to window relative for the
5968 given display element.
5969 (window_from_coordinates): Add new parameters wx and wy to
5970 return the window relative x and y position in the returned
5971 window and part. A null arg means, don't return the position.
5972 All callers changed.
5973 (adjust_window_margins): New function which may reduce the width
5974 of the display margins if a window's text area is too small after
5975 resizing or splitting windows.
5976 (size_window): Fix bug that did not account for display margin
5977 widths when checking the minimum width of a window; use
5978 adjust_window_margins.
5979 (set_window_buffer): Call Fset_window_fringes and
5980 Fset_window_scroll_bars to setup per-window elements.
5981 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5982 existing display margin, fringe widths, and scroll bar settings
5983 (e.g. after splitting a window or resizing the frame).
5984 All callers changed.
5985 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5986 (Fsplit_window): Duplicate original window's display margin,
5987 fringe, and scroll-bar settings; then call Fset_window_buffer with
5988 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5989 window to only preserve the display margins in one of the windows.
5990 When splitting horizontally, call adjust_window_margins on both
5991 windows to ensure that the text area of the new windows is non too
5992 narrow. This fixes a bug which could cause Emacs to trap if the
5993 width of the split window was less than the width of the display
5994 margins.
5995 (window_box_text_cols): Renamed from window_internal_width.
5996 All uses changed. Adapt to per-window fringes and scroll bars.
5997 Fix bug that caused vertical separator to be subtracted also on
5998 window frames. Fix another bug that did not reduce the returned
5999 value by the columns used for display margins.
6000 (window_scroll_line_based): Fix bug related to scrolling too much
6001 when display margins are present (implicitly fixed by the fix to
6002 window_box_text_cols).
6003 (scroll_left, scroll_right): Fix bug related to scrolling too far
6004 by default when display margins are present (implicitly fixed by
6005 the fix to window_box_text_cols).
6006 (struct saved_window): Rename members left to left_col, top to
6007 top_line, width to total_cols, height to total_lines, orig_top to
6008 orig_top_line, orig_height to orig_total_lines. All uses changed.
6009 New members left_margin_cols, right_margin_cols,
6010 left_fringe_width, right_fringe_width, fringes_outside_margins,
6011 scroll_bar_width, and vertical_scroll_bar_type for saving
6012 per-window display elements.
6013 (Fset_window_configuration): Restore display margins, fringes,
6014 and scroll bar settings. This fixes a bug which caused display
6015 margins to be discarded when saving and restoring a window
6016 configuration.
6017 (save_window_save): Save display margins, fringes, and scroll bar
6018 settings. This fixes a bug which caused display margins to be
6019 discarded when saving and restoring a window configuration.
6020 (Fset_window_margins): Do nothing if display margins are not
6021 really changed. Otherwise, call adjust_window_margins to ensure
6022 the text area doesn't get too narrow. This fixes a bug which
6023 could cause Emacs to trap if setting display margins wider than
6024 the width of the window.
6025 (Fset_window_fringes): New defun to allow user to specifically set
6026 this window's fringe widths and position vs. display margins.
6027 (Fwindow_fringes): New defun to return window's actual fringe
6028 settings.
6029 (Fset_window_scroll_bars): New defun to allow user to specifically
6030 set this window's scroll bar width and position.
6031 (Fwindow_scroll_bars): New defun to return window's actual scroll
6032 bar settings.
6033 (compare_window_configurations): Also compare display margins,
6034 fringes, and scroll bar settings.
6035 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6036
6037 * xdisp.c: Make (many) trivial substitutions for renamed and
6038 new macros in dispextern.h, frame.h and window.h.
6039 (window_box_width): Adapt to per-window fringes and scroll bars,
6040 and new fringe vs. display margin position. Note that returned
6041 value is no longer guaranteed to be a whole multiple of the frame
6042 column width, since per-window fringes may now be any width.
6043 (window_box_left_offset): New function like window_box_left, but
6044 value is relative to left border of window (rather than frame).
6045 (window_box_right_offset): New function like window_box_right,
6046 but value is relative to left border of window.
6047 (window_box_left): Adapt to per-window fringes and scroll bars,
6048 and new fringe vs. display margin position. Simplify by using
6049 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6050 (window_box): Allow null args for unnecessary return values;
6051 change/simplify relevant callers.
6052 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6053 and new fringe vs. display margin position.
6054 Use window_box_left_offset and window_box_right_offset
6055 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6056 scroll bars, and new fringe vs. display margin position.
6057 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6058 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6059 fringe vs. display margin position.
6060 (hscroll_window_tree): Use window_box_width instead of window_box.
6061 (redisplay_window): Adapt to per-window scroll bars.
6062 (draw_glyphs): Rework to handle per-window fringes and scroll
6063 bars, and new fringe vs. display margin position.
6064 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6065 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6066 bars, and new fringe vs. display margin position. Fix bug which
6067 increased total width of full_width rows by width of scroll bars
6068 although window's total width already includes that.
6069 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6070 (expose_area): Simplify using window_box_left_offset.
6071 (x_draw_vertical_border): Handle per-window scroll bar settings,
6072 mixing windows with left, right and no scroll bars.
6073
6074 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6075 where it's used in x_list_fonts (for clarity).
6076 (frame_update_line_height): Remove unused function; functionality
6077 is now done directly when setting the default font in x_set_font.
6078
6079 * xfns.c: Make (many) trivial substitutions for renamed and
6080 new macros in dispextern.h, frame.h and window.h.
6081
6082 * xmenu.c: Make (some) trivial substitutions for renamed and
6083 new macros in dispextern.h, frame.h and window.h.
6084
6085 * xterm.h (struct x_output): Move members left_pos, top_pos,
6086 border_width, pixel_height, pixel_width, line_height,
6087 internal_border_width, vertical_scroll_bar_extra,
6088 left_fringe_width, right_fringe_width, fringe_cols,
6089 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6090 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6091 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6092 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6093 (PIXEL_WIDTH, PIXEL_HEIGHT)
6094 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6095 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6096 frame.h and renamed [see frame.h changes].
6097 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6098 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6099 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6100 and renamed [see frame.h changes].
6101
6102 * xterm.c: Make (several) trivial substitutions for renamed and
6103 new macros in dispextern.h, frame.h and window.h.
6104 (x_draw_glyph_string_box): Adapt to per-window fringes and
6105 scroll-bars.
6106 (scroll_run): Adapt to new fringe position.
6107 (glyph_rect): Use window coordinates returned from
6108 window_from_coordinates rather than frame_to_window_pixel_xy.
6109 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6110 scroll-bars.
6111 (handle_one_xevent): Simplify a USE_GTK conditional.
6112 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6113 (fringes are now inside margins, i.e. always in the clipping area).
6114 All callers changed.
6115 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6116 directly, then call compute_fringe_widths. Don't call
6117 frame_update_line_height.
6118
6119 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6120 border_width, pixel_height, pixel_width, line_height,
6121 internal_border_width, vertical_scroll_bar_extra,
6122 left_fringe_width, right_fringe_width, fringe_cols,
6123 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6124 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6125 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6126 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6127 (PIXEL_WIDTH, PIXEL_HEIGHT)
6128 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6129 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6130 frame.h and renamed [see frame.h changes].
6131 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6132 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6133 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6134 and renamed [see frame.h changes].
6135
6136 * w32term.c: Make (several) trivial substitutions for renamed and
6137 new macros in dispextern.h, frame.h and window.h.
6138 (x_draw_glyph_string_box): Adapt to per-window fringes and
6139 scroll-bars.
6140 (glyph_rect): Use window coordinates returned from
6141 window_from_coordinates rather than frame_to_window_pixel_xy.
6142 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6143 scroll-bars.
6144 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6145 (fringes are now inside margins, i.e. always in the clipping area).
6146 All callers changed.
6147 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6148 directly, then call compute_fringe_widths. Don't call
6149 frame_update_line_height.
6150
6151 * w32console.c: Make (few) trivial substitutions for renamed and
6152 new macros in dispextern.h, frame.h and window.h.
6153
6154 * w32fns.c: Make (many) trivial substitutions for renamed and
6155 new macros in dispextern.h, frame.h and window.h.
6156
6157 * w32menu.c: Make (few) trivial substitutions for renamed and
6158 new macros in dispextern.h, frame.h and window.h.
6159
6160 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6161 border_width, pixel_height, pixel_width, line_height,
6162 internal_border_width, vertical_scroll_bar_extra,
6163 left_fringe_width, right_fringe_width, fringe_cols,
6164 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6165 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6166 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6167 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6168 (PIXEL_WIDTH, PIXEL_HEIGHT)
6169 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6170 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6171 frame.h and renamed [see frame.h changes].
6172 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6173 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6174 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6175 and renamed [see frame.h changes].
6176
6177 * macterm.c: Make (several) trivial substitutions for renamed and
6178 new macros in dispextern.h, frame.h and window.h.
6179 (x_draw_glyph_string_box): Adapt to per-window fringes and
6180 scroll-bars.
6181 (glyph_rect): Use window coordinates returned from
6182 window_from_coordinates rather than frame_to_window_pixel_xy.
6183 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6184 scroll-bars.
6185 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6186 (fringes are now inside margins, i.e. always in the clipping area).
6187 All callers changed.
6188 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6189 directly, then call compute_fringe_widths. Don't call
6190 frame_update_line_height.
6191
6192 * macfns.c: Make (several) trivial substitutions for renamed and
6193 new macros in dispextern.h, frame.h and window.h.
6194 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6195
6196 * macmenu.c: Make (few) trivial substitutions for renamed and
6197 new macros in dispextern.h, frame.h and window.h.
6198
6199 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6200 and line_height, and use corresponding new members in struct
6201 frame. All uses changed.
6202 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6203 superseeded by corresponding macros in frame.h.
6204
6205 * msdos.c: Make (several) trivial substitutions for renamed and
6206 new macros in dispextern.h, frame.h and window.h.
6207 (IT_note_mouse_highlight): Use updated window coordinates returned
6208 by window_from_coordinates, rather than adjusting them locally.
6209 (internal_terminal_init): No need to initialize line_height here;
6210 it now defaults to 1.
6211
6212 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6213
6214 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6215 dropping `down' events.
6216
6217 2003-05-24 Andreas Schwab <schwab@suse.de>
6218
6219 * coding.c (find_safe_codings): Fix last change.
6220
6221 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6222
6223 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6224
6225 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6226
6227 * xdisp.c (display_mode_element): Increase max depth.
6228 Simplify the error handling code. Use a different error string
6229 for the case where we hit the depth limit.
6230
6231 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6232
6233 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6234
6235 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6236
6237 * intervals.c (get_local_map): Don't get char-property of previous
6238 point any more: get_pos_property already does it and better.
6239
6240 2003-05-21 Dave Love <fx@gnu.org>
6241
6242 [Merged from unicode branch.]
6243
6244 * xfns.c (x_window, x_window): Use use_xim.
6245
6246 * xterm.c (use_xim): Initialize.
6247 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6248 (x_term_init): Maybe set use_xim.
6249
6250 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6251
6252 2003-05-21 Jason Rumney <jasonr@gnu.org>
6253
6254 * unexw32.c (_start): Remove _fmode initialization.
6255
6256 * emacs.c (main) [WINDOWSNT]: Move it here.
6257
6258 2003-05-20 Dave Love <fx@gnu.org>
6259
6260 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6261
6262 2003-05-19 Richard M. Stallman <rms@gnu.org>
6263
6264 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6265 as value for QCfont attribute.
6266 (realize_default_face): lface should already exist; crash if not.
6267 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6268
6269 * frame.c (Fignore_event): Doc fix.
6270
6271 2003-05-19 Kenichi Handa <handa@m17n.org>
6272
6273 * coding.c (decode_coding_string): Handle post-read-conversion
6274 even if the coding doesn't require decoding.
6275
6276 2003-05-18 Richard M. Stallman <rms@gnu.org>
6277
6278 * callproc.c (Fcall_process_region): Doc fix.
6279
6280 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6281
6282 * lread.c (Fload): Print a message if package is obsolete.
6283
6284 * window.c (Fselect_window): Add optional `norecord' arg.
6285 (select_window_1): Fold into Fselect_window.
6286 (select_window_norecord): New function.
6287 (temp_output_buffer_show): Use it. Preserve current buffer.
6288
6289 * window.h (Fselect_window): Update declaration.
6290
6291 * window.c (delete_window, Fother_window, Fset_window_configuration):
6292 * minibuf.c (read_minibuf):
6293 * macterm.c (x_new_focus_frame):
6294 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6295 * callint.c (Fcall_interactively):
6296 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6297
6298 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6299
6300 2003-05-17 David Kastrup <dak@gnu.org>
6301
6302 * process.c (read_process_output): Back out change from 2003-03-09.
6303
6304 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6305
6306 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6307
6308 * textprop.c (text_property_stickiness): New arg `buffer'.
6309
6310 * intervals.h (text_property_stickiness): New arg `buffer'.
6311 (get_pos_property): Declare.
6312
6313 * intervals.c (get_local_map): Use get_pos_property, to obey
6314 stickiness and empty overlays.
6315 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6316 (merge_properties, intervals_equal, merge_properties_sticky):
6317 Use XCAR, XCDR.
6318 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6319
6320 2003-05-17 Richard M. Stallman <rms@gnu.org>
6321
6322 * minibuf.c (read_minibuf): If buffer is empty, record the default
6323 in the history.
6324 (Fminibuffer_complete_word): When deleting the overlap, take account
6325 of its real position.
6326
6327 * fns.c (map_char_table): Fix previous change.
6328
6329 * syntax.c (find_defun_start):
6330 When open_paren_in_column_0_is_defun_start,
6331 return beginning of buffer.
6332
6333 * lisp.h (map_char_table): Declare added arg.
6334
6335 * fns.c (map_char_table): New arg TABLE gets the master table.
6336 All calls changed.
6337 Process default and inheritance, resorting to Faref if necessary.
6338
6339 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6340 (Faccessible_keymaps): Pass new arg to map_char_table.
6341
6342 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6343
6344 * casetab.c (set_case_table): Pass new arg to map_char_table.
6345
6346 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6347
6348 * lisp.h (specbinding_func): New typedef.
6349 (struct specbinding): Use specbinding_func, to put the `volatile'
6350 in the right place.
6351
6352 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6353 to avoid GCC warning.
6354
6355 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
6356
6357 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
6358
6359 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6360
6361 * keyboard.c (apply_modifiers): Don't fill the other cache.
6362
6363 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6364
6365 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6366
6367 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6368 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6369 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6370 (Fset_window_configuration, Fcurrent_window_configuration)
6371 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6372 (Fpos_visible_in_window_p, mark_window_cursors_off)
6373 (window_internal_height, window_internal_width, Frecenter)
6374 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6375 (replace_buffer_in_all_windows, init_window_once, init_window)
6376 (syms_of_window, keys_of_window): Move from lisp.h.
6377 * lisp.h: Move window.c declarations to window.h.
6378
6379 * bytecode.c: Include window.h.
6380 * emacs.c: Include window.h.
6381
6382 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
6383 (keyremap): Add `parent' field.
6384 (keyremap_step): Use it. Remove `parent' argument.
6385 (read_key_sequence): Setup and use the new `parent' field.
6386
6387 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6388
6389 * keyboard.c (adjust_point_for_property): Ensure termination.
6390
6391 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6392
6393 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6394 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6395 duplicated handling of function-key-map and key-translation-map
6396 in read_key_sequence.
6397 (read_key_sequence): Use them.
6398
6399 * keyboard.c (adjust_point_for_property): Try harder to move point
6400 to the non-sticky end of an invisible property.
6401
6402 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6403 property intangible as well.
6404
6405 2003-05-10 Andreas Schwab <schwab@suse.de>
6406
6407 * xmenu.c (single_menu_item): Change last parameter to void* to
6408 avoid warning.
6409
6410 2003-05-09 Richard M. Stallman <rms@gnu.org>
6411
6412 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6413 Bind Qinhibit_modification_hooks to t so there will be no GC.
6414 Rename local `tem' to `save_deactivate_mark'.
6415
6416 * eval.c (specpdl_ptr): Declare volatile.
6417 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6418 before doing the work of unbinding it.
6419
6420 * lisp.h (struct specbinding): Declare elements volatile.
6421 (specpdl_ptr): Declare volatile.
6422
6423 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6424
6425 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6426 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6427
6428 2003-05-08 Dave Love <fx@gnu.org>
6429
6430 * coding.c (Vlast_coding_system_used): Doc fix.
6431
6432 2003-05-07 Jason Rumney <jasonr@gnu.org>
6433
6434 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6435 when system does not support them.
6436
6437 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6438
6439 * fileio.c (Qwrite_region_annotate_functions): New var.
6440 (build_annotations): Use it to process the global part of the hook.
6441 (syms_of_fileio): Init and staticpro it.
6442
6443 * keyboard.c (safe_run_hooks_error): Display a message instead of
6444 silently ignoring the error.
6445
6446 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6447
6448 * keyboard.c (input_available_signal): Mark static.
6449 (menu_bar_items): Use map_keymap.
6450 (menu_bar_one_keymap): Remove.
6451 (menu_bar_item): Adjust arglist (for use in map_keymap).
6452 Properly hide a second binding when not both are keymaps.
6453
6454 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6455 (single_keymap_panes): Use it and map_keymap.
6456 (single_menu_item): Use skp as well.
6457
6458 * keymap.h (map_keymap_function_t): New type.
6459 (map_keymap): Declare.
6460
6461 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6462 (map_keymap_call, Fmap_keymap): New functions.
6463 (syms_of_keymap): Defsubr map-keymap.
6464
6465 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6466
6467 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6468 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6469 ..._with_mnemonic functions for menu items.
6470
6471 2003-05-01 Kenichi Handa <handa@m17n.org>
6472
6473 * coding.c (coding_system_accept_latin_extra_p): Delete this
6474 function.
6475 (find_safe_codings): Pay attention to
6476 the property tranlsation-table-for-encode of each codings.
6477 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6478
6479 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6480
6481 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6482
6483 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6484
6485 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6486
6487 * lisp.h (CHECK): Wrap args in parenthesis.
6488 (specbind): Fix doc: symbol = Qnil is not supported any more.
6489
6490 * bytecode.c (Fbyte_code) <unwind-protect>:
6491 Use Fprogn rather than 0 and Qnil.
6492
6493 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6494 `double', and `triple' modifiers as well.
6495
6496 2003-04-30 Richard M. Stallman <rms@gnu.org>
6497
6498 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6499
6500 * alloc.c (abort_on_gc): New variable.
6501 (Fgarbage_collect): Abort if abort_on_gc is set.
6502
6503 * lisp.h (abort_on_gc): Add decl.
6504
6505 * eval.c (Fsignal): Clear abort_on_gc.
6506
6507 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
6508 Reinit FORMAT_START and END before second scan.
6509
6510 * xdisp.c (move_it_vertically_backward): Do the final big else
6511 even if nlines is 0.
6512
6513 * xdisp.c (redisplay_internal): Finish the per-frame loop
6514 even if redisplay is suspended by input.
6515
6516 2003-04-24 Andrew Choi <akochoi@shaw.ca>
6517
6518 * macterm.c (x_list_fonts): Return all fonts that match if
6519 maxnames = -1.
6520
6521 2003-04-25 Kenichi Handa <handa@m17n.org>
6522
6523 * syntax.c (skip_chars): Fix previous change.
6524
6525 2003-04-24 Kenichi Handa <handa@m17n.org>
6526
6527 * syntax.c (skip_chars): Make the code faster by using the common
6528 technique of *p, *stop, and *endp.
6529
6530 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6531
6532 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
6533 tool_bar_items so GTK tool bar expose callback does not access items
6534 being updated.
6535
6536 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6537
6538 * eval.c (Fapply): Undo last change and add a comment about why.
6539
6540 2003-04-18 Miles Bader <miles@gnu.org>
6541
6542 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6543 pickier PARSE_MULTIBYTE_SEQ.
6544
6545 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6546
6547 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6548 Use XCDR, XCAR, CONSP.
6549 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6550 (Fapply): Remove unnecessary GCPRO.
6551
6552 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6553
6554 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6555
6556 * buffer.h: Don't hardcode BEG==1.
6557
6558 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6559
6560 2003-04-16 Richard M. Stallman <rms@gnu.org>
6561
6562 * xdisp.c (try_window, try_window_reusing_current_matrix):
6563 When at end of window, set window_end_pos to Z-ZV.
6564
6565 * buffer.c (Foverlay_recenter): Doc fix.
6566
6567 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6568
6569 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6570
6571 2003-04-14 Andrew Choi <akochoi@shaw.ca>
6572
6573 * macterm.c (mac_check_for_quit_char): Don't check more often than
6574 once a second.
6575
6576 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6577
6578 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6579 specially, so that they can't hide an implicit switch-frame event.
6580 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6581 (head_table): Use switch-frame as event_kind for select-window.
6582 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6583
6584 * editfns.c (Fformat): Lisp_Object/int mixup.
6585 (format2): Remove unused var numargs.
6586
6587 2003-04-11 Kenichi Handa <handa@m17n.org>
6588
6589 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
6590 (Qafter_insert_file_set_coding): New variable.
6591 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6592 for after-insert-file-adjust-coding-function.
6593 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6594 instead of Vafter_insert_file_adjust_coding_function.
6595
6596 2003-04-11 Kenichi Handa <handa@m17n.org>
6597
6598 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6599
6600 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6601 string. Callers changed.
6602
6603 2003-04-10 Kenichi Handa <handa@m17n.org>
6604
6605 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
6606 (syms_of_fileio): Declare it as a lisp variable.
6607 (Finsert_file_contents):
6608 Call Vafter_insert_file_adjust_coding_function before calling
6609 decode-format.
6610
6611 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6612
6613 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6614 get GtkAdjustment as widget now is a GtkRange.
6615
6616 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6617 GtkRange to avoid memory leak.
6618
6619 2003-04-09 Kenichi Handa <handa@m17n.org>
6620
6621 * xfaces.c (Vface_font_rescale_alist): New variable.
6622 (struct font_name): New member rescale_ratio.
6623 (font_rescale_ratio): New function.
6624 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
6625 (better_font_p): On comparing point sized, pay attention to
6626 recale_ratio member of fonts.
6627 (build_scalable_font_name): Reflect font->rescale_ratio in the
6628 font name.
6629 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
6630
6631 * lread.c (read1): Before calling index, check if the 2nd
6632 arguemnt is in ASCII range.
6633
6634 2003-04-08 Richard M. Stallman <rms@gnu.org>
6635
6636 * fileio.c (Ffile_symlink_p): Doc fix.
6637
6638 * editfns.c (Fformat): Translate positions of text properties
6639 in the format string to apply them to the result.
6640
6641 * fileio.c (Finsert_file_contents): Doc fix.
6642 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6643
6644 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6645
6646 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6647
6648 2003-04-08 Steven Tamm <steventamm@mac.com>
6649
6650 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6651 that self-contained application finds libexec files.
6652
6653 2003-04-08 Kenichi Handa <handa@m17n.org>
6654
6655 * coding.c (code_convert_region_unwind):
6656 Set Vlast_coding_system_used to the argument.
6657 (code_convert_region): If post-read-conversion function changed
6658 the value of last-coding-sytem, keep the new value in
6659 coding->symbol so that it won't be overridden.
6660 (run_pre_post_conversion_on_str): Likewise.
6661 (coding_system_accept_latin_extra_p): New function.
6662 (find_safe_codings): Pay attention to characters registered in
6663 latin-extra-code-table.
6664
6665 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6666
6667 * Makefile.in (md5.o): Add missing dependency info.
6668
6669 2003-04-06 Richard M. Stallman <rms@gnu.org>
6670
6671 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6672
6673 * marker.c (verify_bytepos): New function.
6674
6675 * intervals.c (set_intervals_multibyte_1): When becoming
6676 multibyte, adjust right and left child sizes to a whole set of
6677 characters. If an interval gets zero total-length, delete it.
6678 If an interval consists of just its children, delete one of them.
6679
6680 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6681 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
6682
6683 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6684 All calls deleted.
6685 (lisp_malloc): Do the work here directly.
6686
6687 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6688
6689 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6690 char tables.
6691
6692 2003-04-04 Kenichi Handa <handa@m17n.org>
6693
6694 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6695 destructively change "%S" to "%s".
6696
6697 2003-04-03 Miles Bader <miles@gnu.org>
6698
6699 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6700 always set.
6701
6702 2003-04-01 Dave Love <fx@gnu.org>
6703
6704 * xfns.c (xpm_lookup_color): Grok "opaque".
6705
6706 2003-03-31 Andrew Choi <akochoi@shaw.ca>
6707
6708 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6709 parent window ID.
6710
6711 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6712
6713 * macterm.h (struct mac_output): Define x_pixels_diff and
6714 y_pixels_diff.
6715
6716 2003-03-31 Juanma Barranquero <lektu@terra.es>
6717
6718 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6719 blockinput.h and files included from it.
6720
6721 2003-03-31 Kim F. Storm <storm@cua.dk>
6722
6723 The following changes consolidates the common code related to
6724 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6725 files into frame.c.
6726
6727 * frame.c: Include blockinput.h.
6728 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6729 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6730 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6731 related vars here.
6732 (struct frame_parm_table, frame_parms): New table for describing
6733 frame parameters and their associated Q-variable.
6734 The order of the parameters corresponds to the sequence of the
6735 frame_parm_handlers table in redisplay_interface.
6736 (x_fullscreen_move, x_set_frame_parameters)
6737 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6738 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6739 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6740 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6741 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6742 Generic functions for processing of frame parameters.
6743 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6744 (display_x_get_resource, x_get_resource_string): Functions for
6745 generic access to X resources.
6746 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6747 (x_default_parameter, Fx_parse_geometry): Functions for generic
6748 access to frame parameters.
6749 (x_figure_window_size): Generic calculation of frame size.
6750 Fixed to add space needed for tool bar. Also setup size_hint_flags.
6751 (syms_of_frame): Intern and staticpro frame parameter variables.
6752 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6753 Defsubr Sx_get_resource and Sx_parse_geometry.
6754
6755 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6756 parameter related vars defined in frame.c.
6757 (EMACS_CLASS): Define here.
6758 (enum FULLSCREEN_*): Define here.
6759 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6760 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6761 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6762 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6763 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6764 (x_set_visibility, x_set_autoraise, x_set_autolower)
6765 (x_set_unsplittable, x_set_vertical_scroll_bars)
6766 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6767 (x_figure_window_size): Add prototypes.
6768
6769 * dispextern.h (frame_parm_handler): New typedef.
6770 (struct redisplay_interface): New member frame_parm_handlers.
6771 (enum resource_types): Move declaration here.
6772 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6773 (x_default_parameter): Add prototypes.
6774
6775 * window.c: Remove extern decl for frame parameter vars.
6776 (change_window_heights): New generic function;
6777 replaces x_change_window_heights. All users changed.
6778
6779 * window.h (change_window_heights): Add prototype.
6780
6781 * xfaces.c: Remove extern decl for frame parameter vars.
6782
6783 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6784 (struct w32_display_info): Fix type of xrdb member.
6785 (enum FULLSCREEN_*): Remove.
6786 Remove prototypes for generic functions (in frame.h).
6787
6788 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6789 parameters now defined in frame.h and frame.c.
6790 (Vx_resource_name): Remove. Use generic var.
6791 (enum x_frame_parms): Remove (bogus, unused enum).
6792 (check_x_display_info): Make non-static (for frame.c).
6793 (struct x_frame_parm_table, x_frame_parms): Remove.
6794 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6795 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6796 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6797 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6798 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6799 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6800 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6801 Remove. Use generic functions instead.
6802 (enum resource_types): Remove.
6803 (x_set_scroll_bar_default_width): New global function (for frame.c).
6804 (Fx_create_frame): Depend on x_figure_window_size to add space for
6805 toolbar and setup size_hint_flags.
6806 (x_frame_parm_handlers): New table for redisplay_interface.
6807 (syms_of_xfns): Don't intern/staticpro removed vars.
6808
6809 * xterm.c: Remove unnecessary extern declarations.
6810 (x_fullscreen_adjust): Remove. Use generic instead.
6811 (x_redisplay_interface): Add x_frame_parm_handlers member.
6812
6813 * w32gui.h (XrmDatabase): New (dummy) typedef.
6814
6815 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6816 (struct w32_display_info): Fix type of xrdb member.
6817 (enum FULLSCREEN_*): Remove.
6818 (x_fullscreen_adjust): Remove prototype.
6819
6820 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6821 parameters now defined in frame.h and frame.c.
6822 (Vx_resource_name): Remove. Use generic var.
6823 (enum x_frame_parms): Remove (bogus, unused enum).
6824 (check_x_display_info): Make non-static (for frame.c).
6825 (struct x_frame_parm_table, x_frame_parms): Remove.
6826 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6827 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6828 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6829 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6830 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6831 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6832 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6833 Remove. Use generic functions instead.
6834 (enum resource_types): Remove.
6835 (x_set_scroll_bar_default_width): New global function (for frame.c).
6836 (Fx_create_frame): Depend on x_figure_window_size to add space for
6837 toolbar and setup size_hint_flags.
6838 (w32_frame_parm_handlers): New table for redisplay_interface.
6839 (syms_of_w32fns): Don't intern/staticpro removed vars.
6840
6841 * w32term.c: Remove unnecessary extern declarations.
6842 (x_fullscreen_adjust): Remove. Use generic instead.
6843 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6844
6845 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6846
6847 * macgui.h (XrmDatabase): New (dummy) typedef.
6848
6849 * macterm.h (EMACS_CLASS): Remove.
6850 (struct mac_display_info): Add xrdb member.
6851 (struct mac_output): Add want_fullscreen member.
6852
6853 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6854 parameters now defined in frame.h and frame.c.
6855 (Vx_resource_name): Remove. Use generic var.
6856 (check_x_display_info): Make non-static (for frame.c).
6857 (struct x_frame_parm_table, x_frame_parms): Remove.
6858 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6859 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6860 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6861 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6862 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6863 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6864 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6865 Remove. Use generic functions instead.
6866 (enum resource_types): Remove.
6867 (x_set_scroll_bar_default_width): New global function (for frame.c).
6868 (mac_frame_parm_handlers): New table for redisplay_interface.
6869 (syms_of_macfns): Don't intern/staticpro removed vars.
6870
6871 * macterm.c: Remove unnecessary extern declarations.
6872 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6873
6874 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6875 included from it (atimer.h and systime.h).
6876
6877 2003-03-30 Andreas Schwab <schwab@suse.de>
6878
6879 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6880 parameters for shift_glyphs_for_insert.
6881
6882 * macterm.c (x_redisplay_interface): Add missing entry for
6883 draw_vertical_window_border.
6884
6885 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6886
6887 * fileio.c (Fexpand_file_name): In the no-handler case, after
6888 expanding, look again for a handler and invoke it. This is needed
6889 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6890 expansion produces "/user@host:/bar/../baz" which needs to be
6891 expanded again for the finame result "/user@host:/baz".
6892
6893 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6894
6895 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6896 of area to be redrawn for better performance.
6897
6898 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6899
6900 * xterm.c (take_vertical_position_into_account): Remove.
6901 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6902 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6903 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6904 (x_set_toolkit_scroll_bar_thumb): Simplify.
6905 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6906 (XTread_socket): Remove unused var.
6907 (x_make_frame_invisible): Replace goto with else.
6908
6909 * xdisp.c (set_vertical_scroll_bar): New fun.
6910 (redisplay_window): Use it.
6911
6912 2003-03-26 Richard M. Stallman <rms@gnu.org>
6913
6914 * xdisp.c (update_tool_bar): Recompute tool bar if
6915 update_mode_lines is set. Set w->update_mode_line
6916 only if the tool bar contents actually change.
6917 (update_menu_bar): Undo previous change.
6918
6919 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6920
6921 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6922 (xg_frame_set_char_size): Calculate scroll bar width before frame
6923 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6924 (xg_separator_p): Check for all documented separator types.
6925 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6926 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6927
6928 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6929 so tool bar gets updated.
6930
6931 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6932
6933 * data.c (store_symval_forwarding): Re-instate part of the code
6934 that was deleted with too much enthusiasm.
6935
6936 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6937
6938 * data.c (store_symval_forwarding): Delete special read-only
6939 hack for type == -1, since we now use ->constant instead.
6940 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6941
6942 * buffer.c (overlays_in): Declare static.
6943 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6944 `constant' field rather than the variable's `type' field.
6945
6946 2003-03-24 Andrew Choi <akochoi@shaw.ca>
6947
6948 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6949
6950 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6951
6952 * fns.c [MAC_OSX]: Do not redefine vector.
6953
6954 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6955
6956 * macgui.h: Remove definition of No_Cursor.
6957
6958 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
6959
6960 * xdisp.c: Define No_Cursor.
6961 (x_write_glyphs, notice_overwritten_cursor)
6962 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6963 (note_mouse_highlight): Remove Mac-specific code.
6964 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
6965
6966 2003-03-24 John Paul Wallington <jpw@gnu.org>
6967
6968 * xdisp.c (redisplay_window): If mini window's buffer is not
6969 empty, then redisplay it like other windows.
6970
6971 2003-03-23 Kim F. Storm <storm@cua.dk>
6972
6973 * w32term.c (w32_draw_window_cursor): Fix last change.
6974
6975 2003-03-23 Kenichi Handa <handa@m17n.org>
6976
6977 * alloc.c (make_string_from_bytes, make_specified_string):
6978 Add `const' for the arg CONTENTS.
6979
6980 * lisp.h (make_string_from_bytes, make_specified_string):
6981 Prototypes adjusted.
6982
6983 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6984
6985 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
6986
6987 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6988 (XG_SB_RANGE): New define.
6989
6990 * gtkutil.c (xg_fixed_handle_expose): New function.
6991 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6992 expose events.
6993 (xg_update_scrollbar_pos): Take two more arguments, left and width
6994 of scroll bar including borders.
6995 Clear left and right part outside scroll bar separately as some
6996 themes have bars that are not an even number of pixels.
6997 Don't set reallocate_redraws, don't call
6998 gdk_window_process_all_updates.
6999 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7000 so no need to change it. Calculate size and value with XG_SB_RANGE.
7001
7002 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7003 Pass left and width of scroll bar including borders to
7004 xg_update_scrollbar_pos.
7005
7006 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7007
7008 * Makefile.in: Make sure space precedes end-of-line backslashes.
7009
7010 2003-03-22 Kim F. Storm <storm@cua.dk>
7011
7012 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7013 Add generic versions here. Remove system specific versions
7014 defined elsewhere.
7015
7016 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7017 Add prototypes.
7018
7019 * xterm.h (STORE_NATIVE_RECT): New macro.
7020
7021 2003-03-21 Kim F. Storm <storm@cua.dk>
7022
7023 * xdisp.c (get_glyph_string_clip_rect):
7024 Use FRAME_INTERNAL_BORDER_WIDTH.
7025
7026 * dispextern.h (struct redisplay_interface): Add active_p
7027 argument to draw_window_cursor member. All uses changed.
7028
7029 2003-03-21 Kim F. Storm <storm@cua.dk>
7030
7031 The following changes consolidate code related to writing and
7032 inserting glyphs, exposing frame, the tool bar, the mouse face,
7033 the output cursor, and help echo from xterm.c, w32term.c and
7034 macterm.c into xdisp.c. It also generalizes the use of the
7035 window_part enum instead of using numeric values throughout.
7036
7037 * xdisp.c: Consolidate gui-independent code here.
7038 Include keymap.h.
7039 (Qhelp_echo): Import.
7040 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7041 (help_echo_string, help_echo_window, help_echo_object)
7042 (previous_help_echo_string, help_echo_pos): Declare here.
7043 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7044 (estimate_mode_line_height): Define here. Handle windowing
7045 systems directly (without using estimate_mode_line_height_hook).
7046 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7047 (update_window_cursor, update_cursor_in_window_tree)
7048 (fast_find_position, fast_find_string_pos)
7049 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7050 (expose_area, expose_line, expose_overlaps, expose_window)
7051 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7052 declared static as they are only used locally in xdisp.c.
7053 (draw_glyphs): Rename from x_draw_glyphs and make static.
7054 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7055 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7056 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7057 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7058 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7059 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7060 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7061 (note_mouse_highlight, x_clear_window_mouse_face)
7062 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7063 (x_intersect_rectangles): New generic functions for use by xdisp.c
7064 and GUI front-ends.
7065 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7066 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7067
7068 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7069 (NativeRectangle): Generic typedef for rectangle type.
7070 (enum window_part): Move here from window.c.
7071 (struct redisplay_interface): New members flush_display_optional,
7072 define_frame_cursor, clear_frame_area, draw_window_cursor,
7073 draw_vertical_window_border, shift_glyphs_for_insert.
7074 Rename member clear_mouse_face to clear_window_mouse_face.
7075 (estimate_mode_line_height_hook): Remove hook.
7076 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7077 (tool_bar_item_info): Remove prototype.
7078 (help_echo_string, help_echo_window, help_echo_object)
7079 (previous_help_echo_string, help_echo_pos)
7080 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7081 (x_stretch_cursor_p, output_cursor): Declare extern.
7082 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7083 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7084 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7085 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7086 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7087 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7088 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7089 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7090 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7091 Add prototypes.
7092 (mode_line_string, marginal_area_string): Fix prototypes.
7093
7094 * window.c (enum window_part): Move to dispextern.h.
7095 (coordinates_in_window): Use enum window_part member names
7096 instead of numbers to describe return value.
7097 (struct check_window_data): Change part member to window_part.
7098 (check_window_containing): Return window_part unaltered.
7099 (window_from_coordinates): Change part arg from int to enum
7100 window_part. Allow part arg to be null. All users changed.
7101
7102 * window.h (window_from_coordinates): Fix prototype.
7103
7104 * term.c (estimate_mode_line_height): Move to xdisp.c.
7105
7106 * keyboard.c (make_lispy_event): Use enum window_part.
7107
7108 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7109 window_part instead of int in arg list. Users changed.
7110
7111 * xterm.h (No_Cursor): Declare as None for X.
7112 (struct mac_output): Replace member cross_cursor by hand_cursor.
7113
7114 * xterm.c: Remove consolidated defines and code.
7115 (BETWEEN): Remove unused macro.
7116 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7117 (x_define_frame_cursor, x_clear_frame_area)
7118 (x_draw_window_cursor): New X-specific functions for RIF.
7119 (x_redisplay_interface): Add new members.
7120
7121 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7122
7123 * w32term.h (struct w32_output): Remove cross_cursor member.
7124
7125 * w32term.c: Remove consolidated defines and code.
7126 (BETWEEN): Remove unused macro.
7127 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7128 (w32_define_frame_cursor, w32_clear_frame_area)
7129 (w32_draw_window_cursor): New W32-specific functions for RIF.
7130 (w32_redisplay_interface): Add new members.
7131
7132 * w32gui.h (No_Cursor): Define as 0 for W32.
7133 (XRectangle): Add X compatible rectangle type.
7134 (NativeRectangle): Declare as RECT for W32.
7135 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7136
7137 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7138
7139 * w32console.c: Remove consolidated defines and code.
7140
7141 * msdos.h (Display_Info): Add generic typedef.
7142
7143 * msdos.c: Remove consolidated defines and code.
7144 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7145
7146 * macterm.h (struct mac_output): Replace member cross_cursor by
7147 hand_cursor.
7148 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7149
7150 * macterm.c: Remove consolidated defines and code.
7151 (BETWEEN): Remove unused macro.
7152 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7153 (mac_define_frame_cursor, mac_clear_frame_area)
7154 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7155 (x_redisplay_interface): Add new members.
7156
7157 * macgui.h (No_Cursor): Define as 0 for Mac.
7158 (XRectangle): Add X compatible rectangle type.
7159 (NativeRectangle): Declare as Rect for Mac.
7160 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7161
7162 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7163 (x_set_cursor_color): Use x_display_and_set_cursor.
7164
7165 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7166 included from it. Add dependency on keymap.h.
7167
7168 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7169
7170 2003-03-21 Kenichi Handa <handa@m17n.org>
7171
7172 * fileio.c (Fexpand_file_name): Fix previous change.
7173
7174 2003-03-19 Kenichi Handa <handa@m17n.org>
7175
7176 * fileio.c (Ffile_name_directory): Reconstruct file name by
7177 make_specified_string.
7178 (Ffile_name_nondirectory, Ffile_name_as_directory)
7179 (Fdirectory_file_name, Fexpand_file_name)
7180 (Fsubstitute_in_file_name): Likewise.
7181 (Fread_file_name): Compare decoded homedir with DIR and
7182 DEFAULT_FILENAME.
7183
7184 * alloc.c (make_specified_string): If NCHARS is negative, count
7185 the number of characters.
7186
7187 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7188
7189 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7190 all widgets.
7191
7192 * gtkutil.h: Removed xg_ignore_next_thumb.
7193
7194 2003-03-18 Kenichi Handa <handa@m17n.org>
7195
7196 * coding.c (Vchar_coding_system_table): Remove this variable.
7197 (Vcoding_system_safe_chars): New variable.
7198 (intersection): Remove this function.
7199 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7200 all codings in SAFE_CODINGS.
7201 (Ffind_coding_systems_region_internal): Adjust for the change of
7202 find_safe_codings. Get generic coding systems from
7203 Vcoding_system_safe_chars.
7204 (Fdefine_coding_system_internal): New function.
7205 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7206 Initialize and staticpro Vcoding_system_safe_chars.
7207
7208 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7209
7210 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7211 equal old values before updating.
7212
7213 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7214
7215 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7216
7217 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7218
7219 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7220 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7221 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7222 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7223 (xg_create_scroll_bar): Pass bar to button event callback.
7224 (xg_find_top_left_in_fixed): New function.
7225 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7226 whole scroll bar area. Get old position with
7227 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7228 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7229 dragging is in progress. Calculate whole as for Motif.
7230 Remove code that saved last values. Call gtk_range functions to
7231 set scroll bar sizes.
7232
7233 * gtkutil.h: Removed xg_ignore_next_thumb.
7234
7235 2003-03-17 Juanma Barranquero <lektu@terra.es>
7236
7237 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7238 and files included from it.
7239
7240 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7241
7242 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7243 multiple occurrences of the same keymap under different prefixes.
7244 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7245
7246 2003-03-16 Jason Rumney <jasonr@gnu.org>
7247
7248 * w32gui.h: Use HDC for Display.
7249
7250 * w32term.c (w32_encode_char): Prevent double-byte chars from
7251 crashing Emacs.
7252
7253 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7254 as binary.
7255
7256 2003-03-16 Juanma Barranquero <lektu@terra.es>
7257
7258 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7259
7260 2003-03-16 Kim F. Storm <storm@cua.dk>
7261
7262 The following changes consolidate some of the gui-independent
7263 parts of the processing and drawing of "glyph strings" from
7264 xterm.c, w32term.c, and macterm.c into xdisp.c.
7265
7266 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7267 21 bits (this reduces number of faces from 4M to 2M).
7268 Replace W32 specific w32_font_type member (2 bits) by generic
7269 font_type member (3 bits) for portability.
7270 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7271 (enum draw_glyphs_face): Define here.
7272 (struct glyph_string): Define here. Merge W32 and X versions.
7273 (struct redisplay_interface): New members per_char_metric,
7274 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7275 (VCENTER_BASELINE_OFFSET): Define here.
7276 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7277 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7278
7279 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7280 (dump_glyph_string): Moved here.
7281 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7282 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7283 (fill_composite_glyph_string, fill_glyph_string)
7284 (fill_image_glyph_string, fill_stretch_glyph_string)
7285 (left_overwritten, left_overwriting, right_overwritten)
7286 (right_overwriting, get_char_face_and_encoding)
7287 (set_glyph_string_background_width, compute_overhangs_and_x)
7288 (append_glyph, append_composite_glyph, produce_image_glyph)
7289 (take_vertical_position_into_account, append_stretch_glyph)
7290 (produce_stretch_glyph): New generic functions (based on X version).
7291 Call platform specific functions through rif.
7292 (INIT_GLYPH_STRING): New macro, hides W32 details.
7293 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7294 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7295 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7296 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7297 (notice_overwritten_cursor):
7298 Generic functions exported to platform modules. Users changed.
7299
7300 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7301 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7302 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
7303 New macros for consolidated code.
7304
7305 * xterm.c: Remove consolidated defines and code.
7306 (x_per_char_metric, x_encode_char)
7307 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7308 (x_redisplay_interface): Add new members.
7309
7310 * w32gui.h (Display): Add dummy typedef for consolidation.
7311 (XChar2b): Define alias for wchar_t for consolidation.
7312 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7313
7314 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
7315 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
7316 New macros for consolidation.
7317
7318 * w32term.c: Remove consolidated defines and code.
7319 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7320 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7321 (w32_per_char_metric): Change font_type arg to int for RIF.
7322 (w32_encode_char): Return int according to RIF requirements.
7323 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7324 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7325 x_get_glyph_overhangs.
7326 (w32_redisplay_interface): Add new members.
7327
7328 * macgui.h (XChar2b): Move typedef here for consolidation.
7329 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7330
7331 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7332 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7333 consolidation.
7334
7335 * macterm.c: Remove consolidated defines and code.
7336 (mac_per_char_metric): New function for RIF.
7337 (mac_encode_char): Adapt to new RIF requirements.
7338 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7339 (x_redisplay_interface): Add new members.
7340
7341 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7342
7343 * keymap.c (Vmenu_events): New var.
7344 (syms_of_keymap): Initialize it.
7345 (where_is_internal): Check more carefully what is a menu event.
7346
7347 2003-03-14 Richard M. Stallman <rms@gnu.org>
7348
7349 * lread.c (read1): After #!, exit loop on eof.
7350
7351 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7352
7353 * gtkutil.h: Add declaration for xg_frame_cleared.
7354
7355 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7356
7357 * gtkutil.c (struct xg_last_sb_pos): New structure.
7358 (handle_fixed_child): New function.
7359 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7360 and force a redraw on them.
7361 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7362 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7363 so we can avoid unneeded redraws.
7364 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7365 and force a redraw on the scroll bar.
7366 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7367 if xg_last_sb_pos shows the positions are up to date.
7368 (xg_frame_cleared): New function.
7369
7370 2003-03-13 Kenichi Handa <handa@m17n.org>
7371
7372 * coding.c (Fdetect_coding_region): Fix docstring.
7373 (Fdetect_coding_string): Fix docstring.
7374
7375 2003-03-13 Andreas Schwab <schwab@suse.de>
7376
7377 * gtkutil.c: Add prototype for create_menus.
7378
7379 * data.c (long_to_cons): Fix type of top.
7380
7381 * xselect.c (selection_data_to_lisp_data): Use int instead of
7382 long for an integer of size 4.
7383
7384 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
7385 (xg_tool_bar_help_callback): Likewise.
7386
7387 2003-03-12 Andreas Schwab <schwab@suse.de>
7388
7389 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7390
7391 2003-03-12 Kim F. Storm <storm@cua.dk>
7392
7393 The following changes consolidate the fringe handling from
7394 xterm.c, w32term.c, and macterm.c into xdisp.c.
7395
7396 * xdisp.c: Consolidate fringe handling code here.
7397 (left_bits, right_bits, continued_bits, continuation_bits)
7398 (ov_bits, zv_bits): Define fringe bitmaps.
7399 (fringe_bitmaps): New array holding fringe bitmaps.
7400 (draw_fringe_bitmap): Draw a specific bitmap; call display
7401 specific drawing routine via rif->draw_fringe_bitmap.
7402 (draw_row_fringe_bitmaps): Generic replacement for
7403 x_draw_row_fringe_bitmaps; all callers changed.
7404 (compute_fringe_widths): Generic replacement for
7405 x_compute_fringe_widths; all callers changed.
7406
7407 * dispextern.h (enum fringe_bitmap_type): Define here.
7408 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7409 (fringe_bitmaps): Declare extern.
7410 (struct redisplay_interface): New member draw_fringe_bitmap.
7411 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7412
7413 * xterm.c: Remove generic fringe code.
7414 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7415 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7416
7417 * w32term.c: Remove generic fringe code.
7418 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7419 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
7420
7421 * macterm.c: Remove generic fringe code.
7422 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7423 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7424
7425 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7426
7427 * print.c (Fprin1_to_string): Return unibyte string if possible.
7428
7429 2003-03-09 David Kastrup <dak@gnu.org>
7430
7431 * process.c (read_process_output): We have allocated enough space
7432 for readmax and carryover, so actually use the alloted space.
7433
7434 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7435
7436 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7437 toolkit scrollbar click.
7438
7439 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7440 for USE_GTK.
7441 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7442 also.
7443 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7444 scrollbar and control is pressed, call x_scroll_bar_handle_click.
7445
7446 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7447
7448 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7449 (xg_tool_bar_item_expose_callback): New function.
7450 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7451 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7452 on the tool bar widget.
7453 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7454 to expose on the tool bar item widgets.
7455
7456 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7457
7458 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
7459 struct image* when deciding to update (struct image* may have been
7460 deleted from the image cache).
7461
7462 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7463 the event isn't for a frame (i.e. for dialogs).
7464
7465 2003-03-07 Kenichi Handa <handa@m17n.org>
7466
7467 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7468 composition components reaches the limit, terminate composing.
7469 (COMPOSITION_OK): New macro.
7470 (detect_coding_iso2022): Use it if an escape sequence for
7471 composition is found.
7472 (coding_restore_composition): Adjust the number of composition
7473 components if it is not sane.
7474
7475 2003-03-06 Juanma Barranquero <lektu@terra.es>
7476
7477 * w32term.h (struct w32_display_info): Add xrdb member to support
7478 passing resources via -xrm on Windows.
7479
7480 * w32term.c (w32_make_rdb): New function.
7481 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7482 struct. Delete leftover code.
7483
7484 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7485 for resources passed on the command line.
7486
7487 * w32reg.c (w32_get_rdb_resource): New function.
7488 (x_get_string_resource): Use it, so resources passed with -xrm
7489 supercede the ones in the registry.
7490
7491 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7492
7493 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7494 instead of x_top_window_to_frame.
7495
7496 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7497
7498 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7499 when restarting Emacs.
7500
7501 2003-03-03 Richard M. Stallman <rms@gnu.org>
7502
7503 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7504 to run kill-buffer-query-functions.
7505 (Qkill_buffer_query_functions): New var.
7506 (syms_of_buffer): Init and staticpro it.
7507
7508 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7509
7510 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7511
7512 2003-02-25 Kim F. Storm <storm@cua.dk>
7513
7514 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7515 If centering point failed to make whole line visible and vscroll
7516 is non-zero, disable vscroll and try centering point again.
7517
7518 * lread.c (read1): Accept `single space' syntax like (? x).
7519
7520 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7521
7522 * keyboard.c (cancel_hourglass_unwind): Surround with
7523 #ifdef HAVE_X_WINDOWS
7524
7525 2003-02-25 Kenichi Handa <handa@m17n.org>
7526
7527 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7528 process only when "subprocesses" is defined.
7529
7530 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7531
7532 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7533
7534 2003-02-24 Juanma Barranquero <lektu@terra.es>
7535
7536 * callint.c (fix_command): Declare as static void and move before
7537 Fcall_interactively.
7538
7539 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7540 (syms_of_xdisp): Don't initialize Qwhen.
7541
7542 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7543
7544 * keyboard.c (cancel_hourglass_unwind): New function.
7545 (command_loop_1): Cancel hourglass with unwind-protect.
7546
7547 2003-02-23 Richard M. Stallman <rms@gnu.org>
7548
7549 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7550 Detect (when ... (region-beginning)) etc.
7551 (Fcall_interactively): Call fix_command.
7552 (Qif, Qwhen): New variables.
7553 (syms_of_callint): Init and staticpro them.
7554
7555 * regex.c (print_partial_compiled_pattern): Output to stderr.
7556
7557 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7558
7559 * dired.c (directory_files_internal): Don't expand directory.
7560 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7561 instead. From Lars Hansen <larsh@math.ku.dk>.
7562
7563 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7564
7565 * fns.c (string_to_multibyte): Remove unused var i.
7566 (Flanginfo): Fix int/Lisp_Object mixup.
7567 (void_call2): New fun.
7568 (Fmap_char_table): Use it in place of call2.
7569
7570 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7571
7572 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7573
7574 * keymap.c (copy_keymap_1): Make it static.
7575
7576 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7577
7578 2003-02-22 David Ponce <david@dponce.com>
7579
7580 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7581
7582 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7583
7584 * process.h: Removed subtty field from struct Lisp_Process.
7585
7586 * process.c (create_process): Remove setting of subtty.
7587 (emacs_get_tty_pgrp): New function.
7588 (Fprocess_running_child_p, process_send_signal):
7589 Call emacs_get_tty_pgrp instead of ioctl.
7590 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7591
7592 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7593
7594 * keymap.c (Fdefine_key): Doc fix.
7595
7596 2003-02-21 Juanma Barranquero <lektu@terra.es>
7597
7598 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7599
7600 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7601 POLLING_PROBLEM_IN_SELECT.
7602
7603 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7604 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7605
7606 * s/hpux10-20.h: New file.
7607
7608 * process.c (wait_reading_process_input):
7609 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
7610
7611 2003-02-20 Kenichi Handa <handa@m17n.org>
7612
7613 * fontset.c (check_fontset_name): If NAME is nil, return the
7614 default fontset.
7615 (override_font_info): New function.
7616 (Fset_fontset_font): Document that NAME nil means the default fontset.
7617 (Ffontset_info): If FONTSET is not the default fontset, merge
7618 FONTSET onto the copy of the default fontset, and work on that
7619 copy. Document that NAME nil means the default fontset.
7620 (Ffontset_font): Document that NAME nil means the default fontset.
7621
7622 * process.c (setup_process_coding_systems): If the process's
7623 in/out descriptor is -1, do nothing.
7624
7625 2003-02-19 Andreas Schwab <schwab@suse.de>
7626
7627 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7628 Add prototypes.
7629
7630 2003-02-19 Kenichi Handa <handa@m17n.org>
7631
7632 * xfaces.c (try_alternative_families): Try all scalable fonts if
7633 Vscalable_fonts_allowed is not Qt.
7634
7635 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7636
7637 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7638
7639 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7640
7641 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7642 names.
7643
7644 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
7645 (sorted_font_list): Move allocation of struct font_name to
7646 x_face_list_fonts.
7647 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7648 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7649
7650 2003-02-18 Kim F. Storm <storm@cua.dk>
7651
7652 * lread.c (read1): Fix last change.
7653 "`" is not always special. Allow "?" after a character constant.
7654
7655 2003-02-18 Andrew Choi <akochoi@shaw.ca>
7656
7657 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7658
7659 2003-02-18 Andreas Schwab <schwab@suse.de>
7660
7661 * window.c (window_scroll_pixel_based): Move outside a
7662 multi-glyph character before setting new window start.
7663
7664 * xdisp.c (in_display_vector_p): New function.
7665 * dispextern.h (in_display_vector_p): Declare.
7666
7667 2003-02-18 Kim F. Storm <storm@cua.dk>
7668
7669 * lread.c (read1): Fix and relax read syntax.
7670 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7671 Only recognize "," after dotted-pair dot if inside backquote.
7672 Never include "`" or "," (inside backquote) in a symbol.
7673 Allow dotted-pair dot after a character constant.
7674 Allow "`" and "," (inside backquote) after a character constant.
7675
7676 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7677
7678 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7679 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7680 icons. Set name of tool bar to emacs-toolbar.
7681 (update_frame_tool_bar): Connect expose event to
7682 xg_tool_bar_expose_callback.
7683
7684 2003-02-17 Richard M. Stallman <rms@gnu.org>
7685
7686 * keyboard.c (this_command_key_count_reset): New variable.
7687 Initiatize to 0 where this_command_key_count is set.
7688 (read_char): Save and restore this_command_key_count_reset
7689 around input method code.
7690 (read_char): If this_command_key_count_reset, echo reread commands.
7691 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7692
7693 2003-02-17 Kenichi Handa <handa@m17n.org>
7694
7695 * fns.c (string_to_multibyte): Always return a multibyte string.
7696
7697 2003-02-16 Jason Rumney <jasonr@gnu.org>
7698
7699 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7700 Negative max_fonts parameter means list all.
7701
7702 2003-02-14 Dave Love <fx@gnu.org>
7703
7704 * fns.c (Flanginfo): Doc fix.
7705
7706 2003-02-13 Kim F. Storm <storm@cua.dk>
7707
7708 * lread.c (read_escape): Interpret \s as a SPACE character, except
7709 for \s-X in a character constant which still is the super modifier.
7710 (read1): Signal an `invalid read syntax' error if a character
7711 constant is immediately followed by a digit or symbol character.
7712
7713 * search.c (Fmatch_data): Doc fix. Explicitly state that
7714 match-data is undefined if last search failed.
7715
7716 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7717 All uses changed.
7718
7719 2003-02-12 Juanma Barranquero <lektu@terra.es>
7720
7721 * eval.c (Fdefmacro): Fix typo.
7722
7723 2003-02-12 Kim F. Storm <storm@cua.dk>
7724
7725 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7726 macro is a string, convert meta modifiers in string when copying
7727 the string into a vector.
7728
7729 2003-02-11 Kim F. Storm <storm@cua.dk>
7730
7731 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7732
7733 2003-02-11 Kenichi Handa <handa@m17n.org>
7734
7735 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7736
7737 2003-02-10 Kim F. Storm <storm@cua.dk>
7738
7739 * process.c: Doc fixes.
7740 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7741
7742 2003-02-10 Kenichi Handa <handa@m17n.org>
7743
7744 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7745
7746 * process.c (QCfilter_multibyte): New variable.
7747 (setup_process_coding_systems): New function.
7748 (Fset_process_buffer, Fset_process_filter):
7749 Call setup_process_coding_systems.
7750 (Fstart_process): Initialize the member `filter_multibyte' of
7751 struct Lisp_Process.
7752 (create_process): Call setup_process_coding_systems.
7753 (Fmake_network_process): New keyward `:filter-multibyte'.
7754 Initialize the member `filter_multibyte' of struct Lisp_Process.
7755 Call setup_process_coding_systems.
7756 (server_accept_connection): Call setup_process_coding_systems.
7757 (read_process_output): If the process has a filter, decide the
7758 multibyteness of a string to given to the filter by
7759 `filter_multibyte' member of the process. If the process doesn't
7760 have a filter and the result of conversion is unibyte, use
7761 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7762 multibyte form.
7763 (Fset_process_coding_system): Call setup_process_coding_systems.
7764 (Fset_process_filter_multibyte): New function.
7765 (Fprocess_filter_multibyte_p): New function.
7766 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7767 Defsubr Sset_process_filter_multibyte and
7768 Sprocess_filter_multibyte_p.
7769
7770 * process.h (struct Lisp_Process): New member filter_multibyte.
7771
7772 * lisp.h (setup_process_coding_systems): Add prototype.
7773
7774 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7775 process, update coding systems for the process.
7776
7777 2003-02-09 Kenichi Handa <handa@m17n.org>
7778
7779 * fns.c (string_to_multibyte): New function.
7780 (Fstring_to_multibyte): New function.
7781 (syms_of_fns): Defsubr it.
7782
7783 2003-02-08 Andreas Schwab <schwab@suse.de>
7784
7785 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7786 instead of the substitution.
7787
7788 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7789
7790 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7791
7792 * xmenu.c (menu_position_func): Adjust menu popup position so that
7793 the menu is fully visible.
7794
7795 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7796
7797 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
7798 (x_make_frame_invisible, x_wm_set_icon_position):
7799 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
7800
7801 * xfns.c (x_set_name, x_set_title): Ditto.
7802
7803 2003-02-04 Richard M. Stallman <rms@gnu.org>
7804
7805 * keyboard.c (echo_now): Update before_command_echo_length.
7806 (Freset_this_command_lengths): Reset this_command_key_count etc.
7807 immediately rather than arranging to do it later.
7808 (before_command_key_count_1, before_command_echo_length_1)
7809 (before_command_restore_flag): Vars deleted.
7810 (add_command_key): Don't handle before_command_restore_flag.
7811 (read_char, record_menu_key): Don't update before_command_key_count or
7812 before_command_echo_length.
7813 (read_char): Don't handle before_command_restore_flag.
7814
7815 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7816 in direct-output clauses if it wouldn't be called in the ordinary case.
7817
7818 2003-02-04 Kim F. Storm <storm@cua.dk>
7819
7820 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7821
7822 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7823
7824 * gtkutil.c (remove_from_container): Copying list is not needed.
7825 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7826 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7827 on list returned from gtk_container_get_children to avoid memory leak.
7828
7829 2003-02-01 Jason Rumney <jasonr@gnu.org>
7830
7831 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7832 local malloc.
7833 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7834 definitions in xpm.h.
7835 (init_xpm_functions): New function.
7836 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
7837 (init_external_image_libraries): Try to load libXpm.dll.
7838
7839 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7840 timestamp.
7841
7842 2003-01-31 Dave Love <fx@gnu.org>
7843
7844 * syntax.c (Fskip_chars_forward)
7845 (open-paren-in-column-0-is-defun-start): Doc fix.
7846
7847 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7848
7849 * fileio.c: Support // at start of name for Cygwin (just added proper
7850 preprocessor tests).
7851
7852 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7853
7854 * Makefile.in: Use @EXEEXT@ for Cygwin.
7855
7856 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7857
7858 * s/cygwin.h: Added for Cygwin port.
7859
7860 2003-01-31 Juanma Barranquero <lektu@terra.es>
7861
7862 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7863 when including gif_lib.h.
7864 (init_gif_functions, init_tiff_functions): New functions.
7865 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7866 Windows. Disable color table lookups. Call library functions
7867 through pointers determined at runtime.
7868 (init_external_image_libraries): Try to load libungif.dll and
7869 libtiff.dll.
7870
7871 2003-01-31 Kenichi Handa <handa@m17n.org>
7872
7873 * xdisp.c (SKIP_GLYPHS): New macro.
7874 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
7875
7876 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7877
7878 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
7879
7880 2003-01-30 Dave Love <fx@gnu.org>
7881
7882 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7883 (Fgarbage_collect): Use them.
7884 (init_alloc, syms_of_alloc): Set them up.
7885
7886 2003-01-30 Juanma Barranquero <lektu@terra.es>
7887
7888 * w32fns.c (init_external_image_libraries): Add missing operator.
7889
7890 2003-01-29 Jason Rumney <jasonr@gnu.org>
7891
7892 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7893 an alternative name for jpeg.dll.
7894
7895 2003-01-29 Kenichi Handa <handa@m17n.org>
7896
7897 * xdisp.c (set_cursor_from_row): Pay attention to string display
7898 properties.
7899
7900 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7901
7902 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7903 <escape>.
7904 (keycode_to_xkeysym_table): Reformat and add more comments.
7905 (XTread_socket): Drop special case for backspace.
7906
7907 2003-01-28 Andrew Choi <akochoi@shaw.ca>
7908
7909 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7910 values in old-style RGB specs.
7911
7912 2003-01-27 Juanma Barranquero <lektu@terra.es>
7913
7914 * w32fns.c (init_external_image_libraries): Try alternate names for the
7915 jpeg dll.
7916
7917 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7918
7919 * gtkutil.c (create_dialog, xg_separator_p)
7920 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7921 before calling strcmp or strlen.
7922
7923 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7924
7925 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7926 and handle image load failure.
7927
7928 2003-01-26 Jason Rumney <jasonr@gnu.org>
7929
7930 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7931 New functions.
7932 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7933 Disable color table lookups. Call jpeg library functions
7934 through pointers determined at runtime.
7935 (init_external_image_libraries): Try to load jpeg.dll.
7936
7937 2003-01-25 Richard M. Stallman <rms@gnu.org>
7938
7939 * lisp.h: Declare format2 instead of format1.
7940
7941 * fileio.c (barf_or_query_if_file_exists):
7942 Call format2 instead of format1.
7943
7944 * editfns.c (format2): New function, replaces format1
7945 but takes exactly two Lisp Objects as format args.
7946
7947 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7948
7949 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7950
7951 * xterm.h: Change to return value of x_dispatch_event to int.
7952
7953 * xterm.c (x_filter_event): New function.
7954 (event_handler_gdk, XTread_socket): Call x_filter_event.
7955 (x_dispatch_event): Change to return value of finish.
7956 (event_handler_gdk): Use return value from x_dispatch_event.
7957
7958 * xfns.c (x_window): Call create_frame_xic for GTK version to
7959 initialize input methods.
7960
7961 * gtkutil.h: Add (void) prototypes.
7962
7963 * gtkutil.c (create_menus): Remove code that puts the help menu to
7964 the right.
7965
7966 2003-01-25 Jason Rumney <jasonr@gnu.org>
7967
7968 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7969 [HAVE_PNG]: Sync with xfns.c version.
7970 (png_load): Adjust colors for Windows. Use Windows
7971 bitmaps. Disable color table lookups.
7972 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7973 (init_png_functions): New function.
7974 (png_read_from_memory, png_load): Call png library functions
7975 through pointers determined at runtime.
7976 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7977 (init_external_image_libraries): New function.
7978 (init_xfns): Call it.
7979
7980 2003-01-24 Andreas Schwab <schwab@suse.de>
7981
7982 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7983
7984 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7985
7986 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7987 of static initializer.
7988
7989 2003-01-24 Dave Love <fx@gnu.org>
7990
7991 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7992 architectures.
7993
7994 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7995 Use __alignof__.
7996
7997 2003-01-24 Kenichi Handa <handa@m17n.org>
7998
7999 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8000 It it is nonzero, don't pretend that an invisible area doesn't exist.
8001 (command_loop_1): Call adjust_point_for_property with proper
8002 second arg.
8003
8004 2003-01-22 Jason Rumney <jasonr@gnu.org>
8005
8006 Sync changes with xterm.c and xfns.c.
8007
8008 * w32term.c (x_draw_glyph_string_foreground)
8009 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8010
8011 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8012 phys_cursor's hpos is overwritten. This is still not completely
8013 correct, as it doesn't really make sense to use hpos at all to
8014 get the cursor glyph (as that is relative to the width of the
8015 characters on the line, which may have changed during the update).
8016
8017 * w32term.c (notice_overwritten_cursor): Handle the special case
8018 of the cursor being in the first blank non-text line at the
8019 end of a window.
8020
8021 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8022 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8023 Compute from the x position returned by x_draw_glyphs.
8024
8025 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8026 except for NO_CURSOR and system caret, to make phys_cursor_width
8027 contain what its name suggests.
8028 (notice_overwritten_cursor): Consider the cursor image erased if
8029 the output area intersects the cursor image in y-direction.
8030
8031 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8032 note_mode_line_highlight and extend.
8033
8034 * w32term.c (last_window): New variable.
8035 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8036 (note_mouse_movement): Remove reimplemented code in #if 0.
8037
8038 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8039 not update_mode_lines, and always set it to 1.
8040
8041 2003-01-21 Jason Rumney <jasonr@gnu.org>
8042
8043 * w32fns.c (IDC_HAND): Define it if system headers don't.
8044
8045 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8046
8047 * w32term.h (struct w32_output): New member hand_cursor.
8048 (WM_EMACS_SETCURSOR): New message definition.
8049
8050 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8051 function w32_define_cursor.
8052 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8053 position, change member name output_data.x to output_data.w32 and
8054 add function w32_define_cursor.
8055 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8056 and change member name output_data.x to output_data.w32.
8057 (w32_initialize_display_info):
8058 Setup dpyinfo->vertical_scroll_bar_cursor.
8059
8060 * w32fns.c (Vx_hand_shape): New variable.
8061 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8062 WM_EMACS_SETCURSOR.
8063 (x-create-frame): Setup Cursor types.
8064
8065 2003-01-21 David Ponce <david@dponce.com>
8066
8067 * w32term.c (w32_encode_char): For DIM=1 charset, set
8068 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8069 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8070 2002-09-30.)
8071 (w32_draw_relief_rect): Declare all args.
8072 (w32_define_cursor): New.
8073
8074 * w32fns.c (w32_load_cursor): New function.
8075 (w32_init_class): Use it.
8076 (x_put_x_image): Declare all args.
8077
8078 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8079
8080 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8081
8082 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8083
8084 * gtkutil.c: Must include stdio.h before termhooks.h
8085
8086 2003-01-21 Dave Love <fx@gnu.org>
8087
8088 * alloc.c (Fgc_status): Print zombie list.
8089 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8090 Fix assignment of zombies.
8091 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8092 Don't take car of non-cons.
8093
8094 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8095
8096 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8097
8098 2003-01-20 David Ponce <david@dponce.com>
8099
8100 * w32menu.c (digest_single_submenu): Declare all args.
8101
8102 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8103 changes in xmenu.c:
8104
8105 (parse_single_submenu): Use individual keymap's prompt
8106 string as pane name, if there is one.
8107 (set_frame_menubar): Save menu_items_n_panes from each call to
8108 parse_single_submenu and use it when calling digest_single_submenu.
8109
8110 2003-01-20 Steven Tamm <steventamm@mac.com>
8111
8112 * macterm.c (XTread_socket): Checks for valid, visible window
8113 before sending a scroll-wheel event.
8114
8115 2003-01-20 Richard M. Stallman <rms@gnu.org>
8116
8117 * xdisp.c (redisplay_window): If mini window's buffer is not
8118 a minibuffer, then redisplay it like other windows.
8119
8120 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8121
8122 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8123 external tool bar before setting tool bar height.
8124
8125 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8126
8127 * xterm.c (handle_one_xevent): Surround popup_activated
8128 with #ifdef:s for non-toolkit version.
8129
8130 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8131 (gtkutil.o): New file.
8132 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8133 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8134
8135 * gtkutil.c: New file for GTK version.
8136
8137 * gtkutil.h: New file for GTK version.
8138
8139 * xterm.h: Add xt_or_gtk_widget.
8140 Include gtk files for USE_GTK.
8141 (struct x_output): Add toolbar_height.
8142 (struct x_output): Add GTK widgets and Gdk size_hints.
8143 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8144 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8145 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8146
8147 * xterm.c: Include gtkutil.h for USE_GTK.
8148 Declare extern void free_frame_menubar for USE_GTK.
8149 (note_mouse_highlight): Check popup_activated for USE_GTK.
8150 (xt_action_hook): Don't compile if USE_GTK.
8151 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8152 (xg_scroll_callback): New function.
8153 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8154 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8155 for USE_GTK.
8156 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8157 xg_show_scroll_bar for USE_GTK.
8158 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8159 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8160 (event_handler_gdk): New function for USE_GTK.
8161 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8162 (handle_one_xevent): Make sure widget is mapped before
8163 calling x_real_positions for USE_GTK.
8164 (XTread_socket): Add GTK event loop for USE_GTK.
8165 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8166 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8167 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8168 (x_iconify_frame): Add code for USE_GTK.
8169 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8170 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8171 is in gtkutil.c.
8172 (x_term_init): Add initialization for GTK.
8173 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8174
8175 * xmenu.c: Include gtkutil.h for USE_GTK.
8176 (Fx_popup_menu): Use current position if x and y is NIL.
8177 (single_menu_item, single_menu_item, Fx_popup_dialog):
8178 Check for USE_GTK.
8179 (popup_widget_loop): New function for USE_GTK.
8180 (x_activate_menubar): Add code for USE_GTK.
8181 (popup_activate_callback, popup_deactivate_callback)
8182 (menu_highlight_callback, menubar_selection_callback):
8183 Add USE_GTK versions.
8184 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8185 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8186 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8187 is in gtkutil.c.
8188 (popup_selection_callback): New version for USE_GTK.
8189 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8190 one USE_X_TOOLKIT version.
8191 (xmenu_show): Call create_and_show_popup_menu.
8192 (dialog_selection_callback): New version for USE_GTK.
8193 (create_and_show_dialog): New fuction, one USE_GTK version and
8194 one USE_X_TOOLKIT version.
8195 (xdialog_show): Call create_and_show_dialog.
8196
8197 * xfns.c: Include gtkutil for USE_GTK.
8198 (x_window_to_frame, x_any_window_to_frame)
8199 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8200 (x_top_window_to_frame): Add code for USE_GTK.
8201 (x_set_background_color): Call xg_set_background_color for GTK.
8202 (x_set_menu_bar_lines): Check for USE_GTK.
8203 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8204 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8205 (x_window): Call xg_create_frame_widgets for USE_GTK.
8206 (Fx_create_frame): Check for USE_GTK
8207 (Fx_file_dialog): New implementation for USE_GTK.
8208
8209 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8210 (update_menu_bar): Add check for USE_GTK.
8211 (update_tool_bar): Add check for USE_GTK and external tool bar.
8212 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8213 (redisplay_internal): Add check for USE_GTK and popup_activated.
8214 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8215 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8216 (display_menu_bar): Add check for USE_GTK
8217
8218 * lisp.h: Declare Vx_resource_name extern.
8219
8220 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
8221 for USE_GTK.
8222 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8223
8224 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8225 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8226 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8227
8228 * fileio.c (Fread_file_name): Add check for USE_GTK.
8229
8230 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8231 Add check for USE_GTK.
8232
8233 * config.in: Added HAVE_GTK
8234
8235 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8236
8237 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8238
8239 * charset.h (Funibyte_char_to_multibyte): Export.
8240
8241 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8242
8243 * xmenu.c (mouse_position_for_popup): New function.
8244 (Fx_popup_menu): Call mouse_position_for_popup for X and
8245 mouse_position_hook for others.
8246
8247 2003-01-17 Kim F. Storm <storm@cua.dk>
8248
8249 * editfns.c (Finsert): Mention `string-make-multibyte' and
8250 `string-as-multibyte' in doc string.
8251
8252 2003-01-17 Kenichi Handa <handa@m17n.org>
8253
8254 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
8255
8256 * editfns.c (Fformat): Convert an unibyte char argument that is
8257 formatted by "%c" to multibyte if the total result must be a
8258 multibyte string.
8259
8260 2003-01-16 Kim F. Storm <storm@cua.dk>
8261
8262 * process.c (set-process-filter): Document unibyte/multibyte-ness
8263 of string argument.
8264
8265 2003-01-16 Kenichi Handa <handa@m17n.org>
8266
8267 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
8268
8269 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8270 (re_search_2): Likewise.
8271
8272 2003-01-15 Kenichi Handa <handa@m17n.org>
8273
8274 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8275 buffer is unibyte.
8276
8277 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
8278
8279 * fns.c (Fsubstring): Clarify doc string.
8280
8281 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8282 (Fprevious_char_property_change)
8283 (Fnext_single_char_property_change)
8284 (Fprevious_single_char_property_change, Fnext_property_change)
8285 (Fnext_single_property_change, Fprevious_property_change)
8286 (Fprevious_single_property_change, Fadd_text_properties)
8287 (Fput_text_property, Fset_text_properties)
8288 (Fremove_text_properties, Fremove_list_of_text_properties)
8289 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
8290
8291 2003-01-14 Kim F. Storm <storm@cua.dk>
8292
8293 * process.h (struct Lisp_Process): New member plist replaces old
8294 member private_vars. All uses changed.
8295
8296 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
8297 (QCplist): Rename from QCvars. Change all uses.
8298 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
8299 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
8300 (syms_of_process): Intern, staticpro, defsubr these.
8301 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
8302
8303 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
8304
8305 * m/delta.h: Remove (obsolete).
8306
8307 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
8308
8309 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8310 behaviour in front of symlinks.
8311 (Fdelete_file): Raise an error on directories.
8312
8313 2003-01-13 Dave Love <fx@gnu.org>
8314
8315 * fns.c (Freverse): Use QUIT.
8316
8317 2003-01-13 Richard M. Stallman <rms@gnu.org>
8318
8319 * minibuf.c (minibuffer_completion_contents):
8320 Error if point is inside prompt.
8321
8322 * keyboard.c (command_loop_1): Don't redisplay directly
8323 if there's a post-command-hook.
8324
8325 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8326 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
8327
8328 2003-01-12 Kim F. Storm <storm@cua.dk>
8329
8330 * process.h (struct Lisp_Process): New member private_vars.
8331
8332 * process.c (QCvars): New variable.
8333 (syms_of_process): Intern and staticpro it.
8334 (Fset_process_contact): Removed function.
8335 (Fprocess_variable, Fset_process_variable): New functions.
8336 (syms_of_process): Defsubr them.
8337 (Fstart_process): Initialize private_vars plist to nil.
8338 (Fmake_network_process): New arg :vars to setup the private
8339 variables for new network process.
8340 (server_accept_connection): Copy server's private variables to
8341 client process.
8342
8343 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8344 crashes). Code rewritten and simplified. Now directly aligns the
8345 pointer and recalculates pure_bytes_used, rather than aligning the
8346 size and adjusting the pointer.
8347
8348 2003-01-11 Kim F. Storm <storm@cua.dk>
8349
8350 * process.c (Fset_process_contact): New function.
8351 (syms_of_process): defsubr it.
8352 (make-network-process): Update doc.
8353
8354 2003-01-10 Andreas Schwab <schwab@suse.de>
8355
8356 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8357 Reported by Berthold Gunreben <b.gunreben@web.de>.
8358
8359 2003-01-10 Dave Love <fx@gnu.org>
8360
8361 * composite.c (syms_of_composite): Make composition_hash_table weak.
8362
8363 2003-01-09 Kim F. Storm <storm@cua.dk>
8364
8365 * process.c (Fmake_network_process): Convert new port number
8366 to host byte order for `:service t' case. From Mario Lang.
8367
8368 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8369
8370 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8371 instead of XtAppProcessEvent.
8372
8373 * xterm.c (handle_one_xevent): New function.
8374 (x_dispatch_event): New function.
8375 (XTread_socket): Call handle_one_xevent.
8376
8377 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
8378
8379 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8380 call XQueryPointer to get coordinates.
8381 (popup_get_selection): Do not set popup_activated_flag to zero,
8382 let popup_deactivate_callback do that. Needed for Motif.
8383 Call x_dispatch_event instead of XtDispatchEvent.
8384 (xmenu_show): Calculate root coordinate from frame top/left position.
8385
8386 2003-01-08 Kim F. Storm <storm@cua.dk>
8387
8388 * process.c (server_accept_connection): Fix recording of new
8389 connection's local address in :local property of contact info.
8390 (Fmake_network_process): Record local network address for new
8391 client processes in :local property of contact info.
8392 (format-network-address): Add arg OMIT-PORT. Change callers.
8393
8394 2003-01-07 Dave Love <fx@gnu.org>
8395
8396 * Makefile.in (fns.o): Depend on coding.h.
8397
8398 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
8399
8400 * minibuf.c (Fread_variable): Doc fix.
8401
8402 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8403 use the same test as for custom-variable-p.
8404
8405 2003-01-05 Richard M. Stallman <rms@gnu.org>
8406
8407 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8408 Count LAST_LINE_MISFIT in scroll margin for end of window.
8409 Move label too_near_end before setting SCROLL_MARGIN_POS.
8410 Set LAST_LINE_MISFIT before jumping there.
8411
8412 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8413 scroll_conservatively case. If scrolling that much doesn't change
8414 STARTP, move it down one line.
8415
8416 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8417 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8418
8419 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8420 selected frame.
8421
8422 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8423 (syms_of_keymap): staticpro them.
8424 (Fapropos_internal): Initialize them and clear them out.
8425 Don't GCPRO them.
8426
8427 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8428 Doc fixes.
8429
8430 * lisp.h: New misc type Lisp_Save_Value.
8431 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8432 (XSAVE_VALUE): New macro.
8433 (struct Lisp_Save_Value): New data type.
8434 (union Lisp_Misc): Add u_save_value alternative.
8435 (make_save_value): Declared.
8436
8437 * alloc.c (make_save_value): New function.
8438
8439 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8440 (x_catch_errors_unwind): Call XSync.
8441
8442 2003-01-01 Richard M. Stallman <rms@gnu.org>
8443
8444 * window.c (window_scroll_pixel_based): Partially undo last change.
8445
8446 * keyboard.c (command_loop_1): Call adjust_point_for_property
8447 in direct action cases for Qforward_char and Qbackward_char.
8448 Set already_adjusted so it won't be done twice.
8449
8450 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8451
8452 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8453 type definition of size_t.
8454
8455 2003-01-02 Steven Tamm <steventamm@mac.com>
8456
8457 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8458 distinguish Carbon GUI builds from X11 builds on darwin.
8459
8460 2002-12-30 Steven Tamm <steventamm@mac.com>
8461
8462 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8463 to default to t.
8464
8465 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
8466
8467 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
8468
8469 2002-12-28 Steven Tamm <steventamm@mac.com>
8470
8471 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8472 allow building in a different directory than source. Uses some
8473 GNU Make extensions, but there is no other make on Mac OS X.
8474
8475 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
8476
8477 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8478 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8479 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8480 (Fstring_to_number): Mention the returned value in the doc strings.
8481
8482 2002-12-23 Richard M. Stallman <rms@gnu.org>
8483
8484 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8485 <scroll-down-aggressively>: Doc fix.
8486
8487 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8488 string as pane name, if there is one.
8489 (set_frame_menubar): Save menu_items_n_panes from each call to
8490 parse_single_submenu and use it when calling digest_single_submenu.
8491
8492 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8493 Don't try to make last line fully visible if it is past end of window.
8494
8495 2002-12-22 Steven Tamm <steventamm@mac.com>
8496
8497 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8498 (mac_menu_show): Add support for hierarchical popup menus.
8499 (add_menu_item): Remove indentation support.
8500 (fill_submenu, fill_menu): Create hierarchical menus
8501 instead of using indentation.
8502
8503 2002-12-22 Richard M. Stallman <rms@gnu.org>
8504
8505 * xdisp.c (try_cursor_movement): Don't call try_window here.
8506 (redisplay_window): Never redisplay minibuffer when inactive.
8507
8508 * window.c (select_window_1): Undo 9/21 change.
8509
8510 2002-12-22 Steven Tamm <steventamm@mac.com>
8511
8512 * macterm.c (XTread_socket): Call KeyTranslate for control and
8513 meta to deal correctly shifted non-alpha characters, like C-S-5
8514 being treated like C-%. Does not look for shift key to deal
8515 with masking off control-key with mac-reverse-ctrl-meta.
8516
8517 2002-12-21 Richard M. Stallman <rms@gnu.org>
8518
8519 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8520 If it is non-nil, run timers. Use an unwind-protect to requeue
8521 the events that were read ahead.
8522 (popup_get_selection_unwind): New subroutine.
8523 (popup_get_selection_queue): File-scope variable now holds that queue.
8524 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8525 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8526 Use an unwind-protect to pop down the dialog box.
8527 (xdialog_show_unwind): New subroutine implements that.
8528
8529 * xdisp.c (row_containing_pos): Change exit test using last_y.
8530 (try_window_id): Abort if row_containing_pos returns null.
8531
8532 * lread.c (load_error_handler): New function.
8533 (Fload): Handle errors in Fsubstitute_in_file_name.
8534 Don't expect Fsignal to return.
8535
8536 * eval.c: Errors and throws work right with interrupt blocking.
8537 (struct catchtag): New elt interrupt_input_blocked.
8538 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8539 (internal_catch, Fcondition_case, internal_condition_case)
8540 (internal_condition_case_1, internal_condition_case_2): Save it.
8541 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
8542
8543 * editfns.c (Fformat): Add parens.
8544
8545 * dired.c (file_name_completion): Fix that change.
8546 Delete special quit-handling code; just use QUIT.
8547
8548 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
8549
8550 * dired.c (file_name_completion): Close directory on error
8551 just as in directory_files_internal.
8552
8553 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
8554
8555 * window.c (Fset_window_configuration): Set old_point to correct
8556 value when new_current_buffer == current_buffer.
8557
8558 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
8559
8560 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8561 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8562 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8563
8564 These changes were in part based upon suggestions made by Peter
8565 'Luna' Runestig [peter@runestig.com].
8566
8567 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8568 g_b_init_get_token_information, g_b_init_lookup_account_sid,
8569 g_b_init_get_sid_identifier_authority ): Add several static
8570 global variables.
8571
8572 * w32.c (globals_of_w32): New function. Used to initialize those
8573 global variables that must always be initialized on startup even
8574 when the global variable initialized is non zero. Its primary
8575 purpose at this time is to set the global variables
8576 g_b_init_is_windows_9x, g_b_init_open_process_token,
8577 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8578 g_b_init_get_sid_identifier_authority to 0 on startup.
8579 Called from main.
8580
8581 * w32.c (is_windows_9x): Perform initialization only if
8582 g_b_init_is_windows_9x is equal to 0. On initialization set
8583 g_b_init_is_windows_9x equal to 1.
8584
8585 * w32.c (open_process_token): Perform initialization only if
8586 g_b_init_open_process_token is equal to 0. On initialization set
8587 g_b_init_open_process_token equal to 1.
8588
8589 * w32.c (get_token_information): Perform initialization only if
8590 g_b_init_get_token_information is equal to 0. On initialization
8591 set g_b_init_get_token_information equal to 1.
8592
8593 * w32.c (lookup_account_sid): Perform initialization only if
8594 g_b_init_lookup_account_sid is equal to 0. On initialization
8595 set g_b_init_lookup_account_sid equal to 1.
8596
8597 * w32.c (get_sid_identifier_authority): Perform initialization
8598 only if g_b_init_get_sid_identifier_authority is equal to 0.
8599 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
8600
8601 * w32fns.c (globals_of_w32fns): New function. Used to initialize
8602 those global variables that must always be initialized on startup
8603 even when the global variable initialized is non zero.
8604 Its primary purpose at this time is to initialize the global variable
8605 track_mouse_event_fn.
8606
8607 * w32fns.c (w32_wnd_proc): Remove initialization of
8608 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
8609
8610 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
8611
8612 * w32menu.c (globals_of_w32menu): New function. Used to
8613 initialize those global variables that must always be initialized
8614 on startup even when the global variable initialized is non zero.
8615 Its primary purpose at this time is to initialize the global
8616 variables get_menu_item_info and set_menu_item_info.
8617
8618 * w32menu.c (initialize_frame_menubar): Remove initialization of
8619 get_menu_item_info and set_menu_item_info.
8620
8621 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
8622
8623 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8624 Declare them.
8625
8626 * emacs.c (main): Call globals_of_w32 prior to calling
8627 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8628 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8629 is defined.
8630
8631 * w32term.c (x_update_window_begin): Fix Windows API error
8632 detected by BoundsChecker. Test to determine if
8633 w32_system_caret_hwnd is NULL prior to attempting to use
8634 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
8635
8636 * w32term.c (x_update_window_end): Fix Windows API error
8637 detected by BoundsChecker. Test to determine if
8638 w32_system_caret_hwnd is NULL prior to attempting to use
8639 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
8640
8641 2002-12-17 Kenichi Handa <handa@m17n.org>
8642
8643 * coding.c (coding_system_require_warning): New variable.
8644 (syms_of_coding): DEFVAR it.
8645
8646 * coding.h (coding_system_require_warning): Extern it.
8647
8648 * fileio.c (choose_write_coding_system): Even if
8649 Vcoding_system_for_write is non-nil, if
8650 coding_system_require_warning is nonzero, call
8651 Vselect_safe_coding_system_function.
8652
8653 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
8654
8655 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8656 (lisp): Add font-core.
8657
8658 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
8659
8660 * textprop.c (text_read_only): New arg `propval'.
8661 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8662 (verify_interval_modification): Use text_read_only's new arg.
8663
8664 2002-12-13 Kenichi Handa <handa@m17n.org>
8665
8666 * coding.c (Funencodable_char_position): Set pend correctly.
8667
8668 2002-12-12 Jason Rumney <jasonr@gnu.org>
8669
8670 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8671 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8672 Be more careful about when help_events are generated.
8673
8674 2002-12-12 Steven Tamm <steventamm@mac.com>
8675
8676 * macterm.c (mac_check_for_quit_char): Correctly set the
8677 modifiers of the event to 0.
8678 * mac.c (sys_select): Duplicate rfds before calling select to
8679 ensure that rfds survive the while loop.
8680
8681 2002-12-11 Kim F. Storm <storm@cua.dk>
8682
8683 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8684 row_containing_pos returned NULL.
8685
8686 2002-12-10 Steven Tamm <steventamm@mac.com>
8687
8688 * mac.c (sys_read): Fix sys_read to not call select if IO is
8689 non-blocking.
8690 (sys_select): Fix sys_select to not use a timeout larger than
8691 the one given.
8692
8693 2002-12-10 Juanma Barranquero <lektu@terra.es>
8694
8695 * editfns.c (Fformat): Use alloca, not _alloca.
8696
8697 2002-12-09 Richard M. Stallman <rms@gnu.org>
8698
8699 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8700 as the last thing.
8701
8702 2002-12-09 Dave Love <fx@gnu.org>
8703
8704 * s/sol2-8.h: Removed. (Not necessary.)
8705
8706 2002-12-09 Matthew Swift <swift@alum.mit.edu>
8707
8708 * editfns.c (Fformat): Handle precision in string conversion
8709 specifiers like libc functions do (ie, print at most that many
8710 characters).
8711
8712 2002-12-08 Richard M. Stallman <rms@gnu.org>
8713
8714 * xdisp.c (row_containing_pos): Check more carefully
8715 whether charpos is really in the row before returning it.
8716
8717 2002-12-07 Steven Tamm <steventamm@mac.com>
8718
8719 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
8720
8721 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8722 each stack frame. This may change as it could be time consuming.
8723
8724 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8725 (init_quit_char_handler, mac_determine_quit_char_modifiers)
8726 (mac_initialize): Add code to check for pressing of quit_char
8727 in the OS event queue.
8728
8729 * mac.c (sys_select): Call mac_check_for_quit_char every second
8730 while blocking on select.
8731
8732 * mac.c (sys_read): Use sys_select to test for input first
8733 before calling read, to allow C-g to break.
8734
8735 2002-12-07 Richard M. Stallman <rms@gnu.org>
8736
8737 * minibuf.c (Fcompleting_read): Doc fix.
8738
8739 * lread.c (syms_of_lread) <load-history>: Doc fix.
8740
8741 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
8742
8743 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8744 autoload.
8745
8746 * data.c (Fdefalias): Record in load-history redefining an autoload.
8747
8748 * alloca.c: Undo ifdef change accidentally made on 12-04.
8749
8750 2002-12-06 Francesco Potorti` <pot@gnu.org>
8751
8752 * xfns.c (png_load): Avoid double gamma correction for PNG images.
8753
8754 2002-12-04 Richard M. Stallman <rms@gnu.org>
8755
8756 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
8757
8758 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
8759
8760 * alloca.c: Don't use #error.
8761
8762 2002-12-03 Dave Love <fx@gnu.org>
8763
8764 * buffer.c (Qucs_set_table_for_input): New.
8765 (Fget_buffer_create): Use it.
8766 (Qset_buffer_major_mode_hook): Deleted.
8767 (Fset_buffer_major_mode): Revert previous change.
8768 (init_buffer_once): Intern ucs-set-table-for-input.
8769 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8770 Add &Qucs_set_table_for_input.
8771
8772 2002-12-03 Andreas Schwab <schwab@suse.de>
8773
8774 * callint.c (Fcall_interactively): Use next_event only if less
8775 than key_count.
8776
8777 2002-12-02 Andrew Choi <akochoi@shaw.ca>
8778
8779 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8780 names to 255 characters.
8781
8782 * macterm.c (XTread_socket): If all frames have been collapsed,
8783 expand the first one before handling drag-and-drop events.
8784
8785 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8786 which is detected by autoconf.
8787
8788 2002-12-01 Steven Tamm <steventamm@mac.com>
8789
8790 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8791 offset in two hints table to allow prebinding to be redone and
8792 allow the executable to be stripped.
8793
8794 2002-11-29 Dave Love <fx@gnu.org>
8795
8796 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8797 already provided.
8798
8799 2002-11-29 Richard M. Stallman <rms@gnu.org>
8800
8801 * xdisp.c (start_display): Check more intelligently for
8802 whether the line is continued.
8803 (move_it_vertically_backward): Clear it->continuation_lines_width.
8804
8805 2002-11-28 Dave Love <fx@gnu.org>
8806
8807 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8808 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
8809
8810 2002-11-27 Steven Tamm <steventamm@mac.com>
8811
8812 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8813 more descriptive error output from lread.c:Fload upon most require
8814 cycles during boostrapping.
8815
8816 2002-11-27 Jason Rumney <jasonr@gnu.org>
8817
8818 * fileio.c (Finsert_file_contents): Give a more appropriate error
8819 for files bigger than 2Gb when off_t is 32 bit.
8820
8821 * dired.c (Ffile_attributes): Don't return negative file sizes for
8822 files bigger than 2Gb when off_t is 32 bit.
8823
8824 2002-11-27 Dave Love <fx@gnu.org>
8825
8826 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8827
8828 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8829 Test GETPGRP_VOID instead.
8830 [BSD_TERMIOS]: Remove definitions (never used).
8831
8832 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8833 Don't define.
8834 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8835
8836 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8837
8838 2002-11-25 Jason Rumney <jasonr@gnu.org>
8839
8840 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8841 supported.
8842
8843 2002-11-25 Dave Love <fx@gnu.org>
8844
8845 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
8846
8847 * Makefile.in (TEMACS_LDFLAGS): Update last change.
8848
8849 2002-11-25 Andreas Schwab <schwab@suse.de>
8850
8851 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
8852
8853 2002-11-24 Steven Tamm <steventamm@mac.com>
8854
8855 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8856 determine the size of pointers alloced in unexed space instead
8857 of using possibly invalid emacs_zone pointers. This fixes the
8858 binary incompatibility problems caused by updates to libSystem.B.
8859
8860 2002-11-24 Richard M. Stallman <rms@gnu.org>
8861
8862 * search.c (Fstring_match): Doc fix.
8863
8864 * callint.c (Fcall_interactively): If a command fails because
8865 `*' detects a read-only buffer, but RECORD_FLAG is set,
8866 record it anyway if the args don't actually do tty input.
8867
8868 2002-11-22 Dave Love <fx@gnu.org>
8869
8870 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
8871
8872 * keyboard.c (interrupt_signal): Provide forward declaration.
8873 (kbd_buffer_store_event): Don't declare interrupt_signal.
8874
8875 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
8876
8877 2002-11-21 Richard M. Stallman <rms@gnu.org>
8878
8879 * eval.c (interactive_p): Skip any number of bytecode
8880 and special form frames, in any order.
8881
8882 2002-11-20 Jason Rumney <jasonr@gnu.org>
8883
8884 * w32fns.c (convert_mono_to_color_image): New function.
8885 (xbm_load, xbm_load_image): Use it when foreground or background
8886 is explicitly set.
8887
8888 2002-11-19 Dave Love <fx@gnu.org>
8889
8890 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
8891
8892 2002-11-18 Jason Rumney <jasonr@gnu.org>
8893
8894 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8895 (XPutPixel): Swap blue and red.
8896 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8897 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8898 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8899 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
8900
8901 2002-11-18 Dave Love <fx@gnu.org>
8902
8903 * m/orion105.h (HAVE_ALLOCA): Don't define.
8904
8905 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
8906
8907 * m/intel386.h: Don't include alloca.h or define alloca.
8908
8909 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8910 malloc, realloc, calloc.
8911
8912 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8913 (bcmp): Don't define.
8914
8915 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
8916
8917 * m/amdahl.h: Don't define LIB_STANDARD.
8918
8919 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
8920
8921 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
8922
8923 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8924 Don't include alloca.h.
8925
8926 * s/aix3-2.h (HAVE_FSYNC): Don't define.
8927
8928 * regex.c (_GNU_SOURCE): Don't define.
8929
8930 * process.c (_GNU_SOURCE): Don't define.
8931
8932 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8933
8934 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
8935
8936 * s/sol2-8.h: Include sol2-6.h.
8937
8938 2002-11-18 Miles Bader <miles@gnu.org>
8939
8940 * dispextern.h (struct face): Add `overstrike' field.
8941 * xterm.c (x_draw_glyph_string_foreground)
8942 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8943 * xfaces.c (load_face_font): Set `face->overstrike' based on
8944 result from choose_face_font.
8945 (best_matching_font, choose_face_font): Add `needs_overstrike'
8946 argument, and use it to return whether overstriking is desirable
8947 for this face/font combo.
8948 (set_font_frame_param: Pass new argument to choose_face_font.
8949
8950 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8951
8952 This change is my fix for the following entry in etc/PROBLEMS:
8953 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8954 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8955
8956 * w32.c: Added wrapper functions around the win32 API functions
8957 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8958 GetSidIdentifierAuthority. These wrapper functions serve two
8959 purposes:
8960 1. They ensure that the wrapped function can never be called
8961 when Emacs is running on an operating system on which they are
8962 not supported (Microsoft Windows 95 / 98 / ME).
8963 2. They call the wrapped functions via function pointers rather
8964 than calling them directly. This avoids taking advantage of the
8965 undocumented fact that although these functions are not supported
8966 in the 9x branch of Microsoft Windows, the functions do exist in
8967 the version of advapi32.dll that is found in the 9x branch of
8968 Microsoft Windows.
8969
8970 * w32.c (init_user_info): Replace the calls to the win32 API
8971 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8972 and GetSidIdentifierAuthority with calls to the newly added
8973 wrapper functions.
8974
8975 * w32.h: Added extern declarations for the following functions:
8976 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8977 syms_of_w32menu, and void syms_of_fontset.
8978
8979 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
8980 function pointer track_mouse_event_fn in the handler for the
8981 WM_SETFOCUS message.
8982
8983 * w32menu.c (initialize_frame_menubar): Add code to
8984 reinitialize the function pointers set_menu_item_info and
8985 get_menu_item_info.
8986
8987 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8988
8989 * sound.c: Added a partial implementation of play-sound-internal
8990 for Microsoft Windows. Added various #ifdef / #else / #endif
8991 code blocks to separate the code that will compile under
8992 Microsoft Windows from the code that is specific to Gnu/Linux.
8993 Moved several blocks of code around to make this separation of code
8994 into Windows compatible and Gnu/Linux compatible code blocks easier.
8995
8996 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8997
8998 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8999 added support for play-sound-internal under Windows would be
9000 included in the build of Emacs.
9001
9002 2002-11-16 Jason Rumney <jasonr@gnu.org>
9003
9004 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9005
9006 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9007
9008 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9009
9010 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9011 (adjust_point_for_property): Move out of display and invisible even if
9012 we were already inside before (in case a property was added while
9013 we weren't looking). Be more careful when handling invisible props.
9014 Skip invisible text as if it really wasn't there at all.
9015
9016 2002-11-15 Jason Rumney <jasonr@gnu.org>
9017
9018 * w32term.c (x_draw_image_foreground)
9019 (w32_draw_image_foreground_1): Use standard copy and invert
9020 operations to draw images.
9021
9022 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9023 depth of 1.
9024 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9025 (XPutPixel): Don't invert bits here.
9026
9027 2002-11-15 Jason Rumney <jasonr@gnu.org>
9028
9029 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9030 (w32_draw_image_foreground_1): Handle image masks.
9031 (x_draw_image_glyph_string): Don't BitBlt transparently.
9032
9033 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9034 (x_from_xcolors): Adjust RGB values for W32.
9035 (image_background, image_background_transparent)
9036 (postprocess_image, x_to_xcolors, x_disable_image)
9037 (x_build_heuristic_mask): Adapt for W32 and enable.
9038 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9039 (xbm_load): Remove unused variable.
9040
9041 2002-11-14 Richard M. Stallman <rms@gnu.org>
9042
9043 * buffer.c (syms_of_buffer): Doc fix.
9044
9045 2002-11-14 Dave Love <fx@gnu.org>
9046
9047 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9048
9049 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9050 * xmenu.c (unuse_menu_items, digest_single_submenu):
9051 * xfns.c (x_put_x_image):
9052 * xdisp.c (message2_nolog, set_message):
9053 * undo.c (record_point):
9054 * terminfo.c (tparam):
9055 * syntax.c (scan_sexps_forward):
9056 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9057 * composite.c (update_compositions):
9058 * cm.c (calccost, cmgoto):
9059 * charset.c (c_string_width): Declare all args (per C99).
9060
9061 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9062
9063 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9064 Don't declare.
9065
9066 * emacs.c (main) [!VMS]: Avoid third arg.
9067
9068 * fns.c (Fcopy_sequence): Doc fix.
9069 (Fmap_char_table): Cast `call2'.
9070
9071 2002-11-14 Francesco Potorti` <pot@gnu.org>
9072
9073 * s/sol2-8.h: New file.
9074
9075 2002-11-14 Kim F. Storm <storm@cua.dk>
9076
9077 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9078 dependency on `risky-local-variable' and the :propertize form.
9079
9080 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9081
9082 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9083
9084 * syntax.c (scan_sexps_forward): Undo last patch.
9085 Use a more obvious fix: check eob before updating the syntax table.
9086
9087 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9088
9089 * syntax.c (scan_sexps_forward): Update syntax table before reading
9090 a char rather than after so we don't update the table past eob.
9091
9092 2002-11-09 Dave Love <fx@gnu.org>
9093
9094 * buffer.c (Fset_buffer_major_mode): Fix last change.
9095
9096 * regex.c (regexec): Fix pmatch declaration.
9097
9098 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9099
9100 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9101 to self-inserting characters.
9102 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9103
9104 * coding.c (Vtranslation_table_for_input): New.
9105 (syms_of_coding): DEFVAR it.
9106
9107 2002-11-08 Juanma Barranquero <lektu@terra.es>
9108
9109 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9110 window.
9111
9112 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9113
9114 * process.c (Fformat_network_address): Remove unused locals p,
9115 cp, and i.
9116
9117 2002-11-06 Dave Love <fx@gnu.org>
9118
9119 * buffer.c (Qset_buffer_major_mode_hook): New.
9120 (Fset_buffer_major_mode): Use it.
9121
9122 2002-11-06 Richard M. Stallman <rms@gnu.org>
9123
9124 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9125 and stop_polling.
9126
9127 * process.c (wait_reading_process_input):
9128 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9129 Avoid initialization for auto Lisp_Object var.
9130
9131 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9132
9133 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9134
9135 2002-11-05 Richard M. Stallman <rms@gnu.org>
9136
9137 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9138
9139 * callint.c (Fcall_interactively): New local filter_specs.
9140 (Fcall_interactively): Check for progn as well as let.
9141 Add a gcpro.
9142 (Qprogn): New variable.
9143 (syms_of_callint): Staticpro and init Qprogn.
9144
9145 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9146
9147 * lread.c (Feval_buffer): Doc fix.
9148
9149 2002-11-04 Dave Love <fx@gnu.org>
9150
9151 * keyboard.c (read_char): Always translate iff
9152 Vkeyboard_translate_table is a char table and c is valid.
9153
9154 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9155 and fix C types.
9156
9157 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9158
9159 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9160
9161 * editfns.c (get_pos_property): Don't hardcode Qfield.
9162
9163 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9164 overlays. Also handle `invisible' prop.
9165
9166 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9167
9168 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9169 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9170
9171 2002-11-01 Andreas Schwab <schwab@suse.de>
9172
9173 * editfns.c (Fmessage): Revert last change to properly handle %%.
9174
9175 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9176
9177 * xmenu.c (unuse_menu_items): New fun.
9178 (menu_items_inuse): New var.
9179 (syms_of_xmenu): Initialize it.
9180 (init_menu_items): Use it to detect re-entrance.
9181 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9182 (Fx_popup_menu): Remove spurious XSETFRAME.
9183
9184 * editfns.c (find_field): Make an exception for nil fields.
9185
9186 2002-11-01 Dave Love <fx@gnu.org>
9187
9188 * m/gec63.h: Deleted.
9189
9190 2002-10-31 Dave Love <fx@gnu.org>
9191
9192 * xterm.c (XTread_socket): Fix last change.
9193 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9194
9195 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9196
9197 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9198
9199 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9200
9201 * editfns.c (overlays_around, get_pos_property): New funs.
9202 (find_field): Use them.
9203 Also be careful not to modify POS before its last use.
9204 (Fmessage): Don't Fformat if there's nothing to format.
9205
9206 2002-10-30 Dave Love <fx@gnu.org>
9207
9208 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9209 [HAVE_PTY_H]; Include pty.h.
9210
9211 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9212
9213 * xterm.c (Qeql): Declare.
9214 (Vx_keysym_table): New.
9215 (syms_of_xterm): Initialize it.
9216 (XTread_socket): Use it. Deal with ASCII keysyms.
9217 (XSetIMValues) [HAVE_X11R6]: Prototype.
9218
9219 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9220 (lispy_kana_keys): Comment out.
9221 (make_lispy_event) [XK_kana_A]: Comment out.
9222 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9223 Fix sprintf call.
9224
9225 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9226 regexp.h change).
9227 (TERMINFO, LIBS_TERMCAP): Define.
9228
9229 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9230 (bcmp): Define conditional on HAVE_BCMP.
9231 (NO_SIOCTL_H): Don't define.
9232 (TIOCSIGSEND): Don't make conditional on IRIX6.
9233
9234 * s/sol2-5.h: Don't include strings.h.
9235 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9236
9237 * s/irix6-0.h (IRIX6): Don't define.
9238 (bcopy, bcmp, bzero): Don't undef.
9239
9240 * s/irix6-5.h: Don't include strings.h.
9241 (IRIX6): Don't define.
9242 (bcopy, bcmp, bzero): Don't undef.
9243
9244 * syntax.c (Fforward_comment): Doc fix.
9245
9246 2002-10-29 Kim F. Storm <storm@cua.dk>
9247
9248 * process.c (Fsignal_process): Allow PROCESS to be specified by
9249 name in addition to pid (as integer or string).
9250
9251 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9252
9253 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9254 environments.
9255
9256 2002-10-27 Kim F. Storm <storm@cua.dk>
9257
9258 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9259
9260 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9261
9262 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9263
9264 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9265
9266 2002-10-26 Richard M. Stallman <rms@gnu.org>
9267
9268 * editfns.c (Fformat): Detect invalid format letters for floats.
9269
9270 2002-10-25 Kenichi Handa <handa@m17n.org>
9271
9272 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9273 (x_set_title): Likewise.
9274
9275 2002-10-25 Juanma Barranquero <lektu@terra.es>
9276
9277 * macgui.h:
9278 * w32gui.h: Remove definition of XColor.
9279
9280 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9281
9282 2002-10-24 Kim F. Storm <storm@cua.dk>
9283
9284 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9285 Callers changed (supply dummy arg).
9286
9287 * lisp.h (get_window_cursor_type): Update prototype.
9288
9289 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9290 get_window_cursor_type to track system caret.
9291
9292 2002-10-24 Kim F. Storm <storm@cua.dk>
9293
9294 * process.c (Fformat_network_address): New function.
9295 (syms_of_process): Defsubr it.
9296 (list_processes_1): Use it to format :local/:remote address if
9297 service/host is not set; before Emacs would crash in that case.
9298 (Fmake_network_process): Don't use Ffind_operation_coding_system
9299 to setup coding system if host or service is not set.
9300
9301 2002-10-23 Juanma Barranquero <lektu@terra.es>
9302
9303 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9304
9305 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9306 COLORREF.
9307
9308 * macgui.h:
9309 * w32gui.h: Add definition of XColor.
9310
9311 * macfns.c:
9312 * w32fns.c:
9313 * xfaces.c: Remove definition of XColor.
9314
9315 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9316
9317 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9318
9319 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9320 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9321 window if it is dedicated.
9322 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9323 (Vspecial_display_function): Update docstring.
9324
9325 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9326 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9327 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9328
9329 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9330
9331 * casefiddle.c (casify_region): Don't treat a prefix char as part
9332 of a word when at the beginning.
9333
9334 2002-10-17 Juanma Barranquero <lektu@terra.es>
9335
9336 * lread.c (syms_of_lread): Fix typos.
9337
9338 2002-10-17 Dave Love <fx@gnu.org>
9339
9340 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9341
9342 2002-10-16 Richard M. Stallman <rms@gnu.org>
9343
9344 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9345
9346 2002-10-14 Juanma Barranquero <lektu@terra.es>
9347
9348 * w16select.c (syms_of_win16select): Fix docstring for
9349 `selection-coding-system'.
9350
9351 * w32select.c (syms_of_w32select): Likewise.
9352
9353 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9354
9355 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9356 a backslash-quoted char.
9357 (scan_lists, scan_sexps_forward): Pacify the compiler.
9358
9359 2002-10-13 Richard M. Stallman <rms@gnu.org>
9360
9361 * window.c (window_scroll): Set immediate_quit.
9362
9363 * print.c (print): When backquote form is the car of a list,
9364 output in old style. Use old_backquote_output to output all
9365 comma forms inside it in old style too.
9366
9367 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9368
9369 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
9370
9371 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9372 batch mode).
9373
9374 * lread.c (Fload): Doc fix (load-suffixes).
9375
9376 2002-10-10 Steven Tamm <steventamm@mac.com>
9377
9378 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9379 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9380 Also switch the default to Qnil from Qt.
9381
9382 2002-10-08 Kenichi Handa <handa@m17n.org>
9383
9384 * coding.c (code_convert_region): When we need more GAP for
9385 conversion, pay attention to the case that coding->produced is not
9386 greater than coding->consumed.
9387
9388 2002-10-07 Richard M. Stallman <rms@gnu.org>
9389
9390 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9391
9392 2002-10-06 Andrew Choi <akochoi@shaw.ca>
9393
9394 * macmenu.c (mac_menu_show): Add j to count menu items; match
9395 menu_item_selection to it to find selected item.
9396
9397 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9398
9399 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9400 cases. The correct fix is to pass ReparentNotify to Xt.
9401 The shell widget interprets ConfigureNotify differently depending
9402 on if it has been reparented or not.
9403
9404 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
9405
9406 * editfns.c (Fformat_time_string): Doc fix.
9407
9408 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9409
9410 * fns.c (Flength): Doc fix.
9411
9412 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9413
9414 * keyboard.c (keyremap): New struct.
9415 (read_key_sequence): Use it: globally replace keytran_foo with
9416 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9417 keytran_next and fkey_next to just `next'.
9418
9419 2002-10-04 Steven Tamm <steventamm@mac.com>
9420
9421 * macterm.c (keycode_to_xkeysym_table): Change return to be
9422 treated like an X keysym.
9423
9424 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9425
9426 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9427 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9428 This is to also handle x/y changes that occur because of a resize.
9429
9430 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9431
9432 * frame.c (Vdelete_frame_functions): New variable.
9433 (syms_of_frame): Initialize and defvar it.
9434 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9435 it when frame's `tooltip' parameter is non-nil.
9436
9437 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9438
9439 * w32fns.c (x_create_tip_frame): Likewise.
9440
9441 * macfns.c (x_create_tip_frame): Likewise.
9442
9443 2002-09-30 Kenichi Handa <handa@m17n.org>
9444
9445 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9446 -1 before calling ccl_driver.
9447
9448 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9449 Only when it is non-nil, handle composition sequence.
9450 (setup_coding_system) <0>: Don't force composition handling.
9451
9452 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9453
9454 2002-09-29 Richard M. Stallman <rms@gnu.org>
9455
9456 * search.c (Freplace_match): Adjust match data for the substitution
9457 just made in the buffer.
9458
9459 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9460 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9461
9462 2002-09-27 Richard M. Stallman <rms@gnu.org>
9463
9464 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9465 (read_char): Use them. Do all exits thru the end of the function.
9466
9467 2002-09-27 Kenichi Handa <handa@etl.go.jp>
9468
9469 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9470 is nil.
9471
9472 2002-09-26 Richard M. Stallman <rms@gnu.org>
9473
9474 * regex.h (__restrict_arr): Don't define if already defined.
9475
9476 * coding.c (run_pre_post_conversion_on_str):
9477 Save and restore Vdeactivate_mark.
9478
9479 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9480
9481 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9482
9483 2002-09-26 Kenichi Handa <handa@etl.go.jp>
9484
9485 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9486 nonzero, try face's family at first. Otherwise try FAMILY at first.
9487 (choose_face_font): If C is a single byte char or latin-1, call
9488 try_font_list with PREFER_FACE_FAMILY 1.
9489
9490 2002-09-21 Richard M. Stallman <rms@gnu.org>
9491
9492 * window.c (select_window_1): Don't select frame.
9493 Set frame's selected window only when frame itself is selected.
9494 (Fselect_window): Doc fix.
9495
9496 2002-09-18 Kim F. Storm <storm@cua.dk>
9497
9498 * process.c (make-network-process): Doc fix (there is no
9499 network-server-log-function hook).
9500
9501 2002-09-18 Richard M. Stallman <rms@gnu.org>
9502
9503 * print.c (print): Clear out the unused parts of Vprint_number_table.
9504 (syms_of_print): Doc fix for `print-number-table'.
9505
9506 * unexelf.c (unexec): Undo previous change.
9507
9508 2002-09-17 Andreas Schwab <schwab@suse.de>
9509
9510 * m/alpha.h [LINUX]: Don't define DATA_START.
9511
9512 2002-09-16 Dave Love <fx@gnu.org>
9513
9514 * unexelf.c (unexec): Deal with .got, reinstating change from
9515 25-08-1999.
9516
9517 2002-09-13 Richard M. Stallman <rms@gnu.org>
9518
9519 * s/sol2-6.h (UNEXEC): Comment out definition.
9520
9521 * unexsol.c (unexec): Don't downcase first letter of error msg.
9522
9523 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9524
9525 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
9526
9527 * unexsol.c: Include buffer.h, charset.h, coding.h.
9528
9529 2002-09-11 Richard M. Stallman <rms@gnu.org>
9530
9531 * unexsol.c: Don't use report_file_error; do it by hand
9532 using dlerror.
9533
9534 * process.c (wait_reading_process_input, both versions):
9535 Before calling turn_on_atimers, call stop_polling.
9536
9537 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9538
9539 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9540 we go to too_near_end, call clear_glyph_matrix.
9541 (redisplay_window): After make_cursor_line_fully_visible,
9542 call clear_glyph_matrix and bypass `goto done'.
9543
9544 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9545 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9546
9547 2002-09-10 Richard M. Stallman <rms@gnu.org>
9548
9549 * fileio.c (Fdo_auto_save): Catch error making directory.
9550 Only call push_message if we need to.
9551 At the same time, make an unwind-protect to pop it.
9552 Rename local message_p to old_message_p.
9553 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9554 (do_auto_save_unwind): Don't call pop_message.
9555
9556 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9557
9558 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9559
9560 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9561
9562 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9563
9564 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9565
9566 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9567 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9568 (re_match_2_internal): Be more careful with infinite loops.
9569
9570 2002-09-10 Kim F. Storm <storm@cua.dk>
9571
9572 * macros.c (end_kbd_macro): New function.
9573 (Fend_kbd_macro): Use it.
9574
9575 * macros.h (end_kbd_macro): Declare extern.
9576
9577 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9578 end and save it instead of discarding it.
9579
9580 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
9581
9582 * s/sol2-6.h: Fix typo. Add comment.
9583
9584 2002-09-09 Richard M. Stallman <rms@gnu.org>
9585
9586 * regex.c (regnum_t): Use signed int, not unsigned int.
9587
9588 * s/sol2-6.h: New file.
9589
9590 * s/sol2-5.h (UNEXEC): Definition deleted.
9591
9592 2002-09-08 Kim F. Storm <storm@cua.dk>
9593
9594 * macros.c (executing_macro_index): Change type to EMACS_INT.
9595 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9596
9597 * macros.h (executing_macro_index): Change type to EMACS_INT.
9598
9599 2002-09-06 Richard M. Stallman <rms@gnu.org>
9600
9601 * casetab.c (set_case_table): Make canon table point to eqv table.
9602
9603 2002-09-06 Juanma Barranquero <lektu@terra.es>
9604
9605 * coding.c (syms_of_coding): Fix spacing.
9606
9607 * composite.c (Fcompose_region_internal)
9608 (Fcompose_string_internal): Likewise.
9609
9610 * data.c (Flsh): Likewise.
9611
9612 * fontset.c (Fset_fontset_font): Likewise.
9613
9614 * macfns.c (Fx_server_max_request_size): Likewise.
9615
9616 * w16select.c (syms_of_win16select): Likewise.
9617
9618 * w32select.c (syms_of_w32select): Likewise.
9619
9620 * xselect.c (syms_of_xselect): Likewise.
9621
9622 2002-09-05 Richard M. Stallman <rms@gnu.org>
9623
9624 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9625 call EXTEND_RANGE_TABLE and return a proper value.
9626 (set_image_of_range): Don't call set_image_of_range_1
9627 if no TRANSLATE or if range includes all of Latin-1.
9628 Only call it for the Latin-1 part of the range.
9629 For other cases, make two separate ranges,
9630 one for the original specified characters and one for
9631 their case-conversions.
9632
9633 2002-09-04 Richard M. Stallman <rms@gnu.org>
9634
9635 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9636
9637 * window.c (displayed_window_lines): Correct for one-off bug
9638 in HEIGHT on non-window displays.
9639
9640 * regex.c (set_image_of_range_1): New function.
9641 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9642 Return a value to indicate running out of memory.
9643 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9644 (extend_range_table_work_area): New subroutine.
9645 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9646 Different calling conventions, and used from set_image_of_range{,_1}.
9647 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9648
9649 2002-09-04 Juanma Barranquero <lektu@terra.es>
9650
9651 * makefile.w32-in: All dependencies updated.
9652
9653 2002-09-01 Richard M. Stallman <rms@gnu.org>
9654
9655 * unexsol.c: New file.
9656
9657 * xfns.c (Qbox): Declare external, don't define.
9658
9659 * xdisp.c (redisplay_window) <force-start case>:
9660 If point is on semi-visible last line, reposition
9661 it at previous line.
9662
9663 * alloc.c (display_malloc_warning): Use display-warning.
9664 (malloc_warning_1): Function deleted.
9665
9666 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9667
9668 * lread.c (read1): Handle #! by skipping the line.
9669
9670 2002-08-31 Richard M. Stallman <rms@gnu.org>
9671
9672 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9673 Don't include LDFLAGS.
9674 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9675
9676 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9677
9678 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9679 member of x_display_info unless we compile for some window system.
9680
9681 2002-08-31 Kim F. Storm <storm@cua.dk>
9682
9683 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9684 (get_window_cursor_type): Don't use them.
9685 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9686
9687 2002-08-30 Kenichi Handa <handa@etl.go.jp>
9688
9689 * xdisp.c (get_next_display_element): Fix previous change.
9690
9691 2002-08-30 Andrew Choi <akochoi@shaw.ca>
9692
9693 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9694 (expose_window): Use it to fix the display of overlapping
9695 rows (merge code from xterm.c).
9696
9697 * macfns.c (Qbox): Add extern declaration.
9698
9699 2002-08-30 Juanma Barranquero <lektu@terra.es>
9700
9701 * w32fns.c (Qbox): Make extern.
9702 (syms_of_w32fns): Remove initialization of Qbox.
9703
9704 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9705
9706 * xfns.c (Fx_open_connection): Fix error message.
9707
9708 2002-08-30 Kim F. Storm <storm@cua.dk>
9709
9710 The following changes consolidates the handling of the cursor
9711 type in xdisp.c, moving duplicate code and functionality from
9712 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9713
9714 * frame.h (enum text_cursor_kinds): Consolidated here.
9715 Added DEFAULT_CURSOR value.
9716 (struct frame) <desired_cursor, cursor_width>
9717 <blink_off_cursor, blink_off_cursor_width>: New fields.
9718 Consolidated from output_x, output_w32 and output_mac structs.
9719 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9720 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9721
9722 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9723 Variables consolidated here.
9724 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9725 (Vcursor_in_non_selected_windows): Renamed from
9726 cursor_in_non_selected_windows and changed to Lisp_Object.
9727 (syms_of_xdisp): Define and staticpro new and moved variables.
9728 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9729 consolidated here. Recognize Qhollow setting.
9730 (set_frame_cursor_types): New function to set frame cursor types
9731 based on the frame parameters.
9732 (get_window_cursor_type): New function to calculate new cursor
9733 type and width for the specified window. Based on duplicated
9734 code consolidated here.
9735 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9736 check buffer-local alternate-cursor-type and blink-cursor-alist
9737 before using built-in blink off methods.
9738
9739 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9740
9741 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9742 (get_specified_cursor_type, get_window_cursor_type)
9743 (set_frame_cursor_types): Added prototypes.
9744
9745 * macfns.c (x_specified_cursor_type): Removed.
9746 (x_set_cursor_type): Use set_frame_cursor_types.
9747 (Qbar, Qbox): Removed.
9748 (syms_of_macfns): Don't intern or staticpro them.
9749
9750 * macterm.c (x_specified_cursor_type): Remove prototype.
9751 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9752 (x_display_and_set_cursor): Use get_window_cursor_type.
9753 Remove unused local variables cursor_non_selected, active_cursor.
9754 Redraw cursor if hbar cursor width changes.
9755 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9756
9757 * macterm.h (enum text_cursor_kinds): Removed.
9758 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9759 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9760 (FRAME_DESIRED_CURSOR): Macro removed.
9761
9762 * w32fns.c (Vblink_cursor_alist): Removed.
9763 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9764 (syms_of_w32fns): Don't intern, staticpro, or define them.
9765 (x_specified_cursor_type): Removed.
9766 (x_set_cursor_type): Use set_frame_cursor_types.
9767
9768 * w32term.c (x_specified_cursor_type): Remove prototype.
9769 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9770 (x_display_and_set_cursor): Use get_window_cursor_type.
9771 Remove unused local variables cursor_off_state.
9772 Redraw cursor if hbar cursor width changes.
9773 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9774
9775 * w32term.h (enum text_cursor_kinds): Removed.
9776 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9777 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9778 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9779 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9780 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9781 w32_highlight_frame.
9782
9783 * xfns.c (Vblink_cursor_alist): Removed.
9784 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9785 (syms_of_xfns): Don't intern, staticpro, or define them.
9786 (x_specified_cursor_type): Removed.
9787 (x_set_cursor_type): Use set_frame_cursor_types.
9788
9789 * xterm.c (x_specified_cursor_type): Remove prototype.
9790 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9791 (x_display_and_set_cursor): Use get_window_cursor_type.
9792 Remove unused local variables cursor_off_state.
9793 Redraw cursor if hbar cursor width changes.
9794
9795 * xterm.h (enum text_cursor_kinds): Removed.
9796 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9797 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9798 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9799 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9800 (x_specified_cursor_type): Remove prototype.
9801
9802 2002-08-28 Richard M. Stallman <rms@gnu.org>
9803
9804 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9805 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9806 (Vblink_cursor_alist): New variable.
9807 (syms_of_w32fns): Initialize and defvar it.
9808 (x_specified_cursor_type): Recognize Qbox for filled box.
9809 Exceptions are hollow boxes.
9810 (Qbox, Qhollow): New variables.
9811 (syms_of_w32fns): Initialize and staticpro them.
9812
9813 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9814 New macros.
9815 (struct w32_output): New fields blink_off_cursor,
9816 blink_off_cursor_width.
9817 (FRAME_CURSOR_WIDTH): New macro.
9818
9819 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9820 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9821
9822 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9823 for bar cursor.
9824
9825 * w32term.c (expose_overlaps): New function.
9826 (expose_window): Use it to fix the display of overlapping rows.
9827
9828 2002-08-28 Simon Josefsson <jas@extundo.com>
9829
9830 * xfns.c (Fx_open_connection): Improve help when X connection
9831 fails, xhost is insecure and xauth is better.
9832
9833 2002-08-28 Juanma Barranquero <lektu@terra.es>
9834
9835 * makefile.w32-in: Add missing dependencies on w32term.h and
9836 composite.h.
9837
9838 * emacs.c (USAGE1): Add missing newline.
9839
9840 2002-08-27 Andrew Choi <akochoi@shaw.ca>
9841
9842 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9843
9844 2002-08-27 Richard M. Stallman <rms@gnu.org>
9845
9846 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9847 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9848 (Vblink_cursor_alist): New variable.
9849 (syms_of_xfns): Initialize and defvar it.
9850 (x_specified_cursor_type): Recognize Qbox for filled box.
9851 Exceptions are hollow boxes.
9852 (Qbox, Qhollow): New variables.
9853 (syms_of_xfns): Initialize and staticpro them.
9854
9855 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9856 New macros.
9857 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9858
9859 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9860 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9861
9862 * emacs.c (main): Handle --script.
9863 (USAGE1): Mention --script.
9864 (standard_args): Define sort order for --script.
9865
9866 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9867
9868 * xdisp.c (redisplay_updating_p): Variable removed.
9869 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9870 New variables.
9871 (init_iterator): Don't free realized faces if
9872 inhibit_free_realized_faces is set.
9873 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9874 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9875 initialize Qinhibit_free_realized_faces.
9876
9877 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9878 when iterator is adding glyphs to a glyph matrix.
9879
9880 2002-08-27 Kenichi Handa <handa@etl.go.jp>
9881
9882 * xdisp.c (get_next_display_element): In unibyte case, don't use
9883 octal form for such eight-bit characters that can be converted to
9884 multibyte char.
9885
9886 2002-08-26 Kim F. Storm <storm@cua.dk>
9887
9888 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9889 and background colors. From Joe Buehler (tiny change).
9890
9891 2002-08-26 Miles Bader <miles@gnu.org>
9892
9893 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9894
9895 2002-08-25 Andrew Choi <akochoi@shaw.ca>
9896
9897 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9898 defined instead of MAC_OSX.
9899
9900 * s/darwin.h (select): Define select to sys_select only if
9901 HAVE_CARBON is defined.
9902 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9903 (DONT_REOPEN_PTY): #def it.
9904
9905 * macterm.c (XTread_socket): Remove code to call
9906 SendEventToEventTarget for keys with command modifiers when
9907 mac_command_key_is_meta is nil.
9908
9909 2002-08-24 Andreas Schwab <schwab@suse.de>
9910
9911 * eval.c (Fdefvar): Fix last change.
9912
9913 2002-08-23 Richard M. Stallman <rms@gnu.org>
9914
9915 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9916 Record variables in load history as (defvar . VAR).
9917 (Fdefvar): Don't record in load history if no initial value.
9918 (Qdefvar): New variable.
9919 (syms_of_eval): Init and staticpro it.
9920
9921 * lread.c (syms_of_lread): Doc fix.
9922 (build_load_history): Use Fmember to see if a definition
9923 is already in the Vload_history element.
9924
9925 * process.c (Fstart_process): Remove /: from program name.
9926
9927 * emacs.c (decode_env_path): Don't add /: if file name handler
9928 has a `safe-magic' property.
9929
9930 * callproc.c (Fcall_process): Remove /: from program name.
9931
9932 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9933
9934 * regex.c (PATFETCH): Remove the translating fetch.
9935 (PATFETCH_RAW): Rename to PATFETCH.
9936 (set_image_of_range): New fun.
9937 (SET_RANGE_TABLE_WORK_AREA): Use it.
9938 (regex_compile): Don't translate the pattern chars so eagerly.
9939 Only do it when inserting an `exactn' bytecode or when handling
9940 a char-range.
9941 (mutually_exclusive_p): Avoid empty statement.
9942
9943 2002-08-22 Kim F. Storm <storm@cua.dk>
9944
9945 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9946 end up on a partially visible line; this reverts a specific part
9947 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9948 display error which has been reported several times now.
9949 However it introduces the problem that changes was supposed to fix.
9950 See my comments in the source if you want to debug this further.
9951
9952 2002-08-20 Kenichi Handa <handa@etl.go.jp>
9953
9954 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9955
9956 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9957
9958 * msdos.c (croak): Add `void' to definition.
9959
9960 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
9961 Don't define them, they are defined in msdos.c.
9962
9963 * mem-limits.h [MSDOS]: Declare etext.
9964
9965 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9966 `const' since CORRECT_DIR_SEPS modifies its target.
9967
9968 2002-08-19 Kim F. Storm <storm@cua.dk>
9969
9970 * keyboard.c (Fclear_this_command_keys): Add optional arg
9971 KEEP-RECORD to avoid clearing lossage when we just want to clear
9972 the current key sequence (kmacro needs this).
9973
9974 2002-08-19 Kenichi Handa <handa@localhost>
9975
9976 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9977
9978 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9979 cons, return Qnil.
9980
9981 2002-08-17 Richard M. Stallman <rms@gnu.org>
9982
9983 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9984
9985 * sysdep.c [!VMS]: Include sys/files.h.
9986
9987 * editfns.c (save_restriction_restore): Defend from unchained marker.
9988
9989 * buffer.c (overlays_at): Handle extending vec uniformly.
9990 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9991
9992 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9993
9994 * mac.c (init_mac_osx_environment): New function.
9995
9996 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9997
9998 2002-08-14 Kim F. Storm <storm@cua.dk>
9999
10000 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10001 executing macro before appending to it (when used from Lisp).
10002 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10003 which is called prior to each iteration of macro (for kmacro.el).
10004 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10005
10006 * lisp.h (Fexecute_kbd_macro): Update prototype.
10007
10008 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10009
10010 2002-08-14 Kenichi Handa <handa@etl.go.jp>
10011
10012 * xselect.c (QUTF8_STRING): New variable.
10013 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10014 (x_atom_to_symbol): Likewise.
10015 (x_get_local_selection): New argument local_request. If it is
10016 nonzero, call handler_fn with the second arg nil.
10017 (x_handle_selection_request): Call x_get_local_selection with
10018 local_request 0.
10019 (lisp_data_to_selection_data): Don't encode the string here.
10020 (Fx_get_selection_internal): Call x_get_local_selection with
10021 local_request 1.
10022 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10023
10024 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10025
10026 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10027
10028 2002-08-13 Richard M. Stallman <rms@gnu.org>
10029
10030 * minibuf.c (Fminibufferp): New function.
10031 (syms_of_minibuf): Defsubr it.
10032 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10033
10034 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10035
10036 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10037
10038 2002-08-12 Richard M. Stallman <rms@gnu.org>
10039
10040 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10041 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10042 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10043 already.
10044
10045 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10046
10047 2002-08-11 Andrew Choi <akochoi@shaw.ca>
10048
10049 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10050 (Vmac_pass_command_to_system): New variable.
10051 (Vmac_pass_control_to_system): New variable.
10052 (do_mouse_moved): Check wp with is_emacs_window.
10053 (XTread_socket): Check window_ptr with is_emacs_window.
10054 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10055 events back to Mac Toolbox for processing, depending on values of
10056 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10057 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10058 Vmac_pass_control_to_system.
10059
10060 2002-08-10 Kenichi Handa <handa@etl.go.jp>
10061
10062 * coding.c (unencodable_char_position): New function.
10063 (Funencodable_char_position): New function.
10064 (syms_of_coding): Defsubr Funencodable_char_position.
10065
10066 2002-08-10 Andrew Choi <akochoi@shaw.ca>
10067
10068 * mac.c (sys_select) [MAC_OSX]: New function.
10069
10070 * macterm.c (MakeMeTheFrontProcess): New function.
10071 (mac_initialize): Call MakeMeTheFrontProcess.
10072
10073 * s/darwin.h: Define select to sys_select.
10074
10075 2002-08-09 Richard M. Stallman <rms@gnu.org>
10076
10077 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10078
10079 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10080
10081 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10082 end of the buffer.
10083
10084 2002-08-08 Ken Raeburn <raeburn@mit.edu>
10085
10086 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10087
10088 * puresize.h (BASE_PURESIZE): Increase to 910000.
10089
10090 2002-08-08 Kenichi Handa <handa@etl.go.jp>
10091
10092 * coding.c (Ffind_operation_coding_system): For write-region, if
10093 VISIT is a filename, make it the target.
10094
10095 2002-08-07 Richard M. Stallman <rms@gnu.org>
10096
10097 * alloc.c (mark_object): Detect long lists for debugging.
10098 (mark_object_loop_halt): New variable.
10099
10100 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10101
10102 * data.c (Fmake_variable_frame_local): Doc fix.
10103
10104 2002-08-01 David Ponce <david@dponce.com>
10105
10106 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10107 (malloc_widget_value, free_widget_value)
10108 (w32_free_submenu_strings): Use them.
10109
10110 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10111 (push_menu_pane, push_menu_item, single_keymap_panes)
10112 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10113 (single_submenu, set_frame_menubar)
10114 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10115
10116 (Fx_popup_menu): Don't show pop up menu until preceding one is
10117 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10118
10119 * w32menu.c: Changes adapted from xmenu.c
10120 (set_frame_menubar): First parse all submenus,
10121 then make widget_value trees from them.
10122 Don't allocate any widget_value objects
10123 until we are done with the parsing.
10124 (parse_single_submenu): New function.
10125 (digest_single_submenu): New function.
10126 (single_submenu): Function deleted, replaced by those two.
10127
10128 2002-08-04 Andrew Choi <akochoi@shaw.ca>
10129
10130 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10131 returns a valid window pointer before proceeding for keyDown and
10132 autoKey events.
10133
10134 2002-08-03 Andrew Choi <akochoi@shaw.ca>
10135
10136 * macterm.c (USE_CARBON_EVENTS): New macro.
10137 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10138 (x_iconify_frame): Call CollapseWindow.
10139 (Vmac_reverse_ctrl_meta): New variable.
10140 (Vmac_wheel_button_is_mouse_2): New variable.
10141 (init_mac_drag_n_drop): New function.
10142 (mac_do_receive_drag): New function.
10143 (mac_handle_service_event): New function.
10144 (init_service_handler): New function.
10145 (mac_to_emacs_modifiers): New function.
10146 (mac_event_to_emacs_modifiers): New function.
10147 (mac_get_mouse_btn): New function.
10148 (mac_convert_event_ref): New function.
10149 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10150 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10151 mac_get_mouse_btn.
10152 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10153
10154 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10155 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10156 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10157 TOOL_BAR_EVENT for MAC_OS as well.
10158 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10159 as for WINDOWS_NT.
10160 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10161
10162 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10163
10164 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10165
10166 * xdisp.c (forward_to_next_line_start): Fix a condition that
10167 lead to a newline being skipped.
10168
10169 2002-08-02 Andrew Choi <akochoi@shaw.ca>
10170
10171 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10172
10173 2002-08-01 Richard M. Stallman <rms@gnu.org>
10174
10175 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10176
10177 2002-07-31 Andrew Choi <akochoi@shaw.ca>
10178
10179 * macfns.c: #undef init_process before #define-ing it.
10180
10181 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10182 HAVE_CARBON is defined.
10183
10184 2002-07-31 Richard M. Stallman <rms@gnu.org>
10185
10186 * xmenu.c (set_frame_menubar): First parse all submenus,
10187 then make widget_value trees from them.
10188 Don't allocate any widget_value objects
10189 until we are done with the parsing.
10190 (parse_single_submenu): New function.
10191 (digest_single_submenu): New function.
10192 (single_submenu): Function deleted, replaced by those two.
10193
10194 2002-07-30 Juanma Barranquero <lektu@terra.es>
10195
10196 * w32proc.c (syms_of_ntproc): Fix docstring of
10197 `w32-get-true-file-attributes'.
10198
10199 2002-07-28 Richard M. Stallman <rms@gnu.org>
10200
10201 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10202 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10203
10204 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10205
10206 * keyboard.c (make_lispy_event):
10207 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10208 Explicitly clear up_modifier in event->modifiers.
10209
10210 2002-07-27 Richard M. Stallman <rms@gnu.org>
10211
10212 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10213
10214 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10215 for bar cursor.
10216
10217 2002-07-26 Kenichi Handa <handa@etl.go.jp>
10218
10219 * coding.c (detect_coding_iso2022): While checking a byte sequence
10220 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10221 it in the normal loop.
10222
10223 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10224
10225 * xterm.c (expose_overlaps): New function.
10226 (expose_window): Use it to fix the display of overlapping rows.
10227
10228 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10229
10230 2002-07-23 Ken Raeburn <raeburn@gnu.org>
10231
10232 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10233 since it only depends on XUINT.
10234
10235 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10236 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10237 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10238 Macros deleted.
10239
10240 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10241 its value over other approaches.
10242 * sysdep.c (start_of_data): Don't define the function if a macro
10243 form has been defined.
10244
10245 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10246
10247 * xdisp.c (redisplay_updating_p): New variable.
10248 (init_iterator): Don't free realized faces when
10249 redisplay_updating_p is set.
10250 (redisplay_internal): Set redisplay_updating_p while updating
10251 the display.
10252
10253 2002-07-23 Richard M. Stallman <rms@gnu.org>
10254
10255 * editfns.c (Fmessage): Treat "" like nil.
10256
10257 2002-07-23 Kenichi Handa <handa@etl.go.jp>
10258
10259 * xdisp.c (face_before_or_after_it_pos):
10260 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10261
10262 2002-07-22 Juanma Barranquero <lektu@terra.es>
10263
10264 * callproc.c (init_callproc) [DOS_NT]:
10265 Initialize Vshared_game_score_directory to nil.
10266 (syms_of_callproc) [DOS_NT]: Likewise.
10267
10268 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10269
10270 * xdisp.c (display_line): Replace an abort with xassert.
10271
10272 2002-07-21 Richard M. Stallman <rms@gnu.org>
10273
10274 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10275 and END_UNCHANGED when setting buffer_unchanged_p.
10276 Use current_matrix_up_to_date_p to decide whether to use
10277 try_cursor_movement.
10278
10279 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10280
10281 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10282
10283 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10284 Set to nil if dir does not exist.
10285 (syms_of_callproc): Init unconditionally and simply.
10286
10287 * buffer.c (Fbuffer_list): Doc fix.
10288
10289 2002-07-21 Ken Raeburn <raeburn@gnu.org>
10290
10291 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10292
10293 * buffer.c (mmap_realloc): When shrinking, make sure number of
10294 pages to unmap is rounded towards zero.
10295
10296 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10297 (XSETINT): Deleted.
10298
10299 * m/att3b.h (XINT): Don't define.
10300 (VALBITS, VALMASK, XTYPE): Deleted.
10301 (DATA_SEG_BITS): Define.
10302 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10303 ARRAY_MARK_FLAG): Deleted.
10304 (DATA_SEG_BITS): Define.
10305 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10306 (DATA_SEG_BITS): Define.
10307
10308 2002-07-20 Richard M. Stallman <rms@gnu.org>
10309
10310 * print.c (print_error_message): New args CONTEXT and CALLER.
10311 Calls changed.
10312
10313 * lisp.h (print_error_message): Declare new args.
10314
10315 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10316 and CONTEXT to print_error_message, don't print them here.
10317 For a Quit, don't use Vsignaling_function.
10318 Call message_log_maybe_newline.
10319
10320 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10321
10322 2002-07-20 Kim F. Storm <storm@cua.dk>
10323
10324 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10325
10326 2002-07-19 Ken Raeburn <raeburn@gnu.org>
10327
10328 * bytecode.c (struct byte_stack): Pointers into byte string now
10329 point to const.
10330 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10331 const.
10332 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10333 * coding.c (encode_eol, detect_coding, detect_eol):
10334 (decode_coding, encode_coding, detect_coding_system):
10335 Source strings now treated as const.
10336 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10337 modify Lisp string contents.
10338 * coding.h (decode_coding, encode_coding, detect_coding,
10339 detect_eol): Declarations updated.
10340 * composite.c (compose_chars_in_text): Treat Lisp string contents
10341 as const.
10342 * dispnew.c (safe_bcopy): Source pointer now points to const.
10343 * lisp.h (STRING_COPYIN): New macro.
10344 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10345 (internal_with_output_to_temp_buffer): Declarations updated.
10346 * print.c (temp_output_buffer_setup):
10347 (internal_with_output_to_temp_buffer): Buffer name argument is now
10348 pointer to const.
10349 * sound.c (struct sound_device): Function pointer field "write"
10350 buffer argument now points to const.
10351 (vox_write): Buffer argument points to const.
10352 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10353 contents as const.
10354 * sysdep.c (emacs_write): Buffer pointer now const.
10355 * term.c (encode_terminal_code): Buffer pointer now const.
10356 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10357 (x_face_list_fonts, x_update_menu_appearance):
10358 (hash_string_case_insensitive): Treat Lisp string contents as const.
10359
10360 2002-07-19 Juanma Barranquero <lektu@terra.es>
10361
10362 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10363
10364 * fileio.c (syms_of_fileio): Likewise.
10365 (Ffile_name_as_directory): Fix argument name in docstring.
10366 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
10367
10368 2002-07-18 Richard M. Stallman <rms@gnu.org>
10369
10370 * data.c (Fdefalias): Doc fix.
10371
10372 2002-07-17 Dave Love <fx@gnu.org>
10373
10374 * intervals.h (text_property_stickiness): Use P_.
10375
10376 * ccl.c: Remove `emacs' conditionals.
10377 (ccl_backtrace_table): Fix size spec.
10378 (ccl_driver): Fix type errors.
10379
10380 2002-07-16 Ken Raeburn <raeburn@gnu.org>
10381
10382 * alloc.c (xstrdup, make_string, make_unibyte_string)
10383 (make_multibyte_string, build_string): String pointer args now
10384 point to const.
10385 * charset.c (find_charset_in_text, c_string_width):
10386 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10387 * fileio.c (report_file_error):
10388 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10389 (count_combining_before, count_combining_after, insert_1_both):
10390 (insert, insert_and_inherit, insert_string):
10391 (insert_before_markers, insert_before_markers_and_inherit):
10392 * lread.c (intern, oblookup, hash_string):
10393 * minibuf.c (temp_echo_area_glyphs):
10394 * search.c (fast_c_string_match_ignore_case):
10395 * sysdep.c (emacs_open, set_file_times):
10396 * xfaces.c (xstricmp):
10397 * xdisp.c (store_frame_title, string_char_and_length):
10398 (message_dolog, message2, message2_nolog, set_message): Likewise.
10399 (set_message_1): Cast message string argument to const pointer.
10400 * editfns.c (general_insert_function): Insertion function now
10401 takes pointer to const for input data.
10402 * charset.h (find_charset_in_text, c_string_width):
10403 (parse_str_as_multibyte): Declarations updated.
10404 * dispextern.h (xstricmp): Declaration updated.
10405 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10406 (count_size_as_multibyte, count_combining_before):
10407 (count_combining_after, insert_1, insert_1_both, message_dolog):
10408 (insert, insert_and_inherit, insert_before_markers)
10409 (insert_before_markers_and_inherit, set_message, message2):
10410 (message2_dolog, build_string, make_string, make_unibyte_string):
10411 (make_multibyte_string, intern, oblookup, report_file_error):
10412 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10413 (emacs_open, xstrdup): Declarations updated.
10414 * systime.h (set_file_times): Declaration updated.
10415
10416 * charset.c (find_charset_in_text, lisp_string_width): Use const
10417 for pointer to lisp string data.
10418 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10419 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10420 * coding.c (Ffind_coding_systems_region_interval):
10421 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10422 (Fmake_directory_internal, Fdelete_directory):
10423 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10424 * fontset.c (font_family_registry, fs_query_fontset):
10425 (list_fontsets):
10426 * frame.c (Fframe_parameter):
10427 * keyboard.c (cmd_error_internal):
10428 * keymap.c (Fdescribe_buffer_bindings):
10429 * lread.c (complete_filename_p, openp):
10430 * minibuf.c (Fminibuffer_complete_word):
10431 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10432 (face_before_or_after_it_pos, next_element_from_string):
10433 (get_overlay_arrow_glyph_row, display_mode_element):
10434 (decode_mode_spec_coding):
10435 * xterm.c (same_x_server): Likewise.
10436
10437 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10438 settings of non-existent fields.
10439
10440 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10441 copy a lisp value.
10442
10443 * lread.c (Fintern_soft): Use string macros instead of
10444 Lisp_String fields.
10445 * keyboard.c (echo_char, parse_modifiers_uncached):
10446 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10447 * textprop.c (validate_interval_range, interval_of): Likewise.
10448
10449 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10450
10451 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10452 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10453 XSTRING()->size_byte.
10454
10455 * lisp.h (SDATA, SREF): Produce rvalue.
10456 (SSET): New macro.
10457 * alloc.c (make_event_array): Use SSET for storing into a string.
10458 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10459 a string.
10460 * casefiddle.c (casify_object): Use SSET.
10461 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10462 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10463 address of string contents.
10464 * data.c (Faref): Use SDATA.
10465 (Faset): Use SDATA, SSET.
10466 * dired.c (directory_files_internal): Use SSET.
10467 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10468 (Fread_file_name): Use SREF, SSET.
10469 * fns.c (concat): Use SSET.
10470 (concat, Fdelete): Use SDATA.
10471 * insdel.c (insert_from_string_1): Use SDATA.
10472 * keyboard.c (Fevent_convert_list): Use SREF.
10473 * lread.c (Fload): Use SDATA, SSET.
10474 * macfns.c (validate_x_resource_name): Use SSET.
10475 * process.c (status_message): Use SSET.
10476 * search.c (wordify): Use SDATA.
10477 (Freplace_match): Use SREF.
10478 * w32fns.c (validate_x_resource_name): Use SSET.
10479 * xfns.c (validate_x_resource_name): Use SSET.
10480 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10481
10482 2002-07-16 Richard M. Stallman <rms@gnu.org>
10483
10484 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10485
10486 * xdisp.c (reconsider_clip_changes):
10487 Don't test prevent_redisplay_optimizations_p.
10488 (redisplay_internal): Test prevent_redisplay_optimizations_p
10489 along with clip_changed in some cases.
10490 (try_window_id): Likewise.
10491 (redisplay_window): New local var buffer_unchanged_p.
10492
10493 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10494
10495 * process.c (create_process): Test USG_SUBTTY_WORKS.
10496 (process_send_signal): Clean up handling of GID.
10497 Detect errors in ioctls meant to set GID.
10498
10499 * window.c (temp_output_buffer_show):
10500 Don't set prevent_redisplay_optimizations_p.
10501
10502 2002-07-15 Juanma Barranquero <lektu@terra.es>
10503
10504 * eval.c (Fdefvaralias): Add docstring argument.
10505
10506 2002-07-15 Ken Raeburn <raeburn@gnu.org>
10507
10508 * lisp.h (STRING_INTERVALS): Produce rvalue.
10509 (STRING_SET_INTERVALS): New macro.
10510 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10511 * fns.c (Fstring_as_multibyte): Likewise.
10512 * intervals.c (balance_possible_root_interval, delete_interval)
10513 (create_root_interval, copy_intervals_to_string): Likewise.
10514 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10515 instead of 0.
10516
10517 2002-07-14 Ken Raeburn <raeburn@gnu.org>
10518
10519 * lisp.h (STRING_SET_CHARS): New macro.
10520 (SCHARS, SBYTES): Produce rvalues.
10521 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10522 * fns.c (concat): Likewise.
10523 * lread.c (read_vector): Likewise.
10524
10525 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10526 (STRING_SET_UNIBYTE): New macro.
10527 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10528 length of -1) changed to use STRING_SET_UNIBYTE.
10529 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10530 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10531 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10532 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10533 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10534 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10535 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10536 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10537 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10538 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10539 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10540 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10541 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10542 unchanged for now.
10543
10544 2002-07-13 Kim F. Storm <storm@cua.dk>
10545
10546 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10547
10548 2002-07-12 Richard M. Stallman <rms@gnu.org>
10549
10550 * fileio.c (Fwrite_region): Doc fix.
10551
10552 * print.c (print_error_message): Don't handle Vsignaling_function here.
10553
10554 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10555 (command_loop_1): Avoid certain actions after memory-full error.
10556
10557 * eval.c (Fsignal): Don't call cancel_hourglass.
10558 For a memory-full error, don't call Vsignal_hook_function
10559 and don't set Vsignaling_function.
10560
10561 * process.c (process_send_signal): Add abort call.
10562
10563 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
10564
10565 * keymap.c (Fkey_binding): Fix typo.
10566
10567 2002-07-11 Richard M. Stallman <rms@gnu.org>
10568
10569 * alloc.c (Vmemory_full): New variable.
10570 (Vmemory_signal_data): Renamed from memory_signal_data.
10571 Uses changed.
10572 (syms_of_alloc): Defvar them.
10573 (memory_full, buffer_memory_full): Set Vmemory_full.
10574
10575 * lisp.h (Vmemory_full): Add declaration.
10576 (current_column, indented_beyond_p): Change declaration.
10577
10578 * indent.c (last_known_column): Declare as double, not float.
10579 (current_column, current_column_1, string_display_width)
10580 (position_indentation): Return `double'.
10581 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10582
10583 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10584 (back_to_previous_visible_line_start)
10585 (reseat_at_next_visible_line_start, next_element_from_buffer):
10586 Use `double', not `float', when calling indented_beyond_p.
10587
10588 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10589
10590 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10591
10592 2002-07-11 Juanma Barranquero <lektu@terra.es>
10593
10594 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
10595 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10596 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10597 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10598 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10599 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
10600
10601 2002-07-10 Juanma Barranquero <lektu@terra.es>
10602
10603 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10604 All callers changed.
10605
10606 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10607
10608 * data.c (Fdefalias): Add an optional `docstring' argument.
10609 (set_internal, Fsetq_default): Use XCAR/XCDR.
10610
10611 * composite.c (HASH_VALUE, HASH_KEY):
10612 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10613
10614 2002-07-09 Kenichi Handa <handa@etl.go.jp>
10615
10616 * callproc.c (Fcall_process): Fix previous change.
10617
10618 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10619
10620 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10621 Add support for hash-tables.
10622 (Ftry_completion): Return t even if the string appears multiple times.
10623
10624 * fns.c (Fnconc): Use XCDR.
10625 (Fprovide): Use CONSP and XCDR.
10626 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10627 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10628 (Fmake_hash_table): Accept `:size nil'.
10629 (Fmakehash): Delete: moved to subr.el.
10630 (syms_of_fns): Don't defsubr makehash.
10631
10632 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10633 (HASH_TABLE_SIZE): Move from fns.c.
10634
10635 2002-07-07 Richard M. Stallman <rms@gnu.org>
10636
10637 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10638 Instead just return 0 when there is something to be done.
10639 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10640 retry scrolling as if cursor were off the bottom.
10641 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10642 return CURSOR_MOVEMENT_MUST_SCROLL.
10643 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10644 go to try_to_scroll.
10645
10646 * buffer.c (Fbuffer_local_value): Store current value into its binding
10647 so we get the up-to-date value for the binding that is loaded.
10648
10649 * eval.c (Fdefmacro): Doc fix.
10650
10651 2002-07-05 Dave Love <fx@gnu.org>
10652
10653 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10654 correctly.
10655
10656 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10657 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10658 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10659 CCL_LookupCharConstTbl.
10660 (syms_of_ccl): Defvar translation-hash-table-vector.
10661
10662 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10663
10664 * xdisp.c: Remove unused variable `face'.
10665
10666 2002-07-04 Juanma Barranquero <lektu@terra.es>
10667
10668 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10669 obsolescence information.
10670
10671 2002-07-03 Andrew Choi <akochoi@shaw.ca>
10672
10673 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10674 pattern. Search cache first.
10675 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10676 for Japanese font.
10677 (XLoadQueryFont): Use it.
10678
10679 2002-07-02 Richard M. Stallman <rms@gnu.org>
10680
10681 * keymap.c (Fdefine_key): Doc fix.
10682
10683 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10684
10685 2002-07-02 Juanma Barranquero <lektu@terra.es>
10686
10687 * keymap.c (syms_of_keymap): Fix typo.
10688
10689 2002-07-01 Andrew Choi <akochoi@shaw.ca>
10690
10691 * s/darwin.h: Define POSIX_SIGNALS.
10692
10693 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10694 and FSRefMakePath to convert FSSpec returned with Apple Event to
10695 Posix pathname.
10696 (mac_initialize) [TARGET_API_MAC_CARBON]:
10697 Call init_required_apple_events and disable the `Quit' menu item
10698 provided automatically by the Carbon Toolbox.
10699
10700 2002-07-01 Dave Love <fx@gnu.org>
10701
10702 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10703 for K&R.
10704
10705 * xterm.c: Fix prototype for K&R.
10706
10707 * term.c (costs_set): Declare static, non-initialized for pcc.
10708
10709 2002-07-01 Richard M. Stallman <rms@gnu.org>
10710
10711 * keyboard.c (timer_last_idleness_start_time): New variable.
10712 (timer_start_idle): Set that.
10713 (read_key_sequence): Use that to reset timer_idleness_start_time
10714 to previous value.
10715
10716 * window.c (Frecenter): With arg, set optional_new_start.
10717
10718 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10719
10720 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10721 buffer for completion.
10722
10723 2002-06-29 Ken Raeburn <raeburn@gnu.org>
10724
10725 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10726
10727 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10728
10729 * keyboard.c (readable_filtered_events): New function that filters
10730 FOCUS_IN_EVENT depending on parameter.
10731 (readable_events): Calls readable_filtered_events, not filtering
10732 FOCUS_IN_EVENT.
10733 (get_filtered_input_pending): New function, filtering parameter passed
10734 to readable_filtered_events.
10735 (get_input_pending): Calls get_filtered_input_pending, not filtering
10736 FOCUS_IN_EVENT.
10737 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10738 FOCUS_IN_EVENT.
10739
10740 * xterm.h (struct x_output): Add focus_state.
10741
10742 * xterm.c (x_focus_changed): New function.
10743 (x_detect_focus_change): New function.
10744 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10745 EnterNotify and LeaveNotify to track X focus changes.
10746
10747 2002-06-28 Andreas Schwab <schwab@suse.de>
10748
10749 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10750
10751 2002-06-27 Kim F. Storm <storm@cua.dk>
10752
10753 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10754 (mode_line_string_face_prop): New variables.
10755 (store_mode_line_string): New function.
10756 (display_mode_element): Use store_mode_line_string to
10757 add mode-line string elements to mode_line_string_list
10758 when mode_line_string_list is non-nil.
10759 (Fformat_mode_line): Now returns propertized string by
10760 default. New arg NO-PROPS to ignore properties.
10761 (decode_mode_spec): Only add two dashes for %- in propertized
10762 mode-line string.
10763 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10764
10765 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10766
10767 * minibuf.c (minibuffer_completion_contents): Add return type.
10768
10769 2002-06-27 Juanma Barranquero <lektu@terra.es>
10770
10771 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10772
10773 2002-06-26 Juanma Barranquero <lektu@terra.es>
10774
10775 * fileio.c (read_file_name_cleanup): Add missing return.
10776
10777 2002-06-26 Richard M. Stallman <rms@gnu.org>
10778
10779 * window.c (Frecenter): Don't set force_start flag.
10780
10781 * minibuf.c (do_completion, Fminibuffer_complete_word)
10782 (Fminibuffer_completion_help): Complete just the text before point.
10783 (minibuffer_completion_contents): New function.
10784
10785 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10786
10787 * frame.c (frames_bury_buffer): Function deleted.
10788
10789 2002-06-25 Miles Bader <miles@gnu.org>
10790
10791 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10792 the end of callint_message, allow for a terminating '\0'.
10793
10794 2002-06-24 Juanma Barranquero <lektu@terra.es>
10795
10796 * w32select.c: Include composite.h
10797
10798 * w16select.c: Likewise.
10799
10800 2002-06-24 Kenichi Handa <handa@etl.go.jp>
10801
10802 * callproc.c (Fcall_process): If code detection is necessary,
10803 call detect_coding directly here.
10804
10805 * coding.c (detect_eol): Preserve coding->cmp_data.
10806
10807 * w16select.c (Fw16_get_clipboard_data):
10808 * w32fns.c (w32_to_x_font):
10809 * w32select.c (Fw32_get_clipboard_data):
10810 * xselect.c (selection_data_to_lisp_data):
10811 * xterm.c (XTread_socket): Disable composition handling.
10812
10813 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10814
10815 * print.c (temp_output_buffer_setup): Kill all local variables.
10816
10817 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10818
10819 * lread.c (Fread): Remove redundant and imprecise declaration.
10820
10821 * xfns.c (check_x_display_info): Use check_x_frame.
10822
10823 * .gdbinit (xprintsym): Use the new `xname' field.
10824 (xsymbol): Use it.
10825
10826 2002-06-22 Jason Rumney <jasonr@gnu.org>
10827
10828 * w32fns.c (file_dialog_callback): New function.
10829 (Fx_file_dialog): Allow selecting directories as well as files.
10830
10831 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10832
10833 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
10834 OpenBSD. Add support for mipseb-*-netbsd* machines.
10835
10836 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10837
10838 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10839 black and white before scrolling. Restore frame background and
10840 foreground color after scrolling.
10841 (do_window_update): Call XClearWindow before calling expose_frame.
10842 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10843 FRAME_FOREGROUND_PIXEL of frame.
10844
10845 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10846 test Mac command key as <ALT> key.
10847
10848 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10849
10850 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10851
10852 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10853 Lookup keys in function-key-map immediately so that key-translation-map
10854 can be applied earlier.
10855 Remove function_key_possible and key_translation_possible, replaced
10856 by checking `keytran_start < t'.
10857
10858 * .gdbinit (xsymbol): Use the new `xname' field.
10859
10860 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10861
10862 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10863 test Mac command key as <ALT> key.
10864
10865 * mac.c (do_applescript): Call initialize_applescript if necessary
10866 when first called. Dispose of result_desc only when there is no error.
10867 (Fdo_applescript): Use %d format specifier instead of %ld.
10868
10869 2002-06-16 Andrew Choi <akochoi@shaw.ca>
10870
10871 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10872 of FrontWindow for cases keyDown and autoKey.
10873
10874 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10875 Vdefault_fontset to Monaco with mac-roman coding.
10876
10877 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10878 init_process before and after inclusion of Carbon/Carbon.h, resp.
10879
10880 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10881 cursor_gc.
10882 (add_font_name_table_entry): New function.
10883 (init_font_name_table): Use add_font_name_table_entry; add italic,
10884 bold, and bold-italic entries for truetype fonts.
10885
10886 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10887 for Mac too.
10888 (try_font_list) [MAC_OS]: If no font matches given registry, try
10889 fonts with any registry matching face_family.
10890 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10891
10892 * s/darwin.h: If autoconf detects the Ncurses library, define
10893 LIBS_TERMCAP to -lncurses to use it.
10894
10895 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10896
10897 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10898
10899 2002-06-15 Richard M. Stallman <rms@gnu.org>
10900
10901 * window.c (Fset_window_configuration): Explicitly preserve
10902 the point value that new_current_buffer had at the start.
10903
10904 2002-06-14 Juanma Barranquero <lektu@terra.es>
10905
10906 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10907 Fix typos.
10908
10909 2002-06-14 Kim F. Storm <storm@cua.dk>
10910
10911 * insdel.c (insert_1_both, insert_from_string_1)
10912 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10913 insert happened in the end_unchanged region. Otherwise, the
10914 redisplay may be confused and duplicate the last line in the
10915 buffer [seen after save-buffer when require-final-newline==t].
10916
10917 2002-06-13 Jason Rumney <jasonr@gnu.org>
10918
10919 * w32.c (init_environment): Remove EMACSLOCKDIR.
10920 (stat): Swap _S_IFDIR and _S_IFREG.
10921
10922 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10923
10924 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10925 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10926 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10927 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10928 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10929 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10930 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10931 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10932 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10933 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10934 SELECTION_REQUEST_EVENT, selection_clear_event to
10935 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10936 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10937 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10938 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10939 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10940 no_event to NO_EVENT.
10941
10942 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10943
10944 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10945
10946 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10947
10948 * intervals.c (textget): Don't forget to `return'.
10949 (lookup_char_property): Use XCAR/XCDR.
10950
10951 2002-06-12 Juanma Barranquero <lektu@terra.es>
10952
10953 * xdisp.c (Fformat_mode_line): Fix typo.
10954
10955 2002-06-12 Kim F. Storm <storm@cua.dk>
10956
10957 * xdisp.c (Fformat_mode_line): New function.
10958 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10959 (store_frame_title_char, store_frame_title): Use unconditionally.
10960 (init_xdisp): Defsubr Fformat_mode_line.
10961 Initialize frame_title_buf etc. unconditionally.
10962
10963 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10964
10965 * keyboard.c (read_key_sequence):
10966 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10967 things through those maps after downcasing events.
10968 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10969 applies after function-key-map.
10970 Make sure that keytran can be done in the middle in the sequence.
10971 Be careful not to throw away events past the one we downcase.
10972
10973 * lread.c (read_integer): Remove unused var `tem'.
10974 (read1): Fix int/Lisp_Object mixup.
10975
10976 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10977
10978 2002-06-11 Richard M. Stallman <rms@gnu.org>
10979
10980 * keyboard.c (readable_events): Ignore any number of
10981 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10982
10983 2002-06-09 Miles Bader <miles@gnu.org>
10984
10985 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10986 (parse_rgb_list, tty_lookup_color): New functions.
10987 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10988 (color_distance, Fcolor_distance): New functions.
10989 (TTY_SAME_COLOR_THRESHOLD): New macro.
10990 (Qtty_color_standard_values): New variable.
10991 (syms_of_xfaces): Initialize new vars & functions.
10992
10993 2002-06-08 Colin Walters <walters@verbum.org>
10994
10995 * textprop.c (Vchar_property_alias_alist): New variable.
10996 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10997
10998 * intervals.c (lookup_char_property): New function for looking up
10999 overlay and text properties, created from textget.
11000 (textget): Use it.
11001
11002 * intervals.h (lookup_char_property): Declare.
11003 (Vchar_property_alias_alist): Declare.
11004
11005 * buffer.c (Foverlay_get): Use lookup_char_property.
11006
11007 2002-06-07 Sam Steingold <sds@gnu.org>
11008
11009 * xselect.c (lisp_data_to_selection_data): Fix last change:
11010 *data_ret is not a Lisp string, while unibyte_string is.
11011
11012 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11013
11014 * xselect.c (lisp_data_to_selection_data): Fix last change:
11015 set size_ret.
11016
11017 2002-06-07 Andreas Schwab <schwab@suse.de>
11018
11019 * m/amdx86-64.h: New file.
11020
11021 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11022
11023 * fns.c (Fstring_make_unibyte): Doc fix.
11024
11025 * xselect.c (lisp_data_to_selection_data): If the requested type
11026 is STRING, call string_make_unibyte to encode the selected text
11027 as a string.
11028
11029 * window.c (Fset_window_hscroll): Doc fix.
11030
11031 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11032
11033 * fileio.c (choose_write_coding_system):
11034 Call select-safe-coding-system properly.
11035
11036 2002-06-03 Richard M. Stallman <rms@gnu.org>
11037
11038 * xdisp.c (message_with_string): Error if STRING is not a string.
11039
11040 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11041
11042 * fileio.c (choose_write_coding_system): Pass FILE arg to
11043 Vselect_safe_coding_system_function.
11044
11045 2002-06-03 Ken Raeburn <raeburn@gnu.org>
11046
11047 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11048
11049 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11050
11051 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11052 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11053 * keymap.c (describe_command): Likewise.
11054 * minibuf.c (read_minibuf): Likewise.
11055
11056 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11057 Cast `current_column' return value to int.
11058 (back_to_previous_visible_line_start)
11059 (reseat_at_next_visible_line_start, next_element_from_buffer):
11060 Cast `indented_beyond_p' 3rd arg to float.
11061
11062 * indent.c (last_known_column): Now a float.
11063 (current_column_1, position_indentation, current_column)
11064 (string_display_width): Return float.
11065 (Fcurrent_column): Cast `current_column' return value to int.
11066 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11067 (indented_beyond_p): Third arg now a float.
11068 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11069
11070 * lisp.h (current_column): Now returns float.
11071 (indented_beyond_p): 3rd arg now a float.
11072
11073 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11074
11075 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11076 is Qcompound_text_with_extensions.
11077
11078 * xselect.c (lisp_data_to_selection_data): Always set selection
11079 type as string if x_encode_text returns streingp non-NULL.
11080
11081 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11082
11083 2002-05-30 Richard M. Stallman <rms@gnu.org>
11084
11085 * window.c (Fset_window_configuration): Correct the handling
11086 of point in current buffer, to work with multiple windows.
11087
11088 2002-05-29 Colin Walters <walters@verbum.org>
11089
11090 * lread.c (Fread_from_string): Don't depend on order of evaluation
11091 for C function parameters.
11092
11093 2002-05-28 Richard M. Stallman <rms@gnu.org>
11094
11095 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11096 way for blinked-off state and for a nonselected window.
11097
11098 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11099 instead, see if the new start pos is at beginning of line.
11100
11101 * fileio.c (Fwrite_region): If START is a string, don't
11102 make any annotations.
11103
11104 * eval.c (syms_of_eval): Doc fix.
11105
11106 2002-05-28 Colin Walters <walters@debian.org>
11107
11108 * emacs.c (USAGE1): Add --no-splash.
11109 (standard_args): Ditto.
11110
11111 2002-05-28 Colin Walters <walters@gnu.org>
11112
11113 * lread.c (readchar_count): New variable.
11114 (readchar): Increment it.
11115 (unreadchar): Decrement it.
11116 (read_multibyte): Decrement it.
11117 (Vread_with_symbol_positions): New variable.
11118 (Vread_symbol_positions_list): New variable.
11119 (read_internal_start): New function, created from Fread and
11120 Fread_from_string. Handle Vread_symbol_positions_list and
11121 Vread_with_symbol_positions.
11122 (readevalloop, Fread, Fread_from_string): Use it.
11123 (read1): Use readchar_count to add symbol positions to
11124 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11125 (syms_of_lread): DEFVAR_LISP and initialize them.
11126
11127 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11128 (substitute_object_recurse, substitute_object_in_subtree)
11129 (substitute_in_interval): Prototype.
11130 (read_multibyte): Return c if it's less than zero.
11131
11132 2002-05-28 Kim F. Storm <storm@cua.dk>
11133
11134 * fileio.c (Fread_file_name_internal): Added brute-force
11135 speed up for using predicate file-directory-p.
11136
11137 2002-05-28 Kim F. Storm <storm@cua.dk>
11138
11139 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11140 New variables.
11141 (syms_of_fileio): DEFVAR_LISP them.
11142 (read_file_name_cleanup): New unwind function.
11143 (Fread_file_name_internal): Only return completions satifying
11144 Vread_file_name_predicate. Temporarily unwind protect and rebind
11145 default-directory while checking completions against the predicate.
11146 (Fread_file_name): Added PREDICATE argument. Specbind it to
11147 Vread_file_name_predicate during completion.
11148 Call Vread_file_name_function to read the file name if non-nil.
11149
11150 * lisp.h (Fread_file_name): Now has 6 args.
11151
11152 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11153 predicate for Fread_file_name when reading directory name.
11154 Supply Qnil for predicate in other calls to Fread_file_name.
11155
11156 2002-05-26 Miles Bader <miles@gnu.org>
11157
11158 * term.c (tty_capable_p): New function.
11159 * dispextern.h (tty_capable_p): New function declaration.
11160 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11161 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11162
11163 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11164
11165 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11166 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11167 (Vwrite_region_annotate_functions): Docstring fix.
11168
11169 2002-05-23 Kim F. Storm <storm@cua.dk>
11170
11171 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11172 phys_cursor's hpos is overwritten. This is still not completely
11173 correct, as it doesn't really make sense to use hpos at all to
11174 get the cursor glyph (as that is relative to the width of the
11175 characters on the line, which may have changed during the update).
11176
11177 2002-05-22 Jason Rumney <jasonr@gnu.org>
11178
11179 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11180 Lisp_Object.
11181 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11182 Use modified enumfont_t struct.
11183
11184 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11185
11186 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11187 Handle the `hbar' cursor type.
11188 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11189
11190 * w32fns.c (Qhbar): New variable.
11191 (x_specified_cursor_type): Use it.
11192
11193 2002-05-21 Ken Raeburn <raeburn@gnu.org>
11194
11195 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11196 now, when the address is needed.
11197
11198 2002-05-21 Colin Walters <walters@gnu.org>
11199
11200 * Makefile.in (shortlisp): Add font-core.el.
11201
11202 2002-05-20 Richard M. Stallman <rms@gnu.org>
11203
11204 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11205
11206 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11207 equivalent key bindings here.
11208
11209 2002-05-20 Ken Raeburn <raeburn@gnu.org>
11210
11211 Change symbol structure to contain a lisp object for the symbol
11212 name:
11213 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11214 object field named "xname".
11215 (SYMBOL_NAME): New macro.
11216 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11217 name field.
11218 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11219 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11220 instead of name field.
11221 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11222 SYMBOL_NAME instead of XSYMBOL and name field.
11223 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11224 instead of XSYMBOL and name field.
11225 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11226 and SYMBOL_NAME instead of XSYMBOL and name field.
11227 * coding.c (Fread_coding_system, code_convert_region1)
11228 (code_convert_string1, code_convert_string_norecord)
11229 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11230 XSYMBOL and name field.
11231 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11232 (Fmake_variable_buffer_local, Fmake_local_variable)
11233 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11234 of XSYMBOL and name field.
11235 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11236 XSYMBOL and name field.
11237 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11238 instead of XSYMBOL and name field.
11239 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11240 XSYMBOL and name field.
11241 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11242 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11243 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11244 instead of XSYMBOL and name field.
11245 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11246 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11247 (parse_solitary_modifier, Fexecute_extended_command):
11248 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11249 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11250 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11251 of XSYMBOL and name field.
11252 (describe_command, describe_translation): Use SYMBOL_NAME and
11253 assignment instead of XSYMBOL and name field and XSETSTRING.
11254 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11255 instead of XSYMBOL and name field.
11256 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11257 name field and XSETSTRING.
11258 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11259 of XSYMBOL and name field.
11260 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11261 assignment instead of XSYMBOL and name field and XSETSTRING.
11262 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11263 XSTRING instead of XSYMBOL and name field.
11264 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11265 and XSTRING instead of XSYMBOL and name field.
11266 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11267 and XSTRING instead of XSYMBOL and name field.
11268 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11269 XSTRING instead of XSYMBOL and name field.
11270 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11271 of XSYMBOL and name field.
11272 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11273 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11274
11275 2002-05-19 Ken Raeburn <raeburn@gnu.org>
11276
11277 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11278 and XCDR real rvalues in most configurations.
11279
11280 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11281 Don't take the address of the cdr part of a cons cell; instead, track
11282 the parent cell and call XSETCDR, or set the variable for the head
11283 of the list if we haven't started down the list yet.
11284
11285 2002-05-19 Richard M. Stallman <rms@gnu.org>
11286
11287 * doc.c (reread_doc_file): Don't ask for confirmation.
11288
11289 2002-05-18 Jason Rumney <jasonr@gnu.org>
11290
11291 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11292 (xbm_load_image): Use it.
11293 (xbm_load): Ditto.
11294 (xbm_read_bitmap_data): Reverted to xfns.c version.
11295 From David Ponce <david@dponce.com>.
11296
11297 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11298
11299 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11300 2.02 and later.
11301
11302 2002-05-16 Juanma Barranquero <lektu@terra.es>
11303
11304 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11305
11306 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11307
11308 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11309 meaningful test.
11310 (read_char_minibuf_menu_prompt): Fix typo.
11311
11312 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11313
11314 * eval.c (Fcommandp): Doc fix.
11315
11316 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11317
11318 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11319 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11320 (Fset_keymap_parent): Gcpro a bit more.
11321 (access_keymap): Gcpro around meta_map call and around the main loop.
11322 (get_keyelt): Gcpro when following indirect references.
11323 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11324 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11325 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11326 Remove useless ad-hoc remap code.
11327
11328 2002-05-13 Richard M. Stallman <rms@gnu.org>
11329
11330 * search.c (search_buffer): Give up boyer moore search if inverse
11331 translation change charset_base.
11332
11333 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11334
11335 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11336 characters is carried over from the previous block of text, adjust
11337 coding->produced to account for the extra character.
11338
11339 2002-05-11 Andreas Schwab <schwab@suse.de>
11340
11341 * coding.c (intersection): Keep the elements of the returned list
11342 in the same order as in the first list.
11343
11344 2002-05-11 Kim F. Storm <storm@cua.dk>
11345
11346 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11347 only update cmm_size if realloc actually succeeds.
11348 Testing with initial size of 2 elements revealed that using
11349 realloc on GNU/Linux would cause a random trap in xmalloc
11350 later on, so I rewrote the code to use malloc/bcopy/free instead
11351 of realloc.
11352
11353 2002-05-10 Jason Rumney <jasonr@gnu.org>
11354
11355 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11356
11357 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11358
11359 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11360 parens, to ensure correct evaluation order.
11361
11362 2002-05-10 Kim F. Storm <storm@cua.dk>
11363
11364 * keymap.c (Vemulation_mode_map_alists): New variable.
11365 (syms_of_keymap): DEFVAR_LISP it.
11366 (current_minor_maps): Process keymap alists in that list before
11367 minor-mode-overriding-map-alist and minor-mode-map-alist.
11368
11369 2002-05-09 Richard M. Stallman <rms@gnu.org>
11370
11371 * search.c (Freplace_match): Doc fix.
11372
11373 2002-05-09 Kim F. Storm <storm@cua.dk>
11374
11375 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11376 Enlarge cursor rectangle drawn around image with non-zero relief.
11377
11378 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11379 Enlarge cursor rectangle drawn around image with non-zero relief.
11380
11381 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11382 Enlarge cursor rectangle drawn around image with non-zero relief.
11383
11384 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11385
11386 * xselect.c (lisp_data_to_selection_data): Don't set selection
11387 type if comes from the Lisp object's car. If the selection
11388 contains a pure ASCII text, always return QSTRING as its type.
11389
11390 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11391
11392 * mac.c (mac-cut-function): Doc fix.
11393
11394 2002-05-05 Richard M. Stallman <rms@gnu.org>
11395
11396 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11397
11398 2002-05-04 Jason Rumney <jasonr@gnu.org>
11399
11400 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11401 for event-click-count.
11402
11403 * process.c (init_process): Only add server subfeature if we can
11404 use non-blocking I/O.
11405
11406 2002-05-04 Andrew Choi <akochoi@shaw.ca>
11407
11408 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11409 repeatedly.
11410
11411 2002-05-03 Jason Rumney <jasonr@gnu.org>
11412
11413 * process.c (Fmake_network_process): Only support server sockets
11414 when we can make them non-blocking.
11415
11416 * s/ms-w32.h (HAVE_SELECT): Define.
11417
11418 * w32.h (FILE_NDELAY): New flag.
11419
11420 * w32.c (sys_getpeername, fcntl): New functions.
11421 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11422
11423 * w32proc.c: include sys/file.h.
11424
11425 2002-05-03 Colin Walters <walters@verbum.org>
11426
11427 * callproc.c (Vgame_score_directory): Renamed to
11428 Vshared_game_score_directory.
11429
11430 2002-04-30 Richard M. Stallman <rms@gnu.org>
11431
11432 * s/gnu.h [emacs]: Include stdio.h.
11433 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11434
11435 * eval.c (do_autoload): Error if called while preparing to dump.
11436
11437 * fns.c (Frequire): Error if need to load while preparing to dump.
11438
11439 2002-04-28 Colin Walters <walters@verbum.org>
11440
11441 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11442 Default to "~/.emacs.d/games".
11443
11444 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11445
11446 * lread.c (openp): Change arg exec_only to predicate.
11447 (build_load_history): Use XCAR/XCDR.
11448 (Flocate_file_internal): New fun.
11449 (syms_of_lread): Defsubr it.
11450 (Fload): Update call to openp.
11451
11452 * lisp.h (openp): Update prototype.
11453
11454 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11455 * w32proc.c (sys_spawnve):
11456 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11457 * w32.c (check_windows_init_file):
11458 * sound.c (Fplay_sound_internal):
11459 * process.c (Fstart_process):
11460 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11461 * mac.c (run_mac_command):
11462 * emacs.c (init_cmdargs):
11463 * callproc.c (Fcall_process): Update call to openp.
11464
11465 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11466
11467 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11468
11469 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11470
11471 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11472 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11473
11474 2002-04-28 Richard M. Stallman <rms@gnu.org>
11475
11476 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11477
11478 * eval.c (Fcommandp): New arg for_call_interactively.
11479 * lisp.h (Fcommandp): Declare new arg.
11480
11481 2002-04-28 Jason Rumney <jasonr@gnu.org>
11482
11483 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11484
11485 * w32.c (stat, fstat): Use file index information to generate
11486 inodes for directories where available.
11487
11488 2002-04-26 Andrew Choi <akochoi@shaw.ca>
11489
11490 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11491 [HAVE_CARBON]: Include Mac object files.
11492
11493 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11494 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11495 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11496 MAC_OSX, and MAC_OS instead of macintosh.
11497
11498 * editfns.c [MAC_OS8]: Include stdio.h.
11499
11500 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11501
11502 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11503 Apple Monaco.
11504
11505 * process.c: Declare QCfamily and QCfilter as extern.
11506 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11507 calling select.
11508
11509 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11510
11511 * tparam.c [MAC_OSX]: Don't define BC and UP.
11512
11513 * config.in [HAVE_CARBON]: Add.
11514
11515 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11516 Move here from mac/src and mac/inc.
11517
11518 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11519
11520 2002-04-26 Gerd Moellmann <gerd@gnu.org>
11521
11522 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11523 Compute phys_cursor_width from the x position returned
11524 by x_draw_glyhs, which is cheaper.
11525 (x_display_and_set_cursor): Compute the buffer-local value
11526 of `cursor-in-non-selected-windows' only when needed.
11527
11528 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11529
11530 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11531 cursor on a stretch glyph has a width that depends on
11532 x_stretch_cursor_p.
11533
11534 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11535
11536 * abbrev.c (abbrev-start-location): Doc fix.
11537
11538 * indent.c (Fvertical_motion): Fix last change.
11539
11540 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11541
11542 * indent.c (Fvertical_motion): Move to the start of the line
11543 containing PT before moving up or down.
11544
11545 2002-04-24 Gerd Moellmann <gerd@gnu.org>
11546
11547 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11548 case of writing a whole row, more or less analogous to the case of
11549 writing only parts of a row.
11550
11551 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11552 0 for NO_CURSOR.
11553
11554 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11555
11556 2002-04-23 Colin Walters <walters@verbum.org>
11557
11558 * buffer.c (syms_of_buffer): Doc fix.
11559
11560 2002-04-23 Gerd Moellmann <gerd@gnu.org>
11561
11562 * xterm.c (notice_overwritten_cursor): Handle the special case
11563 of the cursor being in the first blank non-text line at the
11564 end of a window.
11565
11566 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11567 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11568 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11569 bar cursors only, to make phys_cursor_width contain what its name
11570 suggests.
11571 (notice_overwritten_cursor): Consider the cursor image erased if
11572 the output area intersects the cursor image in y-direction.
11573
11574 2002-04-23 Simon Marshall <simon@gnu.org>
11575
11576 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11577 to XC_hand2.
11578
11579 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11580
11581 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11582
11583 2002-04-22 Kim F. Storm <storm@cua.dk>
11584
11585 * textprop.c (remove_properties): Fixed trap for malformed plist.
11586
11587 2002-04-22 Richard M. Stallman <rms@gnu.org>
11588
11589 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11590
11591 * window.c (make_window): Initialize height_fixed_p,
11592 last_cursor_off_p, and p->cursor_off_p slots.
11593
11594 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11595
11596 * fns.c (use-dialog-box): Doc fix.
11597
11598 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11599
11600 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11601 variables `row', `i' and `area'.
11602 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11603 toolkit library.
11604
11605 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11606
11607 * xfaces.c (clear_font_table): Don't free the default font of
11608 a frame even if it's on another display.
11609 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11610 that could be Qt.
11611
11612 2002-04-19 Juanma Barranquero <lektu@terra.es>
11613
11614 * indent.c (Fmove_to_column): Remove unused local variable
11615 `next_boundary_byte'.
11616 (current_column_1): Likewise.
11617
11618 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11619
11620 * msdos.c (Qhbar): New variable.
11621 (syms_of_msdos): Intern and staticpro it.
11622 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11623 cursor type.
11624
11625 2002-04-19 Dave Lambert <dlambert@acm.org>
11626
11627 Theses change implement an underscore-like (`hbar') cursor.
11628
11629 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11630
11631 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11632 Handle the `hbar' cursor type.
11633 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11634
11635 * xfns.c (Qhbar): New variable.
11636 (syms_of_xfns): Intern and staticpro it.
11637 (x_specified_cursor_type): Handle `hbar' cursor.
11638
11639 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11640 not defined.
11641
11642 2002-04-18 Richard M. Stallman <rms@gnu.org>
11643
11644 * textprop.c (remove_properties): New arg LIST allows scanning
11645 either a list or a plist.
11646 (interval_has_some_properties_list): New function, like
11647 interval_has_some_properties using list instead of plist.
11648 All callers changed.
11649 (Fremove_list_of_text_properties): New function.
11650 (syms_of_textprop): Defsubr it.
11651
11652 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11653
11654 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11655
11656 2002-04-17 Juanma Barranquero <lektu@terra.es>
11657
11658 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11659
11660 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11661
11662 * window.c (coordinates_in_window): Don't report on margin area
11663 if its width is zero.
11664
11665 2002-04-16 Jason Rumney <jasonr@gnu.org>
11666
11667 * w32fns.c (Fx_file_dialog): Decode file name before using.
11668
11669 * w32term.c (construct_drag_n_drop): Likewise.
11670
11671 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11672
11673 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11674 store load-history in pure space.
11675
11676 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11677
11678 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11679
11680 * xterm.c (Qlatin_1, Qutf_8): New vars.
11681 (syms_of_xterm): Initialize them.
11682 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11683 decoding the output of X*LookupString.
11684 Always use latin-1 to decode the output of XLookupString.
11685 Try Xutf8LookupString if XmbLookupString failed.
11686
11687 * region-cache.c (new_region_cache): Use BEG.
11688
11689 2002-04-16 Gerd Moellmann <gerd@gnu.org>
11690
11691 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11692 configuration files.
11693 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11694 returns 0.
11695
11696 2002-04-15 Andreas Schwab <schwab@suse.de>
11697
11698 * config.in: Regenerated using autoheader.
11699
11700 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11701 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11702 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11703 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11704 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11705 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11706 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11707 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11708 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11709 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11710 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11711 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11712 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11713 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11714 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11715 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11716 STACK_DIRECTION, now set by autoconf.
11717
11718 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11719
11720 * dispnew.c (marginal_area_string): Sort arguments.
11721
11722 * dispextern.h (marginal_area_string): Add prototype.
11723
11724 2002-04-13 Richard M. Stallman <rms@gnu.org>
11725
11726 * fileio.c (Finsert_file_contents):
11727 Don't call temp_output_buffer_setup--do just part, by hand.
11728
11729 * coding.c (run_pre_post_conversion_on_str):
11730 Don't call temp_output_buffer_setup--do just part, by hand.
11731
11732 * keyboard.c (command_loop_1): Don't call start_hourglass
11733 or cancel_hourglass when executing a macro.
11734
11735 * marker.c (count_markers): New function.
11736
11737 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11738 grow without limit. Move recently used elements to the front.
11739
11740 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11741
11742 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11743
11744 2002-04-12 Gerd Moellmann <gerd@gnu.org>
11745
11746 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11747 rows marginal areas.
11748 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11749 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11750
11751 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11752
11753 2002-04-12 Dave Love <fx@gnu.org>
11754
11755 * dispnew.c (marginal_area_string): New.
11756
11757 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11758 (Qleft_margin, Qright_margin): Declare.
11759 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11760
11761 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11762 note_mode_line_highlight and extended.
11763
11764 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11765 (make_lispy_event): Deal with mouse events in margins.
11766
11767 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11768
11769 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11770
11771 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11772 than deactivating the mark if tmm is set to `lambda'.
11773 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11774 Use a single event for HELP_EVENT.
11775 (Fexecute_extended_command): Save last_point_position.
11776
11777 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11778
11779 * lisp.h (Fpropertize): Add prototype.
11780
11781 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11782
11783 2002-04-10 Colin Walters <walters@verbum.org>
11784
11785 * config.in: Add HAVE_SHARED_GAME_DIR.
11786
11787 * callproc.c: (Vgame_score_directory): New variable.
11788 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11789
11790 2002-04-10 Richard M. Stallman <rms@gnu.org>
11791
11792 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11793
11794 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11795
11796 * minibuf.c (read_minibuf): Use empty_string.
11797 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11798 Short-circuit the search as soon as it "failed".
11799 (Fall_completions): Allow lambda forms and lists of strings for alist.
11800 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11801 when require_match is nil.
11802 (Ftest_completion): Rename from `test_completion' and export to elisp.
11803 Call the predicate also when alist is a list.
11804 Obey Vcompletion_regexp_list.
11805 (do_completion, Fminibuffer_complete_and_exit): Use it.
11806 (Fassoc_string): Rename from `assoc_for_completion'.
11807 Allow list of strings as well and export to elisp.
11808
11809 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11810
11811 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11812
11813 2002-04-08 Juanma Barranquero <lektu@terra.es>
11814
11815 * w32.c (sys_accept): Don't hide variable `s'.
11816
11817 2002-04-05 Gerd Moellmann <gerd@gnu.org>
11818
11819 * callint.c (Fcall_interactively): Use INTEGERP instead of
11820 NUMBERP for checking Vhistory_length.
11821
11822 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11823
11824 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11825 Doc fix to reflect it.
11826
11827 2002-04-04 Richard M. Stallman <rms@gnu.org>
11828
11829 * xdisp.c (display_mode_element): New arg RISKY.
11830 Disregard text props found or specified within a variable
11831 that isn't marked risky-local-variable.
11832 (Qrisky_local_variable): New variable.
11833 (syms_of_xdisp): Init and staticpro it.
11834
11835 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11836
11837 * undo.c (record_point): New fun.
11838 (record_delete, record_insert): Use it.
11839
11840 2002-04-03 Juanma Barranquero <lektu@terra.es>
11841
11842 * doc.c (Fdocumentation): Add missing parentheses.
11843 (Fdocumentation_property): Likewise.
11844
11845 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11846
11847 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11848 data is 0, just return nil.
11849
11850 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11851
11852 * msdos.c (syms_of_msdos): Fix last change with
11853 mouse_autoselect_window.
11854
11855 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11856
11857 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11858 mouse_autoselect_window.
11859
11860 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11861
11862 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11863 with system-specific keysyms. Use it also for unknown function keys.
11864
11865 * doc.c (reread_doc_file): Return whether reload was attempted.
11866 (Fdocumentation, Fdocumentation_property): Don't try to reload
11867 if the doc is 0 and only ask once.
11868
11869 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11870
11871 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11872
11873 * keyboard.c (read_char): If the event was Qselect_window,
11874 restore timer_idleness_start_time to its previous value.
11875
11876 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11877
11878 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11879
11880 * region-cache.c (new_region_cache): Use BEG.
11881
11882 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11883 Use BEG and BEG_BYTE.
11884
11885 * doc.c (get_doc_string): Return nil if the location is wrong.
11886 (reread_doc_file): New fun.
11887 (Fdocumentation, Fdocumentation_property):
11888 Call it if get_doc_string fails.
11889 (Fsnarf_documentation): Make it work for a dumped Emacs.
11890
11891 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11892 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11893
11894 * charset.c (Fstring): Allow 0 arguments.
11895
11896 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11897
11898 * process.c (DATAGRAM_CONN_P, list_processes_1)
11899 (Fprocess_datagram_address, Fset_process_datagram_address)
11900 (Fset_network_process_options, server_accept_connection):
11901 Fix some int/Lisp_Object confusions (thank you union types).
11902
11903 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11904
11905 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11906
11907 * w32term.c: Likewise.
11908 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11909
11910 * keyboard.c (Qselect_window): New symbol.
11911 (head_table): Use it.
11912 (keys_of_keyboard): Bound select-window event to handle-select-window.
11913 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11914
11915 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11916 (last_window): New variable.
11917 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11918 (note_mouse_movement): Remove reimplemented code in #if 0.
11919 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11920 Emacs windows.
11921
11922 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11923
11924 2002-03-31 Gerd Moellmann <gerd@gnu.org>
11925
11926 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11927 Callers changed.
11928
11929 2002-03-30 Richard M. Stallman <rms@gnu.org>
11930
11931 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11932 loop whenever it stops making progress.
11933
11934 * widget.c (set_frame_size): Don't call change_frame_size.
11935
11936 2002-03-30 Gerd Moellmann <gerd@gnu.org>
11937
11938 * dispnew.c (direct_output_for_insert):
11939 Call mark_window_display_accurate.
11940
11941 2002-03-29 Jason Rumney <jasonr@gnu.org>
11942
11943 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11944
11945 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11946
11947 * Makefile.in (lread.o): Depend on coding.h.
11948
11949 * lread.c (openp, Fload): Encode the file name before passing it
11950 to `stat', `access', and `emacs_open'.
11951 (openp): GCPRO the encoded file name. Don't recompute Lisp
11952 strings unnecessarily.
11953
11954 2002-03-29 Kim F. Storm <storm@cua.dk>
11955
11956 * fns.c (Flax_plist_put): Doc fix.
11957
11958 2002-03-28 Miles Bader <miles@gnu.org>
11959
11960 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11961
11962 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11963
11964 * process.c (set-network-process-options): Add usage.
11965 (make-network-process): Doc fix.
11966
11967 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11968
11969 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11970
11971 2002-03-26 Richard M. Stallman <rms@gnu.org>
11972
11973 * fns.c (Fsubstring_no_properties): New function.
11974 (Flax_plist_get, Flax_plist_put): New functions.
11975 (syms_of_fns): defsubr them.
11976
11977 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11978 don't test or alter w->update_mode_line.
11979
11980 * window.c (Fdisplay_buffer): Doc fix.
11981
11982 2002-03-24 Richard M. Stallman <rms@gnu.org>
11983
11984 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11985
11986 2002-03-24 Gerd Moellmann <gerd@gnu.org>
11987
11988 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11989 (Fdefmacro): Handle `(declare ...)'.
11990 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11991 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11992
11993 2002-03-24 Jason Rumney <jasonr@gnu.org>
11994
11995 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11996 (xbm_file_p): Add prototypes.
11997 (xbm_format, xbm_image_p): Sync with xfns.c.
11998 (reflect_byte): New function.
11999 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12000 (xbm_load_image): Create bitmaps with a depth of 1.
12001 (init_xfns): Enable XBM images.
12002
12003 2002-03-23 Jason Rumney <jasonr@gnu.org>
12004
12005 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12006 correctly. Do not pass up_modifier to keyboard buffer.
12007
12008 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12009
12010 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12011
12012 * Makefile.in (bootstrapclean): New target.
12013 (bootstrap-temacs, bootstrap-doc): Remove.
12014 (bootstrap-emacs): Use a bog-standard `temacs'.
12015 Don't bother to build a DOC file.
12016
12017 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12018
12019 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12020 in temacs even if !CANNOT_DUMP.
12021 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12022
12023 * alloc.c (check_pure_size): Only output a warning.
12024
12025 2002-03-22 Jason Rumney <jasonr@gnu.org>
12026
12027 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12028 supported.
12029
12030 * w32term.c (zv_bits): Declare as short, for word alignment.
12031 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12032 (syms_of_w32term): Define x-use-underline-position-properties.
12033
12034 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12035 (clear_image_cache): Block input, fix logic, clear matrices in
12036 all frames that share this cache.
12037
12038 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12039
12040 * emacs.c (main): Update the Copyright year in the blurb printed
12041 by "emacs --version".
12042
12043 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12044
12045 * xterm.c (XTread_socket): If XK_ISO_Lock and
12046 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12047 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12048
12049 2002-03-21 Kim F. Storm <storm@cua.dk>
12050
12051 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12052 menu-bar bindings in keymap and local-map properties _are_ used.
12053 But try keymap property first in accordance with 2002-01-03 patch.
12054 Added comment describing why this is not always reliable.
12055 (tool_bar_items): Ditto for tool-bar.
12056
12057 2002-03-21 Jason Rumney <jasonr@gnu.org>
12058
12059 * w32fns.c (x_clear_image_1): Disable color table code.
12060
12061 2002-03-21 Kim F. Storm <storm@cua.dk>
12062
12063 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12064 removed the wrong version of the DEFUN macro; fixed it.
12065
12066 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12067 Fmember rather than Fmemq).
12068 (Fprovide): Check that subfeatures is a list.
12069
12070 * process.c (QCfeature, QCdatagram): Removed variables.
12071 (QCtype, Qdatagram): New variables.
12072 (network_process_featurep): Removed function.
12073 (Fmake_network_process): Removed :feature check.
12074 Use :type 'datagram instead of :datagram t to create a datagram
12075 socket. This allows us to add other connection types (e.g. raw
12076 sockets) later in a consistent manner.
12077 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12078 supported subfeatures for feature make-network-process.
12079 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12080 Intern and staticpro QCtype and Qdatagram.
12081 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12082
12083 * xfns.c: (QCtype): Remove duplicate declaration and
12084 initialization (is now declared in process.c).
12085
12086 * w32fns.c: (QCtype): Remove duplicate declaration and
12087 initialization (is now declared in process.c).
12088
12089 2002-03-21 Richard M. Stallman <rms@gnu.org>
12090
12091 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12092 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12093 when jumping to `fail' to avoid undoing reg changes in the
12094 last iteration of the loop.
12095 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12096
12097 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12098 Depend on process.h.
12099
12100 2002-03-20 Jason Rumney <jasonr@gnu.org>
12101
12102 Most of the following changes are still conditional on HAVE_IMAGES
12103 which is not set by default on Windows.
12104
12105 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12106
12107 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12108 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12109 (four_corners_best, x_clear_image_1, x_clear_image)
12110 (x_alloc_image_color, postprocess_image)
12111 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12112 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12113 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12114
12115 * w32gui.h (struct XImage): Define.
12116
12117 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12118 extract mouse co-ordinates.
12119
12120 2002-03-20 Jason Rumney <jasonr@gnu.org>
12121
12122 * w32.c (init_winsock): Dynamically load new server and UDP
12123 socket functions.
12124 (socket_to_fd): New function.
12125 (sys_socket): Use it.
12126 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12127 (sys_recvfrom, sys_sendto): New wrapper functions.
12128
12129 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12130 and initialization.
12131
12132 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12133
12134 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12135
12136 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12137 Don't use "sun" as a variable, it's a predefined constant on Sun
12138 machines.
12139
12140 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12141
12142 * bytecode.c (Fbyte_code): Revert last change.
12143
12144 2002-03-19 Kim F. Storm <storm@cua.dk>
12145
12146 * makefile.w32-in (LIBS): Add $(WSOCK32).
12147 From David Ponce <dponce@voila.fr>.
12148
12149 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12150
12151 * process.c (wait_reading_process_input): Move variables `pname'
12152 and `pnamelen' down where they are used.
12153
12154 * bytecode.c (Fbyte_code): Discard unused computed value to
12155 prevent gcc warning.
12156
12157 * lisp.h (Fplist_member): Add prototype.
12158
12159 2002-03-18 Kim F. Storm <storm@cua.dk>
12160
12161 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12162 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12163
12164 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12165 Remove explicit GNU_LINUX settings for datagram support.
12166
12167 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12168
12169 * process.c (Fmake_network_process): Remove unused variable `sa'.
12170 Doc fix. Add usage:.
12171 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12172
12173 2002-03-17 Richard M. Stallman <rms@gnu.org>
12174
12175 * xdisp.c (cursor_type_changed): New variable.
12176 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12177 Clear it when clearing windows_or_buffers_changed.
12178 (try_cursor_movement, redisplay_window, try_window_id)
12179 (try_window_reusing_current_matrix): Test cursor_type_changed
12180 along with windows_or_buffers_changed.
12181
12182 * window.h (cursor_type_changed): New variable.
12183
12184 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12185 not update_mode_lines, and always set it to 1.
12186
12187 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12188 if no frames needed redrawing.
12189
12190 2002-03-17 Kim F. Storm <storm@cua.dk>
12191
12192 The following changes add support for network server processes,
12193 datagram connections, and local (unix) sockets.
12194
12195 * process.h (struct Lisp_Process): New member log.
12196 Doc fix: Member command used to indicate stopped network process.
12197 Doc fix: Member childp contains plist for network process.
12198 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12199
12200 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12201 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12202 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12203 New variables.
12204 (NETCONN1_P): New macro.
12205 (DATAGRAM_SOCKETS): New conditional symbol.
12206 (datagram_address): New array.
12207 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12208 (status_message): Use concat3.
12209 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12210 for a stopped network process.
12211 (Fset_process_buffer): Update contact plist for network process.
12212 (Fset_process_filter): Ditto. Don't enable input for stopped
12213 network processes. Server must listen, even if filter is t.
12214 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12215 New functions.
12216 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12217 (Fprocess_contact): Added KEY argument. Handle datagrams.
12218 (list_processes_1): Optionally show only processes with the query
12219 on exit flag set. Dynamically adjust column widths. Omit tty
12220 column if not needed. Report stopped network processes.
12221 Identify server and datagram network processes.
12222 (Flist_processes): New optional arg `query-only'.
12223 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12224 (conv_lisp_to_sockaddr, set_socket_options)
12225 (network_process_featurep, unwind_request_sigio): New helper functions.
12226 (Fprocess_datagram_address, Fset_process_datagram_address):
12227 (Fset_network_process_options): New lisp functions.
12228 (Fopen_network_stream): Removed. Now defined in simple.el.
12229 (Fmake_network_process): New lisp function. Code is based on previous
12230 Fopen_network_stream, but heavily reworked with new property list based
12231 argument list, support for datagrams, server processes, and local
12232 sockets in addition to old client-only functionality.
12233 (server_accept_connection): New function.
12234 (wait_reading_process_input): Use it to handle incoming connects.
12235 Do not enable input on a new connection if process is stopped.
12236 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
12237 (send_process): Handle datagram sockets.
12238 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12239 network process is indicated by setting command field to t .
12240 (Fprocess_send_eof): No-op if datagram connection.
12241 (Fstatus_notify): Don't read input for a stream server socket or a
12242 stopped network process.
12243 (init_process): Initialize datagram_address array.
12244 (syms_of_process): Intern and staticpro new variables, defsubr new
12245 functions.
12246
12247 2002-03-16 Jason Rumney <jasonr@gnu.org>
12248
12249 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12250 startup case.
12251
12252 2002-03-16 Richard M. Stallman <rms@gnu.org>
12253
12254 * xdisp.c (redisplay_internal, redisplay_windows):
12255 Use list_of_error to call internal_condition_case_1.
12256 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12257 so as to catch all errors with no possibility of debugger redisplay.
12258 (list_of_error): New variable.
12259 (syms_of_xdisp): Init and staticpro it.
12260
12261 * print.c (print_object): Delete `\ ' from printed rep of frame.
12262
12263 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12264
12265 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12266 until its implementation is fixed.
12267
12268 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12269
12270 * xfns.c (png_load): Remove unused variable `gamma_str'.
12271
12272 2002-03-14 Richard M. Stallman <rms@gnu.org>
12273
12274 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12275
12276 2002-03-14 Miles Bader <miles@gnu.org>
12277
12278 * intervals.c (adjust_for_invis_intang): New function.
12279 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12280 work for dealing with invisible+intangible regions. Do so before
12281 and after both forward and backward movements, to handle both
12282 front-sticky and rear-sticky cases.
12283 * textprop.c (text_property_stickiness): Function moved here from
12284 `editfns.c'.
12285 * intervals.h (text_property_stickiness): New declaration.
12286 * editfns.c (char_property_eq): Function removed.
12287 (text_property_stickiness): Function moved to `textprop.c'.
12288
12289 2002-03-13 Jason Rumney <jasonr@gnu.org>
12290
12291 * config.in: Add STRFTIME_NO_POSIX2.
12292
12293 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12294 and %OX when underlying strftime does not.
12295
12296 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12297
12298 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12299 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12300 line) to avoid annoying flicker.
12301 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12302 (XTread_socket): Mark it static.
12303
12304 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12305
12306 2002-03-13 Kim F. Storm <storm@cua.dk>
12307
12308 * puresize.h (BASE_PURESIZE): Increase to 775000.
12309
12310 2002-03-12 Juanma Barranquero <lektu@terra.es>
12311
12312 * editfns.c (syms_of_editfns): Fix typo.
12313
12314 2002-03-12 Gerd Moellmann <gerd@gnu.org>
12315
12316 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12317 Include termopt.h for interrupt_input.
12318
12319 2002-03-11 Andreas Schwab <schwab@suse.de>
12320
12321 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12322
12323 2002-03-11 Gerd Moellmann <gerd@gnu.org>
12324
12325 * xterm.c (note_mouse_movement): Put code for
12326 x_autoselect_window_p in #if 0.
12327
12328 * lread.c (Fload): Don't assume that message_with_string uses the
12329 string it is given like a C string.
12330
12331 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12332
12333 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12334
12335 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12336 x_session_have_connection.
12337 (x_initialize): Add call to x_session_initialize.
12338
12339 * termhooks.h (enum event_kind): Add save_session_event.
12340
12341 * keyboard.c: Add Emacs event save_session_event.
12342
12343 * emacs.c (main): Add call to syms_of_xsmfns.
12344
12345 * lisp.h: Declare syms_of_xsmfns as extern.
12346
12347 * config.in: Add HAVE_X_SM.
12348
12349 * Makefile.in (LIBXT): Add -lSM -lICE
12350 if HAVE_X_SM and not USE_X_TOOLKIT.
12351 (XOBJ): New file xsmfns.c added.
12352
12353 * xsmfns.c: New file for X session management.
12354
12355 2002-03-09 Jason Rumney <jasonr@gnu.org>
12356
12357 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12358 read-only when setting modified time.
12359
12360 2002-03-08 Gerd Moellmann <gerd@gnu.org>
12361
12362 * xdisp.c (move_it_vertically_backward): At the end of the function,
12363 when moving forward by lines, treat terminal frames specially.
12364
12365 * keyboard.c (echo_char): Make sure to add a separator between
12366 keys even if echo_dash hasn't been called.
12367
12368 * xdisp.c: Use new string macros.
12369 (update_echo_area): Pass number of bytes to message3 instead of
12370 number of chars.
12371 (set_message_1): Don't access a string's size_byte directly.
12372 (decode_mode_spec_coding): Use number of bytes of eoltype string
12373 instead number of chars.
12374
12375 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12376
12377 2002-03-08 Juanma Barranquero <lektu@terra.es>
12378
12379 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12380 24-bit.
12381
12382 2002-03-06 Jason Rumney <jasonr@gnu.org>
12383
12384 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12385
12386 2002-03-06 Gerd Moellmann <gerd@gnu.org>
12387
12388 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12389 (cancel_echoing, echo_length, echo_truncate): Changed to
12390 work with new kboard definition.
12391 (echo_now): Use message3_nolog instead of message2_nolog.
12392
12393 * alloc.c (mark_kboards): Mark echo_string.
12394
12395 * keyboard.h (ECHOBUFSIZE): Removed.
12396 (struct kboard): Member echoptr removed, member echobuf renamed
12397 to echo_string.
12398
12399 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12400 message3 instead of message2 to display the message using STRING's
12401 text properties.
12402
12403 2002-03-05 Andreas Schwab <schwab@suse.de>
12404
12405 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12406
12407 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12408
12409 * frame.c (default-frame-alist): Explain that setting it doesn't
12410 affect existing frames.
12411
12412 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12413
12414 * indent.c (skip_invisible): Fix my brain fart.
12415
12416 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12417
12418 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12419
12420 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12421 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12422 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12423 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12424 and variables to use EMACS_INT instead of just int.
12425
12426 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12427
12428 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12429
12430 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12431 environment, pass it down with corrected value.
12432
12433 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12434
12435 * lread.c (read_filtered_event): Do not call start_hourglass
12436 before returning.
12437
12438 2002-03-04 Juanma Barranquero <lektu@terra.es>
12439
12440 * w32term.c (x_display_and_set_cursor): Fix typo.
12441
12442 2002-03-03 Richard M. Stallman <rms@gnu.org>
12443
12444 * fileio.c (Fmake_temp_name): Doc fix.
12445
12446 2002-03-03 Gary Wong <gtw@gnu.org>
12447
12448 * termcap.c [!emacs]: Replace ospeed for building standalone
12449 libtermcap, for binary compatibility.
12450
12451 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12452
12453 2002-03-03 Richard M. Stallman <rms@gnu.org>
12454
12455 * xrdb.c (file_p): Rename arg `path' to `filename'.
12456
12457 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12458 only if it is an integer.
12459
12460 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12461 If png_get_sRGB gives an answer, call png_set_gamma
12462 using the default image gamma value.
12463
12464 * lread.c (read1): When reading from a file, default string to
12465 multibyte only if it has some multibyte characters.
12466
12467 * print.c (print_object): Output multibyte chars 128...255
12468 using \x even if ! print_escape_multibyte.
12469
12470 * xdisp.c (display_mode_element): Move the places where
12471 bytepos, charpos, this, and lisp_string are set.
12472 Use lisp_string to set bytepos.
12473
12474 * xdisp.c (redisplay_internal):
12475 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12476
12477 * xdisp.c (display_mode_element): Merge properties specified with
12478 :propertize onto those that come with the string.
12479
12480 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12481
12482 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12483 automatic-hscrolling. Users changed.
12484 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12485 Users changed.
12486 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12487
12488 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12489
12490 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12491
12492 2002-03-02 Kim F. Storm <storm@cua.dk>
12493
12494 * window.c (Fminibuffer_selected_window): New function.
12495 (syms_of_window): Defsubr it.
12496
12497 2002-03-01 Kim F. Storm <storm@cua.dk>
12498
12499 * window.h (struct window): New member phys_cursor_width.
12500
12501 * window.c (make_window, replace_window): Init phys_cursor_width.
12502
12503 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12504 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12505
12506 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12507 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12508
12509 * lisp.h (GCPRO6): New macro.
12510
12511 * process.c (Fopen_network_stream): Use GCPRO6.
12512
12513 2002-03-01 Kim F. Storm <storm@cua.dk>
12514
12515 * process.c (Qconnect, Qfailed): New variables.
12516 (syms_of_process): Intern and staticpro them.
12517 (Fprocess_status): Document connect and failed return values.
12518 [NON_BLOCKING_CONNECT]: New conditional.
12519 (connect_wait_mask, num_pending_connects): New variables.
12520 (status_message): Convert Qfailed status.
12521 (Fopen_network_stream): Added support for non-blocking connect.
12522 New optional args: filter, sentinel, non_blocking. Doc updated.
12523 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12524 (deactivate_process): Handle pending non-blocking connect.
12525 (wait_reading_process_input): Poll for status of non-blocking
12526 connects. Exec sentinel directly when connect succeeds.
12527 (status_notify): Don't read process output if not yet connected.
12528
12529 2002-02-28 Kim F. Storm <storm@cua.dk>
12530
12531 * window.c: (minibuf_selected_window): Renamed from
12532 Vminibuf_selected_window. Users changed.
12533 (syms_of_window): Staticpro it.
12534
12535 2002-02-26 Kim F. Storm <storm@cua.dk>
12536
12537 The following changes add a new Vminibuf_selected_window variable
12538 which is similar to Vminibuf_scroll_window, but which is only set
12539 on entry to the minibuffer (from a non-minibuffer window):
12540
12541 * window.c: (Vminibuf_selected_window): New variable.
12542 (struct save_window_data): New member minibuf_selected_window.
12543 (Fset_window_configuration): Restore Vminibuf_selected_window.
12544 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12545 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12546 (compare_window_configurations): Compare minibuf_selected_window.
12547
12548 * window.h: (Vminibuf_selected_window): Declare extern.
12549
12550 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12551 entry to minibuffer or on entry from a non-minibuffer window.
12552
12553 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12554 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12555
12556 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12557 instead of Vminibuf_scroll_window when deciding in which window
12558 the region should be highlighted. Consequently, the region remains
12559 highlighteded even when a completion buffer is also displayed.
12560
12561 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12562
12563 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12564
12565 * xselect.c (Qcompound_text_with_extensions): Renamed from
12566 Qcompound_text_no_extensions.
12567 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12568
12569 2002-02-26 Juanma Barranquero <lektu@terra.es>
12570
12571 * w32proc.c (syms_of_ntproc): Doc fix.
12572
12573 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12574
12575 * intervals.h: Include "dispextern.h" unconditionally.
12576
12577 2002-02-24 Jason Rumney <jasonr@gnu.org>
12578
12579 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12580 and disp-table.elc.
12581 (lisp): Add emacs-lisp/backquote.elc.
12582
12583 2002-02-24 Kim F. Storm <storm@cua.dk>
12584
12585 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12586 The validation of the event type was too strict as it didn't
12587 allow string events; buffer names are used in bindings for
12588 menu-bar-select-buffer (see `menu-bar-update-buffers').
12589
12590 2002-02-23 Kim F. Storm <storm@cua.dk>
12591
12592 The following changes rework my patch of 2002-02-06 which
12593 added command remapping by entering the commands directly into
12594 the keymaps. Now, command remapping uses an explicit `remap'
12595 prefix in the keymaps, i.e. [remap COMMAND].
12596
12597 * keymap.c (Qremap, remap_command_vector): New variables.
12598 (is_command_symbol): Removed function.
12599 (Fdefine_key): No longer accept a symbol for KEY.
12600 Added validation of [remap COMMAND] argument for KEY.
12601 The DEF is no longer required to be a symbol when remapping a command.
12602 (Fremap_command): New function to remap command through keymaps.
12603 (Flookup_key): Perform command remapping initiated by
12604 Fremap_command directly for speed.
12605 (Fkey_binding): Use Fremap_command for command remapping.
12606 (where_is_internal): Handle new command remapping representation.
12607 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12608 staticpro them. Defsubr Fremap_command.
12609
12610 * keymap.h (Fremap_command): Declare extern.
12611 (is_command_symbol): Remove extern.
12612
12613 * keyboard.c (command_loop_1): Use Fremap_command for command
12614 remapping; now try command remapping for all symbols.
12615
12616 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12617
12618 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12619
12620 2002-02-23 Jason Rumney <jasonr@gnu.org>
12621
12622 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12623 on the string before encoding it.
12624 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12625 after decoding it.
12626
12627 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12628
12629 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12630
12631 * w32term.c (enter_timestamp): Remove unused static variable to
12632 prevent warning.
12633
12634 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12635
12636 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12637
12638 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12639
12640 * xselect.c (selection_data_to_lisp_data): Fix last change.
12641
12642 2002-02-22 Jason Rumney <jasonr@gnu.org>
12643
12644 * w32term.h (struct w32_output): New member menu_command_in_progress.
12645
12646 * w32menu.c (menubar_selection_callback): Free the menu and
12647 clear the menu_command_in_progress flag.
12648
12649 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12650 (menu_free_timer): New variable.
12651 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12652 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12653 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12654 menu command is in progress.
12655 <WM_COMMAND>: Set the menu_command_in_progress flag.
12656 Kill any menu_free_timer that is running.
12657
12658 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12659 Call ExtTextOutA rather than ExtTextOut.
12660
12661 2002-02-22 Eli Zaretskii <eliz@gnu.org>
12662
12663 * puresize.h (BASE_PURESIZE): Increase to 755000.
12664
12665 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12666
12667 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12668 on the string before encoding it.
12669 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12670 after decoding it.
12671
12672 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12673
12674 Support for ICCCM Extended Segments in X selections:
12675
12676 * xselect.c <Qcompound_text_no_extensions>: New variable.
12677 (syms_of_xselect): Intern and staticpro it.
12678 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12679 selection text.
12680 (lisp_data_to_selection_data): If next-selection-coding-system is
12681 compound-text-no-extensions, set the type of selection to be
12682 compound-text.
12683
12684 * xterm.h (x_encode_text): Update prototype.
12685
12686 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12687 callers changed. If SELECTIONP is non-zero, run the
12688 pre-write-conversion function before encoding the selection text.
12689
12690 2002-02-21 Kim F. Storm <storm@cua.dk>
12691
12692 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12693
12694 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12695 Correct composing of language-change event.
12696
12697 2002-02-20 Kim F. Storm <storm@cua.dk>
12698
12699 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12700 bindings at PT when building menu (the menu is not updated often
12701 enough for this to work reliable).
12702 (tool_bar_items): Likewise.
12703 (current_active_maps): Removed unused (and buggy) function.
12704
12705 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12706
12707 * xfns.c (gif_load): Use correct width and height for GIF images.
12708
12709 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12710
12711 * floatfns.c (Fatan): Accept an optional second arg and call
12712 atan2 if passed 2 args.
12713
12714 2002-02-18 Jason Rumney <jasonr@gnu.org>
12715
12716 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12717
12718 2002-02-17 Jason Rumney <jasonr@gnu.org>
12719
12720 * w32term.c (x_autoselect_window_p): New variable.
12721 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12722 (note_mouse_movement): Use it.
12723
12724 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12725
12726 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12727
12728 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12729 New variables.
12730 (syms_of_w32fns): Intern and staticpro them.
12731 (x_frame_parms) <"fullscreen">: New parameter.
12732 (x_fullscreen_move, x_set_fullscreen): New functions.
12733 (x_set_frame_parameters): Support Qfullscreen.
12734 (x_real_positions): Save x/y_pixels_diff frame params.
12735 (x_figure_window_size): Support full-screen frames.
12736 (Fx_create_frame): Default the fullscreen parameter.
12737
12738 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12739 (x_fullscreen_adjust): New functions.
12740 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12741 fullscreen. Call x_check_fullscreen_move, and set the
12742 want_fullscreen member of output_data.w32
12743 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12744
12745 * w32term.h: New enum for FULLSCREEN_* constants.
12746 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12747 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12748 (x-fullscreen-adjust): New prototype.
12749
12750 2002-02-17 Kim F. Storm <storm@cua.dk>
12751
12752 * frame.c: (Vmouse_highlight): New variable.
12753 (syms_of_frame): DEFVAR_LISP it.
12754
12755 * frame.h: (Vmouse_highlight): Declare extern.
12756
12757 * xterm.h (struct x_display_info): Add mouse_face_hidden.
12758
12759 * xterm.c (disable_mouse_highlight): Removed variable.
12760 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12761 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12762 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12763 and on after keyboard input.
12764 (x_term_init): Initialize mouse_face_hidden.
12765
12766 * msdos.h (struct display_info): Add mouse_face_hidden.
12767
12768 * msdos.c (disable_mouse_highlight): Removed variable.
12769 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12770 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12771 (internal_terminal_init): Initialize mouse_face_hidden.
12772 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12773 and on after keyboard input.
12774
12775 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
12776
12777 * w32term.c (disable_mouse_highlight): Removed variable.
12778 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12779 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12780 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12781 and on after keyboard input.
12782 (w32_initialize_display_info): Initialize mouse_face_hidden.
12783
12784 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
12785
12786 * msdos.c (last_mouse_window): New variable.
12787 (dos_rawgetc): Fix last change--if the mouse is in the same window
12788 as recorded in last_mouse_window, don't select this window.
12789
12790 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
12791
12792 * msdos.c (x_autoselect_window_p): New variable.
12793 (syms_of_msdos): Defvar it.
12794 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12795 which the last mouse movement occured, unless it is already selected.
12796
12797 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12798 New variables.
12799 (syms_of_xdisp): DEVFAR them.
12800 (hscroll_window_tree): Use automatic_hscroll_margin and
12801 Vautomatic_hscroll_step to compute the amount of window scrolling.
12802
12803 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12804
12805 * xterm.c (x-autoselect-window): New variable.
12806 (note_mouse_movement): Use it.
12807
12808 * keyboard.c: Do not include "systime.h" twice.
12809
12810 2002-02-15 Andreas Schwab <schwab@suse.de>
12811
12812 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
12813
12814 * alloc.c (NSTATICS): Increase to 1280.
12815
12816 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
12817
12818 * alloc.c (NSTATICS): Bump to 1026.
12819
12820 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12821 (Vx_super_keysym): New variables.
12822 (syms_of_xterm): DEFVAR_LISP them.
12823 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12824 variables to determine which keys to use for the various modifiers.
12825
12826 2002-02-13 Kim F. Storm <storm@cua.dk>
12827
12828 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12829 (mode_line_in_non_selected_windows): New variable.
12830 (syms_of_window): DEFVAR_BOOL it.
12831
12832 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12833 Use mode_line_in_non_selected_windows.
12834 (mode_line_in_non_selected_windows): Declare extern.
12835 (Vmode_line_in_non_selected_windows): Removed extern.
12836
12837 2002-02-13 Richard M. Stallman <rms@gnu.org>
12838
12839 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12840 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12841 (Fclear_this_command_keys): Doc fixes.
12842
12843 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12844 (update_face_from_frame_parameter): Increment face_change_count
12845 and windows_or_buffers_changed to force redisplay using changed faces.
12846
12847 * xdisp.c (QCpropertize): New variable.
12848 (mode_line_proptrans_alist): New variable.
12849 (display_mode_element): New arg PROPS; all calls changed.
12850 Implement this, for strings.
12851 Handle literal output of strings by sharing the
12852 main-line code for strings, using local var `literal'.
12853 Handle :propertize feature.
12854 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12855 mode_line_proptrans_alist.
12856
12857 2002-02-11 Kim F. Storm <storm@cua.dk>
12858
12859 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12860 (syms_of_window): DEFVAR_LISP it.
12861
12862 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12863 (CURRENT_MODE_LINE_FACE_ID): Use it.
12864 (Vmode_line_in_non_selected_windows): Declare extern.
12865
12866 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12867 to get mode line face.
12868
12869 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
12870
12871 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12872 variables; cus-start.el doesn't need them anymore.
12873
12874 2002-02-09 Kim F. Storm <storm@cua.dk>
12875
12876 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12877 reduction. This fixes a display problem where stray newlines were
12878 inserted in the window (corrected by C-l). Clarified code (IMHO).
12879
12880 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
12881
12882 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
12883
12884 * xdisp.c (display_mode_lines): Fix last change.
12885
12886 2002-02-09 Jason Rumney <jasonr@gnu.org>
12887
12888 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12889 match each other.
12890 (w32_load_system_font): Prevent Cleartype fonts from loading.
12891 (Fx_show_tip): Ensure tip frames are above other topmost windows.
12892
12893 2002-02-09 Kim F. Storm <storm@cua.dk>
12894
12895 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12896 (CURRENT_MODE_LINE_HEIGHT): Use it.
12897 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
12898
12899 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12900 (pos_visible_p, handle_face_prop): Likewise.
12901 (display_mode_lines): Likewise, but for the real selected window.
12902 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
12903
12904 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12905 in non-selected windows.
12906 (realize_basic_faces): Realize it.
12907 (syms_of_term): Intern and staticpro it.
12908
12909 2002-02-08 Kim F. Storm <storm@cua.dk>
12910
12911 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12912 Changed mail addresses to emacs-devel@gnu.org.
12913
12914 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
12915
12916 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12917 ~user, and there's no such user, don't discard everything before ~user.
12918
12919 * floatfns.c (Fround): Doc fix.
12920
12921 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12922
12923 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
12924
12925 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
12926
12927 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
12928
12929 2002-02-07 Kim F. Storm <storm@cua.dk>
12930
12931 * keymap.c (where_is_internal): Only check whether definition is
12932 remapped if it fulfills is_command_symbol.
12933
12934 2002-02-07 Andreas Schwab <schwab@suse.de>
12935
12936 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
12937
12938 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
12939
12940 2002-02-06 Kim F. Storm <storm@cua.dk>
12941
12942 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12943 defining command remapping. Doc updated.
12944 (Flookup_key): Remap command through keymap if KEY is a symbol.
12945 (is_command_symbol): New function.
12946 (Fkey_binding): Use it. New optional argument NO-REMAP.
12947 Doc updated. Callers changed. Perform command remapping via
12948 recursive call unless that arg is non-nil.
12949 (where_is_internal): New argument no_remap. Callers changed.
12950 Call recursively to find original key bindings for a remapped
12951 comand unless that arg is non-nil.
12952 (Fwhere_is_internal): New optional argument NO-REMAP.
12953 Doc updated. Callers changed. Pass arg to where_is_internal.
12954
12955 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12956 (is_command_symbol): Added prototype.
12957
12958 * keyboard.c (Vthis_original_command): New variable.
12959 (syms_of_keyboard): DEFVAR_LISP it.
12960 (command_loop_1): Set it, and perform command remapping.
12961
12962 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12963
12964 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
12965
12966 2002-02-06 Jason Rumney <jasonr@gnu.org>
12967
12968 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
12969
12970 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
12971
12972 * charset.c (get_charset_id): Use if-else instead of ?:.
12973
12974 2002-02-06 Richard M. Stallman <rms@gnu.org>
12975
12976 * filelock.c (S_ISLNK): Define if not defined.
12977
12978 2002-02-03 Richard M. Stallman <rms@gnu.org>
12979
12980 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
12981
12982 * lread.c (read1): Redesign strategy for force_multibyte and
12983 force_singlebyte. Now is_multibyte records whether read_buffer
12984 is multibyte. Encountering any multibyte character makes it so.
12985
12986 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
12987
12988 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12989 with the same sequence, map that sequence to f10 rather than f0.
12990
12991 2002-02-03 Andreas Schwab <schwab@suse.de>
12992
12993 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12994 latter never being defined on GNU/Linux.
12995
12996 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12997
12998 * xfaces.c (realize_default_face): Don't set the weight and slant of
12999 the default face to Qnormal, unless these attributes are unspecified.
13000
13001 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13002
13003 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13004 Call cancel_hourglass unconditionally.
13005
13006 * eval.c (Fsignal): Remove duplicated declaration of
13007 the variable `display_hourglass_p'.
13008
13009 2002-01-31 Richard M. Stallman <rms@gnu.org>
13010
13011 * editfns.c (region_limit): Nicer error message.
13012
13013 * coding.c (decode_composition_emacs_mule):
13014 Give up if NCOMPONENT gets too large to index `component'.
13015
13016 * callint.c (check_mark): New arg to specify clearer error message.
13017 Callers changed.
13018
13019 2002-01-27 Richard M. Stallman <rms@gnu.org>
13020
13021 * minibuf.c (Fcompleting_read): Doc fix.
13022
13023 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13024
13025 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13026 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13027 Fix doc-strings.
13028
13029 2002-01-26 Richard M. Stallman <rms@gnu.org>
13030
13031 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13032
13033 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13034 and scroll_up_aggressively.
13035
13036 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13037
13038 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13039
13040 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13041
13042 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13043 (Fprevious_property_change, Fprevious_single_property_change):
13044 Stay within the narrowed-buffer boundaries.
13045
13046 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13047
13048 * term.c (Ftty_display_color_cells): New function.
13049 (syms_of_term): Defsubr it.
13050 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13051 argument name to DISPLAY. Doc fix.
13052
13053 * dispextern.h: Add prototype for set_tty_color_mode and
13054 tty_setup_colors.
13055
13056 2002-01-24 Jason Rumney <jasonr@gnu.org>
13057
13058 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13059 If region left to draw is not what was expected, mark the frame as
13060 garbaged.
13061
13062 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13063 Combine the regions returned by BeginPaint and GetUpdateRect.
13064
13065 2002-01-23 Jason Rumney <jasonr@gnu.org>
13066
13067 * w32term.c (x_update_window_begin): Only hide caret if
13068 w32_use_visible_system_caret is set.
13069 (x_update_window_end): Only show caret if
13070 w32_use_visible_system_caret is set.
13071 (syms_of_w32term): Handle SystemParametersInfo call failing.
13072
13073 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13074
13075 2002-01-22 Richard M. Stallman <rms@gnu.org>
13076
13077 * unexelf.c (unexec): Define n so as to cause compilation error
13078 for the code where people have often written n instead of nn.
13079
13080 * .gdbinit (hookpost-run): Defined.
13081
13082 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13083
13084 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13085
13086 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13087
13088 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13089 if fullscreen is being set.
13090
13091 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13092
13093 * minibuf.c (Fminibuffer_contents)
13094 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13095 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13096
13097 2002-01-21 Richard M. Stallman <rms@gnu.org>
13098
13099 * window.c (check_frame_size): Fix minimum height calculation.
13100
13101 2002-01-20 Ken Raeburn <raeburn@gnu.org>
13102
13103 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13104 height before comparison.
13105 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13106
13107 2002-01-20 Jason Rumney <jasonr@gnu.org>
13108
13109 * w32term.c (w32_system_caret_width): Remove.
13110 (w32_use_visible_system_caret): New user flag.
13111 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13112 Windows reports a screen reader running.
13113 (x_update_window_begin): Hide the system caret.
13114 (x_update_window_end): Show the system caret.
13115 (x_display_and_set_cursor): Don't draw a cursor when
13116 w32_use_visible_system_caret is set. Do not adjust width.
13117
13118 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13119 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13120 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13121 the user requests it. Use system default width when creating.
13122 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13123
13124 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13125 New window messages.
13126
13127 2002-01-20 Richard M. Stallman <rms@gnu.org>
13128
13129 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13130
13131 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13132
13133 * doprnt.c (doprnt1): Fix typos in error call.
13134
13135 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13136
13137 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13138
13139 2002-01-20 Jason Rumney <jasonr@gnu.org>
13140
13141 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13142 that Windows returns. If a double check fails, try to guess how
13143 ExtTextOut is going to act.
13144
13145 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13146 in place of stricmp.
13147 (w32_list_synthesized_fonts): Removed.
13148 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13149 (struct enumfont_t): New element; list.
13150 (enum_font_cb2): List all style and charset variations of a font.
13151 (Fw32_select_font): New optional argument; include_proportional.
13152 Exclude vertical fonts. Exclude proportional fonts unless
13153 include_proportional is non-nil.
13154 (w32_enable_synthesized_fonts): Change to a boolean.
13155 (Fw32_send_sys_command): Doc fix.
13156
13157 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13158
13159 * dispnew.c (update_frame): Move the variable `tem' to the block
13160 where it is used.
13161
13162 2002-01-19 Jason Rumney <jasonr@gnu.org>
13163
13164 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13165 call to face-set-after-frame-default.
13166
13167 2002-01-18 Richard M. Stallman <rms@gnu.org>
13168
13169 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13170 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13171
13172 2002-01-17 Richard M. Stallman <rms@gnu.org>
13173
13174 * window.c (enlarge_window): When exceeding size of parent,
13175 directly delete all the siblings instead of trying to resize it.
13176
13177 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13178
13179 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13180
13181 2002-01-16 Henrik Enberg <henrik@enberg.org>
13182
13183 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13184
13185 2002-01-16 Kim F. Storm <storm@cua.dk>
13186
13187 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13188 is invisible. This can happen if cursor is on top line of a
13189 window, and we switch to a buffer with a header line.
13190
13191 * w32term.c (x_erase_phys_cursor): Ditto.
13192
13193 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13194
13195 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13196 `dont_resize' only when used.
13197
13198 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13199
13200 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13201
13202 * xdisp.c (display_mode_element): When computing charpos, depend
13203 on multibyteness of elt, not the text in field.
13204
13205 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13206
13207 * buffer.c (Fkill_all_local_variables):
13208 Increment `update_mode_lines' only once.
13209
13210 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13211
13212 * lisp.h (adjust_after_replace_noundo)
13213 (Fupdate_coding_systems_internal): Add prototypes.
13214
13215 * sound.c (Fplay_sound): Initialize header_size also for :data case.
13216
13217 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
13218
13219 Support for the --color command-line argument and tty-color-mode
13220 frame parameter:
13221
13222 * term.c (tty_default_color_capabilities, tty_setup_colors)
13223 (set_tty_color_mode): New functions.
13224 (term_init): Call tty_default_color_capabilities.
13225 (Qtty_color_mode_alist): New variable.
13226 (syms_of_term): Intern and staticpro it.
13227
13228 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13229 frames.
13230 (do_switch_frame): For termcap frames, switch the tty
13231 color mode as specified by the frame's parameters.
13232 (Qtty_color_mode): New variable.
13233 (syms_of_frame): Intern and staticpro it.
13234
13235 * emacs.c (USAGE2): Add the --color option.
13236 (standard_args): Ditto.
13237
13238 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13239
13240 * xterm.h (struct x_output): New members want_fullscreen,
13241 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13242 y_pixels_outer_diff.
13243 New enum for FULLSCREEN_* constants.
13244 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13245 is NULL.
13246 (x_fullscreen_adjust): Add prototype.
13247
13248 * emacs.c (USAGE2): Add the new full-screen arguments.
13249 (standard_args): Ditto.
13250
13251 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13252 New variables.
13253 (syms_of_xfns): Intern and staticpro them.
13254 (x_frame_parms) <"fullscreen">: New parameter.
13255 (x_fullscreen_move, x_set_fullscreen): New functions.
13256 (x_set_frame_parameters): Support for Qfullscreen.
13257 (x_real_positions): More accurate computation of the frame position.
13258 (x_figure_window_size): Support full-screen frames.
13259 (Fx_create_frame): Default the fullscreen parameter.
13260
13261 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13262 (XTread_socket) <Expose>: Call x_check_fullscreen.
13263 <ConfigureNotify>: Don't resize to fullscreen.
13264 Call x_check_fullscreen_move, and set the want_fullscreen member of
13265 output_data.x.
13266
13267 2002-01-13 Jason Rumney <jasonr@gnu.org>
13268
13269 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13270 for mice with more than 3 buttons.
13271
13272 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13273 (w32_read_socket): Handle new "XBUTTON" messages.
13274
13275 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13276 (syms_of_w32fns): DEFVAR_BOOL it.
13277 (w32_wnd_proc): Handle new "XBUTTON" messages.
13278
13279 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13280
13281 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
13282
13283 2002-01-13 Andreas Schwab <schwab@suse.de>
13284
13285 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
13286
13287 2002-01-12 Andreas Schwab <schwab@suse.de>
13288
13289 * .gdbinit (xbuffer): Remove address operator since data is now a
13290 pointer.
13291
13292 2002-01-11 Richard M. Stallman <rms@gnu.org>
13293
13294 * insdel.c (adjust_after_replace_noundo): New function.
13295
13296 * coding.c (code_convert_region): Don't copy old text if undo disabled.
13297
13298 2002-01-09 Jason Rumney <jasonr@gnu.org>
13299
13300 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13301 when checking for multiple frames.
13302
13303 2002-01-08 Richard M. Stallman <rms@gnu.org>
13304
13305 * window.c (delete_window): Rewrite the code for changing the
13306 selected window to handle the case where WINDOW is not a leaf.
13307
13308 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
13309
13310 * process.c (send_process): Set src_multibyte to 1 after the call
13311 top setup_coding_system, not before the call.
13312
13313 2002-01-07 Jason Rumney <jasonr@gnu.org>
13314
13315 * xmenu.c (set_frame_menubar, xmenu_show):
13316 (xdialog_show): Initialize wv->help to Qnil.
13317
13318 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13319 (w32_dialog_show): Initialize wv->help to Qnil.
13320
13321 2002-01-06 Jason Rumney <jasonr@gnu.org>
13322
13323 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
13324
13325 * w32menu.c (w32_menu_display_help): Revert last change.
13326
13327 * xmenu.c (menu_highlight_callback): Revert last change.
13328
13329 2002-01-06 Andreas Schwab <schwab@suse.de>
13330
13331 * insdel.c (make_gap_larger): Make sure buffer size does not
13332 overflow range of int.
13333
13334 2002-01-05 Jason Rumney <jasonr@gnu.org>
13335
13336 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13337 OVERLAPS_P.
13338
13339 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
13340
13341 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13342 to the left or to the right of the pointer, put it against
13343 the left screen edge.
13344 (x_frame_parms): Add missing braces around initializer.
13345
13346 * w32term.c (x_setup_relief_colors): Don't compute an image's
13347 background color if it doesn't have a Pixmap.
13348 (notice_overwritten_cursor): Don't depend on
13349 output_cursor and updated_area. Compare pixel coordinates with
13350 window's cursor pixel coordinates.
13351 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13352 Call notice_overwritten_cursor with new arg list.
13353 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13354 unconditionally.
13355 (x_draw_image_relief): Use predefined macro instead of
13356 constant when the value of `tool_bar_button_relief' is negative.
13357
13358 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
13359
13360 2002-01-04 Richard M. Stallman <rms@gnu.org>
13361
13362 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
13363
13364 2002-01-03 Richard M. Stallman <rms@gnu.org>
13365
13366 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13367 (Fkey_binding): Try the `keymap' property map first.
13368 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13369 minor mode bindings.
13370
13371 2002-01-03 Kim F. Storm <storm@cua.dk>
13372
13373 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
13374
13375 2002-01-02 Richard M. Stallman <rms@gnu.org>
13376
13377 * keyboard.c (read_key_sequence): Handle the keymap property
13378 before minor mode maps.
13379
13380 * editfns.c (Fformat): Update thissize from field_width
13381 based on the actual width, in the string case.
13382
13383 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13384
13385 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13386 when used as truth value to prevent gcc warnings.
13387
13388 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13389 * w32proc.c: Include <config.h>.
13390
13391 2002-01-01 Andreas Schwab <schwab@suse.de>
13392
13393 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13394 not EMACS_INT, to make them compatible with DEFVAR_INT.
13395 * lisp.h (max_specpdl_size): Adjust declaration.
13396
13397 2002-01-01 Richard M. Stallman <rms@gnu.org>
13398
13399 * print.c (print_object): Test print_escape_nonascii only for
13400 unibyte strings.
13401 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13402 when outputting to a multibyte buffer.
13403
13404 2001-12-29 Richard M. Stallman <rms@gnu.org>
13405
13406 * print.c (print_object): In multibyte string, use hex escapes.
13407 Use octal only for unibyte strings.
13408 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
13409
13410 * lread.c (read_escape): New arg BYTEREP for reporting whether
13411 escape forces unibyte or multibyte.
13412 (read1): When reading a string, take note of that info.
13413
13414 2001-12-29 Ken Raeburn <raeburn@gnu.org>
13415
13416 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13417 comparison to test lisp value returned by Fget.
13418
13419 2001-12-29 Richard M. Stallman <rms@gnu.org>
13420
13421 * lisp.h (max_specpdl_size): Add declaration.
13422
13423 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
13424
13425 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13426 Handle modifier bits. Correct typo in error message.
13427
13428 2001-12-28 Richard M. Stallman <rms@gnu.org>
13429
13430 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13431 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13432 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13433 Update calls to Fdefine_abbrev.
13434 (write_abbrev): Update for changed data format.
13435 Don't list "system" abbrevs.
13436 (Fexpand_abbrev): Update use count with new data format.
13437 (describe_abbrev): Update for changed data format.
13438 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
13439
13440 * config.in (HAVE_MBSINIT): Add #undef.
13441
13442 * strftime.c (mbsinit): Define as no-op if not available.
13443
13444 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13445 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
13446
13447 * keymap.c (Flookup_key): Error message if key has wrong data type.
13448 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13449 (exclude_key): New variable.
13450
13451 2001-12-28 Gerd Moellmann <gerd@gnu.org>
13452
13453 * xterm.c (x_setup_relief_colors): Don't compute an image's
13454 background color if it doesn't have a Pixmap.
13455
13456 * xterm.c (notice_overwritten_cursor): Don't depend on
13457 output_cursor and updated_area. Compare pixel coordinates with
13458 window's cursor pixel coordinates.
13459 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13460 Call notice_overwritten_cursor with new arg list.
13461 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13462 unconditionally.
13463
13464 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13465 height of the cursor line to the amount to scroll.
13466
13467 2001-12-27 Richard M. Stallman <rms@gnu.org>
13468
13469 * intervals.c (set_point_both): The position after an invisible,
13470 intangible character is not an acceptable stopping point.
13471
13472 2001-12-27 Ken Raeburn <raeburn@gnu.org>
13473
13474 * window.c (enlarge_window): In new preserve_before code, convert
13475 CURBEG from lisp object to integer before doing arithmetic.
13476
13477 2001-12-27 Richard M. Stallman <rms@gnu.org>
13478
13479 * bytecode.c (Fbyte_code): Undo previous change.
13480
13481 2001-12-26 Kim F. Storm <storm@cua.dk>
13482
13483 * keyboard.c (record_char): Ignore duplicate help-echo events only
13484 separated by mouse-movement. When tracking mouse, only record
13485 first and last mouse-movement event in same window.
13486 Don't record mouse-movement events in keyboard macros.
13487
13488 2001-12-25 Richard M. Stallman <rms@gnu.org>
13489
13490 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13491 (Fenlarge_window): New arg PRESERVE_BEFORE.
13492
13493 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13494 instead of Fstring_as_unibyte.
13495
13496 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13497
13498 The following changes remove mocklisp support:
13499
13500 * mocklisp.h, mocklisp.c: Files removed.
13501
13502 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13503 `Qmocklisp' and `Qmocklisp_arguments'.
13504 Remove prototype of syms_of_mocklisp.
13505
13506 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
13507
13508 * callint.c: Do not include mocklisp.h.
13509 (Fcall_interactively): Do not test for mocklisp case.
13510
13511 * eval.c: Remove variables `Qmocklisp_arguments',
13512 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13513 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13514 Do not test for mocklisp case.
13515 (Fwhile): Remove unused variable `tem'.
13516 (syms_of_eval): Remove variable `moclisp-arguments'.
13517
13518 * data.c (wrong_type_argument): Remove mocklisp case.
13519
13520 * doc.c (Fdocumentation): Remove mocklisp case.
13521
13522 * emacs.c (main): Do not call syms_of_mocklisp.
13523
13524 2001-12-21 Richard M. Stallman <rms@gnu.org>
13525
13526 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13527 to the left or to the right of the pointer, put it against
13528 the left screen edge.
13529
13530 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
13531
13532 * Makefile.in (distclean): Remove .gdbinit if we are building
13533 outside the source tree.
13534
13535 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
13536
13537 * w32.c (emacs_root_dir): New function.
13538
13539 * msdos.c (emacs_root_dir): New function.
13540
13541 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13542 of the current drive as the fallback for default_directory.
13543
13544 * dired.c (file_name_completion): Run the elements of
13545 completion-ignored-extensions through ENCODE_FILE.
13546
13547 * lisp.h (scmp): Remove prototype, since it's now a static
13548 function private to dired.c.
13549
13550 2001-12-18 Richard M. Stallman <rms@gnu.org>
13551
13552 * dired.c (scmp): Function moved from minibuf.c.
13553 Delete multibyte handling--used only on encoded strings.
13554
13555 * minibuf.c (scmp): Function moved to dired.c.
13556
13557 * fns.c (merge): Add QUIT call.
13558
13559 2001-12-18 Dave Love <fx@gnu.org>
13560
13561 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13562 language/georgian.el.
13563
13564 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
13565
13566 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13567 lisp/Makefile.in:DONTCOMPILE.
13568
13569 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13570
13571 * xdisp.c (window_box_height): Do not return negative values.
13572 From Gerd Moellmann <gerd@gnu.org>.
13573
13574 * keyboard.c (head_table): Add missing braces around initializer.
13575
13576 * term.c (keys): Likewise.
13577
13578 * xfns.c (x_frame_parms, visual_classes): Likewise.
13579
13580 2001-12-17 Sam Steingold <sds@gnu.org>
13581
13582 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13583 patch (COMPOSING_P, not COMPOSING).
13584
13585 2001-12-17 Richard M. Stallman <rms@gnu.org>
13586
13587 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
13588
13589 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13590 before calling decode_coding.
13591
13592 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
13593
13594 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13595 instead of only for COMPOSITION_DISABLED.
13596
13597 2001-12-16 Richard M. Stallman <rms@gnu.org>
13598
13599 * alloc.c (pure_alloc): After overflow, allocate just a small block.
13600
13601 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
13602
13603 * buffer.h (struct buffer): New field `display_error_modiff'.
13604 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
13605
13606 * window.c (Frecenter): Clear display_error_modiff field.
13607
13608 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13609 Call redisplay_window, but not if display_error_modiff field says no.
13610 (redisplay_window_error): New function.
13611 (displayed_buffer): New variable.
13612 (redisplay_internal, redisplay_windows): Call the new functions
13613 instead of redisplay_window directly.
13614
13615 2001-12-15 Richard M. Stallman <rms@gnu.org>
13616
13617 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
13618
13619 2001-12-14 Andrew Innes <andrewi@gnu.org>
13620
13621 * makefile.w32-in (EMACSLOADPATH): Define.
13622 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
13623 (bootstrap-temacs): Remove dependency on bootstrap-clean.
13624
13625 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
13626
13627 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13628 parameter have a numeric value all the time.
13629
13630 * w32fns.c (x_report_frame_params): Likewise.
13631
13632 2001-12-12 Richard M. Stallman <rms@gnu.org>
13633
13634 * fileio.c (Fwrite_region): Doc fix.
13635
13636 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13637 (redisplay_internal): Call clear_image_cache only for window terminals.
13638
13639 2001-12-12 Gerd Moellmann <gerd@gnu.org>
13640
13641 * xdisp.c (move_it_vertically_backward): Change heuristic
13642 for the case that we didn't move far enough initially.
13643
13644 * window.c (Frecenter): Simplify computation in the case of window
13645 system frames and ARG < 0; use window_box_height.
13646
13647 2001-12-11 Richard M. Stallman <rms@gnu.org>
13648
13649 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13650 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
13651
13652 2001-12-11 Andrew Innes <andrewi@gnu.org>
13653
13654 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13655 arg is negative.
13656
13657 2001-12-11 Richard M. Stallman <rms@gnu.org>
13658
13659 * m/hp800.h: Split the __hpux conditional into the parts
13660 that are right for GNU/Linux too and the parts that are not.
13661 Use the former if GNU_LINUX.
13662 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
13663
13664 * s/gnu-linux.h (GNU_LINUX): Defined.
13665
13666 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13667
13668 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13669 `new style' [w/`doc:' keyword].
13670
13671 2001-12-10 Jason Rumney <jasonr@gnu.org>
13672
13673 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13674 before using.
13675
13676 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13677
13678 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13679 keyword].
13680
13681 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
13682
13683 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
13684
13685 * s/hpux10.h (srand48): Don't undefine.
13686
13687 2001-12-09 Jason Rumney <jasonr@gnu.org>
13688
13689 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13690 Add comment to explain where the struct came from.
13691 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13692 (add_menu_item): Process pop-up menus first to avoid memory leak.
13693 (add_menu_item, w32_menu_display_help): Use `help' field as
13694 Lisp_Object.
13695 (w32_free_submenu_strings): Only free owner-drawn strings.
13696
13697 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13698
13699 * COPYING: Moved back.
13700
13701 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13702 Add parentheses around && within ||.
13703
13704 * indent.c (compute_motion): Likewise.
13705
13706 * intervals.c (merge_properties_sticky): Likewise.
13707
13708 * coding.c (setup_coding_system, shrink_encoding_region)
13709 (Fdecode_sjis_char): Likewise.
13710
13711 2001-12-07 Andreas Schwab <schwab@suse.de>
13712
13713 * xdisp.c (display_mode_element): Don't read past end of string if
13714 it ends with '%'.
13715
13716 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13717 can hold.
13718
13719 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13720 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13721 type changed to Lisp_Object.
13722 (syms_of_data): DEFVAR_LISP them.
13723
13724 2001-12-07 Richard M. Stallman <rms@gnu.org>
13725
13726 * callproc.c (init_callproc): Set Vdata_directory based on the source
13727 location whenever Emacs was run uninstalled.
13728
13729 2001-12-06 Paul Eggert <eggert@twinsun.com>
13730
13731 * config.in (HAVE_WORKING_VFORK): New #undefs.
13732 * process.c (create_process):
13733 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13734 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13735 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13736 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13737 * m/intel386.h (HAVE_VFORK): Likewise.
13738 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13739 * m/mips.h (HAVE_VFORK): Likewise.
13740 * s/freebsd.h (vfork): Remove #define.
13741 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13742 * s/usg5-4-2.h: Fix comment about vfork.
13743
13744 2001-12-06 Richard M. Stallman <rms@gnu.org>
13745
13746 * s/hpux10.h (random): Add undef.
13747 (HAVE_RANDOM): Define it just once.
13748
13749 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
13750
13751 * eval.c: Undo last change: the standard syntax is not wanted.
13752
13753 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
13754
13755 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13756 scroll bars of the frame before deleting the frame itself. If the
13757 frame has a widget, delete the frame with XtDestroyWidget, and do
13758 not call XDestroyWindow before that.
13759
13760 2001-12-06 Kim F. Storm <storm@cua.dk>
13761
13762 * xfns.c (x_report_frame_params): Return actual fringe widths.
13763
13764 * w32fns.c (x_report_frame_params): Return actual fringe widths.
13765
13766 2001-12-05 Andrew Innes <andrewi@gnu.org>
13767
13768 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13769 excessively large.
13770
13771 * insdel.c (make_gap_larger): New function.
13772 (make_gap_smaller): New function.
13773 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13774 Call make_gap_smaller if arg is negative.
13775
13776 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
13777
13778 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13779 Pass a dummy argument when calling interrupt_signal.
13780 (parse_menu_item): Mark disabled items before checking for empty def.
13781 (read_char_minibuf_menu_prompt): Make safety more visible.
13782 (read_key_sequence): Add a `first_unbound' variable.
13783 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13784 unbound prefix as soon as we can detect it.
13785
13786 * doc.c (Fsnarf_documentation): Add prototype.
13787 (get_doc_string): Handle negative arguments.
13788 (Fdocumentation): Use AREF and ASIZE.
13789 Move the calls to get_doc_string to a single place.
13790 Don't confuse an interactive-spec for a docstring reference.
13791 (Fdocumentation_property): Take advantage of the fact that
13792 get_doc_string now ignores the sign of the docstring position.
13793
13794 * eval.c: Use standard syntax for usage in docstrings.
13795
13796 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13797
13798 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
13799
13800 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13801
13802 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13803 constant when the value of `tool_bar_button_relief' is negative.
13804
13805 2001-12-02 Richard M. Stallman <rms@gnu.org>
13806
13807 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13808 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
13809
13810 * fileio.c (read_non_regular): Delete Fsignal call.
13811
13812 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
13813
13814 * lisp.h (run_hook_list_with_args): Undo last change.
13815
13816 2001-12-01 Gerd Moellmann <gerd@gnu.org>
13817
13818 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
13819
13820 2001-12-01 Jason Rumney <jasonr@gnu.org>
13821
13822 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
13823
13824 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13825 [!WM_MOUSELEAVE]: Define.
13826
13827 * w32menu.c (current_popup_menu, get_menu_item_info):
13828 (set_menu_item_info): New vars.
13829 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13830 (w32_menu_show): Set current_popup_menu.
13831 (add_menu_item): Allocate new strings for owner-drawn menu items
13832 and help strings.
13833 Use owner-draw for disabled menu items again.
13834 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13835 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
13836
13837 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13838 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13839 <WM_EXITMENULOOP>: Free menu strings.
13840 <WM_MOUSELEAVE>: Stop tracking mouse.
13841 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
13842
13843 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13844 and mouse face.
13845
13846 2001-12-01 Kim F. Storm <storm@cua.dk>
13847
13848 The following changes add left-fringe and right-fringe
13849 frame parameters to adjust fringe widths, or remove one or
13850 both fringes.
13851
13852 * frame.h (struct frame): Remove trunc_area_pixel_width and
13853 trunc_area_cols fields.
13854 (Qleft_fringe, Qright_fringe): Declare.
13855 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
13856
13857 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13858 (syms_of_frame): Initialize them.
13859
13860 * window.c (coordinates_in_window): Handle separate left and right
13861 fringe widths.
13862
13863 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13864 and fringe_cols fields.
13865 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13866 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13867 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13868 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13869 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13870 (x_compute_fringe_widths): Add prototype.
13871
13872 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13873 fill fringe evenly with small dashes.
13874 (x_draw_fringe_bitmap): Clear background if necessary. Align and
13875 clip the new ZV bitmap to avoid jitter between rows.
13876 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13877 background. Don't draw fringe bitmaps if fringe width is zero.
13878 (x_compute_fringe_widths): New function.
13879 (x_new_font, x_set_window_size_1): Use it.
13880
13881 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13882 (x_set_frame_parameters): Process `font' parameter before other
13883 parameters as fringe widths depend on it.
13884 (x_set_fringe_width): New function.
13885 (x_figure_window_size): Use x_compute_fringe_widths.
13886 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13887 parameters.
13888
13889 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13890 (EmacsFrameSetCharSize): Ditto.
13891
13892 * w32term.h: Merged changes from xterm.h.
13893 * w32term.c: Merged changes from xterm.c.
13894 * w32fns.c: Merged changes from xfns.c.
13895
13896 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13897
13898 * COPYING: Removed.
13899
13900 2001-11-29 Dave Love <fx@gnu.org>
13901
13902 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13903 extra extra slot.
13904 (detect_coding_mask): Fix call of detect_coding_iso2022.
13905
13906 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13907
13908 * fileio.c (file-name-coding-system)
13909 (default-file-name-coding-system): Doc fix (links to referenced
13910 variables added).
13911
13912 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13913
13914 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13915 Add dummy uses of gcproN variables.
13916
13917 * category.c (describe_category, describe_category_1)
13918 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13919 (syms_of_category): Don't defsubr Sdescribe_categories.
13920
13921 2001-11-28 Richard M. Stallman <rms@gnu.org>
13922
13923 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
13924
13925 * Makefile.in (lispdir): New variable, referring to build dir.
13926 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
13927
13928 2001-11-28 Andrew Innes <andrewi@gnu.org>
13929
13930 * w32menu.c (w32_menu_display_help): Actually add the new argument
13931 OWNER.
13932
13933 2001-11-28 Jason Rumney <jasonr@gnu.org>
13934
13935 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13936 menu items. From David Ponce <dponce@wanadoo.fr>.
13937 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13938 conditionally.
13939 (w32_menu_display_help): New argument OWNER. Rewritten to store a
13940 help event in the owner frame's keyboard buffer.
13941
13942 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13943 (Fx_show_tip): Don't subtract last width from row width.
13944
13945 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13946 (w32_read_socket): Use EQ to compare frames.
13947
13948 2001-11-28 Gerd Moellmann <gerd@gnu.org>
13949
13950 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13951 OVERLAPS_P.
13952
13953 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13954
13955 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13956 `gcpro3' and `gcpro4'.
13957
13958 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
13959
13960 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13961
13962 * ccl.c: Use AREF and ASIZE.
13963
13964 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
13965
13966 * lisp.h (run_hook_list_with_args): Remove.
13967 (LIST_END_P): Fix call to wrong_type_argument.
13968 (make_fixnum_or_float): Use EMACS_INT rather than int.
13969
13970 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
13971
13972 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13973 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
13974
13975 * eval.c: Use AREF and ASIZE.
13976 (Ffetch_bytecode): Add the file name to the error message.
13977
13978 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13979 which match the end of the file-name.
13980 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13981 is not a valid env var, but leave it as is instead.
13982
13983 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13984 Make nil bindings in char-tables transparent.
13985 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
13986
13987 2001-11-26 Richard M. Stallman <rms@gnu.org>
13988
13989 * textprop.c (set_text_properties_1): Allow START, END in either order.
13990 Do nothing if range is empty.
13991
13992 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13993
13994 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13995 (clean): Not here.
13996
13997 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13998
13999 * textprop.c (set_text_properties_1): Clearly mark that the
14000 interval should not be empty.
14001
14002 * intervals.c (graft_intervals_into_buffer):
14003 Don't call set_text_properties_1 on an empty interval.
14004
14005 2001-11-25 Richard M. Stallman <rms@gnu.org>
14006
14007 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14008
14009 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14010 don't lose the data in it.
14011
14012 2001-11-25 Juanma Barranquero <lektu@terra.es>
14013
14014 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14015
14016 * buffer.c (Fkill_buffer): Likewise.
14017
14018 * print.c (temp_output_buffer_setup): Likewise.
14019
14020 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14021
14022 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14023
14024 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14025
14026 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14027 Niemitalo <kon@iki.fi>.
14028
14029 2001-11-25 Jason Rumney <jasonr@gnu.org>
14030
14031 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14032
14033 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14034 (Fx_show_tip): Block input during frame creation.
14035 (Fx_show_tip, Fx_hide_tip): Enable.
14036
14037 2001-11-24 Richard M. Stallman <rms@gnu.org>
14038
14039 * lread.c (Fload): Detect recursive load error for more than 3
14040 nestings of the same file.
14041 (Vrecursive_load_depth_limit): Variable deleted.
14042 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14043
14044 2001-11-24 Jason Rumney <jasonr@gnu.org>
14045
14046 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14047 mouse position if either left or top is not specified.
14048
14049 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14050 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14051 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14052 (my_create_tip_window): Assign tip_window.
14053 (x_create_tip_frame): Use same defaults as X.
14054 (compute_tip_xy): Remove unused variable. Use full screen width.
14055 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14056
14057 * w32term.c (x_after_update_window_line): Doc fix.
14058 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14059 frames.
14060 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14061
14062 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14063 for all Windowed systems.
14064
14065 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14066
14067 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14068 realized, use the initial screen colors to clear the screen.
14069
14070 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14071
14072 * textprop.c (Fset_text_properties): Remove unused variables
14073 `unchanged', `prev_changed', `s' and `len'.
14074
14075 * search.c (Freplace_match): Remove unused variable `inslen'.
14076
14077 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14078
14079 2001-11-22 Jason Rumney <jasonr@gnu.org>
14080
14081 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14082 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14083 (my_create_tip_window): New function.
14084 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14085 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14086
14087 2001-11-20 Jason Rumney <jasonr@gnu.org>
14088
14089 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14090 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14091
14092 * w32fns.c (Vw32_system_coding_system): Remove.
14093 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14094
14095 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14096
14097 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14098 after build_annotations.
14099
14100 * syntax.c (describe_syntax): Add dummy arg.
14101 (describe_syntax_1): Update call to describe_vector.
14102
14103 * category.c (describe_category): Add dummy arg.
14104 (describe_category_1): Update call to describe_vector.
14105
14106 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14107 (describe_command, describe_translation): Add dummy second param.
14108 (describe_map): Call elt_describer with two arguments.
14109 (describe_vector_princ): Add `fun' parameter.
14110 Call it instead of the hardcoded `princ'.
14111 (describe_vector): Add arg `args'.
14112 Pass it as a new second argument to elt_describer.
14113
14114 * keymap.h (describe_vector): Update prototype.
14115
14116 * frame.c: Don't include keymap.h any more.
14117 (keys_of_frame): Remove.
14118
14119 * lisp.h (keys_of_frame): Remove declaration.
14120
14121 * emacs.c (main): Don't call `keys_of_frame' any more.
14122
14123 2001-11-14 Andreas Schwab <schwab@suse.de>
14124
14125 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14126 if defined, 0 otherwise.
14127 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14128 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14129
14130 2001-11-19 Richard M. Stallman <rms@gnu.org>
14131
14132 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14133
14134 2001-11-18 Jason Rumney <jasonr@gnu.org>
14135
14136 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14137 (x_draw_bar_cursor): If the background color of the glyph under
14138 the cursor equals the frame's cursor color, use the glyph's
14139 foreground color for drawing the bar cursor.
14140 (x_after_update_window_line): Clear internal border in different
14141 circumstances.
14142 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14143 (w32_draw_relief_rect): Correct relief by 1 pixel.
14144 (x_set_glyph_string_background_width):
14145 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14146 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14147 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14148 if cursor_in_non_selected_windows is false.
14149 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14150 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14151 Notice if cursor gets overwritten.
14152 (notice_overwritten_cursor): Renamed from
14153 note_overwritten_text_cursor. Rewritten to take glyph widths
14154 into account, and to take X positions as parameters.
14155 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14156 around call to x_draw_glyphs.
14157 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14158 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14159 color to use for image glyph reliefs.
14160 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14161 (glyph_rect): Remove unused variable `area'.
14162
14163 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14164 some items.
14165 (x_set_internal_border_width): Set frame garbaged when window
14166 doesn't exist yet.
14167 (Fx_create_frame): Accept zero tool_bar_button_relief.
14168 (x_clear_image_1, four_corners_best, image_background)
14169 (image_background_transparent): New functions.
14170 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14171 (gs_format): Add `:background' entry.
14172 (lookup_image): Set IMG's background color if specified.
14173 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14174 when appropriate.
14175 (x_clear_image_1): Reset `background_valid' and
14176 `background_transparent_valid' fields.
14177 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14178 calculating it here. Set IMG's background_transparent field.
14179 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14180 (enum png_keyword_index): Add PNG_BACKGROUND.
14181 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14182 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14183 (enum gif_keyword_index): Add GIF_BACKGROUND.
14184 (enum gs_keyword_index): Add GS_BACKGROUND.
14185 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14186 Pre-calculate image background color where necessary.
14187 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14188 Use display info's n_cbits entry for screen depth.
14189 (Fx_show_tip): Remove unused variables `buffer', `top',
14190 `left', `max_width' and `max_height'.
14191
14192 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14193
14194 2001-11-18 Gerd Moellmann <gerd@gnu.org>
14195
14196 * puresize.h (BASE_PURESIZE): Increase to 750000.
14197
14198 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14199
14200 * frame.c (Fframe_live_p): Doc fix.
14201
14202 2001-11-18 Richard M. Stallman <rms@gnu.org>
14203
14204 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14205 (message_dolog_marker3): New static variables hold three markers.
14206 (syms_of_xdisp): Initialize and staticpro them.
14207 (message_dolog): Use message_dolog_marker1..3 instead of
14208 allocating markers each time. Unchain them when done.
14209
14210 2001-11-17 Richard M. Stallman <rms@gnu.org>
14211
14212 * doc.c (Fsnarf_documentation): Doc fix.
14213
14214 2001-11-17 Andreas Schwab <schwab@suse.de>
14215
14216 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
14217
14218 2001-11-17 Richard M. Stallman <rms@gnu.org>
14219
14220 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
14221
14222 2001-11-17 Jason Rumney <jasonr@gnu.org>
14223
14224 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
14225
14226 2001-11-17 Gerd Moellmann <gerd@gnu.org>
14227
14228 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14229 with invalid position.
14230
14231 2001-11-16 Richard M. Stallman <rms@gnu.org>
14232
14233 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
14234
14235 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14236 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14237 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
14238
14239 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
14240
14241 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14242
14243 * fileio.c (build_annotations): Split off the tail.
14244 (build_annotations_2): New fun. Extracted from build_annotations.
14245 (Fwrite_region): Split the call to build_annotations into two
14246 calls to build_annotations and build_annotations_2.
14247
14248 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14249
14250 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14251 clear_waiting_for_input with argument.
14252
14253 * xterm.h (x_update_cursor): Remove duplicated prototype.
14254
14255 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
14256
14257 * xterm.c (waiting_for_input): Remove unnecessary declaration.
14258
14259 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
14260
14261 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14262
14263 * fileio.c (choose_write_coding_system): New fun, extracted
14264 from Fwrite_region.
14265 (Fwrite_region): Use it.
14266
14267 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14268 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14269 (ml_apply, find_handler_clause): Add prototype.
14270
14271 2001-11-16 Eli Zaretskii <eliz@gnu.org>
14272
14273 * config.in: Add #undef HAVE_COFF_H.
14274
14275 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14276 Required for ISC 4.1.
14277
14278 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
14279
14280 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14281 Andrew Wiseman <a.wiseman@btclick.com>.
14282
14283 2001-11-16 Kim F. Storm <storm@cua.dk>
14284
14285 The following changes are made to clean up the various internal
14286 references to the fringes to actually use the term `fringe' for
14287 them. Previously, they were called `flags areas', `bitmap areas',
14288 `left/right side of windows', or implicitly as `flags' or
14289 `bitmaps':
14290
14291 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
14292 Comments fixed. Use renamed symbols.
14293
14294 * dispnew.c: Comment fix. Use renamed symbols.
14295
14296 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14297 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14298 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
14299
14300 * msdos.c: Comment fix.
14301
14302 * w32fns.c: Use renamed symbols.
14303
14304 * w32term.c: Comment fixes. Use renamed symbols.
14305 (fringe_bitmap_type): Renamed from bitmap_type.
14306 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14307 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14308 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14309
14310 * w32term.h: Comment fixes. Use renamed symbols.
14311 (fringes_extra): Renamed from flags_areas_extra.
14312 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14313 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14314 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14315 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14316 (FRAME_X_LEFT_FRINGE_WIDTH):
14317 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14318 (FRAME_X_RIGHT_FRINGE_WIDTH):
14319 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14320
14321 * widget.c: Use renamed symbols.
14322
14323 * window.c: Comment fixes. Use renamed symbols.
14324 (coordinates-in-window-p): Doc fix.
14325
14326 * xdisp.c: Comment fixes. Use renamed symbols.
14327
14328 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
14329
14330 * xfns.c: Use renamed symbols.
14331
14332 * xterm.c: Comment fixes. Use renamed symbols.
14333 (fringe_bitmap_type): Renamed from bitmap_type.
14334 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14335 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14336 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14337
14338 * xterm.h: Comment fixes. Use renamed symbols.
14339 (fringes_extra): Renamed from flags_areas_extra.
14340 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14341 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14342 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14343 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14344 (FRAME_X_LEFT_FRINGE_WIDTH):
14345 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14346 (FRAME_X_RIGHT_FRINGE_WIDTH):
14347 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14348
14349 2001-11-15 Jason Rumney <jasonr@gnu.org>
14350
14351 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14352 work for most menu items. From David Ponce
14353 <david.ponce@wanadoo.fr>.
14354
14355 2001-11-15 Gerd Moellmann <gerd@gnu.org>
14356
14357 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14358 Some x_set_* function expect to be called even if old and new
14359 value are equal.
14360
14361 * xdisp.c (build_desired_tool_bar_string): Accept zero
14362 tool_bar_button_relief.
14363
14364 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14365
14366 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14367
14368 * xterm.c (x_draw_bar_cursor): If the background color of the
14369 glyph under the cursor equals the frame's cursor color, use
14370 the glyph's foreground color for drawing the bar cursor.
14371
14372 * dispnew.c (direct_output_forward_char): Fix character/byte
14373 position comparison.
14374
14375 2001-11-15 Miles Bader <miles@gnu.org>
14376
14377 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14378 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14379 Update arguments to find_field.
14380 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14381 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14382 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14383 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
14384
14385 2001-11-14 Richard M. Stallman <rms@gnu.org>
14386
14387 * editfns.c (Fpropertize): Allow call with 1 arg.
14388
14389 * dispextern.h (image_background, image_background_transparent):
14390 Conditionalize on HAVE_X_WINDOWS.
14391
14392 2001-11-13 Richard M. Stallman <rms@gnu.org>
14393
14394 * print.c (Fprin1_to_string): Doc fix.
14395
14396 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
14397
14398 * floatfns.c (Fceiling, Ffloor): Doc fixes.
14399
14400 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
14401
14402 * fileio.c (Ffile_accessible_directory_p): Doc fix.
14403
14404 * eval.c (syms_of_eval): Doc fix.
14405
14406 * coding.c (syms_of_coding): Doc fix.
14407
14408 * doc.c (Fsnarf_documentation): Doc fix.
14409
14410 * dispnew.c (syms_of_display): Doc fix.
14411
14412 * category.c (Fget_unused_category): Doc fix.
14413
14414 * buffer.c (syms_of_buffer): Doc fixes.
14415
14416 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
14417
14418 * print.c (prin1, print): Doc fix.
14419
14420 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14421
14422 * fontset.h: Remove declarations of variables
14423 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
14424
14425 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14426 `Vclip_large_size_font'.
14427
14428 2001-11-13 Jason Rumney <jasonr@gnu.org>
14429
14430 * w32fns.c: Doc fix.
14431
14432 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14433
14434 * xfaces.c (Fface_attributes_as_vector): Doc fix.
14435
14436 * fns.c: Doc fix.
14437
14438 * emacs.c: Doc fix.
14439
14440 * coding.c: Doc fix.
14441
14442 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14443 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14444 `new style' [w/`doc:' keyword].
14445
14446 2001-11-12 Richard M. Stallman <rms@gnu.org>
14447
14448 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14449 LeaveNotify events. Only FocusIn and FocusOut do that now.
14450 (x_display_and_set_cursor): Do display hollow cursors in active
14451 minibuffer windows when they are not selected.
14452
14453 2001-11-12 Jason Rumney <jasonr@gnu.org>
14454
14455 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14456 * w32term.c: Change doc-string comments to `new style'
14457 [w/`doc:' keyword]. Doc fixes.
14458
14459 * w32fns.c: Don't define max.
14460 (Fx_open_connection): Only execute once.
14461
14462 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14463
14464 * ccl.c: Change macros to use do-while block instead of if-else.
14465 Use braces to follow GNU Coding Standards.
14466
14467 2001-11-11 Richard M. Stallman <rms@gnu.org>
14468
14469 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
14470
14471 * lread.c (read_escape): Use end_of_file_error for reporting eof.
14472
14473 * insdel.c (replace_range): Use adjust_markers_for_replace
14474 instead of adjust_markers_for_delete and adjust_markers_for_insert.
14475
14476 * intervals.h: Declare set_text_properties and set_text_properties_1.
14477
14478 * textprop.c (set_text_properties_1): New subroutine
14479 broken out of set_text_properties.
14480 (set_text_properties): Use set_text_properties_1.
14481
14482 * intervals.c (graft_intervals_into_buffer):
14483 Use set_text_properties_1 to clear out properties.
14484
14485 * search.c (Freplace_match): Use replace_range to insert
14486 and delete. Don't request property inheritance from
14487 surrounding text.
14488
14489 2001-11-10 Jason Rumney <jasonr@gnu.org>
14490
14491 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
14492 vertical fonts. Allow them if face name is explicitly specified.
14493 Do not give up if we find a font that cannot be converted to an xlfd.
14494
14495 2001-11-10 Gerd Moellmann <gerd@gnu.org>
14496
14497 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14498 instead of malloc/free.
14499
14500 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14501
14502 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14503 Coding Standards.
14504 (Finternal_set_lisp_face_attribute): Likewise.
14505
14506 * buffer.c (Fbury_buffer): Likewise.
14507
14508 * indent.c (current_column_1): Remove unused variable `prev_col'.
14509
14510 * coding.c (encode_coding): Use precomputed value of `src'.
14511 (encode_coding): Remove unused variable `src_end'.
14512 (code_convert_region): Remove unused variables `count'.
14513
14514 2001-11-07 Jason Rumney <jasonr@gnu.org>
14515
14516 * w32term.c (x_display_and_set_cursor): Do not move system caret
14517 if cursor_glyph is NULL.
14518
14519 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14520
14521 * keymap.c (access_keymap): Fix compilation error.
14522
14523 2001-11-07 Miles Bader <miles@gnu.org>
14524
14525 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
14526
14527 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14528
14529 * intervals.c (graft_intervals_into_buffer):
14530 Remove #ifdef'd-out code.
14531 (graft_intervals_into_buffer): Remove unused variable `middle'.
14532
14533 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14534 code (eval-current-buffer).
14535 Change doc-string comments to `new style' [w/`doc:' keyword].
14536
14537 2001-11-06 Richard M. Stallman <rms@gnu.org>
14538
14539 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
14540
14541 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
14542
14543 * lread.c (read1): Fix behavior with nested backquoting.
14544
14545 * keyboard.c (make_lispy_event): Check integerness and fix
14546 Lisp_Object/int mixup.
14547
14548 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14549
14550 * fns.c (copy_hash_table): Remove unused variable `v'.
14551
14552 * fontset.c (fontset_font_pattern): Remove unused variable
14553 `family_registry'.
14554
14555 * indent.c (current_column_1): Remove unused variable `prev_col'.
14556
14557 2001-11-05 Richard M. Stallman <rms@gnu.org>
14558
14559 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
14560
14561 * buffer.c (Fkill_buffer): Don't delete auto save file
14562 if buffer is modified.
14563
14564 2001-11-05 Andrew Innes <andrewi@gnu.org>
14565
14566 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14567 CHECK_NUMBER_CDR.
14568
14569 2001-11-05 Richard M. Stallman <rms@gnu.org>
14570
14571 * unexelf.c (unexec): Minor changes; clean up comments.
14572
14573 2001-11-05 Sam Steingold <sds@gnu.org>
14574
14575 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
14576
14577 2001-11-05 Andreas Schwab <schwab@suse.de>
14578
14579 * sound.c (sound_perror): Save errno from being clobbered.
14580
14581 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
14582
14583 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14584 the program image directly.
14585
14586 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14587
14588 * buffer.h (Fbuffer_local_value): Add prototype.
14589
14590 2001-11-04 Richard M. Stallman <rms@gnu.org>
14591
14592 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14593 and CHECK_BUFFER.
14594
14595 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14596 (record_char): Likewise.
14597
14598 * keyboard.c (make_lispy_event): Don't insist a drag event must
14599 move to a different buffer position. Instead, check for moving at
14600 least double_click_fuzz.
14601
14602 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
14603
14604 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
14605
14606 * indent.c (current_column_1, Fmove_to_column): Separate the code
14607 for display-table glyphs from the code for buffer text, to fix
14608 bugs in the former.
14609
14610 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
14611
14612 * buffer.c (Fbuffer_local_value): New function.
14613 (syms_of_buffer): Defsubr it.
14614
14615 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14616 value of `cursor-in-non-selected-windows'.
14617
14618 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14619 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14620 (syms_of_xdisp): Initialize it.
14621
14622 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14623
14624 * xfns.c (Fx_create_frame): Doc fix.
14625
14626 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14627 keyword].
14628
14629 * eval.c (top_level_value, top_level_set): Remove commented and
14630 #ifdef'd-out code.
14631 (Fdefvar): Fix usage in doc-string.
14632
14633 2001-11-03 Richard M. Stallman <rms@gnu.org>
14634
14635 * xfns.c: Include unistd.h, if it exists.
14636
14637 * editfns.c: Move the include of ctype.h after unistd.h.
14638
14639 * gmalloc.c: Test BROKEN_PROTOTYPES.
14640
14641 2001-11-03 Ken Raeburn <raeburn@gnu.org>
14642
14643 * lisp.h (CHECK_STRING_CAR): New macro.
14644 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14645 treating XCAR and XCDR as lvalues.
14646 (openp): Use CHECK_STRING_CAR.
14647 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
14648
14649 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
14650
14651 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14652 (SIGMASKTYPE): Define.
14653
14654 * syssignal.h (sigunblock): Don't define if already defined.
14655
14656 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14657
14658 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14659 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14660 Fix typos in comments.
14661
14662 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14663 and #ifdef'd-out code.
14664 Fix and reindent comments.
14665
14666 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
14667
14668 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14669 argument `i' in macros.
14670
14671 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14672 `i' in macros.
14673
14674 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14675 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14676 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14677 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14678 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14679 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14680 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14681 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14682 in macros.
14683
14684 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14685 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14686 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14687 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14688 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14689 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14690 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14691 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14692 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14693 (remove unused second argument).
14694
14695 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
14696
14697 * syntax.c (describe_syntax): New wrapper.
14698 (Finternal_describe_syntax_value): Rename from describe_syntax.
14699 Don't insert space at front and \n at the end.
14700 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
14701
14702 * regex.c (re_wctype): Try to fix some warnings.
14703 (regcomp, regexec): Don't forget the __restrict.
14704
14705 2001-11-02 Richard M. Stallman <rms@gnu.org>
14706
14707 * textprop.c (Fget_char_property): Doc fix.
14708
14709 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14710
14711 * process.c (Fstart_process): Add usage to doc-string.
14712
14713 * data.c (Fsetq_default): Ditto.
14714
14715 * callint.c (Finteractive): Ditto.
14716
14717 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
14718
14719 * macros.c: Don't include keymap.h any more.
14720
14721 2001-11-01 Richard M. Stallman <rms@gnu.org>
14722
14723 * data.c (Fmake_local_variable): Doc fix.
14724
14725 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14726 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
14727
14728 * keymap.c (Fdescribe_buffer_bindings): Print character property
14729 bindings along with or instead of the buffer local map.
14730 Make the overriding maps override what they should.
14731
14732 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14733
14734 * window.c (grow_mini_window): Fix typo in comment.
14735
14736 2001-11-01 Gerd Moellmann <gerd@gnu.org>
14737
14738 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14739 (XTset_vertical_scroll_bar): Likewise.
14740
14741 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14742 instead of IMAGE_BACKGROUND.
14743
14744 * xfns.c (four_corners_best): Reindent.
14745
14746 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
14747 Handle :box so that it is possible to specify sexprs.
14748
14749 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14750
14751 * s/hpux11.h: New file.
14752
14753 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14754
14755 * emacs.c (USAGE1): Show command line option --no-window-system
14756 instead of --no-windows in usage.
14757 (standard_args): Rename --no-windows to --no-window-system.
14758 (bug_reporting_address): Follow Emacs coding conventions.
14759
14760 * eval.c (Fcommandp): Doc fix.
14761 Change doc-string comments to `new style' [w/`doc:' keyword].
14762
14763 * frame.c (Fframe_live_p): Doc fix.
14764
14765 * buffer.c (selective-display-ellipses): Doc fix.
14766
14767 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14768
14769 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14770
14771 * xfaces.c (realize_x_face): If C is not a single-byte character,
14772 set the face's colors_copied_bitwise_p instead of the defaulted_p
14773 members which have a different meaning.
14774 (free_face_colors): Do nothing for a face whose colors have been
14775 copied bitwise.
14776
14777 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
14778
14779 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14780
14781 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14782 [w/`doc:' keyword].
14783
14784 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14785
14786 * fns.c (require_unwind): Return Lisp_Object.
14787
14788 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14789
14790 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14791 (last-input-char): Revert doc-string to be the same as the
14792 doc-string of `last-input-event'.
14793
14794 * xdisp.c: Fix typos in comments.
14795
14796 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14797
14798 * window.c (grow_mini_window): Handle case that the root
14799 window is already smaller than the nominal mininum height.
14800
14801 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14802
14803 * emacs.c (main): Don't call keys_of_macros any more.
14804
14805 * lisp.h (keys_of_macros): Remove.
14806
14807 * macros.c (keys_of_macros): Remove.
14808
14809 * xfaces.c (Fface_attribute_relative_p): Declare args.
14810
14811 2001-10-30 Jason Rumney <jasonr@gnu.org>
14812
14813 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14814 (enum_font_cb2): Ignore fonts with vertical orientation.
14815
14816 2001-10-30 Richard M. Stallman <rms@gnu.org>
14817
14818 * keyboard.c (Finput_pending_p): Doc fix.
14819
14820 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14821
14822 * xterm.c (x_after_update_window_line): Don't run the code
14823 clearing in borders for rows whose visible height is 0.
14824
14825 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14826 resized_p flag is set. If not set, use the much less flickering
14827 method previously used.
14828
14829 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14830
14831 * frame.h (struct frame) <resized_p>: New member.
14832
14833 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14834 as large as the number of bytes to convert.
14835
14836 * lread.c (to_multibyte): New function.
14837 (read1): Use it.
14838
14839 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14840
14841 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14842
14843 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14844
14845 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
14846 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14847 if the row's fill_line_p is set and drawing the last glyph with
14848 DRAW_IMAGE_{RAISED,SUNKEN}.
14849
14850 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14851
14852 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14853
14854 * xmenu.c: Include coding.h and charset.h.
14855 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14856 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14857 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14858 Explicitly set wv->help. Use `TRUE' rather than `True'.
14859 (menu_help_callback): Use empty_string.
14860
14861 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14862 (Fx_popup_dialog): Explicitly init f.
14863 (w32_menu_display_help): Use empty_string.
14864
14865 2001-10-29 Richard M. Stallman <rms@gnu.org>
14866
14867 * fns.c (Frequire): Detect recursive try to require the same
14868 feature 3 or more levels deep, and get error.
14869 (require_unwind): New subroutine.
14870 (require_nesting_list): New variable.
14871 (syms_of_fns): Init and staticpro it.
14872
14873 * print.c (print_object): Clarify indication of insertion type.
14874
14875 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14876
14877 * coding.c (syms_of_coding): Document that locale-coding-system is
14878 used for decoding input on X.
14879
14880 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14881
14882 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14883
14884 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14885 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14886
14887 2001-10-29 Gerd Moellmann <gerd@gnu.org>
14888
14889 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14890 use NO_CURSOR if cursor_in_non_selected_windows is false.
14891
14892 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14893 the slant attribute if FRAME is t.
14894
14895 * xfns.c (x_set_internal_border_width): Set frame garbaged
14896 when X window doesn't exist yet.
14897
14898 * xterm.c (x_after_update_window_line): Clear internal border
14899 in different circumstances.
14900
14901 * xterm.c (XTread_socket) <KeyPress>: Don't use
14902 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14903 <handa@etl.go.jp>.
14904
14905 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14906
14907 * m/ibms390.h: New file. From Adam Thornton
14908 <athornton@sinenomine.net>.
14909
14910 2001-10-28 Gerd Moellmann <gerd@gnu.org>
14911
14912 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
14913
14914 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14915 a loop counter.
14916
14917 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14918
14919 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
14920
14921 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14922 keyword].
14923 Fix typos in comments.
14924
14925 * emacs.c (bug_reporting_address): New function.
14926 Use it when displaying usage message.
14927
14928 * minibuf.c (read_minibuf): Remove unused external declaration of
14929 variable `Qread_only'.
14930
14931 * keymap.c (access_keymap): Remove unused variable `charset'.
14932
14933 2001-10-28 Miles Bader <miles@gnu.org>
14934
14935 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14936 Remove #ifdef'd-out code.
14937 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14938 (syms_of_xfaces): Initialize them.
14939
14940 2001-10-27 Jason Rumney <jasonr@gnu.org>
14941
14942 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14943 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14944 position using the system caret.
14945
14946 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14947 (w32_system_caret_height, w32_system_caret_x)
14948 (w32_system_caret_y): New variables for tracking system caret.
14949 (w32_initialize): Initialize them.
14950 (x_display_and_set_cursor): Make system caret follow the active cursor.
14951
14952 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14953 New messages types.
14954
14955 * w32term.c (note_mouse_highlight): Clear old help_echo.
14956
14957 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14958
14959 * xterm.c: Fix typo in a comment.
14960
14961 * emacs.c: Fix typos in comments.
14962 Remove unnecessary spaces.
14963 Change doc-string comments to `new style' [w/`doc:' keyword].
14964 (USAGE2): Fix typos in usage string.
14965
14966 * xterm.c: Fix typo in a comment.
14967
14968 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14969 emacs.c.
14970
14971 2001-10-27 Gerd Moellmann <gerd@gnu.org>
14972
14973 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
14974 instead of 1/2 line_height in the heuristic for skipping
14975 farther backward when target_y was not reached.
14976
14977 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14978 Display errno only if non-zero.
14979 (sound_warning): New function.
14980 (vox_configure): Don't treat failing to set sample rate as error.
14981 (various places): Improve error messages.
14982
14983 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14984
14985 * fileio.c (Faccess_file): Run the argument filename through
14986 Fexpand_file_name, before using it.
14987
14988 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14989 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14990
14991 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14992
14993 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14994
14995 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14996 Fix clearing in the case of scroll bars on the right.
14997
14998 2001-10-26 Juanma Barranquero <lektu@terra.es>
14999
15000 * w32gui.h (XImage): Add a dummy typedef.
15001
15002 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15003
15004 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15005
15006 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15007
15008 * frame.c (Fframe_parameter): Fix last change.
15009
15010 * fileio.c: Revert last change (which removed old commented-out
15011 version of expand-file-name). Add a comment that explains why
15012 this old version should not be removed.
15013
15014 2001-10-25 Gerd Moellmann <gerd@gnu.org>
15015
15016 * frame.c (Fframe_parameter): Fix a bug whereby some
15017 ``artificial'' frame parameters, like `minibuffer' were not
15018 obtained by calling Fframe_parameters.
15019
15020 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15021 cursor differently.
15022
15023 * xdisp.c (move_it_vertically_backward): Compute line height
15024 differently. Add heuristic to try to be more compatible to 20.x.
15025
15026 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15027
15028 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15029
15030 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15031 boolean.
15032
15033 2001-10-25 Miles Bader <miles@gnu.org>
15034
15035 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15036 BG is a pointer to a structure, not a structure.
15037 (gif_format, png_format): Add missing commas.
15038
15039 2001-10-24 Richard M. Stallman <rms@gnu.org>
15040
15041 * xfaces.c (Fface_attributes_as_vector): New function.
15042 (syms_of_xfaces): Defsubr it.
15043
15044 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15045
15046 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15047 variable `area'.
15048
15049 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15050
15051 * search.c (scan_newline): Remove unused variable `selective_display'.
15052
15053 2001-10-25 Miles Bader <miles@gnu.org>
15054
15055 * dispextern.h (struct image): Add `background',
15056 `background_valid', and `background_transparent' fields.
15057 (image_background, image_background_transparent): New declarations.
15058 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15059 * xfns.c (image_background, image_background_transparent)
15060 (four_corners_best): New functions.
15061 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15062 (gs_format): Add `:background' entry.
15063 (lookup_image): Set IMG's background color if specified.
15064 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15065 when appropriate.
15066 (x_clear_image_1): Reset `background_valid' and
15067 `background_transparent_valid' fields.
15068 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15069 calculating it here. Set IMG's background_transparent field.
15070 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15071 (enum png_keyword_index): Add PNG_BACKGROUND.
15072 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15073 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15074 (enum gif_keyword_index): Add GIF_BACKGROUND.
15075 (enum gs_keyword_index): Add GS_BACKGROUND.
15076 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15077 Pre-calculate image background color where necessary.
15078 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15079 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15080 color to use for image glyph reliefs.
15081
15082 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15083
15084 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15085 in full-width rows.
15086
15087 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15088 Fix clearing of area not covered by scroll bar.
15089
15090 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15091
15092 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15093 and `real_start'.
15094 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15095 (glyph_rect): Remove unused variable `area'.
15096
15097 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15098
15099 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15100
15101 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15102 (row_containing_pos): Take additional argument DY.
15103 Treat rows ending in middle of char differently.
15104 (display_line): Handle tabs on window systems differently.
15105
15106 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15107 with additional argument.
15108
15109 * dispextern.h (row_containing_pos): Adjust prototype.
15110
15111 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15112 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15113 (try_window_id, try_window_reusing_current_matrix)
15114 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15115 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15116
15117 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15118
15119 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15120 gnuemacs).
15121 (HAVE_BOXES): Fix typo in comment.
15122 (push_menu_pane): Fix typo in comment.
15123
15124 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15125 of `Qwhen'.
15126 (single_display_prop_string_p): Remove unused local declarations
15127 of `Qwhen' and `Qmargin'.
15128 (string_buffer_position): Remove unused variable `around'.
15129 (store_frame_title): Remove unused variable `width'.
15130
15131 * window.c: Don't define max.
15132 (coordinates_in_window): Remove unused variable `uy'.
15133
15134 * widget.c: Don't define max.
15135
15136 * process.c: Don't define max.
15137 (create_process): Remove unused variable `buffer'.
15138
15139 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15140
15141 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15142
15143 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15144
15145 * xfaces.c (Finternal_set_lisp_face_attribute)
15146 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15147 frame is on a windowed display.
15148
15149 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15150
15151 * dispnew.c (sync_window_with_frame_matrix_rows):
15152 Fix handling of windows which aren't full-width, fix handling
15153 of marginal areas.
15154
15155 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15156
15157 2001-10-23 Andreas Schwab <schwab@suse.de>
15158
15159 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15160 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15161
15162 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15163
15164 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15165 REAL_END. Notice if cursor gets overwritten.
15166 (notice_overwritten_cursor): Take X positions as parameters.
15167 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15168 around call to x_draw_glyphs.
15169
15170 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15171
15172 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15173 instead of C) and usage.
15174
15175 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15176 of C) and usage.
15177
15178 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15179 `left', `max_width' and `max_height'.
15180
15181 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15182
15183 * xdisp.c (display_line): For a tab continued to the next line,
15184 set row's ends_in_middle_of_char_p.
15185
15186 2001-10-22 Gerd Moellmann <gerd@gnu.org>
15187
15188 * xdisp.c (display_line): Fix computation of continuation lines
15189 width for TABs.
15190
15191 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15192
15193 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15194 `Qlaplace'.
15195
15196 * fileio.c: Remove unused code.
15197
15198 2001-10-22 Miles Bader <miles@gnu.org>
15199
15200 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15201 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15202 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15203
15204 2001-10-21 Jason Rumney <jasonr@gnu.org>
15205
15206 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15207
15208 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15209
15210 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15211 (Finsert_string): Avoid the multi-line string literals warning.
15212
15213 2001-10-22 Miles Bader <miles@gnu.org>
15214
15215 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15216 (Fdocumentation): Don't use it.
15217 (syms_of_doc): Don't initialize it.
15218
15219 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15220 * print.c (Fwith_output_to_temp_buffer): Likewise.
15221 * window.c (Fsave_window_excursion): Likewise.
15222 * editfns.c (Fsave_excursion, Fsave_current_buffer)
15223 (Fsave_restriction): Likewise.
15224 * eval.c (Frun_hooks, Frun_hook_with_args)
15225 (Frun_hook_with_args_until_failure)
15226 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15227 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15228 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
15229 (Funwind_protect, Fcondition_case): Likewise.
15230 * coding.c (Ffind_operation_coding_system): Likewise.
15231 * keyboard.c (Ftrack_mouse): Likewise.
15232
15233 2001-10-21 Miles Bader <miles@gnu.org>
15234
15235 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
15236 (Fmake_hash_table): Add usage: string to doc string.
15237 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
15238 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
15239 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15240 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15241 (Fml_prefix_argument_loop): Likewise.
15242
15243 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15244
15245 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
15246
15247 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15248 style' [w/`doc:' keyword].
15249
15250 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15251 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15252 comments to `new style' [w/`doc:' keyword].
15253
15254 2001-10-21 Jason Rumney <jasonr@gnu.org>
15255
15256 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15257
15258 * w32term.c (remember_mouse_glyph): New function.
15259 (w32_mouse_position): Use it.
15260 (note_mouse_movement): If the mouse moved off the glyph, remember
15261 its new position.
15262
15263 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15264 (w32_display_info): Add mouse_face_overlay.
15265
15266 * w32term.c (notice_overwritten_cursor): Renamed from
15267 note_overwritten_text_cursor. Rewritten to take glyph widths into
15268 account.
15269 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15270 (fast_find_string_pos): New function.
15271 (fast_find_position): Return the correct vpos. Add parameter
15272 STOP. In the final row, stop before glyphs having STOP as object.
15273 Don't consider glyphs that are not from a buffer.
15274 (fast_find_position) [0]: Add a presumably more correct version
15275 for after 21.1.
15276 (expose_window_tree, expose_frame): Don't compute intersections here.
15277 (expose_window): Do it here instead.
15278 (expose_window_tree, expose_window, expose_line): Return 1 when
15279 overwriting mouse-face.
15280 (expose_window): If W is the window currently being updated, mark
15281 the frame garbaged.
15282 (expose_frame): If mouse-face was overwritten, redo it.
15283 (x_use_underline_position_properties): New variable.
15284 (syms_of_xterm): DEFVAR_BOOL it.
15285 (x_draw_glyph_string): Add comment to use it in future.
15286 (x_draw_glyph_string): Restore clipping after drawing box.
15287 Fix a computation of the underline position.
15288 (w32_get_glyph_string_clip_rect): Minor cleanup.
15289 (x_fill_stretch_glyph_string): Remove an assertion.
15290 (x_produce_glyphs): Don't convert multibyte characters
15291 to unibyte characters in unibyte buffers.
15292 (cursor_in_mouse_face_p): New function.
15293 (x_draw_stretch_glyph_string): Use it to choose a different GC
15294 when drawing a cursor within highlighted text. Don't draw
15295 background again if it has already been drawn.
15296 (x_draw_glyph_string_box): Don't draw a full-width
15297 box just because the glyph row's full_width_p flag is set.
15298 (x_draw_glyphs): Fix computation of rightmost x for
15299 full-width rows.
15300 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15301 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
15302 change bottom shadow accordingly. Some cleanup.
15303 (x_update_window_end): Handle overwritten mouse face
15304 also for tool bar windows.
15305 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15306 DRAW is DRAW_IMAGE_RAISED.
15307 (clear_mouse_face): Return 1 if text with mouse face was
15308 actually redrawn. Make the function static.
15309 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
15310 optimize away highlighting if we pass over that same overlay again.
15311 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15312 to detect a case where we have to highlight a different region
15313 despite not having left the currently highlighted region.
15314 Set mouse_face_overlay in the x_display_info. Avoid changing the
15315 mouse pointer shape when show_mouse_face has already done it, or
15316 there is no need. Handle mouse-face and help-echo in strings.
15317 (glyph_rect): New function.
15318 (w32_mouse_position): Use it to raise the threshold for mouse
15319 movement event generation.
15320 (w32_initialize_display_info): Initialize the x_display_info's
15321 mouse_face_overlay.
15322 (w32_set_vertical_scroll_bar): Don't clear a zero height
15323 or width area.
15324 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15325 a widget to zero height.
15326
15327 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
15328 Protect unibyte strings created by replacing their multibyte
15329 equivalents in menu_items.
15330 (w32_menu_show): Don't overwrite an item's name with its key
15331 description in case the description is a multibyte string.
15332 (single_submenu): Some cleanup.
15333
15334 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15335 (postprocess_image): New function.
15336 (lookup_image): Call it for all image types except PostScript.
15337 (x_kill_gs_process): Call postprocess_image.
15338 (tiff_error_handler, tiff_warning_handler): New functions.
15339 (tiff_load): Install them as handlers.
15340 (x_kill_gs_process): Recognize if someone has cleared the image
15341 cache under us.
15342 (valid_image_p): Protect better against invalid image
15343 specifications. Previous code could signal an error.
15344 (Fx_hide_tip, Fshow_tip): Doc fix.
15345 (Fv_max_tooltip_size): New variable.
15346 (syns_of_xfns): DEFVAR_LISP it.
15347 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
15348 window buffer to *tip* right after creating the frame. Set frame's
15349 window_width. Use a maximum tooltip size specified by
15350 Vx_max_tooltip_size, if that has valid contents.
15351 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15352 Make sure the tooltip is completely visible.
15353 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15354 (Fx_create_frame): Adjust the frame's height for presence
15355 of the tool bar before calling x_figure_window_size.
15356 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15357 when the window gets smaller.
15358 (x_set_foreground_color): Set frame's cursor_pixel.
15359 (x_set_foreground_color, x_set_background_color): Cleaned up.
15360 (x_set_font): Handle case of x_new_fontset returning the same name
15361 as before, although there was a change in fontsets.
15362
15363 2001-10-21 Miles Bader <miles@gnu.org>
15364
15365 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
15366 (Flogxor): Add usage: string to doc string.
15367 * charset.c (Fstring): Likewise.
15368 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15369 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15370
15371 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15372
15373 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15374
15375 * alloc.c: Reindent DEFUNs with doc: keywords.
15376
15377 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15378
15379 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15380 keyword].
15381
15382 See ChangeLog.9 for earlier changes.
15383
15384 ;; Local Variables:
15385 ;; coding: iso-2022-7bit
15386 ;; End:
15387
15388 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
15389 Copying and distribution of this file, with or without modification,
15390 are permitted provided the copyright notice and this notice are preserved.
15391
15392 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4