]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
2
3 * keyboard.c (adjust_point_for_property): Ensure termination.
4
5 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6
7 * keyboard.c (follow_key): Remove dead variable `did_meta'.
8 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
9 duplicated handling of function-key-map and key-translation-map
10 in read_key_sequence.
11 (read_key_sequence): Use them.
12
13 * keyboard.c (adjust_point_for_property): Try harder to move point
14 to the non-sticky end of an invisible property.
15
16 * xdisp.c (single_display_prop_intangible_p): Make `space' display
17 property intangible as well.
18
19 2003-05-10 Andreas Schwab <schwab@suse.de>
20
21 * xmenu.c (single_menu_item): Change last parameter to void* to
22 avoid warning.
23
24 2003-05-09 Richard M. Stallman <rms@gnu.org>
25
26 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
27 Bind Qinhibit_modification_hooks to t so there will be no GC.
28 Rename local `tem' to `save_deactivate_mark'.
29
30 * eval.c (specpdl_ptr): Declare volatile.
31 (unbind_to): Copy the whole binding and decrement specpdl_ptr
32 before doing the work of unbinding it.
33
34 * lisp.h (struct specbinding): Declare elements volatile.
35 (specpdl_ptr): Declare volatile.
36
37 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
38
39 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
40 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
41
42 2003-05-08 Dave Love <fx@gnu.org>
43
44 * coding.c (Vlast_coding_system_used): Doc fix.
45
46 2003-05-07 Jason Rumney <jasonr@gnu.org>
47
48 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
49 when system does not support them.
50
51 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
52
53 * fileio.c (Qwrite_region_annotate_functions): New var.
54 (build_annotations): Use it to process the global part of the hook.
55 (syms_of_fileio): Init and staticpro it.
56
57 * keyboard.c (safe_run_hooks_error): Display a message instead of
58 silently ignoring the error.
59
60 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
61
62 * keyboard.c (input_available_signal): Mark static.
63 (menu_bar_items): Use map_keymap.
64 (menu_bar_one_keymap): Remove.
65 (menu_bar_item): Adjust arglist (for use in map_keymap).
66 Properly hide a second binding when not both are keymaps.
67
68 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
69 (single_keymap_panes): Use it and map_keymap.
70 (single_menu_item): Use skp as well.
71
72 * keymap.h (map_keymap_function_t): New type.
73 (map_keymap): Declare.
74
75 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
76 (map_keymap_call, Fmap_keymap): New functions.
77 (syms_of_keymap): Defsubr map-keymap.
78
79 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
80
81 * gtkutil.c (create_dialog, make_widget_for_menu_item)
82 (make_menu_item, create_menus, xg_update_menu_item): Don't call
83 ..._with_mnemonic functions for menu items.
84
85 2003-05-01 Kenichi Handa <handa@m17n.org>
86
87 * coding.c (coding_system_accept_latin_extra_p): Delete this
88 function.
89 (find_safe_codings): Pay attention to
90 the property tranlsation-table-for-encode of each codings.
91 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
92
93 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
94
95 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
96
97 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
98
99 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
100
101 * lisp.h (CHECK): Wrap args in parenthesis.
102 (specbind): Fix doc: symbol = Qnil is not supported any more.
103
104 * bytecode.c (Fbyte_code) <unwind-protect>:
105 Use Fprogn rather than 0 and Qnil.
106
107 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
108 `double', and `triple' modifiers as well.
109
110 2003-04-30 Richard M. Stallman <rms@gnu.org>
111
112 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
113
114 * alloc.c (abort_on_gc): New variable.
115 (Fgarbage_collect): Abort if abort_on_gc is set.
116
117 * lisp.h (abort_on_gc): Add decl.
118
119 * eval.c (Fsignal): Clear abort_on_gc.
120
121 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
122 Reinit FORMAT_START and END before second scan.
123
124 * xdisp.c (move_it_vertically_backward): Do the final big else
125 even if nlines is 0.
126
127 * xdisp.c (redisplay_internal): Finish the per-frame loop
128 even if redisplay is suspended by input.
129
130 2003-04-24 Andrew Choi <akochoi@shaw.ca>
131
132 * macterm.c (x_list_fonts): Return all fonts that match if
133 maxnames = -1.
134
135 2003-04-25 Kenichi Handa <handa@m17n.org>
136
137 * syntax.c (skip_chars): Fix previous change.
138
139 2003-04-24 Kenichi Handa <handa@m17n.org>
140
141 * syntax.c (skip_chars): Make the code faster by using the common
142 technique of *p, *stop, and *endp.
143
144 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
145
146 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
147 tool_bar_items so GTK tool bar expose callback does not access items
148 being updated.
149
150 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
151
152 * eval.c (Fapply): Undo last change and add a comment about why.
153
154 2003-04-18 Miles Bader <miles@gnu.org>
155
156 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
157 pickier PARSE_MULTIBYTE_SEQ.
158
159 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
160
161 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
162 Use XCDR, XCAR, CONSP.
163 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
164 (Fapply): Remove unnecessary GCPRO.
165
166 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
167
168 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
169
170 * buffer.h: Don't hardcode BEG==1.
171
172 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
173
174 2003-04-16 Richard M. Stallman <rms@gnu.org>
175
176 * xdisp.c (try_window, try_window_reusing_current_matrix):
177 When at end of window, set window_end_pos to Z-ZV.
178
179 * buffer.c (Foverlay_recenter): Doc fix.
180
181 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
182
183 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
184
185 2003-04-14 Andrew Choi <akochoi@shaw.ca>
186
187 * macterm.c (mac_check_for_quit_char): Don't check more often than
188 once a second.
189
190 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
191
192 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
193 specially, so that they can't hide an implicit switch-frame event.
194 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
195 (head_table): Use switch-frame as event_kind for select-window.
196 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
197
198 * editfns.c (Fformat): Lisp_Object/int mixup.
199 (format2): Remove unused var numargs.
200
201 2003-04-11 Kenichi Handa <handa@m17n.org>
202
203 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
204 (Qafter_insert_file_set_coding): New variable.
205 (syms_of_fileio): Initialize and staticpro it. Delete declaration
206 for after-insert-file-adjust-coding-function.
207 (Finsert_file_contents): Call Qafter_insert_file_set_coding
208 instead of Vafter_insert_file_adjust_coding_function.
209
210 2003-04-11 Kenichi Handa <handa@m17n.org>
211
212 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
213
214 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
215 string. Callers changed.
216
217 2003-04-10 Kenichi Handa <handa@m17n.org>
218
219 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
220 (syms_of_fileio): Declare it as a lisp variable.
221 (Finsert_file_contents):
222 Call Vafter_insert_file_adjust_coding_function before calling
223 decode-format.
224
225 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
226
227 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
228 get GtkAdjustment as widget now is a GtkRange.
229
230 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
231 GtkRange to avoid memory leak.
232
233 2003-04-09 Kenichi Handa <handa@m17n.org>
234
235 * xfaces.c (Vface_font_rescale_alist): New variable.
236 (struct font_name): New member rescale_ratio.
237 (font_rescale_ratio): New function.
238 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
239 (better_font_p): On comparing point sized, pay attention to
240 recale_ratio member of fonts.
241 (build_scalable_font_name): Reflect font->rescale_ratio in the
242 font name.
243 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
244
245 * lread.c (read1): Before calling index, check if the 2nd
246 arguemnt is in ASCII range.
247
248 2003-04-08 Richard M. Stallman <rms@gnu.org>
249
250 * fileio.c (Ffile_symlink_p): Doc fix.
251
252 * editfns.c (Fformat): Translate positions of text properties
253 in the format string to apply them to the result.
254
255 * fileio.c (Finsert_file_contents): Doc fix.
256 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
257
258 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
259
260 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
261
262 2003-04-08 Steven Tamm <steventamm@mac.com>
263
264 * mac.c (init_mac_osx_environment): Switch libexec and bin so
265 that self-contained application finds libexec files.
266
267 2003-04-08 Kenichi Handa <handa@m17n.org>
268
269 * coding.c (code_convert_region_unwind):
270 Set Vlast_coding_system_used to the argument.
271 (code_convert_region): If post-read-conversion function changed
272 the value of last-coding-sytem, keep the new value in
273 coding->symbol so that it won't be overridden.
274 (run_pre_post_conversion_on_str): Likewise.
275 (coding_system_accept_latin_extra_p): New function.
276 (find_safe_codings): Pay attention to characters registered in
277 latin-extra-code-table.
278
279 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
280
281 * Makefile.in (md5.o): Add missing dependency info.
282
283 2003-04-06 Richard M. Stallman <rms@gnu.org>
284
285 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
286
287 * marker.c (verify_bytepos): New function.
288
289 * intervals.c (set_intervals_multibyte_1): When becoming
290 multibyte, adjust right and left child sizes to a whole set of
291 characters. If an interval gets zero total-length, delete it.
292 If an interval consists of just its children, delete one of them.
293
294 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
295 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
296
297 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
298 All calls deleted.
299 (lisp_malloc): Do the work here directly.
300
301 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
302
303 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
304 char tables.
305
306 2003-04-04 Kenichi Handa <handa@m17n.org>
307
308 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
309 destructively change "%S" to "%s".
310
311 2003-04-03 Miles Bader <miles@gnu.org>
312
313 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
314 always set.
315
316 2003-04-01 Dave Love <fx@gnu.org>
317
318 * xfns.c (xpm_lookup_color): Grok "opaque".
319
320 2003-03-31 Andrew Choi <akochoi@shaw.ca>
321
322 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
323 parent window ID.
324
325 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
326
327 * macterm.h (struct mac_output): Define x_pixels_diff and
328 y_pixels_diff.
329
330 2003-03-31 Juanma Barranquero <lektu@terra.es>
331
332 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
333 blockinput.h and files included from it.
334
335 2003-03-31 Kim F. Storm <storm@cua.dk>
336
337 The following changes consolidates the common code related to
338 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
339 files into frame.c.
340
341 * frame.c: Include blockinput.h.
342 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
343 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
344 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
345 related vars here.
346 (struct frame_parm_table, frame_parms): New table for describing
347 frame parameters and their associated Q-variable.
348 The order of the parameters corresponds to the sequence of the
349 frame_parm_handlers table in redisplay_interface.
350 (x_fullscreen_move, x_set_frame_parameters)
351 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
352 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
353 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
354 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
355 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
356 Generic functions for processing of frame parameters.
357 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
358 (display_x_get_resource, x_get_resource_string): Functions for
359 generic access to X resources.
360 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
361 (x_default_parameter, Fx_parse_geometry): Functions for generic
362 access to frame parameters.
363 (x_figure_window_size): Generic calculation of frame size.
364 Fixed to add space needed for tool bar. Also setup size_hint_flags.
365 (syms_of_frame): Intern and staticpro frame parameter variables.
366 Defvar_lisp Vx_resource_class and Vx_resource_name here.
367 Defsubr Sx_get_resource and Sx_parse_geometry.
368
369 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
370 parameter related vars defined in frame.c.
371 (EMACS_CLASS): Define here.
372 (enum FULLSCREEN_*): Define here.
373 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
374 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
375 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
376 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
377 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
378 (x_set_visibility, x_set_autoraise, x_set_autolower)
379 (x_set_unsplittable, x_set_vertical_scroll_bars)
380 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
381 (x_figure_window_size): Add prototypes.
382
383 * dispextern.h (frame_parm_handler): New typedef.
384 (struct redisplay_interface): New member frame_parm_handlers.
385 (enum resource_types): Move declaration here.
386 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
387 (x_default_parameter): Add prototypes.
388
389 * window.c: Remove extern decl for frame parameter vars.
390 (change_window_heights): New generic function;
391 replaces x_change_window_heights. All users changed.
392
393 * window.h (change_window_heights): Add prototype.
394
395 * xfaces.c: Remove extern decl for frame parameter vars.
396
397 * xterm.h (EMACS_CLASS): Remove. Use generic define.
398 (struct w32_display_info): Fix type of xrdb member.
399 (enum FULLSCREEN_*): Remove.
400 Remove prototypes for generic functions (in frame.h).
401
402 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
403 parameters now defined in frame.h and frame.c.
404 (Vx_resource_name): Remove. Use generic var.
405 (enum x_frame_parms): Remove (bogus, unused enum).
406 (check_x_display_info): Make non-static (for frame.c).
407 (struct x_frame_parm_table, x_frame_parms): Remove.
408 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
409 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
410 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
411 (x_change_window_heights, x_set_autoraise, x_set_autolower)
412 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
413 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
414 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
415 Remove. Use generic functions instead.
416 (enum resource_types): Remove.
417 (x_set_scroll_bar_default_width): New global function (for frame.c).
418 (Fx_create_frame): Depend on x_figure_window_size to add space for
419 toolbar and setup size_hint_flags.
420 (x_frame_parm_handlers): New table for redisplay_interface.
421 (syms_of_xfns): Don't intern/staticpro removed vars.
422
423 * xterm.c: Remove unnecessary extern declarations.
424 (x_fullscreen_adjust): Remove. Use generic instead.
425 (x_redisplay_interface): Add x_frame_parm_handlers member.
426
427 * w32gui.h (XrmDatabase): New (dummy) typedef.
428
429 * w32term.h (EMACS_CLASS): Remove. Use generic define.
430 (struct w32_display_info): Fix type of xrdb member.
431 (enum FULLSCREEN_*): Remove.
432 (x_fullscreen_adjust): Remove prototype.
433
434 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
435 parameters now defined in frame.h and frame.c.
436 (Vx_resource_name): Remove. Use generic var.
437 (enum x_frame_parms): Remove (bogus, unused enum).
438 (check_x_display_info): Make non-static (for frame.c).
439 (struct x_frame_parm_table, x_frame_parms): Remove.
440 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
441 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
442 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
443 (x_change_window_heights, x_set_autoraise, x_set_autolower)
444 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
445 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
446 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
447 Remove. Use generic functions instead.
448 (enum resource_types): Remove.
449 (x_set_scroll_bar_default_width): New global function (for frame.c).
450 (Fx_create_frame): Depend on x_figure_window_size to add space for
451 toolbar and setup size_hint_flags.
452 (w32_frame_parm_handlers): New table for redisplay_interface.
453 (syms_of_w32fns): Don't intern/staticpro removed vars.
454
455 * w32term.c: Remove unnecessary extern declarations.
456 (x_fullscreen_adjust): Remove. Use generic instead.
457 (x_redisplay_interface): Add w32_frame_parm_handlers member.
458
459 * w32reg.c (x_get_string_resource): Use XrmDatabase.
460
461 * macgui.h (XrmDatabase): New (dummy) typedef.
462
463 * macterm.h (EMACS_CLASS): Remove.
464 (struct mac_display_info): Add xrdb member.
465 (struct mac_output): Add want_fullscreen member.
466
467 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
468 parameters now defined in frame.h and frame.c.
469 (Vx_resource_name): Remove. Use generic var.
470 (check_x_display_info): Make non-static (for frame.c).
471 (struct x_frame_parm_table, x_frame_parms): Remove.
472 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
473 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
474 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
475 (x_change_window_heights, x_set_autoraise, x_set_autolower)
476 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
477 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
478 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
479 Remove. Use generic functions instead.
480 (enum resource_types): Remove.
481 (x_set_scroll_bar_default_width): New global function (for frame.c).
482 (mac_frame_parm_handlers): New table for redisplay_interface.
483 (syms_of_macfns): Don't intern/staticpro removed vars.
484
485 * macterm.c: Remove unnecessary extern declarations.
486 (x_redisplay_interface): Add mac_frame_parm_handlers member.
487
488 * Makefile.in (frame.o): Add dependency on blockinput.h and files
489 included from it (atimer.h and systime.h).
490
491 2003-03-30 Andreas Schwab <schwab@suse.de>
492
493 * xdisp.c (x_insert_glyphs): Fix swapped width and height
494 parameters for shift_glyphs_for_insert.
495
496 * macterm.c (x_redisplay_interface): Add missing entry for
497 draw_vertical_window_border.
498
499 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
500
501 * fileio.c (Fexpand_file_name): In the no-handler case, after
502 expanding, look again for a handler and invoke it. This is needed
503 for filenames like "/foo/../user@host:/bar/../baz" -- the first
504 expansion produces "/user@host:/bar/../baz" which needs to be
505 expanded again for the finame result "/user@host:/baz".
506
507 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
508
509 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
510 of area to be redrawn for better performance.
511
512 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
513
514 * xterm.c (take_vertical_position_into_account): Remove.
515 (xt_action_hook): Call set_vertical_scroll_bar if needed.
516 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
517 (xm_scroll_callback, x_create_toolkit_scroll_bar)
518 (x_set_toolkit_scroll_bar_thumb): Simplify.
519 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
520 (XTread_socket): Remove unused var.
521 (x_make_frame_invisible): Replace goto with else.
522
523 * xdisp.c (set_vertical_scroll_bar): New fun.
524 (redisplay_window): Use it.
525
526 2003-03-26 Richard M. Stallman <rms@gnu.org>
527
528 * xdisp.c (update_tool_bar): Recompute tool bar if
529 update_mode_lines is set. Set w->update_mode_line
530 only if the tool bar contents actually change.
531 (update_menu_bar): Undo previous change.
532
533 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
534
535 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
536 (xg_frame_set_char_size): Calculate scroll bar width before frame
537 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
538 (xg_separator_p): Check for all documented separator types.
539 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
540 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
541
542 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
543 so tool bar gets updated.
544
545 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
546
547 * data.c (store_symval_forwarding): Re-instate part of the code
548 that was deleted with too much enthusiasm.
549
550 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
551
552 * data.c (store_symval_forwarding): Delete special read-only
553 hack for type == -1, since we now use ->constant instead.
554 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
555
556 * buffer.c (overlays_in): Declare static.
557 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
558 `constant' field rather than the variable's `type' field.
559
560 2003-03-24 Andrew Choi <akochoi@shaw.ca>
561
562 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
563
564 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
565
566 * fns.c [MAC_OSX]: Do not redefine vector.
567
568 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
569
570 * macgui.h: Remove definition of No_Cursor.
571
572 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
573
574 * xdisp.c: Define No_Cursor.
575 (x_write_glyphs, notice_overwritten_cursor)
576 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
577 (note_mouse_highlight): Remove Mac-specific code.
578 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
579
580 2003-03-24 John Paul Wallington <jpw@gnu.org>
581
582 * xdisp.c (redisplay_window): If mini window's buffer is not
583 empty, then redisplay it like other windows.
584
585 2003-03-23 Kim F. Storm <storm@cua.dk>
586
587 * w32term.c (w32_draw_window_cursor): Fix last change.
588
589 2003-03-23 Kenichi Handa <handa@m17n.org>
590
591 * alloc.c (make_string_from_bytes, make_specified_string):
592 Add `const' for the arg CONTENTS.
593
594 * lisp.h (make_string_from_bytes, make_specified_string):
595 Prototypes adjusted.
596
597 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
598
599 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
600
601 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
602 (XG_SB_RANGE): New define.
603
604 * gtkutil.c (xg_fixed_handle_expose): New function.
605 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
606 expose events.
607 (xg_update_scrollbar_pos): Take two more arguments, left and width
608 of scroll bar including borders.
609 Clear left and right part outside scroll bar separately as some
610 themes have bars that are not an even number of pixels.
611 Don't set reallocate_redraws, don't call
612 gdk_window_process_all_updates.
613 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
614 so no need to change it. Calculate size and value with XG_SB_RANGE.
615
616 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
617 Pass left and width of scroll bar including borders to
618 xg_update_scrollbar_pos.
619
620 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
621
622 * Makefile.in: Make sure space precedes end-of-line backslashes.
623
624 2003-03-22 Kim F. Storm <storm@cua.dk>
625
626 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
627 Add generic versions here. Remove system specific versions
628 defined elsewhere.
629
630 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
631 Add prototypes.
632
633 * xterm.h (STORE_NATIVE_RECT): New macro.
634
635 2003-03-21 Kim F. Storm <storm@cua.dk>
636
637 * xdisp.c (get_glyph_string_clip_rect):
638 Use FRAME_INTERNAL_BORDER_WIDTH.
639
640 * dispextern.h (struct redisplay_interface): Add active_p
641 argument to draw_window_cursor member. All uses changed.
642
643 2003-03-21 Kim F. Storm <storm@cua.dk>
644
645 The following changes consolidate code related to writing and
646 inserting glyphs, exposing frame, the tool bar, the mouse face,
647 the output cursor, and help echo from xterm.c, w32term.c and
648 macterm.c into xdisp.c. It also generalizes the use of the
649 window_part enum instead of using numeric values throughout.
650
651 * xdisp.c: Consolidate gui-independent code here.
652 Include keymap.h.
653 (Qhelp_echo): Import.
654 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
655 (help_echo_string, help_echo_window, help_echo_object)
656 (previous_help_echo_string, help_echo_pos): Declare here.
657 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
658 (estimate_mode_line_height): Define here. Handle windowing
659 systems directly (without using estimate_mode_line_height_hook).
660 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
661 (update_window_cursor, update_cursor_in_window_tree)
662 (fast_find_position, fast_find_string_pos)
663 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
664 (expose_area, expose_line, expose_overlaps, expose_window)
665 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
666 declared static as they are only used locally in xdisp.c.
667 (draw_glyphs): Rename from x_draw_glyphs and make static.
668 (tool_bar_item_info, notice_overwritten_cursor): Make static.
669 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
670 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
671 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
672 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
673 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
674 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
675 (note_mouse_highlight, x_clear_window_mouse_face)
676 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
677 (x_intersect_rectangles): New generic functions for use by xdisp.c
678 and GUI front-ends.
679 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
680 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
681
682 * dispextern.h (Display_Info): Generic typedef for *_display_info.
683 (NativeRectangle): Generic typedef for rectangle type.
684 (enum window_part): Move here from window.c.
685 (struct redisplay_interface): New members flush_display_optional,
686 define_frame_cursor, clear_frame_area, draw_window_cursor,
687 draw_vertical_window_border, shift_glyphs_for_insert.
688 Rename member clear_mouse_face to clear_window_mouse_face.
689 (estimate_mode_line_height_hook): Remove hook.
690 (auto_raise_tool_bar_buttons_p): Don't declare extern.
691 (tool_bar_item_info): Remove prototype.
692 (help_echo_string, help_echo_window, help_echo_object)
693 (previous_help_echo_string, help_echo_pos)
694 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
695 (x_stretch_cursor_p, output_cursor): Declare extern.
696 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
697 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
698 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
699 (display_and_set_cursor, set_output_cursor, x_cursor_to)
700 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
701 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
702 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
703 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
704 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
705 Add prototypes.
706 (mode_line_string, marginal_area_string): Fix prototypes.
707
708 * window.c (enum window_part): Move to dispextern.h.
709 (coordinates_in_window): Use enum window_part member names
710 instead of numbers to describe return value.
711 (struct check_window_data): Change part member to window_part.
712 (check_window_containing): Return window_part unaltered.
713 (window_from_coordinates): Change part arg from int to enum
714 window_part. Allow part arg to be null. All users changed.
715
716 * window.h (window_from_coordinates): Fix prototype.
717
718 * term.c (estimate_mode_line_height): Move to xdisp.c.
719
720 * keyboard.c (make_lispy_event): Use enum window_part.
721
722 * dispnew.c (mode_line_string, marginal_area_string): Use enum
723 window_part instead of int in arg list. Users changed.
724
725 * xterm.h (No_Cursor): Declare as None for X.
726 (struct mac_output): Replace member cross_cursor by hand_cursor.
727
728 * xterm.c: Remove consolidated defines and code.
729 (BETWEEN): Remove unused macro.
730 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
731 (x_define_frame_cursor, x_clear_frame_area)
732 (x_draw_window_cursor): New X-specific functions for RIF.
733 (x_redisplay_interface): Add new members.
734
735 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
736
737 * w32term.h (struct w32_output): Remove cross_cursor member.
738
739 * w32term.c: Remove consolidated defines and code.
740 (BETWEEN): Remove unused macro.
741 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
742 (w32_define_frame_cursor, w32_clear_frame_area)
743 (w32_draw_window_cursor): New W32-specific functions for RIF.
744 (w32_redisplay_interface): Add new members.
745
746 * w32gui.h (No_Cursor): Define as 0 for W32.
747 (XRectangle): Add X compatible rectangle type.
748 (NativeRectangle): Declare as RECT for W32.
749 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
750
751 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
752
753 * w32console.c: Remove consolidated defines and code.
754
755 * msdos.h (Display_Info): Add generic typedef.
756
757 * msdos.c: Remove consolidated defines and code.
758 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
759
760 * macterm.h (struct mac_output): Replace member cross_cursor by
761 hand_cursor.
762 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
763
764 * macterm.c: Remove consolidated defines and code.
765 (BETWEEN): Remove unused macro.
766 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
767 (mac_define_frame_cursor, mac_clear_frame_area)
768 (mac_draw_window_cursor): New Mac-specific functions for RIF.
769 (x_redisplay_interface): Add new members.
770
771 * macgui.h (No_Cursor): Define as 0 for Mac.
772 (XRectangle): Add X compatible rectangle type.
773 (NativeRectangle): Declare as Rect for Mac.
774 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
775
776 * macfns.c (x_set_mouse_color): Setup hand_cursor.
777 (x_set_cursor_color): Use x_display_and_set_cursor.
778
779 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
780 included from it. Add dependency on keymap.h.
781
782 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
783
784 2003-03-21 Kenichi Handa <handa@m17n.org>
785
786 * fileio.c (Fexpand_file_name): Fix previous change.
787
788 2003-03-19 Kenichi Handa <handa@m17n.org>
789
790 * fileio.c (Ffile_name_directory): Reconstruct file name by
791 make_specified_string.
792 (Ffile_name_nondirectory, Ffile_name_as_directory)
793 (Fdirectory_file_name, Fexpand_file_name)
794 (Fsubstitute_in_file_name): Likewise.
795 (Fread_file_name): Compare decoded homedir with DIR and
796 DEFAULT_FILENAME.
797
798 * alloc.c (make_specified_string): If NCHARS is negative, count
799 the number of characters.
800
801 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
802
803 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
804 all widgets.
805
806 * gtkutil.h: Removed xg_ignore_next_thumb.
807
808 2003-03-18 Kenichi Handa <handa@m17n.org>
809
810 * coding.c (Vchar_coding_system_table): Remove this variable.
811 (Vcoding_system_safe_chars): New variable.
812 (intersection): Remove this function.
813 (find_safe_codings): Don't use Vchar_coding_system_table, but try
814 all codings in SAFE_CODINGS.
815 (Ffind_coding_systems_region_internal): Adjust for the change of
816 find_safe_codings. Get generic coding systems from
817 Vcoding_system_safe_chars.
818 (Fdefine_coding_system_internal): New function.
819 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
820 Initialize and staticpro Vcoding_system_safe_chars.
821
822 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
823
824 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
825 equal old values before updating.
826
827 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
828
829 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
830
831 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
832
833 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
834 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
835 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
836 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
837 (xg_create_scroll_bar): Pass bar to button event callback.
838 (xg_find_top_left_in_fixed): New function.
839 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
840 whole scroll bar area. Get old position with
841 xg_find_top_left_in_fixed, calculate and only clear needed areas.
842 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
843 dragging is in progress. Calculate whole as for Motif.
844 Remove code that saved last values. Call gtk_range functions to
845 set scroll bar sizes.
846
847 * gtkutil.h: Removed xg_ignore_next_thumb.
848
849 2003-03-17 Juanma Barranquero <lektu@terra.es>
850
851 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
852 and files included from it.
853
854 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
855
856 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
857 multiple occurrences of the same keymap under different prefixes.
858 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
859
860 2003-03-16 Jason Rumney <jasonr@gnu.org>
861
862 * w32gui.h: Use HDC for Display.
863
864 * w32term.c (w32_encode_char): Prevent double-byte chars from
865 crashing Emacs.
866
867 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
868 as binary.
869
870 2003-03-16 Juanma Barranquero <lektu@terra.es>
871
872 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
873
874 2003-03-16 Kim F. Storm <storm@cua.dk>
875
876 The following changes consolidate some of the gui-independent
877 parts of the processing and drawing of "glyph strings" from
878 xterm.c, w32term.c, and macterm.c into xdisp.c.
879
880 * dispextern.h (struct glyph): Reduce face_id member from 22 to
881 21 bits (this reduces number of faces from 4M to 2M).
882 Replace W32 specific w32_font_type member (2 bits) by generic
883 font_type member (3 bits) for portability.
884 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
885 (enum draw_glyphs_face): Define here.
886 (struct glyph_string): Define here. Merge W32 and X versions.
887 (struct redisplay_interface): New members per_char_metric,
888 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
889 (VCENTER_BASELINE_OFFSET): Define here.
890 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
891 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
892
893 * xdisp.c: Consolidate gui-independent "glyph string" code here.
894 (dump_glyph_string): Moved here.
895 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
896 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
897 (fill_composite_glyph_string, fill_glyph_string)
898 (fill_image_glyph_string, fill_stretch_glyph_string)
899 (left_overwritten, left_overwriting, right_overwritten)
900 (right_overwriting, get_char_face_and_encoding)
901 (set_glyph_string_background_width, compute_overhangs_and_x)
902 (append_glyph, append_composite_glyph, produce_image_glyph)
903 (take_vertical_position_into_account, append_stretch_glyph)
904 (produce_stretch_glyph): New generic functions (based on X version).
905 Call platform specific functions through rif.
906 (INIT_GLYPH_STRING): New macro, hides W32 details.
907 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
908 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
909 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
910 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
911 (notice_overwritten_cursor):
912 Generic functions exported to platform modules. Users changed.
913
914 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
915 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
916 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
917 New macros for consolidated code.
918
919 * xterm.c: Remove consolidated defines and code.
920 (x_per_char_metric, x_encode_char)
921 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
922 (x_redisplay_interface): Add new members.
923
924 * w32gui.h (Display): Add dummy typedef for consolidation.
925 (XChar2b): Define alias for wchar_t for consolidation.
926 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
927
928 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
929 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
930 New macros for consolidation.
931
932 * w32term.c: Remove consolidated defines and code.
933 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
934 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
935 (w32_per_char_metric): Change font_type arg to int for RIF.
936 (w32_encode_char): Return int according to RIF requirements.
937 (w32_compute_glyph_string_overhangs): Adapt to RIF.
938 (w32_get_glyph_overhangs): New function for RIF. Uses generic
939 x_get_glyph_overhangs.
940 (w32_redisplay_interface): Add new members.
941
942 * macgui.h (XChar2b): Move typedef here for consolidation.
943 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
944
945 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
946 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
947 consolidation.
948
949 * macterm.c: Remove consolidated defines and code.
950 (mac_per_char_metric): New function for RIF.
951 (mac_encode_char): Adapt to new RIF requirements.
952 (mac_compute_glyph_string_overhangs): Adapt for RIF.
953 (x_redisplay_interface): Add new members.
954
955 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
956
957 * keymap.c (Vmenu_events): New var.
958 (syms_of_keymap): Initialize it.
959 (where_is_internal): Check more carefully what is a menu event.
960
961 2003-03-14 Richard M. Stallman <rms@gnu.org>
962
963 * lread.c (read1): After #!, exit loop on eof.
964
965 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
966
967 * gtkutil.h: Add declaration for xg_frame_cleared.
968
969 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
970
971 * gtkutil.c (struct xg_last_sb_pos): New structure.
972 (handle_fixed_child): New function.
973 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
974 and force a redraw on them.
975 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
976 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
977 so we can avoid unneeded redraws.
978 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
979 and force a redraw on the scroll bar.
980 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
981 if xg_last_sb_pos shows the positions are up to date.
982 (xg_frame_cleared): New function.
983
984 2003-03-13 Kenichi Handa <handa@m17n.org>
985
986 * coding.c (Fdetect_coding_region): Fix docstring.
987 (Fdetect_coding_string): Fix docstring.
988
989 2003-03-13 Andreas Schwab <schwab@suse.de>
990
991 * gtkutil.c: Add prototype for create_menus.
992
993 * data.c (long_to_cons): Fix type of top.
994
995 * xselect.c (selection_data_to_lisp_data): Use int instead of
996 long for an integer of size 4.
997
998 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
999 (xg_tool_bar_help_callback): Likewise.
1000
1001 2003-03-12 Andreas Schwab <schwab@suse.de>
1002
1003 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
1004
1005 2003-03-12 Kim F. Storm <storm@cua.dk>
1006
1007 The following changes consolidate the fringe handling from
1008 xterm.c, w32term.c, and macterm.c into xdisp.c.
1009
1010 * xdisp.c: Consolidate fringe handling code here.
1011 (left_bits, right_bits, continued_bits, continuation_bits)
1012 (ov_bits, zv_bits): Define fringe bitmaps.
1013 (fringe_bitmaps): New array holding fringe bitmaps.
1014 (draw_fringe_bitmap): Draw a specific bitmap; call display
1015 specific drawing routine via rif->draw_fringe_bitmap.
1016 (draw_row_fringe_bitmaps): Generic replacement for
1017 x_draw_row_fringe_bitmaps; all callers changed.
1018 (compute_fringe_widths): Generic replacement for
1019 x_compute_fringe_widths; all callers changed.
1020
1021 * dispextern.h (enum fringe_bitmap_type): Define here.
1022 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
1023 (fringe_bitmaps): Declare extern.
1024 (struct redisplay_interface): New member draw_fringe_bitmap.
1025 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
1026
1027 * xterm.c: Remove generic fringe code.
1028 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
1029 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
1030
1031 * w32term.c: Remove generic fringe code.
1032 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
1033 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
1034
1035 * macterm.c: Remove generic fringe code.
1036 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
1037 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
1038
1039 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
1040
1041 * print.c (Fprin1_to_string): Return unibyte string if possible.
1042
1043 2003-03-09 David Kastrup <dak@gnu.org>
1044
1045 * process.c (read_process_output): We have allocated enough space
1046 for readmax and carryover, so actually use the alloted space.
1047
1048 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1049
1050 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
1051 toolkit scrollbar click.
1052
1053 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
1054 for USE_GTK.
1055 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
1056 also.
1057 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
1058 scrollbar and control is pressed, call x_scroll_bar_handle_click.
1059
1060 * gtkutil.h: Declare xg_get_scroll_id_for_window.
1061
1062 * gtkutil.c (xg_get_scroll_id_for_window): New function.
1063 (xg_tool_bar_item_expose_callback): New function.
1064 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
1065 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
1066 on the tool bar widget.
1067 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
1068 to expose on the tool bar item widgets.
1069
1070 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1071
1072 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
1073 struct image* when deciding to update (struct image* may have been
1074 deleted from the image cache).
1075
1076 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
1077 the event isn't for a frame (i.e. for dialogs).
1078
1079 2003-03-07 Kenichi Handa <handa@m17n.org>
1080
1081 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
1082 composition components reaches the limit, terminate composing.
1083 (COMPOSITION_OK): New macro.
1084 (detect_coding_iso2022): Use it if an escape sequence for
1085 composition is found.
1086 (coding_restore_composition): Adjust the number of composition
1087 components if it is not sane.
1088
1089 2003-03-06 Juanma Barranquero <lektu@terra.es>
1090
1091 * w32term.h (struct w32_display_info): Add xrdb member to support
1092 passing resources via -xrm on Windows.
1093
1094 * w32term.c (w32_make_rdb): New function.
1095 (w32_term_init): Use it to initialize xrdb member of w32_display_info
1096 struct. Delete leftover code.
1097
1098 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
1099 for resources passed on the command line.
1100
1101 * w32reg.c (w32_get_rdb_resource): New function.
1102 (x_get_string_resource): Use it, so resources passed with -xrm
1103 supercede the ones in the registry.
1104
1105 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1106
1107 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
1108 instead of x_top_window_to_frame.
1109
1110 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1111
1112 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
1113 when restarting Emacs.
1114
1115 2003-03-03 Richard M. Stallman <rms@gnu.org>
1116
1117 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
1118 to run kill-buffer-query-functions.
1119 (Qkill_buffer_query_functions): New var.
1120 (syms_of_buffer): Init and staticpro it.
1121
1122 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1123
1124 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
1125
1126 2003-02-25 Kim F. Storm <storm@cua.dk>
1127
1128 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
1129 If centering point failed to make whole line visible and vscroll
1130 is non-zero, disable vscroll and try centering point again.
1131
1132 * lread.c (read1): Accept `single space' syntax like (? x).
1133
1134 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1135
1136 * keyboard.c (cancel_hourglass_unwind): Surround with
1137 #ifdef HAVE_X_WINDOWS
1138
1139 2003-02-25 Kenichi Handa <handa@m17n.org>
1140
1141 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
1142 process only when "subprocesses" is defined.
1143
1144 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
1145
1146 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
1147
1148 2003-02-24 Juanma Barranquero <lektu@terra.es>
1149
1150 * callint.c (fix_command): Declare as static void and move before
1151 Fcall_interactively.
1152
1153 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
1154 (syms_of_xdisp): Don't initialize Qwhen.
1155
1156 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1157
1158 * keyboard.c (cancel_hourglass_unwind): New function.
1159 (command_loop_1): Cancel hourglass with unwind-protect.
1160
1161 2003-02-23 Richard M. Stallman <rms@gnu.org>
1162
1163 * callint.c (fix_command): New subroutine, from Fcall_interactively.
1164 Detect (when ... (region-beginning)) etc.
1165 (Fcall_interactively): Call fix_command.
1166 (Qif, Qwhen): New variables.
1167 (syms_of_callint): Init and staticpro them.
1168
1169 * regex.c (print_partial_compiled_pattern): Output to stderr.
1170
1171 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
1172
1173 * dired.c (directory_files_internal): Don't expand directory.
1174 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
1175 instead. From Lars Hansen <larsh@math.ku.dk>.
1176
1177 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
1178
1179 * fns.c (string_to_multibyte): Remove unused var i.
1180 (Flanginfo): Fix int/Lisp_Object mixup.
1181 (void_call2): New fun.
1182 (Fmap_char_table): Use it in place of call2.
1183
1184 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
1185
1186 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
1187
1188 * keymap.c (copy_keymap_1): Make it static.
1189
1190 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
1191
1192 2003-02-22 David Ponce <david@dponce.com>
1193
1194 * lread.c (Fload): Don't check STRING_MULTIBYTE.
1195
1196 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1197
1198 * process.h: Removed subtty field from struct Lisp_Process.
1199
1200 * process.c (create_process): Remove setting of subtty.
1201 (emacs_get_tty_pgrp): New function.
1202 (Fprocess_running_child_p, process_send_signal):
1203 Call emacs_get_tty_pgrp instead of ioctl.
1204 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
1205
1206 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
1207
1208 * keymap.c (Fdefine_key): Doc fix.
1209
1210 2003-02-21 Juanma Barranquero <lektu@terra.es>
1211
1212 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
1213
1214 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
1215 POLLING_PROBLEM_IN_SELECT.
1216
1217 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
1218 Delete #undef of POLLING_PROBLEM_IN_SELECT.
1219
1220 * s/hpux10-20.h: New file.
1221
1222 * process.c (wait_reading_process_input):
1223 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
1224
1225 2003-02-20 Kenichi Handa <handa@m17n.org>
1226
1227 * fontset.c (check_fontset_name): If NAME is nil, return the
1228 default fontset.
1229 (override_font_info): New function.
1230 (Fset_fontset_font): Document that NAME nil means the default fontset.
1231 (Ffontset_info): If FONTSET is not the default fontset, merge
1232 FONTSET onto the copy of the default fontset, and work on that
1233 copy. Document that NAME nil means the default fontset.
1234 (Ffontset_font): Document that NAME nil means the default fontset.
1235
1236 * process.c (setup_process_coding_systems): If the process's
1237 in/out descriptor is -1, do nothing.
1238
1239 2003-02-19 Andreas Schwab <schwab@suse.de>
1240
1241 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
1242 Add prototypes.
1243
1244 2003-02-19 Kenichi Handa <handa@m17n.org>
1245
1246 * xfaces.c (try_alternative_families): Try all scalable fonts if
1247 Vscalable_fonts_allowed is not Qt.
1248
1249 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1250
1251 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
1252
1253 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1254
1255 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
1256 names.
1257
1258 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
1259 (sorted_font_list): Move allocation of struct font_name to
1260 x_face_list_fonts.
1261 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
1262 (Fx_list_fonts): Set maxnames to -1 to get all font names.
1263
1264 2003-02-18 Kim F. Storm <storm@cua.dk>
1265
1266 * lread.c (read1): Fix last change.
1267 "`" is not always special. Allow "?" after a character constant.
1268
1269 2003-02-18 Andrew Choi <akochoi@shaw.ca>
1270
1271 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
1272
1273 2003-02-18 Andreas Schwab <schwab@suse.de>
1274
1275 * window.c (window_scroll_pixel_based): Move outside a
1276 multi-glyph character before setting new window start.
1277
1278 * xdisp.c (in_display_vector_p): New function.
1279 * dispextern.h (in_display_vector_p): Declare.
1280
1281 2003-02-18 Kim F. Storm <storm@cua.dk>
1282
1283 * lread.c (read1): Fix and relax read syntax.
1284 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
1285 Only recognize "," after dotted-pair dot if inside backquote.
1286 Never include "`" or "," (inside backquote) in a symbol.
1287 Allow dotted-pair dot after a character constant.
1288 Allow "`" and "," (inside backquote) after a character constant.
1289
1290 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1291
1292 * gtkutil.c (xg_tool_bar_expose_callback): New function.
1293 (xg_create_tool_bar): Force style of tool bar to be horizontal with
1294 icons. Set name of tool bar to emacs-toolbar.
1295 (update_frame_tool_bar): Connect expose event to
1296 xg_tool_bar_expose_callback.
1297
1298 2003-02-17 Richard M. Stallman <rms@gnu.org>
1299
1300 * keyboard.c (this_command_key_count_reset): New variable.
1301 Initiatize to 0 where this_command_key_count is set.
1302 (read_char): Save and restore this_command_key_count_reset
1303 around input method code.
1304 (read_char): If this_command_key_count_reset, echo reread commands.
1305 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
1306
1307 2003-02-17 Kenichi Handa <handa@m17n.org>
1308
1309 * fns.c (string_to_multibyte): Always return a multibyte string.
1310
1311 2003-02-16 Jason Rumney <jasonr@gnu.org>
1312
1313 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
1314 Negative max_fonts parameter means list all.
1315
1316 2003-02-14 Dave Love <fx@gnu.org>
1317
1318 * fns.c (Flanginfo): Doc fix.
1319
1320 2003-02-13 Kim F. Storm <storm@cua.dk>
1321
1322 * lread.c (read_escape): Interpret \s as a SPACE character, except
1323 for \s-X in a character constant which still is the super modifier.
1324 (read1): Signal an `invalid read syntax' error if a character
1325 constant is immediately followed by a digit or symbol character.
1326
1327 * search.c (Fmatch_data): Doc fix. Explicitly state that
1328 match-data is undefined if last search failed.
1329
1330 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
1331 All uses changed.
1332
1333 2003-02-12 Juanma Barranquero <lektu@terra.es>
1334
1335 * eval.c (Fdefmacro): Fix typo.
1336
1337 2003-02-12 Kim F. Storm <storm@cua.dk>
1338
1339 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
1340 macro is a string, convert meta modifiers in string when copying
1341 the string into a vector.
1342
1343 2003-02-11 Kim F. Storm <storm@cua.dk>
1344
1345 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
1346
1347 2003-02-11 Kenichi Handa <handa@m17n.org>
1348
1349 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
1350
1351 2003-02-10 Kim F. Storm <storm@cua.dk>
1352
1353 * process.c: Doc fixes.
1354 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
1355
1356 2003-02-10 Kenichi Handa <handa@m17n.org>
1357
1358 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
1359
1360 * process.c (QCfilter_multibyte): New variable.
1361 (setup_process_coding_systems): New function.
1362 (Fset_process_buffer, Fset_process_filter):
1363 Call setup_process_coding_systems.
1364 (Fstart_process): Initialize the member `filter_multibyte' of
1365 struct Lisp_Process.
1366 (create_process): Call setup_process_coding_systems.
1367 (Fmake_network_process): New keyward `:filter-multibyte'.
1368 Initialize the member `filter_multibyte' of struct Lisp_Process.
1369 Call setup_process_coding_systems.
1370 (server_accept_connection): Call setup_process_coding_systems.
1371 (read_process_output): If the process has a filter, decide the
1372 multibyteness of a string to given to the filter by
1373 `filter_multibyte' member of the process. If the process doesn't
1374 have a filter and the result of conversion is unibyte, use
1375 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
1376 multibyte form.
1377 (Fset_process_coding_system): Call setup_process_coding_systems.
1378 (Fset_process_filter_multibyte): New function.
1379 (Fprocess_filter_multibyte_p): New function.
1380 (syms_of_process): Intern and staticpro QCfilter_multibyte.
1381 Defsubr Sset_process_filter_multibyte and
1382 Sprocess_filter_multibyte_p.
1383
1384 * process.h (struct Lisp_Process): New member filter_multibyte.
1385
1386 * lisp.h (setup_process_coding_systems): Add prototype.
1387
1388 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
1389 process, update coding systems for the process.
1390
1391 2003-02-09 Kenichi Handa <handa@m17n.org>
1392
1393 * fns.c (string_to_multibyte): New function.
1394 (Fstring_to_multibyte): New function.
1395 (syms_of_fns): Defsubr it.
1396
1397 2003-02-08 Andreas Schwab <schwab@suse.de>
1398
1399 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
1400 instead of the substitution.
1401
1402 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1403
1404 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
1405
1406 * xmenu.c (menu_position_func): Adjust menu popup position so that
1407 the menu is fully visible.
1408
1409 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1410
1411 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
1412 (x_make_frame_invisible, x_wm_set_icon_position):
1413 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
1414
1415 * xfns.c (x_set_name, x_set_title): Ditto.
1416
1417 2003-02-04 Richard M. Stallman <rms@gnu.org>
1418
1419 * keyboard.c (echo_now): Update before_command_echo_length.
1420 (Freset_this_command_lengths): Reset this_command_key_count etc.
1421 immediately rather than arranging to do it later.
1422 (before_command_key_count_1, before_command_echo_length_1)
1423 (before_command_restore_flag): Vars deleted.
1424 (add_command_key): Don't handle before_command_restore_flag.
1425 (read_char, record_menu_key): Don't update before_command_key_count or
1426 before_command_echo_length.
1427 (read_char): Don't handle before_command_restore_flag.
1428
1429 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
1430 in direct-output clauses if it wouldn't be called in the ordinary case.
1431
1432 2003-02-04 Kim F. Storm <storm@cua.dk>
1433
1434 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
1435
1436 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1437
1438 * gtkutil.c (remove_from_container): Copying list is not needed.
1439 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
1440 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
1441 on list returned from gtk_container_get_children to avoid memory leak.
1442
1443 2003-02-01 Jason Rumney <jasonr@gnu.org>
1444
1445 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
1446 local malloc.
1447 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
1448 definitions in xpm.h.
1449 (init_xpm_functions): New function.
1450 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
1451 (init_external_image_libraries): Try to load libXpm.dll.
1452
1453 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
1454 timestamp.
1455
1456 2003-01-31 Dave Love <fx@gnu.org>
1457
1458 * syntax.c (Fskip_chars_forward)
1459 (open-paren-in-column-0-is-defun-start): Doc fix.
1460
1461 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
1462
1463 * fileio.c: Support // at start of name for Cygwin (just added proper
1464 preprocessor tests).
1465
1466 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
1467
1468 * Makefile.in: Use @EXEEXT@ for Cygwin.
1469
1470 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
1471
1472 * s/cygwin.h: Added for Cygwin port.
1473
1474 2003-01-31 Juanma Barranquero <lektu@terra.es>
1475
1476 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
1477 when including gif_lib.h.
1478 (init_gif_functions, init_tiff_functions): New functions.
1479 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
1480 Windows. Disable color table lookups. Call library functions
1481 through pointers determined at runtime.
1482 (init_external_image_libraries): Try to load libungif.dll and
1483 libtiff.dll.
1484
1485 2003-01-31 Kenichi Handa <handa@m17n.org>
1486
1487 * xdisp.c (SKIP_GLYPHS): New macro.
1488 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
1489
1490 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1491
1492 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
1493
1494 2003-01-30 Dave Love <fx@gnu.org>
1495
1496 * alloc.c (Vgc_elapsed, gcs_done): New variables.
1497 (Fgarbage_collect): Use them.
1498 (init_alloc, syms_of_alloc): Set them up.
1499
1500 2003-01-30 Juanma Barranquero <lektu@terra.es>
1501
1502 * w32fns.c (init_external_image_libraries): Add missing operator.
1503
1504 2003-01-29 Jason Rumney <jasonr@gnu.org>
1505
1506 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
1507 an alternative name for jpeg.dll.
1508
1509 2003-01-29 Kenichi Handa <handa@m17n.org>
1510
1511 * xdisp.c (set_cursor_from_row): Pay attention to string display
1512 properties.
1513
1514 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
1515
1516 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
1517 <escape>.
1518 (keycode_to_xkeysym_table): Reformat and add more comments.
1519 (XTread_socket): Drop special case for backspace.
1520
1521 2003-01-28 Andrew Choi <akochoi@shaw.ca>
1522
1523 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
1524 values in old-style RGB specs.
1525
1526 2003-01-27 Juanma Barranquero <lektu@terra.es>
1527
1528 * w32fns.c (init_external_image_libraries): Try alternate names for the
1529 jpeg dll.
1530
1531 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1532
1533 * gtkutil.c (create_dialog, xg_separator_p)
1534 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
1535 before calling strcmp or strlen.
1536
1537 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1538
1539 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
1540 and handle image load failure.
1541
1542 2003-01-26 Jason Rumney <jasonr@gnu.org>
1543
1544 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
1545 New functions.
1546 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
1547 Disable color table lookups. Call jpeg library functions
1548 through pointers determined at runtime.
1549 (init_external_image_libraries): Try to load jpeg.dll.
1550
1551 2003-01-25 Richard M. Stallman <rms@gnu.org>
1552
1553 * lisp.h: Declare format2 instead of format1.
1554
1555 * fileio.c (barf_or_query_if_file_exists):
1556 Call format2 instead of format1.
1557
1558 * editfns.c (format2): New function, replaces format1
1559 but takes exactly two Lisp Objects as format args.
1560
1561 * buffer.c (Fkill_buffer): Call format2 instead of format1.
1562
1563 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1564
1565 * xterm.h: Change to return value of x_dispatch_event to int.
1566
1567 * xterm.c (x_filter_event): New function.
1568 (event_handler_gdk, XTread_socket): Call x_filter_event.
1569 (x_dispatch_event): Change to return value of finish.
1570 (event_handler_gdk): Use return value from x_dispatch_event.
1571
1572 * xfns.c (x_window): Call create_frame_xic for GTK version to
1573 initialize input methods.
1574
1575 * gtkutil.h: Add (void) prototypes.
1576
1577 * gtkutil.c (create_menus): Remove code that puts the help menu to
1578 the right.
1579
1580 2003-01-25 Jason Rumney <jasonr@gnu.org>
1581
1582 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
1583 [HAVE_PNG]: Sync with xfns.c version.
1584 (png_load): Adjust colors for Windows. Use Windows
1585 bitmaps. Disable color table lookups.
1586 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
1587 (init_png_functions): New function.
1588 (png_read_from_memory, png_load): Call png library functions
1589 through pointers determined at runtime.
1590 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
1591 (init_external_image_libraries): New function.
1592 (init_xfns): Call it.
1593
1594 2003-01-24 Andreas Schwab <schwab@suse.de>
1595
1596 * minibuf.c (Fminibuffer_message): Verify type of parameter.
1597
1598 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1599
1600 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
1601 of static initializer.
1602
1603 2003-01-24 Dave Love <fx@gnu.org>
1604
1605 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
1606 architectures.
1607
1608 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
1609 Use __alignof__.
1610
1611 2003-01-24 Kenichi Handa <handa@m17n.org>
1612
1613 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
1614 It it is nonzero, don't pretend that an invisible area doesn't exist.
1615 (command_loop_1): Call adjust_point_for_property with proper
1616 second arg.
1617
1618 2003-01-22 Jason Rumney <jasonr@gnu.org>
1619
1620 Sync changes with xterm.c and xfns.c.
1621
1622 * w32term.c (x_draw_glyph_string_foreground)
1623 (x_draw_composite_glyph_string_foreground): Implement overstriking.
1624
1625 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
1626 phys_cursor's hpos is overwritten. This is still not completely
1627 correct, as it doesn't really make sense to use hpos at all to
1628 get the cursor glyph (as that is relative to the width of the
1629 characters on the line, which may have changed during the update).
1630
1631 * w32term.c (notice_overwritten_cursor): Handle the special case
1632 of the cursor being in the first blank non-text line at the
1633 end of a window.
1634
1635 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
1636 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
1637 Compute from the x position returned by x_draw_glyphs.
1638
1639 (x_display_and_set_cursor): Don't set phys_cursor_width here,
1640 except for NO_CURSOR and system caret, to make phys_cursor_width
1641 contain what its name suggests.
1642 (notice_overwritten_cursor): Consider the cursor image erased if
1643 the output area intersects the cursor image in y-direction.
1644
1645 * w32term.c (note_mode_line_or_margin_highlight): Rename from
1646 note_mode_line_highlight and extend.
1647
1648 * w32term.c (last_window): New variable.
1649 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
1650 (note_mouse_movement): Remove reimplemented code in #if 0.
1651
1652 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
1653 not update_mode_lines, and always set it to 1.
1654
1655 2003-01-21 Jason Rumney <jasonr@gnu.org>
1656
1657 * w32fns.c (IDC_HAND): Define it if system headers don't.
1658
1659 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1660
1661 * w32term.h (struct w32_output): New member hand_cursor.
1662 (WM_EMACS_SETCURSOR): New message definition.
1663
1664 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
1665 function w32_define_cursor.
1666 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
1667 position, change member name output_data.x to output_data.w32 and
1668 add function w32_define_cursor.
1669 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
1670 and change member name output_data.x to output_data.w32.
1671 (w32_initialize_display_info):
1672 Setup dpyinfo->vertical_scroll_bar_cursor.
1673
1674 * w32fns.c (Vx_hand_shape): New variable.
1675 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
1676 WM_EMACS_SETCURSOR.
1677 (x-create-frame): Setup Cursor types.
1678
1679 2003-01-21 David Ponce <david@dponce.com>
1680
1681 * w32term.c (w32_encode_char): For DIM=1 charset, set
1682 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
1683 x_encode_char change by Kenichi Handa <handa@m17n.org> on
1684 2002-09-30.)
1685 (w32_draw_relief_rect): Declare all args.
1686 (w32_define_cursor): New.
1687
1688 * w32fns.c (w32_load_cursor): New function.
1689 (w32_init_class): Use it.
1690 (x_put_x_image): Declare all args.
1691
1692 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
1693
1694 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
1695
1696 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1697
1698 * gtkutil.c: Must include stdio.h before termhooks.h
1699
1700 2003-01-21 Dave Love <fx@gnu.org>
1701
1702 * alloc.c (Fgc_status): Print zombie list.
1703 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
1704 Fix assignment of zombies.
1705 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
1706 Don't take car of non-cons.
1707
1708 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
1709
1710 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
1711
1712 2003-01-20 David Ponce <david@dponce.com>
1713
1714 * w32menu.c (digest_single_submenu): Declare all args.
1715
1716 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
1717 changes in xmenu.c:
1718
1719 (parse_single_submenu): Use individual keymap's prompt
1720 string as pane name, if there is one.
1721 (set_frame_menubar): Save menu_items_n_panes from each call to
1722 parse_single_submenu and use it when calling digest_single_submenu.
1723
1724 2003-01-20 Steven Tamm <steventamm@mac.com>
1725
1726 * macterm.c (XTread_socket): Checks for valid, visible window
1727 before sending a scroll-wheel event.
1728
1729 2003-01-20 Richard M. Stallman <rms@gnu.org>
1730
1731 * xdisp.c (redisplay_window): If mini window's buffer is not
1732 a minibuffer, then redisplay it like other windows.
1733
1734 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1735
1736 * gtkutil.c (xg_create_frame_widgets): Check if there is an
1737 external tool bar before setting tool bar height.
1738
1739 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1740
1741 * xterm.c (handle_one_xevent): Surround popup_activated
1742 with #ifdef:s for non-toolkit version.
1743
1744 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
1745 (gtkutil.o): New file.
1746 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
1747 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
1748
1749 * gtkutil.c: New file for GTK version.
1750
1751 * gtkutil.h: New file for GTK version.
1752
1753 * xterm.h: Add xt_or_gtk_widget.
1754 Include gtk files for USE_GTK.
1755 (struct x_output): Add toolbar_height.
1756 (struct x_output): Add GTK widgets and Gdk size_hints.
1757 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
1758 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
1759 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
1760
1761 * xterm.c: Include gtkutil.h for USE_GTK.
1762 Declare extern void free_frame_menubar for USE_GTK.
1763 (note_mouse_highlight): Check popup_activated for USE_GTK.
1764 (xt_action_hook): Don't compile if USE_GTK.
1765 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
1766 (xg_scroll_callback): New function.
1767 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
1768 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
1769 for USE_GTK.
1770 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
1771 xg_show_scroll_bar for USE_GTK.
1772 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
1773 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
1774 (event_handler_gdk): New function for USE_GTK.
1775 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
1776 (handle_one_xevent): Make sure widget is mapped before
1777 calling x_real_positions for USE_GTK.
1778 (XTread_socket): Add GTK event loop for USE_GTK.
1779 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
1780 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
1781 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
1782 (x_iconify_frame): Add code for USE_GTK.
1783 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
1784 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
1785 is in gtkutil.c.
1786 (x_term_init): Add initialization for GTK.
1787 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
1788
1789 * xmenu.c: Include gtkutil.h for USE_GTK.
1790 (Fx_popup_menu): Use current position if x and y is NIL.
1791 (single_menu_item, single_menu_item, Fx_popup_dialog):
1792 Check for USE_GTK.
1793 (popup_widget_loop): New function for USE_GTK.
1794 (x_activate_menubar): Add code for USE_GTK.
1795 (popup_activate_callback, popup_deactivate_callback)
1796 (menu_highlight_callback, menubar_selection_callback):
1797 Add USE_GTK versions.
1798 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
1799 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
1800 (free_frame_menubar): Only compile if not USE_GTK. GTK version
1801 is in gtkutil.c.
1802 (popup_selection_callback): New version for USE_GTK.
1803 (create_and_show_popup_menu): New fuction, one USE_GTK version and
1804 one USE_X_TOOLKIT version.
1805 (xmenu_show): Call create_and_show_popup_menu.
1806 (dialog_selection_callback): New version for USE_GTK.
1807 (create_and_show_dialog): New fuction, one USE_GTK version and
1808 one USE_X_TOOLKIT version.
1809 (xdialog_show): Call create_and_show_dialog.
1810
1811 * xfns.c: Include gtkutil for USE_GTK.
1812 (x_window_to_frame, x_any_window_to_frame)
1813 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1814 (x_top_window_to_frame): Add code for USE_GTK.
1815 (x_set_background_color): Call xg_set_background_color for GTK.
1816 (x_set_menu_bar_lines): Check for USE_GTK.
1817 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
1818 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
1819 (x_window): Call xg_create_frame_widgets for USE_GTK.
1820 (Fx_create_frame): Check for USE_GTK
1821 (Fx_file_dialog): New implementation for USE_GTK.
1822
1823 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
1824 (update_menu_bar): Add check for USE_GTK.
1825 (update_tool_bar): Add check for USE_GTK and external tool bar.
1826 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
1827 (redisplay_internal): Add check for USE_GTK and popup_activated.
1828 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
1829 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
1830 (display_menu_bar): Add check for USE_GTK
1831
1832 * lisp.h: Declare Vx_resource_name extern.
1833
1834 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
1835 for USE_GTK.
1836 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
1837
1838 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
1839 (FRAME_EXTERNAL_TOOL_BAR): New macro.
1840 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
1841
1842 * fileio.c (Fread_file_name): Add check for USE_GTK.
1843
1844 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
1845 Add check for USE_GTK.
1846
1847 * config.in: Added HAVE_GTK
1848
1849 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
1850
1851 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
1852
1853 * charset.h (Funibyte_char_to_multibyte): Export.
1854
1855 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1856
1857 * xmenu.c (mouse_position_for_popup): New function.
1858 (Fx_popup_menu): Call mouse_position_for_popup for X and
1859 mouse_position_hook for others.
1860
1861 2003-01-17 Kim F. Storm <storm@cua.dk>
1862
1863 * editfns.c (Finsert): Mention `string-make-multibyte' and
1864 `string-as-multibyte' in doc string.
1865
1866 2003-01-17 Kenichi Handa <handa@m17n.org>
1867
1868 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
1869
1870 * editfns.c (Fformat): Convert an unibyte char argument that is
1871 formatted by "%c" to multibyte if the total result must be a
1872 multibyte string.
1873
1874 2003-01-16 Kim F. Storm <storm@cua.dk>
1875
1876 * process.c (set-process-filter): Document unibyte/multibyte-ness
1877 of string argument.
1878
1879 2003-01-16 Kenichi Handa <handa@m17n.org>
1880
1881 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
1882
1883 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
1884 (re_search_2): Likewise.
1885
1886 2003-01-15 Kenichi Handa <handa@m17n.org>
1887
1888 * xdisp.c (message_dolog): Fix bug of the case that *Message*
1889 buffer is unibyte.
1890
1891 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
1892
1893 * fns.c (Fsubstring): Clarify doc string.
1894
1895 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
1896 (Fprevious_char_property_change)
1897 (Fnext_single_char_property_change)
1898 (Fprevious_single_char_property_change, Fnext_property_change)
1899 (Fnext_single_property_change, Fprevious_property_change)
1900 (Fprevious_single_property_change, Fadd_text_properties)
1901 (Fput_text_property, Fset_text_properties)
1902 (Fremove_text_properties, Fremove_list_of_text_properties)
1903 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
1904
1905 2003-01-14 Kim F. Storm <storm@cua.dk>
1906
1907 * process.h (struct Lisp_Process): New member plist replaces old
1908 member private_vars. All uses changed.
1909
1910 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
1911 (QCplist): Rename from QCvars. Change all uses.
1912 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
1913 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
1914 (syms_of_process): Intern, staticpro, defsubr these.
1915 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
1916
1917 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
1918
1919 * m/delta.h: Remove (obsolete).
1920
1921 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
1922
1923 * fileio.c (Fdelete_directory, Fdelete_file): Document the
1924 behaviour in front of symlinks.
1925 (Fdelete_file): Raise an error on directories.
1926
1927 2003-01-13 Dave Love <fx@gnu.org>
1928
1929 * fns.c (Freverse): Use QUIT.
1930
1931 2003-01-13 Richard M. Stallman <rms@gnu.org>
1932
1933 * minibuf.c (minibuffer_completion_contents):
1934 Error if point is inside prompt.
1935
1936 * keyboard.c (command_loop_1): Don't redisplay directly
1937 if there's a post-command-hook.
1938
1939 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
1940 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
1941
1942 2003-01-12 Kim F. Storm <storm@cua.dk>
1943
1944 * process.h (struct Lisp_Process): New member private_vars.
1945
1946 * process.c (QCvars): New variable.
1947 (syms_of_process): Intern and staticpro it.
1948 (Fset_process_contact): Removed function.
1949 (Fprocess_variable, Fset_process_variable): New functions.
1950 (syms_of_process): Defsubr them.
1951 (Fstart_process): Initialize private_vars plist to nil.
1952 (Fmake_network_process): New arg :vars to setup the private
1953 variables for new network process.
1954 (server_accept_connection): Copy server's private variables to
1955 client process.
1956
1957 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
1958 crashes). Code rewritten and simplified. Now directly aligns the
1959 pointer and recalculates pure_bytes_used, rather than aligning the
1960 size and adjusting the pointer.
1961
1962 2003-01-11 Kim F. Storm <storm@cua.dk>
1963
1964 * process.c (Fset_process_contact): New function.
1965 (syms_of_process): defsubr it.
1966 (make-network-process): Update doc.
1967
1968 2003-01-10 Andreas Schwab <schwab@suse.de>
1969
1970 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
1971 Reported by Berthold Gunreben <b.gunreben@web.de>.
1972
1973 2003-01-10 Dave Love <fx@gnu.org>
1974
1975 * composite.c (syms_of_composite): Make composition_hash_table weak.
1976
1977 2003-01-09 Kim F. Storm <storm@cua.dk>
1978
1979 * process.c (Fmake_network_process): Convert new port number
1980 to host byte order for `:service t' case. From Mario Lang.
1981
1982 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1983
1984 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
1985 instead of XtAppProcessEvent.
1986
1987 * xterm.c (handle_one_xevent): New function.
1988 (x_dispatch_event): New function.
1989 (XTread_socket): Call handle_one_xevent.
1990
1991 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
1992
1993 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
1994 call XQueryPointer to get coordinates.
1995 (popup_get_selection): Do not set popup_activated_flag to zero,
1996 let popup_deactivate_callback do that. Needed for Motif.
1997 Call x_dispatch_event instead of XtDispatchEvent.
1998 (xmenu_show): Calculate root coordinate from frame top/left position.
1999
2000 2003-01-08 Kim F. Storm <storm@cua.dk>
2001
2002 * process.c (server_accept_connection): Fix recording of new
2003 connection's local address in :local property of contact info.
2004 (Fmake_network_process): Record local network address for new
2005 client processes in :local property of contact info.
2006 (format-network-address): Add arg OMIT-PORT. Change callers.
2007
2008 2003-01-07 Dave Love <fx@gnu.org>
2009
2010 * Makefile.in (fns.o): Depend on coding.h.
2011
2012 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
2013
2014 * minibuf.c (Fread_variable): Doc fix.
2015
2016 * eval.c (Fuser_variable_p): Doc change. For custom variables,
2017 use the same test as for custom-variable-p.
2018
2019 2003-01-05 Richard M. Stallman <rms@gnu.org>
2020
2021 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
2022 Count LAST_LINE_MISFIT in scroll margin for end of window.
2023 Move label too_near_end before setting SCROLL_MARGIN_POS.
2024 Set LAST_LINE_MISFIT before jumping there.
2025
2026 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
2027 scroll_conservatively case. If scrolling that much doesn't change
2028 STARTP, move it down one line.
2029
2030 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
2031 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
2032
2033 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
2034 selected frame.
2035
2036 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
2037 (syms_of_keymap): staticpro them.
2038 (Fapropos_internal): Initialize them and clear them out.
2039 Don't GCPRO them.
2040
2041 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
2042 Doc fixes.
2043
2044 * lisp.h: New misc type Lisp_Save_Value.
2045 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
2046 (XSAVE_VALUE): New macro.
2047 (struct Lisp_Save_Value): New data type.
2048 (union Lisp_Misc): Add u_save_value alternative.
2049 (make_save_value): Declared.
2050
2051 * alloc.c (make_save_value): New function.
2052
2053 * xterm.c (x_catch_errors): Save dpy using make_save_value.
2054 (x_catch_errors_unwind): Call XSync.
2055
2056 2003-01-01 Richard M. Stallman <rms@gnu.org>
2057
2058 * window.c (window_scroll_pixel_based): Partially undo last change.
2059
2060 * keyboard.c (command_loop_1): Call adjust_point_for_property
2061 in direct action cases for Qforward_char and Qbackward_char.
2062 Set already_adjusted so it won't be done twice.
2063
2064 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
2065
2066 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
2067 type definition of size_t.
2068
2069 2003-01-02 Steven Tamm <steventamm@mac.com>
2070
2071 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
2072 distinguish Carbon GUI builds from X11 builds on darwin.
2073
2074 2002-12-30 Steven Tamm <steventamm@mac.com>
2075
2076 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
2077 to default to t.
2078
2079 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
2080
2081 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
2082
2083 2002-12-28 Steven Tamm <steventamm@mac.com>
2084
2085 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
2086 allow building in a different directory than source. Uses some
2087 GNU Make extensions, but there is no other make on Mac OS X.
2088
2089 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2090
2091 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
2092 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
2093 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
2094 (Fstring_to_number): Mention the returned value in the doc strings.
2095
2096 2002-12-23 Richard M. Stallman <rms@gnu.org>
2097
2098 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
2099 <scroll-down-aggressively>: Doc fix.
2100
2101 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
2102 string as pane name, if there is one.
2103 (set_frame_menubar): Save menu_items_n_panes from each call to
2104 parse_single_submenu and use it when calling digest_single_submenu.
2105
2106 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
2107 Don't try to make last line fully visible if it is past end of window.
2108
2109 2002-12-22 Steven Tamm <steventamm@mac.com>
2110
2111 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
2112 (mac_menu_show): Add support for hierarchical popup menus.
2113 (add_menu_item): Remove indentation support.
2114 (fill_submenu, fill_menu): Create hierarchical menus
2115 instead of using indentation.
2116
2117 2002-12-22 Richard M. Stallman <rms@gnu.org>
2118
2119 * xdisp.c (try_cursor_movement): Don't call try_window here.
2120 (redisplay_window): Never redisplay minibuffer when inactive.
2121
2122 * window.c (select_window_1): Undo 9/21 change.
2123
2124 2002-12-22 Steven Tamm <steventamm@mac.com>
2125
2126 * macterm.c (XTread_socket): Call KeyTranslate for control and
2127 meta to deal correctly shifted non-alpha characters, like C-S-5
2128 being treated like C-%. Does not look for shift key to deal
2129 with masking off control-key with mac-reverse-ctrl-meta.
2130
2131 2002-12-21 Richard M. Stallman <rms@gnu.org>
2132
2133 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
2134 If it is non-nil, run timers. Use an unwind-protect to requeue
2135 the events that were read ahead.
2136 (popup_get_selection_unwind): New subroutine.
2137 (popup_get_selection_queue): File-scope variable now holds that queue.
2138 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
2139 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
2140 Use an unwind-protect to pop down the dialog box.
2141 (xdialog_show_unwind): New subroutine implements that.
2142
2143 * xdisp.c (row_containing_pos): Change exit test using last_y.
2144 (try_window_id): Abort if row_containing_pos returns null.
2145
2146 * lread.c (load_error_handler): New function.
2147 (Fload): Handle errors in Fsubstitute_in_file_name.
2148 Don't expect Fsignal to return.
2149
2150 * eval.c: Errors and throws work right with interrupt blocking.
2151 (struct catchtag): New elt interrupt_input_blocked.
2152 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
2153 (internal_catch, Fcondition_case, internal_condition_case)
2154 (internal_condition_case_1, internal_condition_case_2): Save it.
2155 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
2156
2157 * editfns.c (Fformat): Add parens.
2158
2159 * dired.c (file_name_completion): Fix that change.
2160 Delete special quit-handling code; just use QUIT.
2161
2162 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
2163
2164 * dired.c (file_name_completion): Close directory on error
2165 just as in directory_files_internal.
2166
2167 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
2168
2169 * window.c (Fset_window_configuration): Set old_point to correct
2170 value when new_current_buffer == current_buffer.
2171
2172 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
2173
2174 Revisited my earlier fix for the following entry in etc/PROBLEMS:
2175 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
2176 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
2177
2178 These changes were in part based upon suggestions made by Peter
2179 'Luna' Runestig [peter@runestig.com].
2180
2181 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
2182 g_b_init_get_token_information, g_b_init_lookup_account_sid,
2183 g_b_init_get_sid_identifier_authority ): Add several static
2184 global variables.
2185
2186 * w32.c (globals_of_w32): New function. Used to initialize those
2187 global variables that must always be initialized on startup even
2188 when the global variable initialized is non zero. Its primary
2189 purpose at this time is to set the global variables
2190 g_b_init_is_windows_9x, g_b_init_open_process_token,
2191 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
2192 g_b_init_get_sid_identifier_authority to 0 on startup.
2193 Called from main.
2194
2195 * w32.c (is_windows_9x): Perform initialization only if
2196 g_b_init_is_windows_9x is equal to 0. On initialization set
2197 g_b_init_is_windows_9x equal to 1.
2198
2199 * w32.c (open_process_token): Perform initialization only if
2200 g_b_init_open_process_token is equal to 0. On initialization set
2201 g_b_init_open_process_token equal to 1.
2202
2203 * w32.c (get_token_information): Perform initialization only if
2204 g_b_init_get_token_information is equal to 0. On initialization
2205 set g_b_init_get_token_information equal to 1.
2206
2207 * w32.c (lookup_account_sid): Perform initialization only if
2208 g_b_init_lookup_account_sid is equal to 0. On initialization
2209 set g_b_init_lookup_account_sid equal to 1.
2210
2211 * w32.c (get_sid_identifier_authority): Perform initialization
2212 only if g_b_init_get_sid_identifier_authority is equal to 0.
2213 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
2214
2215 * w32fns.c (globals_of_w32fns): New function. Used to initialize
2216 those global variables that must always be initialized on startup
2217 even when the global variable initialized is non zero.
2218 Its primary purpose at this time is to initialize the global variable
2219 track_mouse_event_fn.
2220
2221 * w32fns.c (w32_wnd_proc): Remove initialization of
2222 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
2223
2224 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
2225
2226 * w32menu.c (globals_of_w32menu): New function. Used to
2227 initialize those global variables that must always be initialized
2228 on startup even when the global variable initialized is non zero.
2229 Its primary purpose at this time is to initialize the global
2230 variables get_menu_item_info and set_menu_item_info.
2231
2232 * w32menu.c (initialize_frame_menubar): Remove initialization of
2233 get_menu_item_info and set_menu_item_info.
2234
2235 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
2236
2237 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
2238 Declare them.
2239
2240 * emacs.c (main): Call globals_of_w32 prior to calling
2241 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
2242 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
2243 is defined.
2244
2245 * w32term.c (x_update_window_begin): Fix Windows API error
2246 detected by BoundsChecker. Test to determine if
2247 w32_system_caret_hwnd is NULL prior to attempting to use
2248 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2249
2250 * w32term.c (x_update_window_end): Fix Windows API error
2251 detected by BoundsChecker. Test to determine if
2252 w32_system_caret_hwnd is NULL prior to attempting to use
2253 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
2254
2255 2002-12-17 Kenichi Handa <handa@m17n.org>
2256
2257 * coding.c (coding_system_require_warning): New variable.
2258 (syms_of_coding): DEFVAR it.
2259
2260 * coding.h (coding_system_require_warning): Extern it.
2261
2262 * fileio.c (choose_write_coding_system): Even if
2263 Vcoding_system_for_write is non-nil, if
2264 coding_system_require_warning is nonzero, call
2265 Vselect_safe_coding_system_function.
2266
2267 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
2268
2269 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
2270 (lisp): Add font-core.
2271
2272 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2273
2274 * textprop.c (text_read_only): New arg `propval'.
2275 (get_char_property_and_overlay): Remove unused var `next_overlay'.
2276 (verify_interval_modification): Use text_read_only's new arg.
2277
2278 2002-12-13 Kenichi Handa <handa@m17n.org>
2279
2280 * coding.c (Funencodable_char_position): Set pend correctly.
2281
2282 2002-12-12 Jason Rumney <jasonr@gnu.org>
2283
2284 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
2285 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
2286 Be more careful about when help_events are generated.
2287
2288 2002-12-12 Steven Tamm <steventamm@mac.com>
2289
2290 * macterm.c (mac_check_for_quit_char): Correctly set the
2291 modifiers of the event to 0.
2292 * mac.c (sys_select): Duplicate rfds before calling select to
2293 ensure that rfds survive the while loop.
2294
2295 2002-12-11 Kim F. Storm <storm@cua.dk>
2296
2297 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
2298 row_containing_pos returned NULL.
2299
2300 2002-12-10 Steven Tamm <steventamm@mac.com>
2301
2302 * mac.c (sys_read): Fix sys_read to not call select if IO is
2303 non-blocking.
2304 (sys_select): Fix sys_select to not use a timeout larger than
2305 the one given.
2306
2307 2002-12-10 Juanma Barranquero <lektu@terra.es>
2308
2309 * editfns.c (Fformat): Use alloca, not _alloca.
2310
2311 2002-12-09 Richard M. Stallman <rms@gnu.org>
2312
2313 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
2314 as the last thing.
2315
2316 2002-12-09 Dave Love <fx@gnu.org>
2317
2318 * s/sol2-8.h: Removed. (Not necessary.)
2319
2320 2002-12-09 Matthew Swift <swift@alum.mit.edu>
2321
2322 * editfns.c (Fformat): Handle precision in string conversion
2323 specifiers like libc functions do (ie, print at most that many
2324 characters).
2325
2326 2002-12-08 Richard M. Stallman <rms@gnu.org>
2327
2328 * xdisp.c (row_containing_pos): Check more carefully
2329 whether charpos is really in the row before returning it.
2330
2331 2002-12-07 Steven Tamm <steventamm@mac.com>
2332
2333 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
2334
2335 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
2336 each stack frame. This may change as it could be time consuming.
2337
2338 * macterm.c (mac_check_for_quit_char, quit_char_comp)
2339 (init_quit_char_handler, mac_determine_quit_char_modifiers)
2340 (mac_initialize): Add code to check for pressing of quit_char
2341 in the OS event queue.
2342
2343 * mac.c (sys_select): Call mac_check_for_quit_char every second
2344 while blocking on select.
2345
2346 * mac.c (sys_read): Use sys_select to test for input first
2347 before calling read, to allow C-g to break.
2348
2349 2002-12-07 Richard M. Stallman <rms@gnu.org>
2350
2351 * minibuf.c (Fcompleting_read): Doc fix.
2352
2353 * lread.c (syms_of_lread) <load-history>: Doc fix.
2354
2355 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
2356
2357 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
2358 autoload.
2359
2360 * data.c (Fdefalias): Record in load-history redefining an autoload.
2361
2362 * alloca.c: Undo ifdef change accidentally made on 12-04.
2363
2364 2002-12-06 Francesco Potorti` <pot@gnu.org>
2365
2366 * xfns.c (png_load): Avoid double gamma correction for PNG images.
2367
2368 2002-12-04 Richard M. Stallman <rms@gnu.org>
2369
2370 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
2371
2372 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
2373
2374 * alloca.c: Don't use #error.
2375
2376 2002-12-03 Dave Love <fx@gnu.org>
2377
2378 * buffer.c (Qucs_set_table_for_input): New.
2379 (Fget_buffer_create): Use it.
2380 (Qset_buffer_major_mode_hook): Deleted.
2381 (Fset_buffer_major_mode): Revert previous change.
2382 (init_buffer_once): Intern ucs-set-table-for-input.
2383 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
2384 Add &Qucs_set_table_for_input.
2385
2386 2002-12-03 Andreas Schwab <schwab@suse.de>
2387
2388 * callint.c (Fcall_interactively): Use next_event only if less
2389 than key_count.
2390
2391 2002-12-02 Andrew Choi <akochoi@shaw.ca>
2392
2393 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
2394 names to 255 characters.
2395
2396 * macterm.c (XTread_socket): If all frames have been collapsed,
2397 expand the first one before handling drag-and-drop events.
2398
2399 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
2400 which is detected by autoconf.
2401
2402 2002-12-01 Steven Tamm <steventamm@mac.com>
2403
2404 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
2405 offset in two hints table to allow prebinding to be redone and
2406 allow the executable to be stripped.
2407
2408 2002-11-29 Dave Love <fx@gnu.org>
2409
2410 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
2411 already provided.
2412
2413 2002-11-29 Richard M. Stallman <rms@gnu.org>
2414
2415 * xdisp.c (start_display): Check more intelligently for
2416 whether the line is continued.
2417 (move_it_vertically_backward): Clear it->continuation_lines_width.
2418
2419 2002-11-28 Dave Love <fx@gnu.org>
2420
2421 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
2422 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
2423
2424 2002-11-27 Steven Tamm <steventamm@mac.com>
2425
2426 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
2427 more descriptive error output from lread.c:Fload upon most require
2428 cycles during boostrapping.
2429
2430 2002-11-27 Jason Rumney <jasonr@gnu.org>
2431
2432 * fileio.c (Finsert_file_contents): Give a more appropriate error
2433 for files bigger than 2Gb when off_t is 32 bit.
2434
2435 * dired.c (Ffile_attributes): Don't return negative file sizes for
2436 files bigger than 2Gb when off_t is 32 bit.
2437
2438 2002-11-27 Dave Love <fx@gnu.org>
2439
2440 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
2441
2442 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
2443 Test GETPGRP_VOID instead.
2444 [BSD_TERMIOS]: Remove definitions (never used).
2445
2446 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
2447 Don't define.
2448 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
2449
2450 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
2451
2452 2002-11-25 Jason Rumney <jasonr@gnu.org>
2453
2454 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
2455 supported.
2456
2457 2002-11-25 Dave Love <fx@gnu.org>
2458
2459 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
2460
2461 * Makefile.in (TEMACS_LDFLAGS): Update last change.
2462
2463 2002-11-25 Andreas Schwab <schwab@suse.de>
2464
2465 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
2466
2467 2002-11-24 Steven Tamm <steventamm@mac.com>
2468
2469 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
2470 determine the size of pointers alloced in unexed space instead
2471 of using possibly invalid emacs_zone pointers. This fixes the
2472 binary incompatibility problems caused by updates to libSystem.B.
2473
2474 2002-11-24 Richard M. Stallman <rms@gnu.org>
2475
2476 * search.c (Fstring_match): Doc fix.
2477
2478 * callint.c (Fcall_interactively): If a command fails because
2479 `*' detects a read-only buffer, but RECORD_FLAG is set,
2480 record it anyway if the args don't actually do tty input.
2481
2482 2002-11-22 Dave Love <fx@gnu.org>
2483
2484 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
2485
2486 * keyboard.c (interrupt_signal): Provide forward declaration.
2487 (kbd_buffer_store_event): Don't declare interrupt_signal.
2488
2489 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
2490
2491 2002-11-21 Richard M. Stallman <rms@gnu.org>
2492
2493 * eval.c (interactive_p): Skip any number of bytecode
2494 and special form frames, in any order.
2495
2496 2002-11-20 Jason Rumney <jasonr@gnu.org>
2497
2498 * w32fns.c (convert_mono_to_color_image): New function.
2499 (xbm_load, xbm_load_image): Use it when foreground or background
2500 is explicitly set.
2501
2502 2002-11-19 Dave Love <fx@gnu.org>
2503
2504 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
2505
2506 2002-11-18 Jason Rumney <jasonr@gnu.org>
2507
2508 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
2509 (XPutPixel): Swap blue and red.
2510 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
2511 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
2512 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
2513 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
2514
2515 2002-11-18 Dave Love <fx@gnu.org>
2516
2517 * m/orion105.h (HAVE_ALLOCA): Don't define.
2518
2519 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
2520
2521 * m/intel386.h: Don't include alloca.h or define alloca.
2522
2523 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
2524 malloc, realloc, calloc.
2525
2526 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
2527 (bcmp): Don't define.
2528
2529 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
2530
2531 * m/amdahl.h: Don't define LIB_STANDARD.
2532
2533 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
2534
2535 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
2536
2537 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
2538 Don't include alloca.h.
2539
2540 * s/aix3-2.h (HAVE_FSYNC): Don't define.
2541
2542 * regex.c (_GNU_SOURCE): Don't define.
2543
2544 * process.c (_GNU_SOURCE): Don't define.
2545
2546 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
2547
2548 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
2549
2550 * s/sol2-8.h: Include sol2-6.h.
2551
2552 2002-11-18 Miles Bader <miles@gnu.org>
2553
2554 * dispextern.h (struct face): Add `overstrike' field.
2555 * xterm.c (x_draw_glyph_string_foreground)
2556 (x_draw_composite_glyph_string_foreground): Implement overstriking.
2557 * xfaces.c (load_face_font): Set `face->overstrike' based on
2558 result from choose_face_font.
2559 (best_matching_font, choose_face_font): Add `needs_overstrike'
2560 argument, and use it to return whether overstriking is desirable
2561 for this face/font combo.
2562 (set_font_frame_param: Pass new argument to choose_face_font.
2563
2564 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
2565
2566 This change is my fix for the following entry in etc/PROBLEMS:
2567 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
2568 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
2569
2570 * w32.c: Added wrapper functions around the win32 API functions
2571 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
2572 GetSidIdentifierAuthority. These wrapper functions serve two
2573 purposes:
2574 1. They ensure that the wrapped function can never be called
2575 when Emacs is running on an operating system on which they are
2576 not supported (Microsoft Windows 95 / 98 / ME).
2577 2. They call the wrapped functions via function pointers rather
2578 than calling them directly. This avoids taking advantage of the
2579 undocumented fact that although these functions are not supported
2580 in the 9x branch of Microsoft Windows, the functions do exist in
2581 the version of advapi32.dll that is found in the 9x branch of
2582 Microsoft Windows.
2583
2584 * w32.c (init_user_info): Replace the calls to the win32 API
2585 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
2586 and GetSidIdentifierAuthority with calls to the newly added
2587 wrapper functions.
2588
2589 * w32.h: Added extern declarations for the following functions:
2590 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
2591 syms_of_w32menu, and void syms_of_fontset.
2592
2593 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
2594 function pointer track_mouse_event_fn in the handler for the
2595 WM_SETFOCUS message.
2596
2597 * w32menu.c (initialize_frame_menubar): Add code to
2598 reinitialize the function pointers set_menu_item_info and
2599 get_menu_item_info.
2600
2601 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
2602
2603 * sound.c: Added a partial implementation of play-sound-internal
2604 for Microsoft Windows. Added various #ifdef / #else / #endif
2605 code blocks to separate the code that will compile under
2606 Microsoft Windows from the code that is specific to Gnu/Linux.
2607 Moved several blocks of code around to make this separation of code
2608 into Windows compatible and Gnu/Linux compatible code blocks easier.
2609
2610 * makefile.w32-in: Include sound.c and link with WinMM.lib.
2611
2612 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
2613 added support for play-sound-internal under Windows would be
2614 included in the build of Emacs.
2615
2616 2002-11-16 Jason Rumney <jasonr@gnu.org>
2617
2618 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
2619
2620 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
2621
2622 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
2623
2624 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
2625 (adjust_point_for_property): Move out of display and invisible even if
2626 we were already inside before (in case a property was added while
2627 we weren't looking). Be more careful when handling invisible props.
2628 Skip invisible text as if it really wasn't there at all.
2629
2630 2002-11-15 Jason Rumney <jasonr@gnu.org>
2631
2632 * w32term.c (x_draw_image_foreground)
2633 (w32_draw_image_foreground_1): Use standard copy and invert
2634 operations to draw images.
2635
2636 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
2637 depth of 1.
2638 (xbm_read_bitmap_data): Invert bits as xbm is read in.
2639 (XPutPixel): Don't invert bits here.
2640
2641 2002-11-15 Jason Rumney <jasonr@gnu.org>
2642
2643 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
2644 (w32_draw_image_foreground_1): Handle image masks.
2645 (x_draw_image_glyph_string): Don't BitBlt transparently.
2646
2647 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
2648 (x_from_xcolors): Adjust RGB values for W32.
2649 (image_background, image_background_transparent)
2650 (postprocess_image, x_to_xcolors, x_disable_image)
2651 (x_build_heuristic_mask): Adapt for W32 and enable.
2652 (x_create_x_image_and_pixmap): Mark images with palettes as such.
2653 (xbm_load): Remove unused variable.
2654
2655 2002-11-14 Richard M. Stallman <rms@gnu.org>
2656
2657 * buffer.c (syms_of_buffer): Doc fix.
2658
2659 2002-11-14 Dave Love <fx@gnu.org>
2660
2661 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
2662
2663 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
2664 * xmenu.c (unuse_menu_items, digest_single_submenu):
2665 * xfns.c (x_put_x_image):
2666 * xdisp.c (message2_nolog, set_message):
2667 * undo.c (record_point):
2668 * terminfo.c (tparam):
2669 * syntax.c (scan_sexps_forward):
2670 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
2671 * composite.c (update_compositions):
2672 * cm.c (calccost, cmgoto):
2673 * charset.c (c_string_width): Declare all args (per C99).
2674
2675 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
2676
2677 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
2678 Don't declare.
2679
2680 * emacs.c (main) [!VMS]: Avoid third arg.
2681
2682 * fns.c (Fcopy_sequence): Doc fix.
2683 (Fmap_char_table): Cast `call2'.
2684
2685 2002-11-14 Francesco Potorti` <pot@gnu.org>
2686
2687 * s/sol2-8.h: New file.
2688
2689 2002-11-14 Kim F. Storm <storm@cua.dk>
2690
2691 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
2692 dependency on `risky-local-variable' and the :propertize form.
2693
2694 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
2695
2696 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
2697
2698 * syntax.c (scan_sexps_forward): Undo last patch.
2699 Use a more obvious fix: check eob before updating the syntax table.
2700
2701 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
2702
2703 * syntax.c (scan_sexps_forward): Update syntax table before reading
2704 a char rather than after so we don't update the table past eob.
2705
2706 2002-11-09 Dave Love <fx@gnu.org>
2707
2708 * buffer.c (Fset_buffer_major_mode): Fix last change.
2709
2710 * regex.c (regexec): Fix pmatch declaration.
2711
2712 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
2713
2714 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
2715 to self-inserting characters.
2716 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
2717
2718 * coding.c (Vtranslation_table_for_input): New.
2719 (syms_of_coding): DEFVAR it.
2720
2721 2002-11-08 Juanma Barranquero <lektu@terra.es>
2722
2723 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
2724 window.
2725
2726 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2727
2728 * process.c (Fformat_network_address): Remove unused locals p,
2729 cp, and i.
2730
2731 2002-11-06 Dave Love <fx@gnu.org>
2732
2733 * buffer.c (Qset_buffer_major_mode_hook): New.
2734 (Fset_buffer_major_mode): Use it.
2735
2736 2002-11-06 Richard M. Stallman <rms@gnu.org>
2737
2738 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
2739 and stop_polling.
2740
2741 * process.c (wait_reading_process_input):
2742 Test POLLING_PROBLEM_IN_SELECT, not hpux.
2743 Avoid initialization for auto Lisp_Object var.
2744
2745 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
2746
2747 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
2748
2749 2002-11-05 Richard M. Stallman <rms@gnu.org>
2750
2751 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
2752
2753 * callint.c (Fcall_interactively): New local filter_specs.
2754 (Fcall_interactively): Check for progn as well as let.
2755 Add a gcpro.
2756 (Qprogn): New variable.
2757 (syms_of_callint): Staticpro and init Qprogn.
2758
2759 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
2760
2761 * lread.c (Feval_buffer): Doc fix.
2762
2763 2002-11-04 Dave Love <fx@gnu.org>
2764
2765 * keyboard.c (read_char): Always translate iff
2766 Vkeyboard_translate_table is a char table and c is valid.
2767
2768 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
2769 and fix C types.
2770
2771 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
2772
2773 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
2774
2775 * editfns.c (get_pos_property): Don't hardcode Qfield.
2776
2777 * keyboard.c (adjust_point_for_property): Handle `display' prop on
2778 overlays. Also handle `invisible' prop.
2779
2780 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
2781
2782 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
2783 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
2784
2785 2002-11-01 Andreas Schwab <schwab@suse.de>
2786
2787 * editfns.c (Fmessage): Revert last change to properly handle %%.
2788
2789 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
2790
2791 * xmenu.c (unuse_menu_items): New fun.
2792 (menu_items_inuse): New var.
2793 (syms_of_xmenu): Initialize it.
2794 (init_menu_items): Use it to detect re-entrance.
2795 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
2796 (Fx_popup_menu): Remove spurious XSETFRAME.
2797
2798 * editfns.c (find_field): Make an exception for nil fields.
2799
2800 2002-11-01 Dave Love <fx@gnu.org>
2801
2802 * m/gec63.h: Deleted.
2803
2804 2002-10-31 Dave Love <fx@gnu.org>
2805
2806 * xterm.c (XTread_socket): Fix last change.
2807 (xaw_scroll_callback): Cast call_data to long to avoid warning.
2808
2809 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
2810
2811 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
2812
2813 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
2814
2815 * editfns.c (overlays_around, get_pos_property): New funs.
2816 (find_field): Use them.
2817 Also be careful not to modify POS before its last use.
2818 (Fmessage): Don't Fformat if there's nothing to format.
2819
2820 2002-10-30 Dave Love <fx@gnu.org>
2821
2822 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
2823 [HAVE_PTY_H]; Include pty.h.
2824
2825 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
2826
2827 * xterm.c (Qeql): Declare.
2828 (Vx_keysym_table): New.
2829 (syms_of_xterm): Initialize it.
2830 (XTread_socket): Use it. Deal with ASCII keysyms.
2831 (XSetIMValues) [HAVE_X11R6]: Prototype.
2832
2833 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
2834 (lispy_kana_keys): Comment out.
2835 (make_lispy_event) [XK_kana_A]: Comment out.
2836 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
2837 Fix sprintf call.
2838
2839 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
2840 regexp.h change).
2841 (TERMINFO, LIBS_TERMCAP): Define.
2842
2843 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
2844 (bcmp): Define conditional on HAVE_BCMP.
2845 (NO_SIOCTL_H): Don't define.
2846 (TIOCSIGSEND): Don't make conditional on IRIX6.
2847
2848 * s/sol2-5.h: Don't include strings.h.
2849 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
2850
2851 * s/irix6-0.h (IRIX6): Don't define.
2852 (bcopy, bcmp, bzero): Don't undef.
2853
2854 * s/irix6-5.h: Don't include strings.h.
2855 (IRIX6): Don't define.
2856 (bcopy, bcmp, bzero): Don't undef.
2857
2858 * syntax.c (Fforward_comment): Doc fix.
2859
2860 2002-10-29 Kim F. Storm <storm@cua.dk>
2861
2862 * process.c (Fsignal_process): Allow PROCESS to be specified by
2863 name in addition to pid (as integer or string).
2864
2865 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
2866
2867 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
2868 environments.
2869
2870 2002-10-27 Kim F. Storm <storm@cua.dk>
2871
2872 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
2873
2874 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
2875
2876 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
2877
2878 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
2879
2880 2002-10-26 Richard M. Stallman <rms@gnu.org>
2881
2882 * editfns.c (Fformat): Detect invalid format letters for floats.
2883
2884 2002-10-25 Kenichi Handa <handa@m17n.org>
2885
2886 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
2887 (x_set_title): Likewise.
2888
2889 2002-10-25 Juanma Barranquero <lektu@terra.es>
2890
2891 * macgui.h:
2892 * w32gui.h: Remove definition of XColor.
2893
2894 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
2895
2896 2002-10-24 Kim F. Storm <storm@cua.dk>
2897
2898 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
2899 Callers changed (supply dummy arg).
2900
2901 * lisp.h (get_window_cursor_type): Update prototype.
2902
2903 * w32term.c (x_display_and_set_cursor): Get active_cursor from
2904 get_window_cursor_type to track system caret.
2905
2906 2002-10-24 Kim F. Storm <storm@cua.dk>
2907
2908 * process.c (Fformat_network_address): New function.
2909 (syms_of_process): Defsubr it.
2910 (list_processes_1): Use it to format :local/:remote address if
2911 service/host is not set; before emacs would crash in that case.
2912 (Fmake_network_process): Don't use Ffind_operation_coding_system
2913 to setup coding system if host or service is not set.
2914
2915 2002-10-23 Juanma Barranquero <lektu@terra.es>
2916
2917 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
2918
2919 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
2920 COLORREF.
2921
2922 * macgui.h:
2923 * w32gui.h: Add definition of XColor.
2924
2925 * macfns.c:
2926 * w32fns.c:
2927 * xfaces.c: Remove definition of XColor.
2928
2929 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
2930
2931 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
2932
2933 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
2934 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
2935 window if it is dedicated.
2936 (Fshrink_window): Add preserve_before as was done for enlarge_window.
2937 (Vspecial_display_function): Update docstring.
2938
2939 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
2940 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
2941 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
2942
2943 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
2944
2945 * casefiddle.c (casify_region): Don't treat a prefix char as part
2946 of a word when at the beginning.
2947
2948 2002-10-17 Juanma Barranquero <lektu@terra.es>
2949
2950 * lread.c (syms_of_lread): Fix typos.
2951
2952 2002-10-17 Dave Love <fx@gnu.org>
2953
2954 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
2955
2956 2002-10-16 Richard M. Stallman <rms@gnu.org>
2957
2958 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
2959
2960 2002-10-14 Juanma Barranquero <lektu@terra.es>
2961
2962 * w16select.c (syms_of_win16select): Fix docstring for
2963 `selection-coding-system'.
2964
2965 * w32select.c (syms_of_w32select): Likewise.
2966
2967 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
2968
2969 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
2970 a backslash-quoted char.
2971 (scan_lists, scan_sexps_forward): Pacify the compiler.
2972
2973 2002-10-13 Richard M. Stallman <rms@gnu.org>
2974
2975 * window.c (window_scroll): Set immediate_quit.
2976
2977 * print.c (print): When backquote form is the car of a list,
2978 output in old style. Use old_backquote_output to output all
2979 comma forms inside it in old style too.
2980
2981 * buffer.h (struct buffer): Move `undo_list' down below `name'.
2982
2983 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
2984
2985 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
2986 batch mode).
2987
2988 * lread.c (Fload): Doc fix (load-suffixes).
2989
2990 2002-10-10 Steven Tamm <steventamm@mac.com>
2991
2992 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
2993 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
2994 Also switch the default to Qnil from Qt.
2995
2996 2002-10-08 Kenichi Handa <handa@m17n.org>
2997
2998 * coding.c (code_convert_region): When we need more GAP for
2999 conversion, pay attention to the case that coding->produced is not
3000 greater than coding->consumed.
3001
3002 2002-10-07 Richard M. Stallman <rms@gnu.org>
3003
3004 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
3005
3006 2002-10-06 Andrew Choi <akochoi@shaw.ca>
3007
3008 * macmenu.c (mac_menu_show): Add j to count menu items; match
3009 menu_item_selection to it to find selected item.
3010
3011 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3012
3013 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
3014 cases. The correct fix is to pass ReparentNotify to Xt.
3015 The shell widget interprets ConfigureNotify differently depending
3016 on if it has been reparented or not.
3017
3018 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
3019
3020 * editfns.c (Fformat_time_string): Doc fix.
3021
3022 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
3023
3024 * fns.c (Flength): Doc fix.
3025
3026 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
3027
3028 * keyboard.c (keyremap): New struct.
3029 (read_key_sequence): Use it: globally replace keytran_foo with
3030 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
3031 keytran_next and fkey_next to just `next'.
3032
3033 2002-10-04 Steven Tamm <steventamm@mac.com>
3034
3035 * macterm.c (keycode_to_xkeysym_table): Change return to be
3036 treated like an X keysym.
3037
3038 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3039
3040 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
3041 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
3042 This is to also handle x/y changes that occur because of a resize.
3043
3044 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
3045
3046 * frame.c (Vdelete_frame_functions): New variable.
3047 (syms_of_frame): Initialize and defvar it.
3048 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
3049 it when frame's `tooltip' parameter is non-nil.
3050
3051 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
3052
3053 * w32fns.c (x_create_tip_frame): Likewise.
3054
3055 * macfns.c (x_create_tip_frame): Likewise.
3056
3057 2002-09-30 Kenichi Handa <handa@m17n.org>
3058
3059 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
3060 -1 before calling ccl_driver.
3061
3062 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
3063 Only when it is non-nil, handle composition sequence.
3064 (setup_coding_system) <0>: Don't force composition handling.
3065
3066 * Makefile.in (lisp, shortlisp): Add utf-16.elc
3067
3068 2002-09-29 Richard M. Stallman <rms@gnu.org>
3069
3070 * search.c (Freplace_match): Adjust match data for the substitution
3071 just made in the buffer.
3072
3073 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
3074 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
3075
3076 2002-09-27 Richard M. Stallman <rms@gnu.org>
3077
3078 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
3079 (read_char): Use them. Do all exits thru the end of the function.
3080
3081 2002-09-27 Kenichi Handa <handa@etl.go.jp>
3082
3083 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
3084 is nil.
3085
3086 2002-09-26 Richard M. Stallman <rms@gnu.org>
3087
3088 * regex.h (__restrict_arr): Don't define if already defined.
3089
3090 * coding.c (run_pre_post_conversion_on_str):
3091 Save and restore Vdeactivate_mark.
3092
3093 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
3094
3095 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
3096
3097 2002-09-26 Kenichi Handa <handa@etl.go.jp>
3098
3099 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
3100 nonzero, try face's family at first. Otherwise try FAMILY at first.
3101 (choose_face_font): If C is a single byte char or latin-1, call
3102 try_font_list with PREFER_FACE_FAMILY 1.
3103
3104 2002-09-21 Richard M. Stallman <rms@gnu.org>
3105
3106 * window.c (select_window_1): Don't select frame.
3107 Set frame's selected window only when frame itself is selected.
3108 (Fselect_window): Doc fix.
3109
3110 2002-09-18 Kim F. Storm <storm@cua.dk>
3111
3112 * process.c (make-network-process): Doc fix (there is no
3113 network-server-log-function hook).
3114
3115 2002-09-18 Richard M. Stallman <rms@gnu.org>
3116
3117 * print.c (print): Clear out the unused parts of Vprint_number_table.
3118 (syms_of_print): Doc fix for `print-number-table'.
3119
3120 * unexelf.c (unexec): Undo previous change.
3121
3122 2002-09-17 Andreas Schwab <schwab@suse.de>
3123
3124 * m/alpha.h [LINUX]: Don't define DATA_START.
3125
3126 2002-09-16 Dave Love <fx@gnu.org>
3127
3128 * unexelf.c (unexec): Deal with .got, reinstating change from
3129 25-08-1999.
3130
3131 2002-09-13 Richard M. Stallman <rms@gnu.org>
3132
3133 * s/sol2-6.h (UNEXEC): Comment out definition.
3134
3135 * unexsol.c (unexec): Don't downcase first letter of error msg.
3136
3137 * xfaces.c (Fcolor_supported_p): Just one arg is required.
3138
3139 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
3140
3141 * unexsol.c: Include buffer.h, charset.h, coding.h.
3142
3143 2002-09-11 Richard M. Stallman <rms@gnu.org>
3144
3145 * unexsol.c: Don't use report_file_error; do it by hand
3146 using dlerror.
3147
3148 * process.c (wait_reading_process_input, both versions):
3149 Before calling turn_on_atimers, call stop_polling.
3150
3151 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
3152
3153 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
3154 we go to too_near_end, call clear_glyph_matrix.
3155 (redisplay_window): After make_cursor_line_fully_visible,
3156 call clear_glyph_matrix and bypass `goto done'.
3157
3158 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
3159 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
3160
3161 2002-09-10 Richard M. Stallman <rms@gnu.org>
3162
3163 * fileio.c (Fdo_auto_save): Catch error making directory.
3164 Only call push_message if we need to.
3165 At the same time, make an unwind-protect to pop it.
3166 Rename local message_p to old_message_p.
3167 (do_auto_save_make_dir, do_auto_save_eh): New functions.
3168 (do_auto_save_unwind): Don't call pop_message.
3169
3170 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
3171
3172 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
3173
3174 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
3175
3176 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
3177
3178 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
3179
3180 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
3181 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
3182 (re_match_2_internal): Be more careful with infinite loops.
3183
3184 2002-09-10 Kim F. Storm <storm@cua.dk>
3185
3186 * macros.c (end_kbd_macro): New function.
3187 (Fend_kbd_macro): Use it.
3188
3189 * macros.h (end_kbd_macro): Declare extern.
3190
3191 * keyboard.c (Fdiscard_input): If defining keyboard macro,
3192 end and save it instead of discarding it.
3193
3194 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
3195
3196 * s/sol2-6.h: Fix typo. Add comment.
3197
3198 2002-09-09 Richard M. Stallman <rms@gnu.org>
3199
3200 * regex.c (regnum_t): Use signed int, not unsigned int.
3201
3202 * s/sol2-6.h: New file.
3203
3204 * s/sol2-5.h (UNEXEC): Definition deleted.
3205
3206 2002-09-08 Kim F. Storm <storm@cua.dk>
3207
3208 * macros.c (executing_macro_index): Change type to EMACS_INT.
3209 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
3210
3211 * macros.h (executing_macro_index): Change type to EMACS_INT.
3212
3213 2002-09-06 Richard M. Stallman <rms@gnu.org>
3214
3215 * casetab.c (set_case_table): Make canon table point to eqv table.
3216
3217 2002-09-06 Juanma Barranquero <lektu@terra.es>
3218
3219 * coding.c (syms_of_coding): Fix spacing.
3220
3221 * composite.c (Fcompose_region_internal)
3222 (Fcompose_string_internal): Likewise.
3223
3224 * data.c (Flsh): Likewise.
3225
3226 * fontset.c (Fset_fontset_font): Likewise.
3227
3228 * macfns.c (Fx_server_max_request_size): Likewise.
3229
3230 * w16select.c (syms_of_win16select): Likewise.
3231
3232 * w32select.c (syms_of_w32select): Likewise.
3233
3234 * xselect.c (syms_of_xselect): Likewise.
3235
3236 2002-09-05 Richard M. Stallman <rms@gnu.org>
3237
3238 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
3239 call EXTEND_RANGE_TABLE and return a proper value.
3240 (set_image_of_range): Don't call set_image_of_range_1
3241 if no TRANSLATE or if range includes all of Latin-1.
3242 Only call it for the Latin-1 part of the range.
3243 For other cases, make two separate ranges,
3244 one for the original specified characters and one for
3245 their case-conversions.
3246
3247 2002-09-04 Richard M. Stallman <rms@gnu.org>
3248
3249 * s/sol2-5.h (UNEXEC): Use unexsol.o.
3250
3251 * window.c (displayed_window_lines): Correct for one-off bug
3252 in HEIGHT on non-window displays.
3253
3254 * regex.c (set_image_of_range_1): New function.
3255 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
3256 Return a value to indicate running out of memory.
3257 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
3258 (extend_range_table_work_area): New subroutine.
3259 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
3260 Different calling conventions, and used from set_image_of_range{,_1}.
3261 (IMMEDIATE_QUIT_CHECK): Definitions moved.
3262
3263 2002-09-04 Juanma Barranquero <lektu@terra.es>
3264
3265 * makefile.w32-in: All dependencies updated.
3266
3267 2002-09-01 Richard M. Stallman <rms@gnu.org>
3268
3269 * unexsol.c: New file.
3270
3271 * xfns.c (Qbox): Declare external, don't define.
3272
3273 * xdisp.c (redisplay_window) <force-start case>:
3274 If point is on semi-visible last line, reposition
3275 it at previous line.
3276
3277 * alloc.c (display_malloc_warning): Use display-warning.
3278 (malloc_warning_1): Function deleted.
3279
3280 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
3281
3282 * lread.c (read1): Handle #! by skipping the line.
3283
3284 2002-08-31 Richard M. Stallman <rms@gnu.org>
3285
3286 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
3287 Don't include LDFLAGS.
3288 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
3289
3290 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
3291
3292 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
3293 member of x_display_info unless we compile for some window system.
3294
3295 2002-08-31 Kim F. Storm <storm@cua.dk>
3296
3297 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
3298 (get_window_cursor_type): Don't use them.
3299 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
3300
3301 2002-08-30 Kenichi Handa <handa@etl.go.jp>
3302
3303 * xdisp.c (get_next_display_element): Fix previous change.
3304
3305 2002-08-30 Andrew Choi <akochoi@shaw.ca>
3306
3307 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
3308 (expose_window): Use it to fix the display of overlapping
3309 rows (merge code from xterm.c).
3310
3311 * macfns.c (Qbox): Add extern declaration.
3312
3313 2002-08-30 Juanma Barranquero <lektu@terra.es>
3314
3315 * w32fns.c (Qbox): Make extern.
3316 (syms_of_w32fns): Remove initialization of Qbox.
3317
3318 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
3319
3320 * xfns.c (Fx_open_connection): Fix error message.
3321
3322 2002-08-30 Kim F. Storm <storm@cua.dk>
3323
3324 The following changes consolidates the handling of the cursor
3325 type in xdisp.c, moving duplicate code and functionality from
3326 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
3327
3328 * frame.h (enum text_cursor_kinds): Consolidated here.
3329 Added DEFAULT_CURSOR value.
3330 (struct frame) <desired_cursor, cursor_width>
3331 <blink_off_cursor, blink_off_cursor_width>: New fields.
3332 Consolidated from output_x, output_w32 and output_mac structs.
3333 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
3334 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
3335
3336 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
3337 Variables consolidated here.
3338 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
3339 (Vcursor_in_non_selected_windows): Renamed from
3340 cursor_in_non_selected_windows and changed to Lisp_Object.
3341 (syms_of_xdisp): Define and staticpro new and moved variables.
3342 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
3343 consolidated here. Recognize Qhollow setting.
3344 (set_frame_cursor_types): New function to set frame cursor types
3345 based on the frame parameters.
3346 (get_window_cursor_type): New function to calculate new cursor
3347 type and width for the specified window. Based on duplicated
3348 code consolidated here.
3349 Enhancements: cursor-in-non-selected-windows may be a cursor type,
3350 check buffer-local alternate-cursor-type and blink-cursor-alist
3351 before using built-in blink off methods.
3352
3353 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
3354
3355 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
3356 (get_specified_cursor_type, get_window_cursor_type)
3357 (set_frame_cursor_types): Added prototypes.
3358
3359 * macfns.c (x_specified_cursor_type): Removed.
3360 (x_set_cursor_type): Use set_frame_cursor_types.
3361 (Qbar, Qbox): Removed.
3362 (syms_of_macfns): Don't intern or staticpro them.
3363
3364 * macterm.c (x_specified_cursor_type): Remove prototype.
3365 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
3366 (x_display_and_set_cursor): Use get_window_cursor_type.
3367 Remove unused local variables cursor_non_selected, active_cursor.
3368 Redraw cursor if hbar cursor width changes.
3369 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
3370
3371 * macterm.h (enum text_cursor_kinds): Removed.
3372 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
3373 <blink_off_cursor, blink_off_cursor_width>: Members removed.
3374 (FRAME_DESIRED_CURSOR): Macro removed.
3375
3376 * w32fns.c (Vblink_cursor_alist): Removed.
3377 (Qbar, Qhbar, Qbox, Qhollow): Removed.
3378 (syms_of_w32fns): Don't intern, staticpro, or define them.
3379 (x_specified_cursor_type): Removed.
3380 (x_set_cursor_type): Use set_frame_cursor_types.
3381
3382 * w32term.c (x_specified_cursor_type): Remove prototype.
3383 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
3384 (x_display_and_set_cursor): Use get_window_cursor_type.
3385 Remove unused local variables cursor_off_state.
3386 Redraw cursor if hbar cursor width changes.
3387 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
3388
3389 * w32term.h (enum text_cursor_kinds): Removed.
3390 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
3391 <blink_off_cursor, blink_off_cursor_width>: Members removed.
3392 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
3393 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
3394 (struct w32_display_info) <x_highlight_frame>: Renamed member from
3395 w32_highlight_frame.
3396
3397 * xfns.c (Vblink_cursor_alist): Removed.
3398 (Qbar, Qhbar, Qbox, Qhollow): Removed.
3399 (syms_of_xfns): Don't intern, staticpro, or define them.
3400 (x_specified_cursor_type): Removed.
3401 (x_set_cursor_type): Use set_frame_cursor_types.
3402
3403 * xterm.c (x_specified_cursor_type): Remove prototype.
3404 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
3405 (x_display_and_set_cursor): Use get_window_cursor_type.
3406 Remove unused local variables cursor_off_state.
3407 Redraw cursor if hbar cursor width changes.
3408
3409 * xterm.h (enum text_cursor_kinds): Removed.
3410 (struct output_x) <current_cursor, desired_cursor, cursor_width>
3411 <blink_off_cursor, blink_off_cursor_width>: Members removed.
3412 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
3413 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
3414 (x_specified_cursor_type): Remove prototype.
3415
3416 2002-08-28 Richard M. Stallman <rms@gnu.org>
3417
3418 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
3419 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
3420 (Vblink_cursor_alist): New variable.
3421 (syms_of_w32fns): Initialize and defvar it.
3422 (x_specified_cursor_type): Recognize Qbox for filled box.
3423 Exceptions are hollow boxes.
3424 (Qbox, Qhollow): New variables.
3425 (syms_of_w32fns): Initialize and staticpro them.
3426
3427 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
3428 New macros.
3429 (struct w32_output): New fields blink_off_cursor,
3430 blink_off_cursor_width.
3431 (FRAME_CURSOR_WIDTH): New macro.
3432
3433 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
3434 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
3435
3436 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
3437 for bar cursor.
3438
3439 * w32term.c (expose_overlaps): New function.
3440 (expose_window): Use it to fix the display of overlapping rows.
3441
3442 2002-08-28 Simon Josefsson <jas@extundo.com>
3443
3444 * xfns.c (Fx_open_connection): Improve help when X connection
3445 fails, xhost is insecure and xauth is better.
3446
3447 2002-08-28 Juanma Barranquero <lektu@terra.es>
3448
3449 * makefile.w32-in: Add missing dependencies on w32term.h and
3450 composite.h.
3451
3452 * emacs.c (USAGE1): Add missing newline.
3453
3454 2002-08-27 Andrew Choi <akochoi@shaw.ca>
3455
3456 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
3457
3458 2002-08-27 Richard M. Stallman <rms@gnu.org>
3459
3460 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
3461 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
3462 (Vblink_cursor_alist): New variable.
3463 (syms_of_xfns): Initialize and defvar it.
3464 (x_specified_cursor_type): Recognize Qbox for filled box.
3465 Exceptions are hollow boxes.
3466 (Qbox, Qhollow): New variables.
3467 (syms_of_xfns): Initialize and staticpro them.
3468
3469 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
3470 New macros.
3471 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
3472
3473 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
3474 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
3475
3476 * emacs.c (main): Handle --script.
3477 (USAGE1): Mention --script.
3478 (standard_args): Define sort order for --script.
3479
3480 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
3481
3482 * xdisp.c (redisplay_updating_p): Variable removed.
3483 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
3484 New variables.
3485 (init_iterator): Don't free realized faces if
3486 inhibit_free_realized_faces is set.
3487 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
3488 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
3489 initialize Qinhibit_free_realized_faces.
3490
3491 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
3492 when iterator is adding glyphs to a glyph matrix.
3493
3494 2002-08-27 Kenichi Handa <handa@etl.go.jp>
3495
3496 * xdisp.c (get_next_display_element): In unibyte case, don't use
3497 octal form for such eight-bit characters that can be converted to
3498 multibyte char.
3499
3500 2002-08-26 Kim F. Storm <storm@cua.dk>
3501
3502 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
3503 and background colors. From Joe Buehler (tiny change).
3504
3505 2002-08-26 Miles Bader <miles@gnu.org>
3506
3507 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
3508
3509 2002-08-25 Andrew Choi <akochoi@shaw.ca>
3510
3511 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
3512 defined instead of MAC_OSX.
3513
3514 * s/darwin.h (select): Define select to sys_select only if
3515 HAVE_CARBON is defined.
3516 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
3517 (DONT_REOPEN_PTY): #def it.
3518
3519 * macterm.c (XTread_socket): Remove code to call
3520 SendEventToEventTarget for keys with command modifiers when
3521 mac_command_key_is_meta is nil.
3522
3523 2002-08-24 Andreas Schwab <schwab@suse.de>
3524
3525 * eval.c (Fdefvar): Fix last change.
3526
3527 2002-08-23 Richard M. Stallman <rms@gnu.org>
3528
3529 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
3530 Record variables in load history as (defvar . VAR).
3531 (Fdefvar): Don't record in load history if no initial value.
3532 (Qdefvar): New variable.
3533 (syms_of_eval): Init and staticpro it.
3534
3535 * lread.c (syms_of_lread): Doc fix.
3536 (build_load_history): Use Fmember to see if a definition
3537 is already in the Vload_history element.
3538
3539 * process.c (Fstart_process): Remove /: from program name.
3540
3541 * emacs.c (decode_env_path): Don't add /: if file name handler
3542 has a `safe-magic' property.
3543
3544 * callproc.c (Fcall_process): Remove /: from program name.
3545
3546 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
3547
3548 * regex.c (PATFETCH): Remove the translating fetch.
3549 (PATFETCH_RAW): Rename to PATFETCH.
3550 (set_image_of_range): New fun.
3551 (SET_RANGE_TABLE_WORK_AREA): Use it.
3552 (regex_compile): Don't translate the pattern chars so eagerly.
3553 Only do it when inserting an `exactn' bytecode or when handling
3554 a char-range.
3555 (mutually_exclusive_p): Avoid empty statement.
3556
3557 2002-08-22 Kim F. Storm <storm@cua.dk>
3558
3559 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
3560 end up on a partially visible line; this reverts a specific part
3561 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
3562 display error which has been reported several times now.
3563 However it introduces the problem that changes was supposed to fix.
3564 See my comments in the source if you want to debug this further.
3565
3566 2002-08-20 Kenichi Handa <handa@etl.go.jp>
3567
3568 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
3569
3570 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
3571
3572 * msdos.c (croak): Add `void' to definition.
3573
3574 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
3575 Don't define them, they are defined in msdos.c.
3576
3577 * mem-limits.h [MSDOS]: Declare etext.
3578
3579 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
3580 `const' since CORRECT_DIR_SEPS modifies its target.
3581
3582 2002-08-19 Kim F. Storm <storm@cua.dk>
3583
3584 * keyboard.c (Fclear_this_command_keys): Added optional arg
3585 KEEP-RECORD to avoid clearing lossage when we just want to clear
3586 the current key sequence (kmacro needs this).
3587
3588 2002-08-19 Kenichi Handa <handa@localhost>
3589
3590 * composite.c (run_composition_function): Call FUNC if it is fboundp.
3591
3592 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
3593 cons, return Qnil.
3594
3595 2002-08-17 Richard M. Stallman <rms@gnu.org>
3596
3597 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
3598
3599 * sysdep.c [!VMS]: Include sys/files.h.
3600
3601 * editfns.c (save_restriction_restore): Defend from unchained marker.
3602
3603 * buffer.c (overlays_at): Handle extending vec uniformly.
3604 (overlays_in): Handle extending vec from length 0 as in overlays_at.
3605
3606 2002-08-15 Andrew Choi <akochoi@shaw.ca>
3607
3608 * mac.c (init_mac_osx_environment): New function.
3609
3610 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
3611
3612 2002-08-14 Kim F. Storm <storm@cua.dk>
3613
3614 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
3615 executing macro before appending to it (when used from Lisp).
3616 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
3617 which is called prior to each iteration of macro (for kmacro.el).
3618 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
3619
3620 * lisp.h (Fexecute_kbd_macro): Update prototype.
3621
3622 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
3623
3624 2002-08-14 Kenichi Handa <handa@etl.go.jp>
3625
3626 * xselect.c (QUTF8_STRING): New variable.
3627 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
3628 (x_atom_to_symbol): Likewise.
3629 (x_get_local_selection): New argument local_request. If it is
3630 nonzero, call handler_fn with the second arg nil.
3631 (x_handle_selection_request): Call x_get_local_selection with
3632 local_request 0.
3633 (lisp_data_to_selection_data): Don't encode the string here.
3634 (Fx_get_selection_internal): Call x_get_local_selection with
3635 local_request 1.
3636 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
3637
3638 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
3639
3640 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
3641
3642 2002-08-13 Richard M. Stallman <rms@gnu.org>
3643
3644 * minibuf.c (Fminibufferp): New function.
3645 (syms_of_minibuf): Defsubr it.
3646 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
3647
3648 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
3649
3650 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
3651
3652 2002-08-12 Richard M. Stallman <rms@gnu.org>
3653
3654 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
3655 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
3656 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
3657 already.
3658
3659 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
3660
3661 2002-08-11 Andrew Choi <akochoi@shaw.ca>
3662
3663 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
3664 (Vmac_pass_command_to_system): New variable.
3665 (Vmac_pass_control_to_system): New variable.
3666 (do_mouse_moved): Check wp with is_emacs_window.
3667 (XTread_socket): Check window_ptr with is_emacs_window.
3668 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
3669 events back to Mac Toolbox for processing, depending on values of
3670 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
3671 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
3672 Vmac_pass_control_to_system.
3673
3674 2002-08-10 Kenichi Handa <handa@etl.go.jp>
3675
3676 * coding.c (unencodable_char_position): New function.
3677 (Funencodable_char_position): New function.
3678 (syms_of_coding): Defsubr Funencodable_char_position.
3679
3680 2002-08-10 Andrew Choi <akochoi@shaw.ca>
3681
3682 * mac.c (sys_select) [MAC_OSX]: New function.
3683
3684 * macterm.c (MakeMeTheFrontProcess): New function.
3685 (mac_initialize): Call MakeMeTheFrontProcess.
3686
3687 * s/darwin.h: Define select to sys_select.
3688
3689 2002-08-09 Richard M. Stallman <rms@gnu.org>
3690
3691 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
3692
3693 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
3694
3695 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
3696 end of the buffer.
3697
3698 2002-08-08 Ken Raeburn <raeburn@mit.edu>
3699
3700 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
3701
3702 * puresize.h (BASE_PURESIZE): Increase to 910000.
3703
3704 2002-08-08 Kenichi Handa <handa@etl.go.jp>
3705
3706 * coding.c (Ffind_operation_coding_system): For write-region, if
3707 VISIT is a filename, make it the target.
3708
3709 2002-08-07 Richard M. Stallman <rms@gnu.org>
3710
3711 * alloc.c (mark_object): Detect long lists for debugging.
3712 (mark_object_loop_halt): New variable.
3713
3714 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
3715
3716 * data.c (Fmake_variable_frame_local): Doc fix.
3717
3718 2002-08-01 David Ponce <david@dponce.com>
3719
3720 * w32menu.c (local_heap, local_alloc, local_free): New macros.
3721 (malloc_widget_value, free_widget_value)
3722 (w32_free_submenu_strings): Use them.
3723
3724 (push_submenu_start, push_submenu_end, push_left_right_boundary)
3725 (push_menu_pane, push_menu_item, single_keymap_panes)
3726 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
3727 (single_submenu, set_frame_menubar)
3728 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
3729
3730 (Fx_popup_menu): Don't show pop up menu until preceding one is
3731 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
3732
3733 * w32menu.c: Changes adapted from xmenu.c
3734 (set_frame_menubar): First parse all submenus,
3735 then make widget_value trees from them.
3736 Don't allocate any widget_value objects
3737 until we are done with the parsing.
3738 (parse_single_submenu): New function.
3739 (digest_single_submenu): New function.
3740 (single_submenu): Function deleted, replaced by those two.
3741
3742 2002-08-04 Andrew Choi <akochoi@shaw.ca>
3743
3744 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
3745 returns a valid window pointer before proceeding for keyDown and
3746 autoKey events.
3747
3748 2002-08-03 Andrew Choi <akochoi@shaw.ca>
3749
3750 * macterm.c (USE_CARBON_EVENTS): New macro.
3751 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
3752 (x_iconify_frame): Call CollapseWindow.
3753 (Vmac_reverse_ctrl_meta): New variable.
3754 (Vmac_wheel_button_is_mouse_2): New variable.
3755 (init_mac_drag_n_drop): New function.
3756 (mac_do_receive_drag): New function.
3757 (mac_handle_service_event): New function.
3758 (init_service_handler): New function.
3759 (mac_to_emacs_modifiers): New function.
3760 (mac_event_to_emacs_modifiers): New function.
3761 (mac_get_mouse_btn): New function.
3762 (mac_convert_event_ref): New function.
3763 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
3764 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
3765 mac_get_mouse_btn.
3766 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
3767
3768 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
3769 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
3770 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
3771 TOOL_BAR_EVENT for MAC_OS as well.
3772 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
3773 as for WINDOWS_NT.
3774 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
3775
3776 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
3777
3778 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
3779
3780 * xdisp.c (forward_to_next_line_start): Fix a condition that
3781 lead to a newline being skipped.
3782
3783 2002-08-02 Andrew Choi <akochoi@shaw.ca>
3784
3785 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
3786
3787 2002-08-01 Richard M. Stallman <rms@gnu.org>
3788
3789 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
3790
3791 2002-07-31 Andrew Choi <akochoi@shaw.ca>
3792
3793 * macfns.c: #undef init_process before #define-ing it.
3794
3795 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
3796 HAVE_CARBON is defined.
3797
3798 2002-07-31 Richard M. Stallman <rms@gnu.org>
3799
3800 * xmenu.c (set_frame_menubar): First parse all submenus,
3801 then make widget_value trees from them.
3802 Don't allocate any widget_value objects
3803 until we are done with the parsing.
3804 (parse_single_submenu): New function.
3805 (digest_single_submenu): New function.
3806 (single_submenu): Function deleted, replaced by those two.
3807
3808 2002-07-30 Juanma Barranquero <lektu@terra.es>
3809
3810 * w32proc.c (syms_of_ntproc): Fix docstring of
3811 `w32-get-true-file-attributes'.
3812
3813 2002-07-28 Richard M. Stallman <rms@gnu.org>
3814
3815 * s/hpux8.h (HPUX8): Define this before including hpux.h.
3816 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
3817
3818 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
3819
3820 * keyboard.c (make_lispy_event):
3821 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
3822 Explicitly clear up_modifier in event->modifiers.
3823
3824 2002-07-27 Richard M. Stallman <rms@gnu.org>
3825
3826 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
3827
3828 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
3829 for bar cursor.
3830
3831 2002-07-26 Kenichi Handa <handa@etl.go.jp>
3832
3833 * coding.c (detect_coding_iso2022): While checking a byte sequence
3834 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
3835 it in the normal loop.
3836
3837 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
3838
3839 * xterm.c (expose_overlaps): New function.
3840 (expose_window): Use it to fix the display of overlapping rows.
3841
3842 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
3843
3844 2002-07-23 Ken Raeburn <raeburn@gnu.org>
3845
3846 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
3847 since it only depends on XUINT.
3848
3849 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
3850 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
3851 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
3852 Macros deleted.
3853
3854 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
3855 its value over other approaches.
3856 * sysdep.c (start_of_data): Don't define the function if a macro
3857 form has been defined.
3858
3859 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
3860
3861 * xdisp.c (redisplay_updating_p): New variable.
3862 (init_iterator): Don't free realized faces when
3863 redisplay_updating_p is set.
3864 (redisplay_internal): Set redisplay_updating_p while updating
3865 the display.
3866
3867 2002-07-23 Richard M. Stallman <rms@gnu.org>
3868
3869 * editfns.c (Fmessage): Treat "" like nil.
3870
3871 2002-07-23 Kenichi Handa <handa@etl.go.jp>
3872
3873 * xdisp.c (face_before_or_after_it_pos):
3874 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
3875
3876 2002-07-22 Juanma Barranquero <lektu@terra.es>
3877
3878 * callproc.c (init_callproc) [DOS_NT]:
3879 Initialize Vshared_game_score_directory to nil.
3880 (syms_of_callproc) [DOS_NT]: Likewise.
3881
3882 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
3883
3884 * xdisp.c (display_line): Replace an abort with xassert.
3885
3886 2002-07-21 Richard M. Stallman <rms@gnu.org>
3887
3888 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
3889 and END_UNCHANGED when setting buffer_unchanged_p.
3890 Use current_matrix_up_to_date_p to decide whether to use
3891 try_cursor_movement.
3892
3893 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
3894
3895 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
3896
3897 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
3898 Set to nil if dir does not exist.
3899 (syms_of_callproc): Init unconditionally and simply.
3900
3901 * buffer.c (Fbuffer_list): Doc fix.
3902
3903 2002-07-21 Ken Raeburn <raeburn@gnu.org>
3904
3905 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
3906
3907 * buffer.c (mmap_realloc): When shrinking, make sure number of
3908 pages to unmap is rounded towards zero.
3909
3910 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
3911 (XSETINT): Deleted.
3912
3913 * m/att3b.h (XINT): Don't define.
3914 (VALBITS, VALMASK, XTYPE): Deleted.
3915 (DATA_SEG_BITS): Define.
3916 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
3917 ARRAY_MARK_FLAG): Deleted.
3918 (DATA_SEG_BITS): Define.
3919 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
3920 (DATA_SEG_BITS): Define.
3921
3922 2002-07-20 Richard M. Stallman <rms@gnu.org>
3923
3924 * print.c (print_error_message): New args CONTEXT and CALLER.
3925 Calls changed.
3926
3927 * lisp.h (print_error_message): Declare new args.
3928
3929 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
3930 and CONTEXT to print_error_message, don't print them here.
3931 For a Quit, don't use Vsignaling_function.
3932 Call message_log_maybe_newline.
3933
3934 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
3935
3936 2002-07-20 Kim F. Storm <storm@cua.dk>
3937
3938 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
3939
3940 2002-07-19 Ken Raeburn <raeburn@gnu.org>
3941
3942 * bytecode.c (struct byte_stack): Pointers into byte string now
3943 point to const.
3944 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
3945 const.
3946 * charset.h (BCOPY_SHORT): Source pointer now points to const.
3947 * coding.c (encode_eol, detect_coding, detect_eol):
3948 (decode_coding, encode_coding, detect_coding_system):
3949 Source strings now treated as const.
3950 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
3951 modify Lisp string contents.
3952 * coding.h (decode_coding, encode_coding, detect_coding,
3953 detect_eol): Declarations updated.
3954 * composite.c (compose_chars_in_text): Treat Lisp string contents
3955 as const.
3956 * dispnew.c (safe_bcopy): Source pointer now points to const.
3957 * lisp.h (STRING_COPYIN): New macro.
3958 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
3959 (internal_with_output_to_temp_buffer): Declarations updated.
3960 * print.c (temp_output_buffer_setup):
3961 (internal_with_output_to_temp_buffer): Buffer name argument is now
3962 pointer to const.
3963 * sound.c (struct sound_device): Function pointer field "write"
3964 buffer argument now points to const.
3965 (vox_write): Buffer argument points to const.
3966 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
3967 contents as const.
3968 * sysdep.c (emacs_write): Buffer pointer now const.
3969 * term.c (encode_terminal_code): Buffer pointer now const.
3970 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
3971 (x_face_list_fonts, x_update_menu_appearance):
3972 (hash_string_case_insensitive): Treat Lisp string contents as const.
3973
3974 2002-07-19 Juanma Barranquero <lektu@terra.es>
3975
3976 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
3977 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
3978
3979 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
3980
3981 * fileio.c (syms_of_fileio): Likewise.
3982
3983 2002-07-18 Richard M. Stallman <rms@gnu.org>
3984
3985 * data.c (Fdefalias): Doc fix.
3986
3987 2002-07-17 Dave Love <fx@gnu.org>
3988
3989 * intervals.h (text_property_stickiness): Use P_.
3990
3991 * ccl.c: Remove `emacs' conditionals.
3992 (ccl_backtrace_table): Fix size spec.
3993 (ccl_driver): Fix type errors.
3994
3995 2002-07-16 Ken Raeburn <raeburn@gnu.org>
3996
3997 * alloc.c (xstrdup, make_string, make_unibyte_string)
3998 (make_multibyte_string, build_string): String pointer args now
3999 point to const.
4000 * charset.c (find_charset_in_text, c_string_width):
4001 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
4002 * fileio.c (report_file_error):
4003 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
4004 (count_combining_before, count_combining_after, insert_1_both):
4005 (insert, insert_and_inherit, insert_string):
4006 (insert_before_markers, insert_before_markers_and_inherit):
4007 * lread.c (intern, oblookup, hash_string):
4008 * minibuf.c (temp_echo_area_glyphs):
4009 * search.c (fast_c_string_match_ignore_case):
4010 * sysdep.c (emacs_open, set_file_times):
4011 * xfaces.c (xstricmp):
4012 * xdisp.c (store_frame_title, string_char_and_length):
4013 (message_dolog, message2, message2_nolog, set_message): Likewise.
4014 (set_message_1): Cast message string argument to const pointer.
4015 * editfns.c (general_insert_function): Insertion function now
4016 takes pointer to const for input data.
4017 * charset.h (find_charset_in_text, c_string_width):
4018 (parse_str_as_multibyte): Declarations updated.
4019 * dispextern.h (xstricmp): Declaration updated.
4020 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
4021 (count_size_as_multibyte, count_combining_before):
4022 (count_combining_after, insert_1, insert_1_both, message_dolog):
4023 (insert, insert_and_inherit, insert_before_markers)
4024 (insert_before_markers_and_inherit, set_message, message2):
4025 (message2_dolog, build_string, make_string, make_unibyte_string):
4026 (make_multibyte_string, intern, oblookup, report_file_error):
4027 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
4028 (emacs_open, xstrdup): Declarations updated.
4029 * systime.h (set_file_times): Declaration updated.
4030
4031 * charset.c (find_charset_in_text, lisp_string_width): Use const
4032 for pointer to lisp string data.
4033 * charset.h (FETCH_STRING_CHAR_ADVANCE):
4034 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
4035 * coding.c (Ffind_coding_systems_region_interval):
4036 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
4037 (Fmake_directory_internal, Fdelete_directory):
4038 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
4039 * fontset.c (font_family_registry, fs_query_fontset):
4040 (list_fontsets):
4041 * frame.c (Fframe_parameter):
4042 * keyboard.c (cmd_error_internal):
4043 * keymap.c (Fdescribe_buffer_bindings):
4044 * lread.c (complete_filename_p, openp):
4045 * minibuf.c (Fminibuffer_complete_word):
4046 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
4047 (face_before_or_after_it_pos, next_element_from_string):
4048 (get_overlay_arrow_glyph_row, display_mode_element):
4049 (decode_mode_spec_coding):
4050 * xterm.c (same_x_server): Likewise.
4051
4052 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
4053 settings of non-existent fields.
4054
4055 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
4056 copy a lisp value.
4057
4058 * lread.c (Fintern_soft): Use string macros instead of
4059 Lisp_String fields.
4060 * keyboard.c (echo_char, parse_modifiers_uncached):
4061 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
4062 * textprop.c (validate_interval_range, interval_of): Likewise.
4063
4064 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
4065
4066 * charset.h (FETCH_STRING_CHAR_ADVANCE)
4067 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
4068 XSTRING()->size_byte.
4069
4070 * lisp.h (SDATA, SREF): Produce rvalue.
4071 (SSET): New macro.
4072 * alloc.c (make_event_array): Use SSET for storing into a string.
4073 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
4074 a string.
4075 * casefiddle.c (casify_object): Use SSET.
4076 * charset.h (FETCH_STRING_CHAR_ADVANCE)
4077 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
4078 address of string contents.
4079 * data.c (Faref): Use SDATA.
4080 (Faset): Use SDATA, SSET.
4081 * dired.c (directory_files_internal): Use SSET.
4082 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
4083 (Fread_file_name): Use SREF, SSET.
4084 * fns.c (concat): Use SSET.
4085 (concat, Fdelete): Use SDATA.
4086 * insdel.c (insert_from_string_1): Use SDATA.
4087 * keyboard.c (Fevent_convert_list): Use SREF.
4088 * lread.c (Fload): Use SDATA, SSET.
4089 * macfns.c (validate_x_resource_name): Use SSET.
4090 * process.c (status_message): Use SSET.
4091 * search.c (wordify): Use SDATA.
4092 (Freplace_match): Use SREF.
4093 * w32fns.c (validate_x_resource_name): Use SSET.
4094 * xfns.c (validate_x_resource_name): Use SSET.
4095 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
4096
4097 2002-07-16 Richard M. Stallman <rms@gnu.org>
4098
4099 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
4100
4101 * xdisp.c (reconsider_clip_changes):
4102 Don't test prevent_redisplay_optimizations_p.
4103 (redisplay_internal): Test prevent_redisplay_optimizations_p
4104 along with clip_changed in some cases.
4105 (try_window_id): Likewise.
4106 (redisplay_window): New local var buffer_unchanged_p.
4107
4108 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
4109
4110 * process.c (create_process): Test USG_SUBTTY_WORKS.
4111 (process_send_signal): Clean up handling of GID.
4112 Detect errors in ioctls meant to set GID.
4113
4114 * window.c (temp_output_buffer_show):
4115 Don't set prevent_redisplay_optimizations_p.
4116
4117 2002-07-15 Juanma Barranquero <lektu@terra.es>
4118
4119 * eval.c (Fdefvaralias): Add docstring argument.
4120
4121 2002-07-15 Ken Raeburn <raeburn@gnu.org>
4122
4123 * lisp.h (STRING_INTERVALS): Produce rvalue.
4124 (STRING_SET_INTERVALS): New macro.
4125 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
4126 * fns.c (Fstring_as_multibyte): Likewise.
4127 * intervals.c (balance_possible_root_interval, delete_interval)
4128 (create_root_interval, copy_intervals_to_string): Likewise.
4129 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
4130 instead of 0.
4131
4132 2002-07-14 Ken Raeburn <raeburn@gnu.org>
4133
4134 * lisp.h (STRING_SET_CHARS): New macro.
4135 (SCHARS, SBYTES): Produce rvalues.
4136 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
4137 * fns.c (concat): Likewise.
4138 * lread.c (read_vector): Likewise.
4139
4140 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
4141 (STRING_SET_UNIBYTE): New macro.
4142 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
4143 length of -1) changed to use STRING_SET_UNIBYTE.
4144 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
4145 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
4146 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
4147 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
4148 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
4149 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
4150 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
4151 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
4152 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
4153 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
4154 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
4155 STRING_BYTES or indirection changed to SCHARS, SBYTES,
4156 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
4157 unchanged for now.
4158
4159 2002-07-13 Kim F. Storm <storm@cua.dk>
4160
4161 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
4162
4163 2002-07-12 Richard M. Stallman <rms@gnu.org>
4164
4165 * fileio.c (Fwrite_region): Doc fix.
4166
4167 * print.c (print_error_message): Don't handle Vsignaling_function here.
4168
4169 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
4170 (command_loop_1): Avoid certain actions after memory-full error.
4171
4172 * eval.c (Fsignal): Don't call cancel_hourglass.
4173 For a memory-full error, don't call Vsignal_hook_function
4174 and don't set Vsignaling_function.
4175
4176 * process.c (process_send_signal): Add abort call.
4177
4178 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
4179
4180 * keymap.c (Fkey_binding): Fix typo.
4181
4182 2002-07-11 Richard M. Stallman <rms@gnu.org>
4183
4184 * alloc.c (Vmemory_full): New variable.
4185 (Vmemory_signal_data): Renamed from memory_signal_data.
4186 Uses changed.
4187 (syms_of_alloc): Defvar them.
4188 (memory_full, buffer_memory_full): Set Vmemory_full.
4189
4190 * lisp.h (Vmemory_full): Add declaration.
4191 (current_column, indented_beyond_p): Change declaration.
4192
4193 * indent.c (last_known_column): Declare as double, not float.
4194 (current_column, current_column_1, string_display_width)
4195 (position_indentation): Return `double'.
4196 (indented_beyond_p): Arg `column' is `double'. Callers changed.
4197
4198 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
4199 (back_to_previous_visible_line_start)
4200 (reseat_at_next_visible_line_start, next_element_from_buffer):
4201 Use `double', not `float', when calling indented_beyond_p.
4202
4203 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
4204
4205 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
4206
4207 2002-07-11 Juanma Barranquero <lektu@terra.es>
4208
4209 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
4210 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
4211 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
4212 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
4213 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
4214 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
4215
4216 2002-07-10 Juanma Barranquero <lektu@terra.es>
4217
4218 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
4219 changed.
4220
4221 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
4222
4223 * data.c (Fdefalias): Add an optional `docstring' argument.
4224 (set_internal, Fsetq_default): Use XCAR/XCDR.
4225
4226 * composite.c (HASH_VALUE, HASH_KEY):
4227 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
4228
4229 2002-07-09 Kenichi Handa <handa@etl.go.jp>
4230
4231 * callproc.c (Fcall_process): Fix previous change.
4232
4233 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
4234
4235 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
4236 Add support for hash-tables.
4237 (Ftry_completion): Return t even if the string appears multiple times.
4238
4239 * fns.c (Fnconc): Use XCDR.
4240 (Fprovide): Use CONSP and XCDR.
4241 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
4242 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
4243 (Fmake_hash_table): Accept `:size nil'.
4244 (Fmakehash): Delete: moved to subr.el.
4245 (syms_of_fns): Don't defsubr makehash.
4246
4247 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
4248 (HASH_TABLE_SIZE): Move from fns.c.
4249
4250 2002-07-07 Richard M. Stallman <rms@gnu.org>
4251
4252 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
4253 Instead just return 0 when there is something to be done.
4254 (try_scrolling): If make_cursor_line_fully_visible returns 0,
4255 retry scrolling as if cursor were off the bottom.
4256 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
4257 return CURSOR_MOVEMENT_MUST_SCROLL.
4258 (redisplay_window): If make_cursor_line_fully_visible returns 0,
4259 go to try_to_scroll.
4260
4261 * buffer.c (Fbuffer_local_value): Store current value into its binding
4262 so we get the up-to-date value for the binding that is loaded.
4263
4264 * eval.c (Fdefmacro): Doc fix.
4265
4266 2002-07-05 Dave Love <fx@gnu.org>
4267
4268 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
4269 correctly.
4270
4271 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
4272 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
4273 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
4274 CCL_LookupCharConstTbl.
4275 (syms_of_ccl): Defvar translation-hash-table-vector.
4276
4277 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4278
4279 * xdisp.c: Remove unused variable `face'.
4280
4281 2002-07-04 Juanma Barranquero <lektu@terra.es>
4282
4283 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
4284 obsolescence information.
4285
4286 2002-07-03 Andrew Choi <akochoi@shaw.ca>
4287
4288 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
4289 pattern. Search cache first.
4290 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
4291 for Japanese font.
4292 (XLoadQueryFont): Use it.
4293
4294 2002-07-02 Richard M. Stallman <rms@gnu.org>
4295
4296 * keymap.c (Fdefine_key): Doc fix.
4297
4298 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
4299
4300 2002-07-02 Juanma Barranquero <lektu@terra.es>
4301
4302 * keymap.c (syms_of_keymap): Fix typo.
4303
4304 2002-07-01 Andrew Choi <akochoi@shaw.ca>
4305
4306 * s/darwin.h: Define POSIX_SIGNALS.
4307
4308 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
4309 and FSRefMakePath to convert FSSpec returned with Apple Event to
4310 Posix pathname.
4311 (mac_initialize) [TARGET_API_MAC_CARBON]:
4312 Call init_required_apple_events and disable the `Quit' menu item
4313 provided automatically by the Carbon Toolbox.
4314
4315 2002-07-01 Dave Love <fx@gnu.org>
4316
4317 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
4318 for K&R.
4319
4320 * xterm.c: Fix prototype for K&R.
4321
4322 * term.c (costs_set): Declare static, non-initialized for pcc.
4323
4324 2002-07-01 Richard M. Stallman <rms@gnu.org>
4325
4326 * keyboard.c (timer_last_idleness_start_time): New variable.
4327 (timer_start_idle): Set that.
4328 (read_key_sequence): Use that to reset timer_idleness_start_time
4329 to previous value.
4330
4331 * window.c (Frecenter): With arg, set optional_new_start.
4332
4333 * xdisp.c (redisplay_internal): Make optional_new_start really work.
4334
4335 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
4336 buffer for completion.
4337
4338 2002-06-29 Ken Raeburn <raeburn@gnu.org>
4339
4340 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
4341
4342 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4343
4344 * keyboard.c (readable_filtered_events): New function that filters
4345 FOCUS_IN_EVENT depending on parameter.
4346 (readable_events): Calls readable_filtered_events, not filtering
4347 FOCUS_IN_EVENT.
4348 (get_filtered_input_pending): New function, filtering parameter passed
4349 to readable_filtered_events.
4350 (get_input_pending): Calls get_filtered_input_pending, not filtering
4351 FOCUS_IN_EVENT.
4352 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
4353 FOCUS_IN_EVENT.
4354
4355 * xterm.h (struct x_output): Add focus_state.
4356
4357 * xterm.c (x_focus_changed): New function.
4358 (x_detect_focus_change): New function.
4359 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
4360 EnterNotify and LeaveNotify to track X focus changes.
4361
4362 2002-06-28 Andreas Schwab <schwab@suse.de>
4363
4364 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
4365
4366 2002-06-27 Kim F. Storm <storm@cua.dk>
4367
4368 * xdisp.c: (mode_line_string_list, mode_line_string_face)
4369 (mode_line_string_face_prop): New variables.
4370 (store_mode_line_string): New function.
4371 (display_mode_element): Use store_mode_line_string to
4372 add mode-line string elements to mode_line_string_list
4373 when mode_line_string_list is non-nil.
4374 (Fformat_mode_line): Now returns propertized string by
4375 default. New arg NO-PROPS to ignore properties.
4376 (decode_mode_spec): Only add two dashes for %- in propertized
4377 mode-line string.
4378 (syms_of_xdisp): Init and staticpro mode_line_string_list.
4379
4380 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
4381
4382 * minibuf.c (minibuffer_completion_contents): Add return type.
4383
4384 2002-06-27 Juanma Barranquero <lektu@terra.es>
4385
4386 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
4387
4388 2002-06-26 Juanma Barranquero <lektu@terra.es>
4389
4390 * fileio.c (read_file_name_cleanup): Add missing return.
4391
4392 2002-06-26 Richard M. Stallman <rms@gnu.org>
4393
4394 * window.c (Frecenter): Don't set force_start flag.
4395
4396 * minibuf.c (do_completion, Fminibuffer_complete_word)
4397 (Fminibuffer_completion_help): Complete just the text before point.
4398 (minibuffer_completion_contents): New function.
4399
4400 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
4401
4402 * frame.c (frames_bury_buffer): Function deleted.
4403
4404 2002-06-25 Miles Bader <miles@gnu.org>
4405
4406 * callint.c (Fcall_interactively): When checking to see if doprnt hit
4407 the end of callint_message, allow for a terminating '\0'.
4408
4409 2002-06-24 Juanma Barranquero <lektu@terra.es>
4410
4411 * w32select.c: Include composite.h
4412
4413 * w16select.c: Likewise.
4414
4415 2002-06-24 Kenichi Handa <handa@etl.go.jp>
4416
4417 * callproc.c (Fcall_process): If code detection is necessary,
4418 call detect_coding directly here.
4419
4420 * coding.c (detect_eol): Preserve coding->cmp_data.
4421
4422 * w16select.c (Fw16_get_clipboard_data):
4423 * w32fns.c (w32_to_x_font):
4424 * w32select.c (Fw32_get_clipboard_data):
4425 * xselect.c (selection_data_to_lisp_data):
4426 * xterm.c (XTread_socket): Disable composition handling.
4427
4428 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
4429
4430 * print.c (temp_output_buffer_setup): Kill all local variables.
4431
4432 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
4433
4434 * lread.c (Fread): Remove redundant and imprecise declaration.
4435
4436 * xfns.c (check_x_display_info): Use check_x_frame.
4437
4438 * .gdbinit (xprintsym): Use the new `xname' field.
4439 (xsymbol): Use it.
4440
4441 2002-06-22 Jason Rumney <jasonr@gnu.org>
4442
4443 * w32fns.c (file_dialog_callback): New function.
4444 (Fx_file_dialog): Allow selecting directories as well as files.
4445
4446 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4447
4448 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
4449 OpenBSD. Add support for mipseb-*-netbsd* machines.
4450
4451 2002-06-17 Andrew Choi <akochoi@shaw.ca>
4452
4453 * macterm.c (mac_scroll_area): Set foreground and backcolor to
4454 black and white before scrolling. Restore frame background and
4455 foreground color after scrolling.
4456 (do_window_update): Call XClearWindow before calling expose_frame.
4457 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
4458 FRAME_FOREGROUND_PIXEL of frame.
4459
4460 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
4461 test Mac command key as <ALT> key.
4462
4463 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
4464
4465 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
4466
4467 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
4468 Lookup keys in function-key-map immediately so that key-translation-map
4469 can be applied earlier.
4470 Remove function_key_possible and key_translation_possible, replaced
4471 by checking `keytran_start < t'.
4472
4473 * .gdbinit (xsymbol): Use the new `xname' field.
4474
4475 2002-06-17 Andrew Choi <akochoi@shaw.ca>
4476
4477 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
4478 test Mac command key as <ALT> key.
4479
4480 * mac.c (do_applescript): Call initialize_applescript if necessary
4481 when first called. Dispose of result_desc only when there is no error.
4482 (Fdo_applescript): Use %d format specifier instead of %ld.
4483
4484 2002-06-16 Andrew Choi <akochoi@shaw.ca>
4485
4486 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
4487 of FrontWindow for cases keyDown and autoKey.
4488
4489 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
4490 Vdefault_fontset to Monaco with mac-roman coding.
4491
4492 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
4493 init_process before and after inclusion of Carbon/Carbon.h, resp.
4494
4495 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
4496 cursor_gc.
4497 (add_font_name_table_entry): New function.
4498 (init_font_name_table): Use add_font_name_table_entry; add italic,
4499 bold, and bold-italic entries for truetype fonts.
4500
4501 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
4502 for Mac too.
4503 (try_font_list) [MAC_OS]: If no font matches given registry, try
4504 fonts with any registry matching face_family.
4505 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
4506
4507 * s/darwin.h: If autoconf detects the Ncurses library, define
4508 LIBS_TERMCAP to -lncurses to use it.
4509
4510 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
4511
4512 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
4513
4514 2002-06-15 Richard M. Stallman <rms@gnu.org>
4515
4516 * window.c (Fset_window_configuration): Explicitly preserve
4517 the point value that new_current_buffer had at the start.
4518
4519 2002-06-14 Juanma Barranquero <lektu@terra.es>
4520
4521 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
4522 Fix typos.
4523
4524 2002-06-14 Kim F. Storm <storm@cua.dk>
4525
4526 * insdel.c (insert_1_both, insert_from_string_1)
4527 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
4528 insert happened in the end_unchanged region. Otherwise, the
4529 redisplay may be confused and duplicate the last line in the
4530 buffer [seen after save-buffer when require-final-newline==t].
4531
4532 2002-06-13 Jason Rumney <jasonr@gnu.org>
4533
4534 * w32.c (init_environment): Remove EMACSLOCKDIR.
4535 (stat): Swap _S_IFDIR and _S_IFREG.
4536
4537 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4538
4539 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
4540 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
4541 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
4542 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
4543 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
4544 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
4545 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
4546 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
4547 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
4548 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
4549 SELECTION_REQUEST_EVENT, selection_clear_event to
4550 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
4551 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
4552 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
4553 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
4554 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
4555 no_event to NO_EVENT.
4556
4557 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4558
4559 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
4560
4561 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
4562
4563 * intervals.c (textget): Don't forget to `return'.
4564 (lookup_char_property): Use XCAR/XCDR.
4565
4566 2002-06-12 Juanma Barranquero <lektu@terra.es>
4567
4568 * xdisp.c (Fformat_mode_line): Fix typo.
4569
4570 2002-06-12 Kim F. Storm <storm@cua.dk>
4571
4572 * xdisp.c (Fformat_mode_line): New function.
4573 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
4574 (store_frame_title_char, store_frame_title): Use unconditionally.
4575 (init_xdisp): Defsubr Fformat_mode_line.
4576 Initialize frame_title_buf etc. unconditionally.
4577
4578 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
4579
4580 * keyboard.c (read_key_sequence):
4581 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
4582 things through those maps after downcasing events.
4583 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
4584 applies after function-key-map.
4585 Make sure that keytran can be done in the middle in the sequence.
4586 Be careful not to throw away events past the one we downcase.
4587
4588 * lread.c (read_integer): Remove unused var `tem'.
4589 (read1): Fix int/Lisp_Object mixup.
4590
4591 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
4592
4593 2002-06-11 Richard M. Stallman <rms@gnu.org>
4594
4595 * keyboard.c (readable_events): Ignore any number of
4596 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
4597
4598 2002-06-09 Miles Bader <miles@gnu.org>
4599
4600 * xfaces.c (Ftty_supports_face_attributes_p): New function.
4601 (parse_rgb_list, tty_lookup_color): New functions.
4602 (tty_defined_color): Use `tty_lookup_color' to do all the work.
4603 (color_distance, Fcolor_distance): New functions.
4604 (TTY_SAME_COLOR_THRESHOLD): New macro.
4605 (Qtty_color_standard_values): New variable.
4606 (syms_of_xfaces): Initialize new vars & functions.
4607
4608 2002-06-08 Colin Walters <walters@verbum.org>
4609
4610 * textprop.c (Vchar_property_alias_alist): New variable.
4611 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
4612
4613 * intervals.c (lookup_char_property): New function for looking up
4614 overlay and text properties, created from textget.
4615 (textget): Use it.
4616
4617 * intervals.h (lookup_char_property): Declare.
4618 (Vchar_property_alias_alist): Declare.
4619
4620 * buffer.c (Foverlay_get): Use lookup_char_property.
4621
4622 2002-06-07 Sam Steingold <sds@gnu.org>
4623
4624 * xselect.c (lisp_data_to_selection_data): Fix last change:
4625 *data_ret is not a Lisp string, while unibyte_string is.
4626
4627 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
4628
4629 * xselect.c (lisp_data_to_selection_data): Fix last change:
4630 set size_ret.
4631
4632 2002-06-07 Andreas Schwab <schwab@suse.de>
4633
4634 * m/amdx86-64.h: New file.
4635
4636 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
4637
4638 * fns.c (Fstring_make_unibyte): Doc fix.
4639
4640 * xselect.c (lisp_data_to_selection_data): If the requested type
4641 is STRING, call string_make_unibyte to encode the selected text
4642 as a string.
4643
4644 * window.c (Fset_window_hscroll): Doc fix.
4645
4646 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4647
4648 * fileio.c (choose_write_coding_system):
4649 Call select-safe-coding-system properly.
4650
4651 2002-06-03 Richard M. Stallman <rms@gnu.org>
4652
4653 * xdisp.c (message_with_string): Error if STRING is not a string.
4654
4655 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
4656
4657 * fileio.c (choose_write_coding_system): Pass FILE arg to
4658 Vselect_safe_coding_system_function.
4659
4660 2002-06-03 Ken Raeburn <raeburn@gnu.org>
4661
4662 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
4663
4664 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
4665
4666 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
4667 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
4668 * keymap.c (describe_command): Likewise.
4669 * minibuf.c (read_minibuf): Likewise.
4670
4671 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
4672 Cast `current_column' return value to int.
4673 (back_to_previous_visible_line_start)
4674 (reseat_at_next_visible_line_start, next_element_from_buffer):
4675 Cast `indented_beyond_p' 3rd arg to float.
4676
4677 * indent.c (last_known_column): Now a float.
4678 (current_column_1, position_indentation, current_column)
4679 (string_display_width): Return float.
4680 (Fcurrent_column): Cast `current_column' return value to int.
4681 (Fcurrent_indentation): Cast `position_indentation' retval to int.
4682 (indented_beyond_p): Third arg now a float.
4683 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
4684
4685 * lisp.h (current_column): Now returns float.
4686 (indented_beyond_p): 3rd arg now a float.
4687
4688 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
4689
4690 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
4691 is Qcompound_text_with_extensions.
4692
4693 * xselect.c (lisp_data_to_selection_data): Always set selection
4694 type as string if x_encode_text returns streingp non-NULL.
4695
4696 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
4697
4698 2002-05-30 Richard M. Stallman <rms@gnu.org>
4699
4700 * window.c (Fset_window_configuration): Correct the handling
4701 of point in current buffer, to work with multiple windows.
4702
4703 2002-05-29 Colin Walters <walters@verbum.org>
4704
4705 * lread.c (Fread_from_string): Don't depend on order of evaluation
4706 for C function parameters.
4707
4708 2002-05-28 Richard M. Stallman <rms@gnu.org>
4709
4710 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
4711 way for blinked-off state and for a nonselected window.
4712
4713 * window.c (window_scroll_pixel_based): Don't call Fbolp;
4714 instead, see if the new start pos is at beginning of line.
4715
4716 * fileio.c (Fwrite_region): If START is a string, don't
4717 make any annotations.
4718
4719 * eval.c (syms_of_eval): Doc fix.
4720
4721 2002-05-28 Colin Walters <walters@debian.org>
4722
4723 * emacs.c (USAGE1): Add --no-splash.
4724 (standard_args): Ditto.
4725
4726 2002-05-28 Colin Walters <walters@gnu.org>
4727
4728 * lread.c (readchar_count): New variable.
4729 (readchar): Increment it.
4730 (unreadchar): Decrement it.
4731 (read_multibyte): Decrement it.
4732 (Vread_with_symbol_positions): New variable.
4733 (Vread_symbol_positions_list): New variable.
4734 (read_internal_start): New function, created from Fread and
4735 Fread_from_string. Handle Vread_symbol_positions_list and
4736 Vread_with_symbol_positions.
4737 (readevalloop, Fread, Fread_from_string): Use it.
4738 (read1): Use readchar_count to add symbol positions to
4739 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
4740 (syms_of_lread): DEFVAR_LISP and initialize them.
4741
4742 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
4743 (substitute_object_recurse, substitute_object_in_subtree)
4744 (substitute_in_interval): Prototype.
4745 (read_multibyte): Return c if it's less than zero.
4746
4747 2002-05-28 Kim F. Storm <storm@cua.dk>
4748
4749 * fileio.c (Fread_file_name_internal): Added brute-force
4750 speed up for using predicate file-directory-p.
4751
4752 2002-05-28 Kim F. Storm <storm@cua.dk>
4753
4754 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
4755 New variables.
4756 (syms_of_fileio): DEFVAR_LISP them.
4757 (read_file_name_cleanup): New unwind function.
4758 (Fread_file_name_internal): Only return completions satifying
4759 Vread_file_name_predicate. Temporarily unwind protect and rebind
4760 default-directory while checking completions against the predicate.
4761 (Fread_file_name): Added PREDICATE argument. Specbind it to
4762 Vread_file_name_predicate during completion.
4763 Call Vread_file_name_function to read the file name if non-nil.
4764
4765 * lisp.h (Fread_file_name): Now has 6 args.
4766
4767 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
4768 predicate for Fread_file_name when reading directory name.
4769 Supply Qnil for predicate in other calls to Fread_file_name.
4770
4771 2002-05-26 Miles Bader <miles@gnu.org>
4772
4773 * term.c (tty_capable_p): New function.
4774 * dispextern.h (tty_capable_p): New function declaration.
4775 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
4776 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
4777
4778 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
4779
4780 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
4781 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
4782 (Vwrite_region_annotate_functions): Docstring fix.
4783
4784 2002-05-23 Kim F. Storm <storm@cua.dk>
4785
4786 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
4787 phys_cursor's hpos is overwritten. This is still not completely
4788 correct, as it doesn't really make sense to use hpos at all to
4789 get the cursor glyph (as that is relative to the width of the
4790 characters on the line, which may have changed during the update).
4791
4792 2002-05-22 Jason Rumney <jasonr@gnu.org>
4793
4794 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
4795 Lisp_Object.
4796 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
4797 Use modified enumfont_t struct.
4798
4799 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
4800
4801 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
4802 Handle the `hbar' cursor type.
4803 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
4804
4805 * w32fns.c (Qhbar): New variable.
4806 (x_specified_cursor_type): Use it.
4807
4808 2002-05-21 Ken Raeburn <raeburn@gnu.org>
4809
4810 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
4811 now, when the address is needed.
4812
4813 2002-05-21 Colin Walters <walters@gnu.org>
4814
4815 * Makefile.in (shortlisp): Add font-core.el.
4816
4817 2002-05-20 Richard M. Stallman <rms@gnu.org>
4818
4819 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
4820
4821 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
4822 equivalent key bindings here.
4823
4824 2002-05-20 Ken Raeburn <raeburn@gnu.org>
4825
4826 Change symbol structure to contain a lisp object for the symbol
4827 name:
4828 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
4829 object field named "xname".
4830 (SYMBOL_NAME): New macro.
4831 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
4832 name field.
4833 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
4834 (mark_object, gc_sweep): Use symbol xname field and XSTRING
4835 instead of name field.
4836 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
4837 SYMBOL_NAME instead of XSYMBOL and name field.
4838 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
4839 instead of XSYMBOL and name field.
4840 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
4841 and SYMBOL_NAME instead of XSYMBOL and name field.
4842 * coding.c (Fread_coding_system, code_convert_region1)
4843 (code_convert_string1, code_convert_string_norecord)
4844 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
4845 XSYMBOL and name field.
4846 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
4847 (Fmake_variable_buffer_local, Fmake_local_variable)
4848 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
4849 of XSYMBOL and name field.
4850 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
4851 XSYMBOL and name field.
4852 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
4853 instead of XSYMBOL and name field.
4854 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
4855 XSYMBOL and name field.
4856 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
4857 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
4858 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
4859 instead of XSYMBOL and name field.
4860 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
4861 (parse_modifiers, apply_modifiers, Fevent_convert_list)
4862 (parse_solitary_modifier, Fexecute_extended_command):
4863 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
4864 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
4865 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
4866 of XSYMBOL and name field.
4867 (describe_command, describe_translation): Use SYMBOL_NAME and
4868 assignment instead of XSYMBOL and name field and XSETSTRING.
4869 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
4870 instead of XSYMBOL and name field.
4871 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
4872 name field and XSETSTRING.
4873 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
4874 of XSYMBOL and name field.
4875 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
4876 assignment instead of XSYMBOL and name field and XSETSTRING.
4877 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
4878 XSTRING instead of XSYMBOL and name field.
4879 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
4880 and XSTRING instead of XSYMBOL and name field.
4881 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
4882 and XSTRING instead of XSYMBOL and name field.
4883 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
4884 XSTRING instead of XSYMBOL and name field.
4885 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
4886 of XSYMBOL and name field.
4887 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
4888 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
4889
4890 2002-05-19 Ken Raeburn <raeburn@gnu.org>
4891
4892 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
4893 and XCDR real rvalues in most configurations.
4894
4895 * buffer.c (fix_overlays_in_range, fix_overlays_before):
4896 Don't take the address of the cdr part of a cons cell; instead, track
4897 the parent cell and call XSETCDR, or set the variable for the head
4898 of the list if we haven't started down the list yet.
4899
4900 2002-05-19 Richard M. Stallman <rms@gnu.org>
4901
4902 * doc.c (reread_doc_file): Don't ask for confirmation.
4903
4904 2002-05-18 Jason Rumney <jasonr@gnu.org>
4905
4906 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
4907 (xbm_load_image): Use it.
4908 (xbm_load): Ditto.
4909 (xbm_read_bitmap_data): Reverted to xfns.c version.
4910 From David Ponce <david@dponce.com>.
4911
4912 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
4913
4914 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
4915 2.02 and later.
4916
4917 2002-05-16 Juanma Barranquero <lektu@terra.es>
4918
4919 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
4920
4921 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
4922
4923 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
4924 meaningful test.
4925 (read_char_minibuf_menu_prompt): Fix typo.
4926
4927 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
4928
4929 * eval.c (Fcommandp): Doc fix.
4930
4931 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
4932
4933 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
4934 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
4935 (Fset_keymap_parent): Gcpro a bit more.
4936 (access_keymap): Gcpro around meta_map call and around the main loop.
4937 (get_keyelt): Gcpro when following indirect references.
4938 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
4939 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
4940 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
4941 Remove useless ad-hoc remap code.
4942
4943 2002-05-13 Richard M. Stallman <rms@gnu.org>
4944
4945 * search.c (search_buffer): Give up boyer moore search if inverse
4946 translation change charset_base.
4947
4948 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
4949
4950 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
4951 characters is carried over from the previous block of text, adjust
4952 coding->produced to account for the extra character.
4953
4954 2002-05-11 Andreas Schwab <schwab@suse.de>
4955
4956 * coding.c (intersection): Keep the elements of the returned list
4957 in the same order as in the first list.
4958
4959 2002-05-11 Kim F. Storm <storm@cua.dk>
4960
4961 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
4962 only update cmm_size if realloc actually succeeds.
4963 Testing with initial size of 2 elements revealed that using
4964 realloc on GNU/Linux would cause a random trap in xmalloc
4965 later on, so I rewrote the code to use malloc/bcopy/free instead
4966 of realloc.
4967
4968 2002-05-10 Jason Rumney <jasonr@gnu.org>
4969
4970 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
4971
4972 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
4973
4974 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
4975 parens, to ensure correct evaluation order.
4976
4977 2002-05-10 Kim F. Storm <storm@cua.dk>
4978
4979 * keymap.c (Vemulation_mode_map_alists): New variable.
4980 (syms_of_keymap): DEFVAR_LISP it.
4981 (current_minor_maps): Process keymap alists in that list before
4982 minor-mode-overriding-map-alist and minor-mode-map-alist.
4983
4984 2002-05-09 Richard M. Stallman <rms@gnu.org>
4985
4986 * search.c (Freplace_match): Doc fix.
4987
4988 2002-05-09 Kim F. Storm <storm@cua.dk>
4989
4990 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
4991 Enlarge cursor rectangle drawn around image with non-zero relief.
4992
4993 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
4994 Enlarge cursor rectangle drawn around image with non-zero relief.
4995
4996 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
4997 Enlarge cursor rectangle drawn around image with non-zero relief.
4998
4999 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
5000
5001 * xselect.c (lisp_data_to_selection_data): Don't set selection
5002 type if comes from the Lisp object's car. If the selection
5003 contains a pure ASCII text, always return QSTRING as its type.
5004
5005 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5006
5007 * mac.c (mac-cut-function): Doc fix.
5008
5009 2002-05-05 Richard M. Stallman <rms@gnu.org>
5010
5011 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
5012
5013 2002-05-04 Jason Rumney <jasonr@gnu.org>
5014
5015 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
5016 for event-click-count.
5017
5018 * process.c (init_process): Only add server subfeature if we can
5019 use non-blocking I/O.
5020
5021 2002-05-04 Andrew Choi <akochoi@shaw.ca>
5022
5023 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
5024 repeatedly.
5025
5026 2002-05-03 Jason Rumney <jasonr@gnu.org>
5027
5028 * process.c (Fmake_network_process): Only support server sockets
5029 when we can make them non-blocking.
5030
5031 * s/ms-w32.h (HAVE_SELECT): Define.
5032
5033 * w32.h (FILE_NDELAY): New flag.
5034
5035 * w32.c (sys_getpeername, fcntl): New functions.
5036 (_sys_read_ahead): Temporarily block on non-blocking sockets.
5037
5038 * w32proc.c: include sys/file.h.
5039
5040 2002-05-03 Colin Walters <walters@verbum.org>
5041
5042 * callproc.c (Vgame_score_directory): Renamed to
5043 Vshared_game_score_directory.
5044
5045 2002-04-30 Richard M. Stallman <rms@gnu.org>
5046
5047 * s/gnu.h [emacs]: Include stdio.h.
5048 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
5049
5050 * eval.c (do_autoload): Error if called while preparing to dump.
5051
5052 * fns.c (Frequire): Error if need to load while preparing to dump.
5053
5054 2002-04-28 Colin Walters <walters@verbum.org>
5055
5056 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
5057 Default to "~/.emacs.d/games".
5058
5059 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
5060
5061 * lread.c (openp): Change arg exec_only to predicate.
5062 (build_load_history): Use XCAR/XCDR.
5063 (Flocate_file_internal): New fun.
5064 (syms_of_lread): Defsubr it.
5065 (Fload): Update call to openp.
5066
5067 * lisp.h (openp): Update prototype.
5068
5069 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
5070 * w32proc.c (sys_spawnve):
5071 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
5072 * w32.c (check_windows_init_file):
5073 * sound.c (Fplay_sound_internal):
5074 * process.c (Fstart_process):
5075 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
5076 * mac.c (run_mac_command):
5077 * emacs.c (init_cmdargs):
5078 * callproc.c (Fcall_process): Update call to openp.
5079
5080 * textprop.c (remove_properties): Don't use XCAR without CONSP.
5081
5082 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
5083
5084 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5085
5086 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
5087 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
5088
5089 2002-04-28 Richard M. Stallman <rms@gnu.org>
5090
5091 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
5092
5093 * eval.c (Fcommandp): New arg for_call_interactively.
5094 * lisp.h (Fcommandp): Declare new arg.
5095
5096 2002-04-28 Jason Rumney <jasonr@gnu.org>
5097
5098 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
5099
5100 * w32.c (stat, fstat): Use file index information to generate
5101 inodes for directories where available.
5102
5103 2002-04-26 Andrew Choi <akochoi@shaw.ca>
5104
5105 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
5106 [HAVE_CARBON]: Include Mac object files.
5107
5108 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
5109 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
5110 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
5111 MAC_OSX, and MAC_OS instead of macintosh.
5112
5113 * editfns.c [MAC_OS8]: Include stdio.h.
5114
5115 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
5116
5117 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
5118 Apple Monaco.
5119
5120 * process.c: Declare QCfamily and QCfilter as extern.
5121 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
5122 calling select.
5123
5124 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
5125
5126 * tparam.c [MAC_OSX]: Don't define BC and UP.
5127
5128 * config.in [HAVE_CARBON]: Add.
5129
5130 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
5131 Move here from mac/src and mac/inc.
5132
5133 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
5134
5135 2002-04-26 Gerd Moellmann <gerd@gnu.org>
5136
5137 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
5138 Compute phys_cursor_width from the x position returned
5139 by x_draw_glyhs, which is cheaper.
5140 (x_display_and_set_cursor): Compute the buffer-local value
5141 of `cursor-in-non-selected-windows' only when needed.
5142
5143 2002-04-25 Gerd Moellmann <gerd@gnu.org>
5144
5145 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
5146 cursor on a stretch glyph has a width that depends on
5147 x_stretch_cursor_p.
5148
5149 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5150
5151 * abbrev.c (abbrev-start-location): Doc fix.
5152
5153 * indent.c (Fvertical_motion): Fix last change.
5154
5155 2002-04-25 Gerd Moellmann <gerd@gnu.org>
5156
5157 * indent.c (Fvertical_motion): Move to the start of the line
5158 containing PT before moving up or down.
5159
5160 2002-04-24 Gerd Moellmann <gerd@gnu.org>
5161
5162 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
5163 case of writing a whole row, more or less analogous to the case of
5164 writing only parts of a row.
5165
5166 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
5167 0 for NO_CURSOR.
5168
5169 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
5170
5171 2002-04-23 Colin Walters <walters@verbum.org>
5172
5173 * buffer.c (syms_of_buffer): Doc fix.
5174
5175 2002-04-23 Gerd Moellmann <gerd@gnu.org>
5176
5177 * xterm.c (notice_overwritten_cursor): Handle the special case
5178 of the cursor being in the first blank non-text line at the
5179 end of a window.
5180
5181 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5182 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5183 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
5184 bar cursors only, to make phys_cursor_width contain what its name
5185 suggests.
5186 (notice_overwritten_cursor): Consider the cursor image erased if
5187 the output area intersects the cursor image in y-direction.
5188
5189 2002-04-23 Simon Marshall <simon@gnu.org>
5190
5191 * xfns.c (x_set_mouse_color): Change default for cross_cursor
5192 to XC_hand2.
5193
5194 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5195
5196 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
5197
5198 2002-04-22 Kim F. Storm <storm@cua.dk>
5199
5200 * textprop.c (remove_properties): Fixed trap for malformed plist.
5201
5202 2002-04-22 Richard M. Stallman <rms@gnu.org>
5203
5204 * cmds.c (Fend_of_line): Handle intangible text in mid line.
5205
5206 * window.c (make_window): Initialize height_fixed_p,
5207 last_cursor_off_p, and p->cursor_off_p slots.
5208
5209 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5210
5211 * fns.c (use-dialog-box): Doc fix.
5212
5213 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5214
5215 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
5216 variables `row', `i' and `area'.
5217 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
5218 toolkit library.
5219
5220 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
5221
5222 * xfaces.c (clear_font_table): Don't free the default font of
5223 a frame even if it's on another display.
5224 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
5225 that could be Qt.
5226
5227 2002-04-19 Juanma Barranquero <lektu@terra.es>
5228
5229 * indent.c (Fmove_to_column): Remove unused local variable
5230 `next_boundary_byte'.
5231 (current_column_1): Likewise.
5232
5233 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
5234
5235 * msdos.c (Qhbar): New variable.
5236 (syms_of_msdos): Intern and staticpro it.
5237 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
5238 cursor type.
5239
5240 2002-04-19 Dave Lambert <dlambert@acm.org>
5241
5242 Theses change implement an underscore-like (`hbar') cursor.
5243
5244 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
5245
5246 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
5247 Handle the `hbar' cursor type.
5248 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
5249
5250 * xfns.c (Qhbar): New variable.
5251 (syms_of_xfns): Intern and staticpro it.
5252 (x_specified_cursor_type): Handle `hbar' cursor.
5253
5254 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
5255 not defined.
5256
5257 2002-04-18 Richard M. Stallman <rms@gnu.org>
5258
5259 * textprop.c (remove_properties): New arg LIST allows scanning
5260 either a list or a plist.
5261 (interval_has_some_properties_list): New function, like
5262 interval_has_some_properties using list instead of plist.
5263 All callers changed.
5264 (Fremove_list_of_text_properties): New function.
5265 (syms_of_textprop): Defsubr it.
5266
5267 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
5268
5269 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
5270
5271 2002-04-17 Juanma Barranquero <lektu@terra.es>
5272
5273 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
5274
5275 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
5276
5277 * window.c (coordinates_in_window): Don't report on margin area
5278 if its width is zero.
5279
5280 2002-04-16 Jason Rumney <jasonr@gnu.org>
5281
5282 * w32fns.c (Fx_file_dialog): Decode file name before using.
5283
5284 * w32term.c (construct_drag_n_drop): Likewise.
5285
5286 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
5287
5288 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
5289 store load-history in pure space.
5290
5291 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
5292
5293 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
5294
5295 * xterm.c (Qlatin_1, Qutf_8): New vars.
5296 (syms_of_xterm): Initialize them.
5297 (XTread_socket): Eliminate incorrect optimization that tried to avoid
5298 decoding the output of X*LookupString.
5299 Always use latin-1 to decode the output of XLookupString.
5300 Try Xutf8LookupString if XmbLookupString failed.
5301
5302 * region-cache.c (new_region_cache): Use BEG.
5303
5304 2002-04-16 Gerd Moellmann <gerd@gnu.org>
5305
5306 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
5307 configuration files.
5308 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
5309 returns 0.
5310
5311 2002-04-15 Andreas Schwab <schwab@suse.de>
5312
5313 * config.in: Regenerated using autoheader.
5314
5315 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
5316 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
5317 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
5318 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
5319 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
5320 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
5321 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
5322 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
5323 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
5324 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
5325 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
5326 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
5327 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
5328 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
5329 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
5330 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
5331 STACK_DIRECTION, now set by autoconf.
5332
5333 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5334
5335 * dispnew.c (marginal_area_string): Sort arguments.
5336
5337 * dispextern.h (marginal_area_string): Add prototype.
5338
5339 2002-04-13 Richard M. Stallman <rms@gnu.org>
5340
5341 * fileio.c (Finsert_file_contents):
5342 Don't call temp_output_buffer_setup--do just part, by hand.
5343
5344 * coding.c (run_pre_post_conversion_on_str):
5345 Don't call temp_output_buffer_setup--do just part, by hand.
5346
5347 * keyboard.c (command_loop_1): Don't call start_hourglass
5348 or cancel_hourglass when executing a macro.
5349
5350 * marker.c (count_markers): New function.
5351
5352 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
5353 grow without limit. Move recently used elements to the front.
5354
5355 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
5356
5357 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
5358
5359 2002-04-12 Gerd Moellmann <gerd@gnu.org>
5360
5361 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
5362 rows marginal areas.
5363 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
5364 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
5365
5366 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
5367
5368 2002-04-12 Dave Love <fx@gnu.org>
5369
5370 * dispnew.c (marginal_area_string): New.
5371
5372 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
5373 (Qleft_margin, Qright_margin): Declare.
5374 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
5375
5376 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
5377 note_mode_line_highlight and extended.
5378
5379 * keyboard.c (Qleft_margin, Qright_margin): Declare.
5380 (make_lispy_event): Deal with mouse events in margins.
5381
5382 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
5383
5384 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
5385
5386 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
5387 than deactivating the mark if tmm is set to `lambda'.
5388 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
5389 Use a single event for HELP_EVENT.
5390 (Fexecute_extended_command): Save last_point_position.
5391
5392 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5393
5394 * lisp.h (Fpropertize): Add prototype.
5395
5396 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
5397
5398 2002-04-10 Colin Walters <walters@verbum.org>
5399
5400 * config.in: Add HAVE_SHARED_GAME_DIR.
5401
5402 * callproc.c: (Vgame_score_directory): New variable.
5403 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
5404
5405 2002-04-10 Richard M. Stallman <rms@gnu.org>
5406
5407 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
5408
5409 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
5410
5411 * minibuf.c (read_minibuf): Use empty_string.
5412 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
5413 Short-circuit the search as soon as it "failed".
5414 (Fall_completions): Allow lambda forms and lists of strings for alist.
5415 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
5416 when require_match is nil.
5417 (Ftest_completion): Rename from `test_completion' and export to elisp.
5418 Call the predicate also when alist is a list.
5419 Obey Vcompletion_regexp_list.
5420 (do_completion, Fminibuffer_complete_and_exit): Use it.
5421 (Fassoc_string): Rename from `assoc_for_completion'.
5422 Allow list of strings as well and export to elisp.
5423
5424 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
5425
5426 * puresize.h (BASE_PURESIZE): Increase to 900KB.
5427
5428 2002-04-08 Juanma Barranquero <lektu@terra.es>
5429
5430 * w32.c (sys_accept): Don't hide variable `s'.
5431
5432 2002-04-05 Gerd Moellmann <gerd@gnu.org>
5433
5434 * callint.c (Fcall_interactively): Use INTEGERP instead of
5435 NUMBERP for checking Vhistory_length.
5436
5437 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5438
5439 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
5440 Doc fix to reflect it.
5441
5442 2002-04-04 Richard M. Stallman <rms@gnu.org>
5443
5444 * xdisp.c (display_mode_element): New arg RISKY.
5445 Disregard text props found or specified within a variable
5446 that isn't marked risky-local-variable.
5447 (Qrisky_local_variable): New variable.
5448 (syms_of_xdisp): Init and staticpro it.
5449
5450 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
5451
5452 * undo.c (record_point): New fun.
5453 (record_delete, record_insert): Use it.
5454
5455 2002-04-03 Juanma Barranquero <lektu@terra.es>
5456
5457 * doc.c (Fdocumentation): Add missing parentheses.
5458 (Fdocumentation_property): Likewise.
5459
5460 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
5461
5462 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
5463 data is 0, just return nil.
5464
5465 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
5466
5467 * msdos.c (syms_of_msdos): Fix last change with
5468 mouse_autoselect_window.
5469
5470 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5471
5472 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
5473 mouse_autoselect_window.
5474
5475 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
5476
5477 * keyboard.c (make_lispy_event): Handle unknown keysyms together
5478 with system-specific keysyms. Use it also for unknown function keys.
5479
5480 * doc.c (reread_doc_file): Return whether reload was attempted.
5481 (Fdocumentation, Fdocumentation_property): Don't try to reload
5482 if the doc is 0 and only ask once.
5483
5484 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
5485
5486 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
5487
5488 * keyboard.c (read_char): If the event was Qselect_window,
5489 restore timer_idleness_start_time to its previous value.
5490
5491 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
5492
5493 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
5494
5495 * region-cache.c (new_region_cache): Use BEG.
5496
5497 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
5498 Use BEG and BEG_BYTE.
5499
5500 * doc.c (get_doc_string): Return nil if the location is wrong.
5501 (reread_doc_file): New fun.
5502 (Fdocumentation, Fdocumentation_property):
5503 Call it if get_doc_string fails.
5504 (Fsnarf_documentation): Make it work for a dumped Emacs.
5505
5506 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
5507 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
5508
5509 * charset.c (Fstring): Allow 0 arguments.
5510
5511 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
5512
5513 * process.c (DATAGRAM_CONN_P, list_processes_1)
5514 (Fprocess_datagram_address, Fset_process_datagram_address)
5515 (Fset_network_process_options, server_accept_connection):
5516 Fix some int/Lisp_Object confusions (thank you union types).
5517
5518 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5519
5520 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
5521
5522 * w32term.c: Likewise.
5523 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
5524
5525 * keyboard.c (Qselect_window): New symbol.
5526 (head_table): Use it.
5527 (keys_of_keyboard): Bound select-window event to handle-select-window.
5528 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
5529
5530 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
5531 (last_window): New variable.
5532 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
5533 (note_mouse_movement): Remove reimplemented code in #if 0.
5534 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
5535 Emacs windows.
5536
5537 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
5538
5539 2002-03-31 Gerd Moellmann <gerd@gnu.org>
5540
5541 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
5542 Callers changed.
5543
5544 2002-03-30 Richard M. Stallman <rms@gnu.org>
5545
5546 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
5547 loop whenever it stops making progress.
5548
5549 * widget.c (set_frame_size): Don't call change_frame_size.
5550
5551 2002-03-30 Gerd Moellmann <gerd@gnu.org>
5552
5553 * dispnew.c (direct_output_for_insert):
5554 Call mark_window_display_accurate.
5555
5556 2002-03-29 Jason Rumney <jasonr@gnu.org>
5557
5558 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
5559
5560 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
5561
5562 * Makefile.in (lread.o): Depend on coding.h.
5563
5564 * lread.c (openp, Fload): Encode the file name before passing it
5565 to `stat', `access', and `emacs_open'.
5566 (openp): GCPRO the encoded file name. Don't recompute Lisp
5567 strings unnecessarily.
5568
5569 2002-03-29 Kim F. Storm <storm@cua.dk>
5570
5571 * fns.c (Flax_plist_put): Doc fix.
5572
5573 2002-03-28 Miles Bader <miles@gnu.org>
5574
5575 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
5576
5577 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5578
5579 * process.c (set-network-process-options): Add usage.
5580 (make-network-process): Doc fix.
5581
5582 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
5583
5584 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
5585
5586 2002-03-26 Richard M. Stallman <rms@gnu.org>
5587
5588 * fns.c (Fsubstring_no_properties): New function.
5589 (Flax_plist_get, Flax_plist_put): New functions.
5590 (syms_of_fns): defsubr them.
5591
5592 * xdisp.c (update_menu_bar): Test only update_mode_lines;
5593 don't test or alter w->update_mode_line.
5594
5595 * window.c (Fdisplay_buffer): Doc fix.
5596
5597 2002-03-24 Richard M. Stallman <rms@gnu.org>
5598
5599 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
5600
5601 2002-03-24 Gerd Moellmann <gerd@gnu.org>
5602
5603 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
5604 (Fdefmacro): Handle `(declare ...)'.
5605 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
5606 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
5607
5608 2002-03-24 Jason Rumney <jasonr@gnu.org>
5609
5610 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
5611 (xbm_file_p): Add prototypes.
5612 (xbm_format, xbm_image_p): Sync with xfns.c.
5613 (reflect_byte): New function.
5614 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
5615 (xbm_load_image): Create bitmaps with a depth of 1.
5616 (init_xfns): Enable XBM images.
5617
5618 2002-03-23 Jason Rumney <jasonr@gnu.org>
5619
5620 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
5621 correctly. Do not pass up_modifier to keyboard buffer.
5622
5623 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
5624
5625 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
5626
5627 * Makefile.in (bootstrapclean): New target.
5628 (bootstrap-temacs, bootstrap-doc): Remove.
5629 (bootstrap-emacs): Use a bog-standard `temacs'.
5630 Don't bother to build a DOC file.
5631
5632 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
5633
5634 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
5635 in temacs even if !CANNOT_DUMP.
5636 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
5637
5638 * alloc.c (check_pure_size): Only output a warning.
5639
5640 2002-03-22 Jason Rumney <jasonr@gnu.org>
5641
5642 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
5643 supported.
5644
5645 * w32term.c (zv_bits): Declare as short, for word alignment.
5646 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
5647 (syms_of_w32term): Define x-use-underline-position-properties.
5648
5649 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
5650 (clear_image_cache): Block input, fix logic, clear matrices in
5651 all frames that share this cache.
5652
5653 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
5654
5655 * emacs.c (main): Update the Copyright year in the blurb printed
5656 by "emacs --version".
5657
5658 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
5659
5660 * xterm.c (XTread_socket): If XK_ISO_Lock and
5661 XK_ISO_Last_Group_Lock are defined, handle keysyms between
5662 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
5663
5664 2002-03-21 Kim F. Storm <storm@cua.dk>
5665
5666 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
5667 menu-bar bindings in keymap and local-map properties _are_ used.
5668 But try keymap property first in accordance with 2002-01-03 patch.
5669 Added comment describing why this is not always reliable.
5670 (tool_bar_items): Ditto for tool-bar.
5671
5672 2002-03-21 Jason Rumney <jasonr@gnu.org>
5673
5674 * w32fns.c (x_clear_image_1): Disable color table code.
5675
5676 2002-03-21 Kim F. Storm <storm@cua.dk>
5677
5678 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
5679 removed the wrong version of the DEFUN macro; fixed it.
5680
5681 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
5682 Fmember rather than Fmemq).
5683 (Fprovide): Check that subfeatures is a list.
5684
5685 * process.c (QCfeature, QCdatagram): Removed variables.
5686 (QCtype, Qdatagram): New variables.
5687 (network_process_featurep): Removed function.
5688 (Fmake_network_process): Removed :feature check.
5689 Use :type 'datagram instead of :datagram t to create a datagram
5690 socket. This allows us to add other connection types (e.g. raw
5691 sockets) later in a consistent manner.
5692 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
5693 supported subfeatures for feature make-network-process.
5694 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
5695 Intern and staticpro QCtype and Qdatagram.
5696 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
5697
5698 * xfns.c: (QCtype): Remove duplicate declaration and
5699 initialization (is now declared in process.c).
5700
5701 * w32fns.c: (QCtype): Remove duplicate declaration and
5702 initialization (is now declared in process.c).
5703
5704 2002-03-21 Richard M. Stallman <rms@gnu.org>
5705
5706 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
5707 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
5708 when jumping to `fail' to avoid undoing reg changes in the
5709 last iteration of the loop.
5710 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
5711
5712 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
5713 Depend on process.h.
5714
5715 2002-03-20 Jason Rumney <jasonr@gnu.org>
5716
5717 Most of the following changes are still conditional on HAVE_IMAGES
5718 which is not set by default on Windows.
5719
5720 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
5721
5722 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
5723 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
5724 (four_corners_best, x_clear_image_1, x_clear_image)
5725 (x_alloc_image_color, postprocess_image)
5726 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
5727 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
5728 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
5729
5730 * w32gui.h (struct XImage): Define.
5731
5732 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
5733 extract mouse co-ordinates.
5734
5735 2002-03-20 Jason Rumney <jasonr@gnu.org>
5736
5737 * w32.c (init_winsock): Dynamically load new server and UDP
5738 socket functions.
5739 (socket_to_fd): New function.
5740 (sys_socket): Use it.
5741 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
5742 (sys_recvfrom, sys_sendto): New wrapper functions.
5743
5744 * process.c (QCfamily, QCfilter): Remove duplicate declaration
5745 and initialization.
5746
5747 * makefile.w32-in (LIBS): Remove $(WSOCK32).
5748
5749 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
5750
5751 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
5752 Don't use "sun" as a variable, it's a predefined constant on Sun
5753 machines.
5754
5755 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5756
5757 * bytecode.c (Fbyte_code): Revert last change.
5758
5759 2002-03-19 Kim F. Storm <storm@cua.dk>
5760
5761 * makefile.w32-in (LIBS): Add $(WSOCK32).
5762 From David Ponce <dponce@voila.fr>.
5763
5764 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5765
5766 * process.c (wait_reading_process_input): Move variables `pname'
5767 and `pnamelen' down where they are used.
5768
5769 * bytecode.c (Fbyte_code): Discard unused computed value to
5770 prevent gcc warning.
5771
5772 * lisp.h (Fplist_member): Add prototype.
5773
5774 2002-03-18 Kim F. Storm <storm@cua.dk>
5775
5776 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
5777 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
5778
5779 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
5780 Remove explicit GNU_LINUX settings for datagram support.
5781
5782 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5783
5784 * process.c (Fmake_network_process): Remove unused variable `sa'.
5785 Doc fix. Add usage:.
5786 (set_socket_options): Remove unused variables `optnum' and `opttype'.
5787
5788 2002-03-17 Richard M. Stallman <rms@gnu.org>
5789
5790 * xdisp.c (cursor_type_changed): New variable.
5791 (redisplay_internal): Redisplay all windows if cursor_type_changed.
5792 Clear it when clearing windows_or_buffers_changed.
5793 (try_cursor_movement, redisplay_window, try_window_id)
5794 (try_window_reusing_current_matrix): Test cursor_type_changed
5795 along with windows_or_buffers_changed.
5796
5797 * window.h (cursor_type_changed): New variable.
5798
5799 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
5800 not update_mode_lines, and always set it to 1.
5801
5802 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
5803 if no frames needed redrawing.
5804
5805 2002-03-17 Kim F. Storm <storm@cua.dk>
5806
5807 The following changes add support for network server processes,
5808 datagram connections, and local (unix) sockets.
5809
5810 * process.h (struct Lisp_Process): New member log.
5811 Doc fix: Member command used to indicate stopped network process.
5812 Doc fix: Member childp contains plist for network process.
5813 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
5814
5815 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
5816 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
5817 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
5818 New variables.
5819 (NETCONN1_P): New macro.
5820 (DATAGRAM_SOCKETS): New conditional symbol.
5821 (datagram_address): New array.
5822 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
5823 (status_message): Use concat3.
5824 (Fprocess_status): Add `listen' status to doc string. Return `stop'
5825 for a stopped network process.
5826 (Fset_process_buffer): Update contact plist for network process.
5827 (Fset_process_filter): Ditto. Don't enable input for stopped
5828 network processes. Server must listen, even if filter is t.
5829 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
5830 New functions.
5831 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
5832 (Fprocess_contact): Added KEY argument. Handle datagrams.
5833 (list_processes_1): Optionally show only processes with the query
5834 on exit flag set. Dynamically adjust column widths. Omit tty
5835 column if not needed. Report stopped network processes.
5836 Identify server and datagram network processes.
5837 (Flist_processes): New optional arg `query-only'.
5838 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
5839 (conv_lisp_to_sockaddr, set_socket_options)
5840 (network_process_featurep, unwind_request_sigio): New helper functions.
5841 (Fprocess_datagram_address, Fset_process_datagram_address):
5842 (Fset_network_process_options): New lisp functions.
5843 (Fopen_network_stream): Removed. Now defined in simple.el.
5844 (Fmake_network_process): New lisp function. Code is based on previous
5845 Fopen_network_stream, but heavily reworked with new property list based
5846 argument list, support for datagrams, server processes, and local
5847 sockets in addition to old client-only functionality.
5848 (server_accept_connection): New function.
5849 (wait_reading_process_input): Use it to handle incoming connects.
5850 Do not enable input on a new connection if process is stopped.
5851 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
5852 (send_process): Handle datagram sockets.
5853 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
5854 network process is indicated by setting command field to t .
5855 (Fprocess_send_eof): No-op if datagram connection.
5856 (Fstatus_notify): Don't read input for a stream server socket or a
5857 stopped network process.
5858 (init_process): Initialize datagram_address array.
5859 (syms_of_process): Intern and staticpro new variables, defsubr new
5860 functions.
5861
5862 2002-03-16 Jason Rumney <jasonr@gnu.org>
5863
5864 * w32fns.c (w32_to_all_x_charsets): Return correct type in
5865 startup case.
5866
5867 2002-03-16 Richard M. Stallman <rms@gnu.org>
5868
5869 * xdisp.c (redisplay_internal, redisplay_windows):
5870 Use list_of_error to call internal_condition_case_1.
5871 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
5872 so as to catch all errors with no possibility of debugger redisplay.
5873 (list_of_error): New variable.
5874 (syms_of_xdisp): Init and staticpro it.
5875
5876 * print.c (print_object): Delete `\ ' from printed rep of frame.
5877
5878 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
5879
5880 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
5881 until its implementation is fixed.
5882
5883 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5884
5885 * xfns.c (png_load): Remove unused variable `gamma_str'.
5886
5887 2002-03-14 Richard M. Stallman <rms@gnu.org>
5888
5889 * xfns.c (x_real_positions): Handle failure in XQueryTree.
5890
5891 2002-03-14 Miles Bader <miles@gnu.org>
5892
5893 * intervals.c (adjust_for_invis_intang): New function.
5894 (set_point_both): Use `adjust_for_invis_intang' to do most of the
5895 work for dealing with invisible+intangible regions. Do so before
5896 and after both forward and backward movements, to handle both
5897 front-sticky and rear-sticky cases.
5898 * textprop.c (text_property_stickiness): Function moved here from
5899 `editfns.c'.
5900 * intervals.h (text_property_stickiness): New declaration.
5901 * editfns.c (char_property_eq): Function removed.
5902 (text_property_stickiness): Function moved to `textprop.c'.
5903
5904 2002-03-13 Jason Rumney <jasonr@gnu.org>
5905
5906 * config.in: Add STRFTIME_NO_POSIX2.
5907
5908 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
5909 and %OX when underlying strftime does not.
5910
5911 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
5912
5913 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
5914 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
5915 line) to avoid annoying flicker.
5916 (xm_scroll_callback): Get rid of the now unnecessary kludge.
5917 (XTread_socket): Mark it static.
5918
5919 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
5920
5921 2002-03-13 Kim F. Storm <storm@cua.dk>
5922
5923 * puresize.h (BASE_PURESIZE): Increase to 775000.
5924
5925 2002-03-12 Juanma Barranquero <lektu@terra.es>
5926
5927 * editfns.c (syms_of_editfns): Fix typo.
5928
5929 2002-03-12 Gerd Moellmann <gerd@gnu.org>
5930
5931 * xsmfns.c: Include stdio.h because termhooks.h needs it.
5932 Include termopt.h for interrupt_input.
5933
5934 2002-03-11 Andreas Schwab <schwab@suse.de>
5935
5936 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
5937
5938 2002-03-11 Gerd Moellmann <gerd@gnu.org>
5939
5940 * xterm.c (note_mouse_movement): Put code for
5941 x_autoselect_window_p in #if 0.
5942
5943 * lread.c (Fload): Don't assume that message_with_string uses the
5944 string it is given like a C string.
5945
5946 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5947
5948 * xterm.h (x_session_check_input, x_session_initialize): Declared.
5949
5950 * xterm.c: (XTread_socket): Add call to x_session_check_input and
5951 x_session_have_connection.
5952 (x_initialize): Add call to x_session_initialize.
5953
5954 * termhooks.h (enum event_kind): Add save_session_event.
5955
5956 * keyboard.c: Add Emacs event save_session_event.
5957
5958 * emacs.c (main): Add call to syms_of_xsmfns.
5959
5960 * lisp.h: Declare syms_of_xsmfns as extern.
5961
5962 * config.in: Add HAVE_X_SM.
5963
5964 * Makefile.in (LIBXT): Add -lSM -lICE
5965 if HAVE_X_SM and not USE_X_TOOLKIT.
5966 (XOBJ): New file xsmfns.c added.
5967
5968 * xsmfns.c: New file for X session management.
5969
5970 2002-03-09 Jason Rumney <jasonr@gnu.org>
5971
5972 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
5973 read-only when setting modified time.
5974
5975 2002-03-08 Gerd Moellmann <gerd@gnu.org>
5976
5977 * xdisp.c (move_it_vertically_backward): At the end of the function,
5978 when moving forward by lines, treat terminal frames specially.
5979
5980 * keyboard.c (echo_char): Make sure to add a separator between
5981 keys even if echo_dash hasn't been called.
5982
5983 * xdisp.c: Use new string macros.
5984 (update_echo_area): Pass number of bytes to message3 instead of
5985 number of chars.
5986 (set_message_1): Don't access a string's size_byte directly.
5987 (decode_mode_spec_coding): Use number of bytes of eoltype string
5988 instead number of chars.
5989
5990 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
5991
5992 2002-03-08 Juanma Barranquero <lektu@terra.es>
5993
5994 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
5995 24-bit.
5996
5997 2002-03-06 Jason Rumney <jasonr@gnu.org>
5998
5999 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
6000
6001 2002-03-06 Gerd Moellmann <gerd@gnu.org>
6002
6003 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
6004 (cancel_echoing, echo_length, echo_truncate): Changed to
6005 work with new kboard definition.
6006 (echo_now): Use message3_nolog instead of message2_nolog.
6007
6008 * alloc.c (mark_kboards): Mark echo_string.
6009
6010 * keyboard.h (ECHOBUFSIZE): Removed.
6011 (struct kboard): Member echoptr removed, member echobuf renamed
6012 to echo_string.
6013
6014 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
6015 message3 instead of message2 to display the message using STRING's
6016 text properties.
6017
6018 2002-03-05 Andreas Schwab <schwab@suse.de>
6019
6020 * xdisp.c (hscroll_margin): Change to EMACS_INT.
6021
6022 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
6023
6024 * frame.c (default-frame-alist): Explain that setting it doesn't
6025 affect existing frames.
6026
6027 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
6028
6029 * indent.c (skip_invisible): Fix my brain fart.
6030
6031 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
6032
6033 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
6034
6035 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
6036 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
6037 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
6038 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
6039 and variables to use EMACS_INT instead of just int.
6040
6041 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
6042
6043 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
6044
6045 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
6046 environment, pass it down with corrected value.
6047
6048 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6049
6050 * lread.c (read_filtered_event): Do not call start_hourglass
6051 before returning.
6052
6053 2002-03-04 Juanma Barranquero <lektu@terra.es>
6054
6055 * w32term.c (x_display_and_set_cursor): Fix typo.
6056
6057 2002-03-03 Richard M. Stallman <rms@gnu.org>
6058
6059 * fileio.c (Fmake_temp_name): Doc fix.
6060
6061 2002-03-03 Gary Wong <gtw@gnu.org>
6062
6063 * termcap.c [!emacs]: Replace ospeed for building standalone
6064 libtermcap, for binary compatibility.
6065
6066 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
6067
6068 2002-03-03 Richard M. Stallman <rms@gnu.org>
6069
6070 * xrdb.c (file_p): Rename arg `path' to `filename'.
6071
6072 * abbrev.c (Fexpand_abbrev): Increment plist as use count
6073 only if it is an integer.
6074
6075 * xfns.c (png_load): Set screen_gamma based on f->gamma.
6076 If png_get_sRGB gives an answer, call png_set_gamma
6077 using the default image gamma value.
6078
6079 * lread.c (read1): When reading from a file, default string to
6080 multibyte only if it has some multibyte characters.
6081
6082 * print.c (print_object): Output multibyte chars 128...255
6083 using \x even if ! print_escape_multibyte.
6084
6085 * xdisp.c (display_mode_element): Move the places where
6086 bytepos, charpos, this, and lisp_string are set.
6087 Use lisp_string to set bytepos.
6088
6089 * xdisp.c (redisplay_internal):
6090 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
6091
6092 * xdisp.c (display_mode_element): Merge properties specified with
6093 :propertize onto those that come with the string.
6094
6095 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
6096
6097 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
6098 automatic-hscrolling. Users changed.
6099 <hscroll-margin>: Renamed from automatic-hscroll-margin.
6100 Users changed.
6101 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
6102
6103 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
6104
6105 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
6106
6107 2002-03-02 Kim F. Storm <storm@cua.dk>
6108
6109 * window.c (Fminibuffer_selected_window): New function.
6110 (syms_of_window): Defsubr it.
6111
6112 2002-03-01 Kim F. Storm <storm@cua.dk>
6113
6114 * window.h (struct window): New member phys_cursor_width.
6115
6116 * window.c (make_window, replace_window): Init phys_cursor_width.
6117
6118 * xterm.c (x_display_and_set_cursor): Blink box cursor using
6119 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
6120
6121 * w32term.c (x_display_and_set_cursor): Blink box cursor using
6122 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
6123
6124 * lisp.h (GCPRO6): New macro.
6125
6126 * process.c (Fopen_network_stream): Use GCPRO6.
6127
6128 2002-03-01 Kim F. Storm <storm@cua.dk>
6129
6130 * process.c (Qconnect, Qfailed): New variables.
6131 (syms_of_process): Intern and staticpro them.
6132 (Fprocess_status): Document connect and failed return values.
6133 [NON_BLOCKING_CONNECT]: New conditional.
6134 (connect_wait_mask, num_pending_connects): New variables.
6135 (status_message): Convert Qfailed status.
6136 (Fopen_network_stream): Added support for non-blocking connect.
6137 New optional args: filter, sentinel, non_blocking. Doc updated.
6138 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
6139 (deactivate_process): Handle pending non-blocking connect.
6140 (wait_reading_process_input): Poll for status of non-blocking
6141 connects. Exec sentinel directly when connect succeeds.
6142 (status_notify): Don't read process output if not yet connected.
6143
6144 2002-02-28 Kim F. Storm <storm@cua.dk>
6145
6146 * window.c: (minibuf_selected_window): Renamed from
6147 Vminibuf_selected_window. Users changed.
6148 (syms_of_window): Staticpro it.
6149
6150 2002-02-26 Kim F. Storm <storm@cua.dk>
6151
6152 The following changes add a new Vminibuf_selected_window variable
6153 which is similar to Vminibuf_scroll_window, but which is only set
6154 on entry to the minibuffer (from a non-minibuffer window):
6155
6156 * window.c: (Vminibuf_selected_window): New variable.
6157 (struct save_window_data): New member minibuf_selected_window.
6158 (Fset_window_configuration): Restore Vminibuf_selected_window.
6159 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
6160 Set minibuf_scroll_window member to nil if minibuf_level is 0.
6161 (compare_window_configurations): Compare minibuf_selected_window.
6162
6163 * window.h: (Vminibuf_selected_window): Declare extern.
6164
6165 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
6166 entry to minibuffer or on entry from a non-minibuffer window.
6167
6168 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
6169 Vminibuf_selected_window instead of Vminibuf_scroll_window.
6170
6171 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
6172 instead of Vminibuf_scroll_window when deciding in which window
6173 the region should be highlighted. Consequently, the region remains
6174 highlighteded even when a completion buffer is also displayed.
6175
6176 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
6177
6178 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
6179
6180 * xselect.c (Qcompound_text_with_extensions): Renamed from
6181 Qcompound_text_no_extensions.
6182 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
6183
6184 2002-02-26 Juanma Barranquero <lektu@terra.es>
6185
6186 * w32proc.c (syms_of_ntproc): Doc fix.
6187
6188 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6189
6190 * intervals.h: Include "dispextern.h" unconditionally.
6191
6192 2002-02-24 Jason Rumney <jasonr@gnu.org>
6193
6194 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
6195 and disp-table.elc.
6196 (lisp): Add emacs-lisp/backquote.elc.
6197
6198 2002-02-24 Kim F. Storm <storm@cua.dk>
6199
6200 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
6201 The validation of the event type was too strict as it didn't
6202 allow string events; buffer names are used in bindings for
6203 menu-bar-select-buffer (see `menu-bar-update-buffers').
6204
6205 2002-02-23 Kim F. Storm <storm@cua.dk>
6206
6207 The following changes rework my patch of 2002-02-06 which
6208 added command remapping by entering the commands directly into
6209 the keymaps. Now, command remapping uses an explicit `remap'
6210 prefix in the keymaps, i.e. [remap COMMAND].
6211
6212 * keymap.c (Qremap, remap_command_vector): New variables.
6213 (is_command_symbol): Removed function.
6214 (Fdefine_key): No longer accept a symbol for KEY.
6215 Added validation of [remap COMMAND] argument for KEY.
6216 The DEF is no longer required to be a symbol when remapping a command.
6217 (Fremap_command): New function to remap command through keymaps.
6218 (Flookup_key): Perform command remapping initiated by
6219 Fremap_command directly for speed.
6220 (Fkey_binding): Use Fremap_command for command remapping.
6221 (where_is_internal): Handle new command remapping representation.
6222 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
6223 staticpro them. Defsubr Fremap_command.
6224
6225 * keymap.h (Fremap_command): Declare extern.
6226 (is_command_symbol): Remove extern.
6227
6228 * keyboard.c (command_loop_1): Use Fremap_command for command
6229 remapping; now try command remapping for all symbols.
6230
6231 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
6232
6233 * coding.h (run_pre_post_conversion_on_str): Add prototype.
6234
6235 2002-02-23 Jason Rumney <jasonr@gnu.org>
6236
6237 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
6238 on the string before encoding it.
6239 (Fw32_get_clipboard_data): Run post-read-conversion on the string
6240 after decoding it.
6241
6242 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
6243
6244 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6245
6246 * w32term.c (enter_timestamp): Remove unused static variable to
6247 prevent warning.
6248
6249 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
6250
6251 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
6252
6253 * w16select.c (Fw16_get_clipboard_data): Fix last change.
6254
6255 * xselect.c (selection_data_to_lisp_data): Fix last change.
6256
6257 2002-02-22 Jason Rumney <jasonr@gnu.org>
6258
6259 * w32term.h (struct w32_output): New member menu_command_in_progress.
6260
6261 * w32menu.c (menubar_selection_callback): Free the menu and
6262 clear the menu_command_in_progress flag.
6263
6264 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
6265 (menu_free_timer): New variable.
6266 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
6267 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
6268 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
6269 menu command is in progress.
6270 <WM_COMMAND>: Set the menu_command_in_progress flag.
6271 Kill any menu_free_timer that is running.
6272
6273 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
6274 Call ExtTextOutA rather than ExtTextOut.
6275
6276 2002-02-22 Eli Zaretskii <eliz@gnu.org>
6277
6278 * puresize.h (BASE_PURESIZE): Increase to 755000.
6279
6280 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
6281
6282 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
6283 on the string before encoding it.
6284 (Fw16_get_clipboard_data): Run post-read-conversion on the string
6285 after decoding it.
6286
6287 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
6288
6289 Support for ICCCM Extended Segments in X selections:
6290
6291 * xselect.c <Qcompound_text_no_extensions>: New variable.
6292 (syms_of_xselect): Intern and staticpro it.
6293 (selection_data_to_lisp_data): Run post-read-conversion on decoded
6294 selection text.
6295 (lisp_data_to_selection_data): If next-selection-coding-system is
6296 compound-text-no-extensions, set the type of selection to be
6297 compound-text.
6298
6299 * xterm.h (x_encode_text): Update prototype.
6300
6301 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
6302 callers changed. If SELECTIONP is non-zero, run the
6303 pre-write-conversion function before encoding the selection text.
6304
6305 2002-02-21 Kim F. Storm <storm@cua.dk>
6306
6307 * frame.c (syms_of_frame): Change mouse-highlight default to t.
6308
6309 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
6310 Correct composing of language-change event.
6311
6312 2002-02-20 Kim F. Storm <storm@cua.dk>
6313
6314 * keyboard.c (menu_bar_items): Don't include keymap or local-map
6315 bindings at PT when building menu (the menu is not updated often
6316 enough for this to work reliable).
6317 (tool_bar_items): Likewise.
6318 (current_active_maps): Removed unused (and buggy) function.
6319
6320 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6321
6322 * xfns.c (gif_load): Use correct width and height for GIF images.
6323
6324 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
6325
6326 * floatfns.c (Fatan): Accept an optional second arg and call
6327 atan2 if passed 2 args.
6328
6329 2002-02-18 Jason Rumney <jasonr@gnu.org>
6330
6331 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
6332
6333 2002-02-17 Jason Rumney <jasonr@gnu.org>
6334
6335 * w32term.c (x_autoselect_window_p): New variable.
6336 (syms_of_w32term): DEFVAR_BOOL and initialize it.
6337 (note_mouse_movement): Use it.
6338
6339 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
6340
6341 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
6342
6343 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
6344 New variables.
6345 (syms_of_w32fns): Intern and staticpro them.
6346 (x_frame_parms) <"fullscreen">: New parameter.
6347 (x_fullscreen_move, x_set_fullscreen): New functions.
6348 (x_set_frame_parameters): Support Qfullscreen.
6349 (x_real_positions): Save x/y_pixels_diff frame params.
6350 (x_figure_window_size): Support full-screen frames.
6351 (Fx_create_frame): Default the fullscreen parameter.
6352
6353 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
6354 (x_fullscreen_adjust): New functions.
6355 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
6356 fullscreen. Call x_check_fullscreen_move, and set the
6357 want_fullscreen member of output_data.w32
6358 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
6359
6360 * w32term.h: New enum for FULLSCREEN_* constants.
6361 (struct w32_output): New members want_fullscreen, x_pixels_diff,
6362 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
6363 (x-fullscreen-adjust): New prototype.
6364
6365 2002-02-17 Kim F. Storm <storm@cua.dk>
6366
6367 * frame.c: (Vmouse_highlight): New variable.
6368 (syms_of_frame): DEFVAR_LISP it.
6369
6370 * frame.h: (Vmouse_highlight): Declare extern.
6371
6372 * xterm.h (struct x_display_info): Add mouse_face_hidden.
6373
6374 * xterm.c (disable_mouse_highlight): Removed variable.
6375 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
6376 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
6377 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
6378 and on after keyboard input.
6379 (x_term_init): Initialize mouse_face_hidden.
6380
6381 * msdos.h (struct display_info): Add mouse_face_hidden.
6382
6383 * msdos.c (disable_mouse_highlight): Removed variable.
6384 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
6385 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
6386 (internal_terminal_init): Initialize mouse_face_hidden.
6387 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
6388 and on after keyboard input.
6389
6390 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
6391
6392 * w32term.c (disable_mouse_highlight): Removed variable.
6393 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
6394 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
6395 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
6396 and on after keyboard input.
6397 (w32_initialize_display_info): Initialize mouse_face_hidden.
6398
6399 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
6400
6401 * msdos.c (last_mouse_window): New variable.
6402 (dos_rawgetc): Fix last change--if the mouse is in the same window
6403 as recorded in last_mouse_window, don't select this window.
6404
6405 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
6406
6407 * msdos.c (x_autoselect_window_p): New variable.
6408 (syms_of_msdos): Defvar it.
6409 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
6410 which the last mouse movement occured, unless it is already selected.
6411
6412 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
6413 New variables.
6414 (syms_of_xdisp): DEVFAR them.
6415 (hscroll_window_tree): Use automatic_hscroll_margin and
6416 Vautomatic_hscroll_step to compute the amount of window scrolling.
6417
6418 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6419
6420 * xterm.c (x-autoselect-window): New variable.
6421 (note_mouse_movement): Use it.
6422
6423 * keyboard.c: Do not include "systime.h" twice.
6424
6425 2002-02-15 Andreas Schwab <schwab@suse.de>
6426
6427 * puresize.h (BASE_PURESIZE): Increase to 9/5.
6428
6429 * alloc.c (NSTATICS): Increase to 1280.
6430
6431 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
6432
6433 * alloc.c (NSTATICS): Bump to 1026.
6434
6435 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
6436 (Vx_super_keysym): New variables.
6437 (syms_of_xterm): DEFVAR_LISP them.
6438 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
6439 variables to determine which keys to use for the various modifiers.
6440
6441 2002-02-13 Kim F. Storm <storm@cua.dk>
6442
6443 * window.c: (Vmode_line_in_non_selected_windows): Removed.
6444 (mode_line_in_non_selected_windows): New variable.
6445 (syms_of_window): DEFVAR_BOOL it.
6446
6447 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
6448 Use mode_line_in_non_selected_windows.
6449 (mode_line_in_non_selected_windows): Declare extern.
6450 (Vmode_line_in_non_selected_windows): Removed extern.
6451
6452 2002-02-13 Richard M. Stallman <rms@gnu.org>
6453
6454 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
6455 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
6456 (Fclear_this_command_keys): Doc fixes.
6457
6458 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
6459 (update_face_from_frame_parameter): Increment face_change_count
6460 and windows_or_buffers_changed to force redisplay using changed faces.
6461
6462 * xdisp.c (QCpropertize): New variable.
6463 (mode_line_proptrans_alist): New variable.
6464 (display_mode_element): New arg PROPS; all calls changed.
6465 Implement this, for strings.
6466 Handle literal output of strings by sharing the
6467 main-line code for strings, using local var `literal'.
6468 Handle :propertize feature.
6469 (syms_of_xdisp): Initialze and staticpro QCpropertize and
6470 mode_line_proptrans_alist.
6471
6472 2002-02-11 Kim F. Storm <storm@cua.dk>
6473
6474 * window.c: (Vmode_line_in_non_selected_windows): New variable.
6475 (syms_of_window): DEFVAR_LISP it.
6476
6477 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
6478 (CURRENT_MODE_LINE_FACE_ID): Use it.
6479 (Vmode_line_in_non_selected_windows): Declare extern.
6480
6481 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
6482 to get mode line face.
6483
6484 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6485
6486 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
6487 variables; cus-start.el doesn't need them anymore.
6488
6489 2002-02-09 Kim F. Storm <storm@cua.dk>
6490
6491 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
6492 reduction. This fixes a display problem where stray newlines were
6493 inserted in the window (corrected by C-l). Clarified code (IMHO).
6494
6495 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6496
6497 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6498
6499 * xdisp.c (display_mode_lines): Fix last change.
6500
6501 2002-02-09 Jason Rumney <jasonr@gnu.org>
6502
6503 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
6504 match each other.
6505 (w32_load_system_font): Prevent Cleartype fonts from loading.
6506 (Fx_show_tip): Ensure tip frames are above other topmost windows.
6507
6508 2002-02-09 Kim F. Storm <storm@cua.dk>
6509
6510 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
6511 (CURRENT_MODE_LINE_HEIGHT): Use it.
6512 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
6513
6514 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
6515 (pos_visible_p, handle_face_prop): Likewise.
6516 (display_mode_lines): Likewise, but for the real selected window.
6517 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
6518
6519 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
6520 in non-selected windows.
6521 (realize_basic_faces): Realize it.
6522 (syms_of_term): Intern and staticpro it.
6523
6524 2002-02-08 Kim F. Storm <storm@cua.dk>
6525
6526 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
6527 Changed mail addresses to emacs-devel@gnu.org.
6528
6529 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
6530
6531 * fileio.c (Fsubstitute_in_file_name): If the file name includes
6532 ~user, and there's no such user, don't discard everything before ~user.
6533
6534 * floatfns.c (Fround): Doc fix.
6535
6536 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6537
6538 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
6539
6540 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
6541
6542 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
6543
6544 2002-02-07 Kim F. Storm <storm@cua.dk>
6545
6546 * keymap.c (where_is_internal): Only check whether definition is
6547 remapped if it fulfills is_command_symbol.
6548
6549 2002-02-07 Andreas Schwab <schwab@suse.de>
6550
6551 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
6552
6553 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
6554
6555 2002-02-06 Kim F. Storm <storm@cua.dk>
6556
6557 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
6558 defining command remapping. Doc updated.
6559 (Flookup_key): Remap command through keymap if KEY is a symbol.
6560 (is_command_symbol): New function.
6561 (Fkey_binding): Use it. New optional argument NO-REMAP.
6562 Doc updated. Callers changed. Perform command remapping via
6563 recursive call unless that arg is non-nil.
6564 (where_is_internal): New argument no_remap. Callers changed.
6565 Call recursively to find original key bindings for a remapped
6566 comand unless that arg is non-nil.
6567 (Fwhere_is_internal): New optional argument NO-REMAP.
6568 Doc updated. Callers changed. Pass arg to where_is_internal.
6569
6570 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
6571 (is_command_symbol): Added prototype.
6572
6573 * keyboard.c (Vthis_original_command): New variable.
6574 (syms_of_keyboard): DEFVAR_LISP it.
6575 (command_loop_1): Set it, and perform command remapping.
6576
6577 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6578
6579 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
6580
6581 2002-02-06 Jason Rumney <jasonr@gnu.org>
6582
6583 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
6584
6585 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
6586
6587 * charset.c (get_charset_id): Use if-else instead of ?:.
6588
6589 2002-02-06 Richard M. Stallman <rms@gnu.org>
6590
6591 * filelock.c (S_ISLNK): Define if not defined.
6592
6593 2002-02-03 Richard M. Stallman <rms@gnu.org>
6594
6595 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
6596
6597 * lread.c (read1): Redesign strategy for force_multibyte and
6598 force_singlebyte. Now is_multibyte records whether read_buffer
6599 is multibyte. Encountering any multibyte character makes it so.
6600
6601 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
6602
6603 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
6604 with the same sequence, map that sequence to f10 rather than f0.
6605
6606 2002-02-03 Andreas Schwab <schwab@suse.de>
6607
6608 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
6609 latter never being defined on GNU/Linux.
6610
6611 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
6612
6613 * xfaces.c (realize_default_face): Don't set the weight and slant of
6614 the default face to Qnormal, unless these attributes are unspecified.
6615
6616 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6617
6618 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
6619 Call cancel_hourglass unconditionally.
6620
6621 * eval.c (Fsignal): Remove duplicated declaration of
6622 the variable `display_hourglass_p'.
6623
6624 2002-01-31 Richard M. Stallman <rms@gnu.org>
6625
6626 * editfns.c (region_limit): Nicer error message.
6627
6628 * coding.c (decode_composition_emacs_mule):
6629 Give up if NCOMPONENT gets too large to index `component'.
6630
6631 * callint.c (check_mark): New arg to specify clearer error message.
6632 Callers changed.
6633
6634 2002-01-27 Richard M. Stallman <rms@gnu.org>
6635
6636 * minibuf.c (Fcompleting_read): Doc fix.
6637
6638 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6639
6640 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
6641 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
6642 Fix doc-strings.
6643
6644 2002-01-26 Richard M. Stallman <rms@gnu.org>
6645
6646 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
6647
6648 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
6649 and scroll_up_aggressively.
6650
6651 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6652
6653 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
6654
6655 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
6656
6657 * textprop.c (Fnext_property_change, Fnext_single_property_change)
6658 (Fprevious_property_change, Fprevious_single_property_change):
6659 Stay within the narrowed-buffer boundaries.
6660
6661 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
6662
6663 * term.c (Ftty_display_color_cells): New function.
6664 (syms_of_term): Defsubr it.
6665 (Ftty_display_color_cells, Ftty_display_color_p): Change the
6666 argument name to DISPLAY. Doc fix.
6667
6668 * dispextern.h: Add prototype for set_tty_color_mode and
6669 tty_setup_colors.
6670
6671 2002-01-24 Jason Rumney <jasonr@gnu.org>
6672
6673 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
6674 If region left to draw is not what was expected, mark the frame as
6675 garbaged.
6676
6677 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
6678 Combine the regions returned by BeginPaint and GetUpdateRect.
6679
6680 2002-01-23 Jason Rumney <jasonr@gnu.org>
6681
6682 * w32term.c (x_update_window_begin): Only hide caret if
6683 w32_use_visible_system_caret is set.
6684 (x_update_window_end): Only show caret if
6685 w32_use_visible_system_caret is set.
6686 (syms_of_w32term): Handle SystemParametersInfo call failing.
6687
6688 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
6689
6690 2002-01-22 Richard M. Stallman <rms@gnu.org>
6691
6692 * unexelf.c (unexec): Define n so as to cause compilation error
6693 for the code where people have often written n instead of nn.
6694
6695 * .gdbinit (hookpost-run): Defined.
6696
6697 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6698
6699 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
6700
6701 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6702
6703 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
6704 if fullscreen is being set.
6705
6706 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6707
6708 * minibuf.c (Fminibuffer_contents)
6709 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
6710 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
6711
6712 2002-01-21 Richard M. Stallman <rms@gnu.org>
6713
6714 * window.c (check_frame_size): Fix minimum height calculation.
6715
6716 2002-01-20 Ken Raeburn <raeburn@gnu.org>
6717
6718 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
6719 height before comparison.
6720 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
6721
6722 2002-01-20 Jason Rumney <jasonr@gnu.org>
6723
6724 * w32term.c (w32_system_caret_width): Remove.
6725 (w32_use_visible_system_caret): New user flag.
6726 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
6727 Windows reports a screen reader running.
6728 (x_update_window_begin): Hide the system caret.
6729 (x_update_window_end): Show the system caret.
6730 (x_display_and_set_cursor): Don't draw a cursor when
6731 w32_use_visible_system_caret is set. Do not adjust width.
6732
6733 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
6734 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
6735 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
6736 the user requests it. Use system default width when creating.
6737 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
6738
6739 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
6740 New window messages.
6741
6742 2002-01-20 Richard M. Stallman <rms@gnu.org>
6743
6744 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
6745
6746 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6747
6748 * doprnt.c (doprnt1): Fix typos in error call.
6749
6750 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
6751
6752 * unexelf.c (unexec) [__sgi]: Support the .got sections.
6753
6754 2002-01-20 Jason Rumney <jasonr@gnu.org>
6755
6756 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
6757 that Windows returns. If a double check fails, try to guess how
6758 ExtTextOut is going to act.
6759
6760 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
6761 in place of stricmp.
6762 (w32_list_synthesized_fonts): Removed.
6763 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
6764 (struct enumfont_t): New element; list.
6765 (enum_font_cb2): List all style and charset variations of a font.
6766 (Fw32_select_font): New optional argument; include_proportional.
6767 Exclude vertical fonts. Exclude proportional fonts unless
6768 include_proportional is non-nil.
6769 (w32_enable_synthesized_fonts): Change to a boolean.
6770 (Fw32_send_sys_command): Doc fix.
6771
6772 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6773
6774 * dispnew.c (update_frame): Move the variable `tem' to the block
6775 where it is used.
6776
6777 2002-01-19 Jason Rumney <jasonr@gnu.org>
6778
6779 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
6780 call to face-set-after-frame-default.
6781
6782 2002-01-18 Richard M. Stallman <rms@gnu.org>
6783
6784 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
6785 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
6786
6787 2002-01-17 Richard M. Stallman <rms@gnu.org>
6788
6789 * window.c (enlarge_window): When exceeding size of parent,
6790 directly delete all the siblings instead of trying to resize it.
6791
6792 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6793
6794 * term.c (set_tty_color_mode): Remove unused variable `tem'.
6795
6796 2002-01-16 Henrik Enberg <henrik@enberg.org>
6797
6798 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
6799
6800 2002-01-16 Kim F. Storm <storm@cua.dk>
6801
6802 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
6803 is invisible. This can happen if cursor is on top line of a
6804 window, and we switch to a buffer with a header line.
6805
6806 * w32term.c (x_erase_phys_cursor): Ditto.
6807
6808 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6809
6810 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
6811 `dont_resize' only when used.
6812
6813 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
6814
6815 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
6816
6817 * xdisp.c (display_mode_element): When computing charpos, depend
6818 on multibyteness of elt, not the text in field.
6819
6820 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6821
6822 * buffer.c (Fkill_all_local_variables):
6823 Increment `update_mode_lines' only once.
6824
6825 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6826
6827 * lisp.h (adjust_after_replace_noundo)
6828 (Fupdate_coding_systems_internal): Add prototypes.
6829
6830 * sound.c (Fplay_sound): Initialize header_size also for :data case.
6831
6832 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
6833
6834 Support for the --color command-line argument and tty-color-mode
6835 frame parameter:
6836
6837 * term.c (tty_default_color_capabilities, tty_setup_colors)
6838 (set_tty_color_mode): New functions.
6839 (term_init): Call tty_default_color_capabilities.
6840 (Qtty_color_mode_alist): New variable.
6841 (syms_of_term): Intern and staticpro it.
6842
6843 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
6844 frames.
6845 (do_switch_frame): For termcap frames, switch the tty
6846 color mode as specified by the frame's parameters.
6847 (Qtty_color_mode): New variable.
6848 (syms_of_frame): Intern and staticpro it.
6849
6850 * emacs.c (USAGE2): Add the --color option.
6851 (standard_args): Ditto.
6852
6853 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6854
6855 * xterm.h (struct x_output): New members want_fullscreen,
6856 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
6857 y_pixels_outer_diff.
6858 New enum for FULLSCREEN_* constants.
6859 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
6860 is NULL.
6861 (x_fullscreen_adjust): Add prototype.
6862
6863 * emacs.c (USAGE2): Add the new full-screen arguments.
6864 (standard_args): Ditto.
6865
6866 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
6867 New variables.
6868 (syms_of_xfns): Intern and staticpro them.
6869 (x_frame_parms) <"fullscreen">: New parameter.
6870 (x_fullscreen_move, x_set_fullscreen): New functions.
6871 (x_set_frame_parameters): Support for Qfullscreen.
6872 (x_real_positions): More accurate computation of the frame position.
6873 (x_figure_window_size): Support full-screen frames.
6874 (Fx_create_frame): Default the fullscreen parameter.
6875
6876 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
6877 (XTread_socket) <Expose>: Call x_check_fullscreen.
6878 <ConfigureNotify>: Don't resize to fullscreen.
6879 Call x_check_fullscreen_move, and set the want_fullscreen member of
6880 output_data.x.
6881
6882 2002-01-13 Jason Rumney <jasonr@gnu.org>
6883
6884 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
6885 for mice with more than 3 buttons.
6886
6887 * w32term.c (parse_button): New parameter xbutton. Callers changed.
6888 (w32_read_socket): Handle new "XBUTTON" messages.
6889
6890 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
6891 (syms_of_w32fns): DEFVAR_BOOL it.
6892 (w32_wnd_proc): Handle new "XBUTTON" messages.
6893
6894 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6895
6896 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
6897
6898 2002-01-13 Andreas Schwab <schwab@suse.de>
6899
6900 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
6901
6902 2002-01-12 Andreas Schwab <schwab@suse.de>
6903
6904 * .gdbinit (xbuffer): Remove address operator since data is now a
6905 pointer.
6906
6907 2002-01-11 Richard M. Stallman <rms@gnu.org>
6908
6909 * insdel.c (adjust_after_replace_noundo): New function.
6910
6911 * coding.c (code_convert_region): Don't copy old text if undo disabled.
6912
6913 2002-01-09 Jason Rumney <jasonr@gnu.org>
6914
6915 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
6916 when checking for multiple frames.
6917
6918 2002-01-08 Richard M. Stallman <rms@gnu.org>
6919
6920 * window.c (delete_window): Rewrite the code for changing the
6921 selected window to handle the case where WINDOW is not a leaf.
6922
6923 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
6924
6925 * process.c (send_process): Set src_multibyte to 1 after the call
6926 top setup_coding_system, not before the call.
6927
6928 2002-01-07 Jason Rumney <jasonr@gnu.org>
6929
6930 * xmenu.c (set_frame_menubar, xmenu_show):
6931 (xdialog_show): Initialize wv->help to Qnil.
6932
6933 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
6934 (w32_dialog_show): Initialize wv->help to Qnil.
6935
6936 2002-01-06 Jason Rumney <jasonr@gnu.org>
6937
6938 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
6939
6940 * w32menu.c (w32_menu_display_help): Revert last change.
6941
6942 * xmenu.c (menu_highlight_callback): Revert last change.
6943
6944 2002-01-06 Andreas Schwab <schwab@suse.de>
6945
6946 * insdel.c (make_gap_larger): Make sure buffer size does not
6947 overflow range of int.
6948
6949 2002-01-05 Jason Rumney <jasonr@gnu.org>
6950
6951 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
6952 OVERLAPS_P.
6953
6954 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
6955
6956 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
6957 to the left or to the right of the pointer, put it against
6958 the left screen edge.
6959 (x_frame_parms): Add missing braces around initializer.
6960
6961 * w32term.c (x_setup_relief_colors): Don't compute an image's
6962 background color if it doesn't have a Pixmap.
6963 (notice_overwritten_cursor): Don't depend on
6964 output_cursor and updated_area. Compare pixel coordinates with
6965 window's cursor pixel coordinates.
6966 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
6967 Call notice_overwritten_cursor with new arg list.
6968 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
6969 unconditionally.
6970 (x_draw_image_relief): Use predefined macro instead of
6971 constant when the value of `tool_bar_button_relief' is negative.
6972
6973 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
6974
6975 2002-01-04 Richard M. Stallman <rms@gnu.org>
6976
6977 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
6978
6979 2002-01-03 Richard M. Stallman <rms@gnu.org>
6980
6981 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
6982 (Fkey_binding): Try the `keymap' property map first.
6983 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
6984 minor mode bindings.
6985
6986 2002-01-03 Kim F. Storm <storm@cua.dk>
6987
6988 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
6989
6990 2002-01-02 Richard M. Stallman <rms@gnu.org>
6991
6992 * keyboard.c (read_key_sequence): Handle the keymap property
6993 before minor mode maps.
6994
6995 * editfns.c (Fformat): Update thissize from field_width
6996 based on the actual width, in the string case.
6997
6998 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6999
7000 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
7001 when used as truth value to prevent gcc warnings.
7002
7003 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
7004 * w32proc.c: Include <config.h>.
7005
7006 2002-01-01 Andreas Schwab <schwab@suse.de>
7007
7008 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
7009 not EMACS_INT, to make them compatible with DEFVAR_INT.
7010 * lisp.h (max_specpdl_size): Adjust declaration.
7011
7012 2002-01-01 Richard M. Stallman <rms@gnu.org>
7013
7014 * print.c (print_object): Test print_escape_nonascii only for
7015 unibyte strings.
7016 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
7017 when outputting to a multibyte buffer.
7018
7019 2001-12-29 Richard M. Stallman <rms@gnu.org>
7020
7021 * print.c (print_object): In multibyte string, use hex escapes.
7022 Use octal only for unibyte strings.
7023 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
7024
7025 * lread.c (read_escape): New arg BYTEREP for reporting whether
7026 escape forces unibyte or multibyte.
7027 (read1): When reading a string, take note of that info.
7028
7029 2001-12-29 Ken Raeburn <raeburn@gnu.org>
7030
7031 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
7032 comparison to test lisp value returned by Fget.
7033
7034 2001-12-29 Richard M. Stallman <rms@gnu.org>
7035
7036 * lisp.h (max_specpdl_size): Add declaration.
7037
7038 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
7039
7040 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
7041 Handle modifier bits. Correct typo in error message.
7042
7043 2001-12-28 Richard M. Stallman <rms@gnu.org>
7044
7045 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
7046 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
7047 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
7048 Update calls to Fdefine_abbrev.
7049 (write_abbrev): Update for changed data format.
7050 Don't list "system" abbrevs.
7051 (Fexpand_abbrev): Update use count with new data format.
7052 (describe_abbrev): Update for changed data format.
7053 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
7054
7055 * config.in (HAVE_MBSINIT): Add #undef.
7056
7057 * strftime.c (mbsinit): Define as no-op if not available.
7058
7059 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
7060 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
7061
7062 * keymap.c (Flookup_key): Error message if key has wrong data type.
7063 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
7064 (exclude_key): New variable.
7065
7066 2001-12-28 Gerd Moellmann <gerd@gnu.org>
7067
7068 * xterm.c (x_setup_relief_colors): Don't compute an image's
7069 background color if it doesn't have a Pixmap.
7070
7071 * xterm.c (notice_overwritten_cursor): Don't depend on
7072 output_cursor and updated_area. Compare pixel coordinates with
7073 window's cursor pixel coordinates.
7074 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
7075 Call notice_overwritten_cursor with new arg list.
7076 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
7077 unconditionally.
7078
7079 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
7080 height of the cursor line to the amount to scroll.
7081
7082 2001-12-27 Richard M. Stallman <rms@gnu.org>
7083
7084 * intervals.c (set_point_both): The position after an invisible,
7085 intangible character is not an acceptable stopping point.
7086
7087 2001-12-27 Ken Raeburn <raeburn@gnu.org>
7088
7089 * window.c (enlarge_window): In new preserve_before code, convert
7090 CURBEG from lisp object to integer before doing arithmetic.
7091
7092 2001-12-27 Richard M. Stallman <rms@gnu.org>
7093
7094 * bytecode.c (Fbyte_code): Undo previous change.
7095
7096 2001-12-26 Kim F. Storm <storm@cua.dk>
7097
7098 * keyboard.c (record_char): Ignore duplicate help-echo events only
7099 separated by mouse-movement. When tracking mouse, only record
7100 first and last mouse-movement event in same window.
7101 Don't record mouse-movement events in keyboard macros.
7102
7103 2001-12-25 Richard M. Stallman <rms@gnu.org>
7104
7105 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
7106 (Fenlarge_window): New arg PRESERVE_BEFORE.
7107
7108 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
7109 instead of Fstring_as_unibyte.
7110
7111 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7112
7113 The following changes remove mocklisp support:
7114
7115 * mocklisp.h, mocklisp.c: Files removed.
7116
7117 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
7118 `Qmocklisp' and `Qmocklisp_arguments'.
7119 Remove prototype of syms_of_mocklisp.
7120
7121 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
7122
7123 * callint.c: Do not include mocklisp.h.
7124 (Fcall_interactively): Do not test for mocklisp case.
7125
7126 * eval.c: Remove variables `Qmocklisp_arguments',
7127 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
7128 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
7129 Do not test for mocklisp case.
7130 (Fwhile): Remove unused variable `tem'.
7131 (syms_of_eval): Remove variable `moclisp-arguments'.
7132
7133 * data.c (wrong_type_argument): Remove mocklisp case.
7134
7135 * doc.c (Fdocumentation): Remove mocklisp case.
7136
7137 * emacs.c (main): Do not call syms_of_mocklisp.
7138
7139 2001-12-21 Richard M. Stallman <rms@gnu.org>
7140
7141 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
7142 to the left or to the right of the pointer, put it against
7143 the left screen edge.
7144
7145 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
7146
7147 * Makefile.in (distclean): Remove .gdbinit if we are building
7148 outside the source tree.
7149
7150 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
7151
7152 * w32.c (emacs_root_dir): New function.
7153
7154 * msdos.c (emacs_root_dir): New function.
7155
7156 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
7157 of the current drive as the fallback for default_directory.
7158
7159 * dired.c (file_name_completion): Run the elements of
7160 completion-ignored-extensions through ENCODE_FILE.
7161
7162 * lisp.h (scmp): Remove prototype, since it's now a static
7163 function private to dired.c.
7164
7165 2001-12-18 Richard M. Stallman <rms@gnu.org>
7166
7167 * dired.c (scmp): Function moved from minibuf.c.
7168 Delete multibyte handling--used only on encoded strings.
7169
7170 * minibuf.c (scmp): Function moved to dired.c.
7171
7172 * fns.c (merge): Add QUIT call.
7173
7174 2001-12-18 Dave Love <fx@gnu.org>
7175
7176 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
7177 language/georgian.el.
7178
7179 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
7180
7181 * Makefile.in (lisp, shortlisp): Synchronize with changes to
7182 lisp/Makefile.in:DONTCOMPILE.
7183
7184 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7185
7186 * xdisp.c (window_box_height): Do not return negative values.
7187 From Gerd Moellmann <gerd@gnu.org>.
7188
7189 * keyboard.c (head_table): Add missing braces around initializer.
7190
7191 * term.c (keys): Likewise.
7192
7193 * xfns.c (x_frame_parms, visual_classes): Likewise.
7194
7195 2001-12-17 Sam Steingold <sds@gnu.org>
7196
7197 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
7198 patch (COMPOSING_P, not COMPOSING).
7199
7200 2001-12-17 Richard M. Stallman <rms@gnu.org>
7201
7202 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
7203
7204 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
7205 before calling decode_coding.
7206
7207 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
7208
7209 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
7210 instead of only for COMPOSITION_DISABLED.
7211
7212 2001-12-16 Richard M. Stallman <rms@gnu.org>
7213
7214 * alloc.c (pure_alloc): After overflow, allocate just a small block.
7215
7216 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
7217
7218 * buffer.h (struct buffer): New field `display_error_modiff'.
7219 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
7220
7221 * window.c (Frecenter): Clear display_error_modiff field.
7222
7223 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
7224 Call redisplay_window, but not if display_error_modiff field says no.
7225 (redisplay_window_error): New function.
7226 (displayed_buffer): New variable.
7227 (redisplay_internal, redisplay_windows): Call the new functions
7228 instead of redisplay_window directly.
7229
7230 2001-12-15 Richard M. Stallman <rms@gnu.org>
7231
7232 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
7233
7234 2001-12-14 Andrew Innes <andrewi@gnu.org>
7235
7236 * makefile.w32-in (EMACSLOADPATH): Define.
7237 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
7238 (bootstrap-temacs): Remove dependency on bootstrap-clean.
7239
7240 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
7241
7242 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
7243 parameter have a numeric value all the time.
7244
7245 * w32fns.c (x_report_frame_params): Likewise.
7246
7247 2001-12-12 Richard M. Stallman <rms@gnu.org>
7248
7249 * fileio.c (Fwrite_region): Doc fix.
7250
7251 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
7252 (redisplay_internal): Call clear_image_cache only for window terminals.
7253
7254 2001-12-12 Gerd Moellmann <gerd@gnu.org>
7255
7256 * xdisp.c (move_it_vertically_backward): Change heuristic
7257 for the case that we didn't move far enough initially.
7258
7259 * window.c (Frecenter): Simplify computation in the case of window
7260 system frames and ARG < 0; use window_box_height.
7261
7262 2001-12-11 Richard M. Stallman <rms@gnu.org>
7263
7264 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
7265 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
7266
7267 2001-12-11 Andrew Innes <andrewi@gnu.org>
7268
7269 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
7270 arg is negative.
7271
7272 2001-12-11 Richard M. Stallman <rms@gnu.org>
7273
7274 * m/hp800.h: Split the __hpux conditional into the parts
7275 that are right for GNU/Linux too and the parts that are not.
7276 Use the former if GNU_LINUX.
7277 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
7278
7279 * s/gnu-linux.h (GNU_LINUX): Defined.
7280
7281 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7282
7283 * macros.c, msdos.c, w16select.c: Change doc-string comments to
7284 `new style' [w/`doc:' keyword].
7285
7286 2001-12-10 Jason Rumney <jasonr@gnu.org>
7287
7288 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
7289 before using.
7290
7291 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7292
7293 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
7294 keyword].
7295
7296 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
7297
7298 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
7299
7300 * s/hpux10.h (srand48): Don't undefine.
7301
7302 2001-12-09 Jason Rumney <jasonr@gnu.org>
7303
7304 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
7305 Add comment to explain where the struct came from.
7306 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
7307 (add_menu_item): Process pop-up menus first to avoid memory leak.
7308 (add_menu_item, w32_menu_display_help): Use `help' field as
7309 Lisp_Object.
7310 (w32_free_submenu_strings): Only free owner-drawn strings.
7311
7312 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7313
7314 * COPYING: Moved back.
7315
7316 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
7317 Add parentheses around && within ||.
7318
7319 * indent.c (compute_motion): Likewise.
7320
7321 * intervals.c (merge_properties_sticky): Likewise.
7322
7323 * coding.c (setup_coding_system, shrink_encoding_region)
7324 (Fdecode_sjis_char): Likewise.
7325
7326 2001-12-07 Andreas Schwab <schwab@suse.de>
7327
7328 * xdisp.c (display_mode_element): Don't read past end of string if
7329 it ends with '%'.
7330
7331 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
7332 can hold.
7333
7334 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
7335 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
7336 type changed to Lisp_Object.
7337 (syms_of_data): DEFVAR_LISP them.
7338
7339 2001-12-07 Richard M. Stallman <rms@gnu.org>
7340
7341 * callproc.c (init_callproc): Set Vdata_directory based on the source
7342 location whenever Emacs was run uninstalled.
7343
7344 2001-12-06 Paul Eggert <eggert@twinsun.com>
7345
7346 * config.in (HAVE_WORKING_VFORK): New #undefs.
7347 * process.c (create_process):
7348 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
7349 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
7350 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
7351 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
7352 * m/intel386.h (HAVE_VFORK): Likewise.
7353 * m/mips-siemens.h (HAVE_VFORK): Likewise.
7354 * m/mips.h (HAVE_VFORK): Likewise.
7355 * s/freebsd.h (vfork): Remove #define.
7356 * s/lynxos.h (HAVE_VFORK): Remove #undef.
7357 * s/usg5-4-2.h: Fix comment about vfork.
7358
7359 2001-12-06 Richard M. Stallman <rms@gnu.org>
7360
7361 * s/hpux10.h (random): Add undef.
7362 (HAVE_RANDOM): Define it just once.
7363
7364 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
7365
7366 * eval.c: Undo last change: the standard syntax is not wanted.
7367
7368 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
7369
7370 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
7371 scroll bars of the frame before deleting the frame itself. If the
7372 frame has a widget, delete the frame with XtDestroyWidget, and do
7373 not call XDestroyWindow before that.
7374
7375 2001-12-06 Kim F. Storm <storm@cua.dk>
7376
7377 * xfns.c (x_report_frame_params): Return actual fringe widths.
7378
7379 * w32fns.c (x_report_frame_params): Return actual fringe widths.
7380
7381 2001-12-05 Andrew Innes <andrewi@gnu.org>
7382
7383 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
7384 excessively large.
7385
7386 * insdel.c (make_gap_larger): New function.
7387 (make_gap_smaller): New function.
7388 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
7389 Call make_gap_smaller if arg is negative.
7390
7391 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
7392
7393 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
7394 Pass a dummy argument when calling interrupt_signal.
7395 (parse_menu_item): Mark disabled items before checking for empty def.
7396 (read_char_minibuf_menu_prompt): Make safety more visible.
7397 (read_key_sequence): Add a `first_unbound' variable.
7398 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
7399 unbound prefix as soon as we can detect it.
7400
7401 * doc.c (Fsnarf_documentation): Add prototype.
7402 (get_doc_string): Handle negative arguments.
7403 (Fdocumentation): Use AREF and ASIZE.
7404 Move the calls to get_doc_string to a single place.
7405 Don't confuse an interactive-spec for a docstring reference.
7406 (Fdocumentation_property): Take advantage of the fact that
7407 get_doc_string now ignores the sign of the docstring position.
7408
7409 * eval.c: Use standard syntax for usage in docstrings.
7410
7411 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7412
7413 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
7414
7415 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7416
7417 * xterm.c (x_draw_image_relief): Use predefined macro instead of
7418 constant when the value of `tool_bar_button_relief' is negative.
7419
7420 2001-12-02 Richard M. Stallman <rms@gnu.org>
7421
7422 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
7423 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
7424
7425 * fileio.c (read_non_regular): Delete Fsignal call.
7426
7427 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
7428
7429 * lisp.h (run_hook_list_with_args): Undo last change.
7430
7431 2001-12-01 Gerd Moellmann <gerd@gnu.org>
7432
7433 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
7434
7435 2001-12-01 Jason Rumney <jasonr@gnu.org>
7436
7437 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
7438
7439 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
7440 [!WM_MOUSELEAVE]: Define.
7441
7442 * w32menu.c (current_popup_menu, get_menu_item_info):
7443 (set_menu_item_info): New vars.
7444 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
7445 (w32_menu_show): Set current_popup_menu.
7446 (add_menu_item): Allocate new strings for owner-drawn menu items
7447 and help strings.
7448 Use owner-draw for disabled menu items again.
7449 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
7450 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
7451
7452 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
7453 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
7454 <WM_EXITMENULOOP>: Free menu strings.
7455 <WM_MOUSELEAVE>: Stop tracking mouse.
7456 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
7457
7458 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
7459 and mouse face.
7460
7461 2001-12-01 Kim F. Storm <storm@cua.dk>
7462
7463 The following changes add left-fringe and right-fringe
7464 frame parameters to adjust fringe widths, or remove one or
7465 both fringes.
7466
7467 * frame.h (struct frame): Remove trunc_area_pixel_width and
7468 trunc_area_cols fields.
7469 (Qleft_fringe, Qright_fringe): Declare.
7470 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
7471
7472 * frame.c (Qleft_fringe, Qright_fringe): New vars.
7473 (syms_of_frame): Initialize them.
7474
7475 * window.c (coordinates_in_window): Handle separate left and right
7476 fringe widths.
7477
7478 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
7479 and fringe_cols fields.
7480 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
7481 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
7482 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
7483 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
7484 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
7485 (x_compute_fringe_widths): Add prototype.
7486
7487 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
7488 fill fringe evenly with small dashes.
7489 (x_draw_fringe_bitmap): Clear background if necessary. Align and
7490 clip the new ZV bitmap to avoid jitter between rows.
7491 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
7492 background. Don't draw fringe bitmaps if fringe width is zero.
7493 (x_compute_fringe_widths): New function.
7494 (x_new_font, x_set_window_size_1): Use it.
7495
7496 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
7497 (x_set_frame_parameters): Process `font' parameter before other
7498 parameters as fringe widths depend on it.
7499 (x_set_fringe_width): New function.
7500 (x_figure_window_size): Use x_compute_fringe_widths.
7501 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
7502 parameters.
7503
7504 * widget.c (set_frame_size): Use x_compute_fringe_widths.
7505 (EmacsFrameSetCharSize): Ditto.
7506
7507 * w32term.h: Merged changes from xterm.h.
7508 * w32term.c: Merged changes from xterm.c.
7509 * w32fns.c: Merged changes from xfns.c.
7510
7511 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7512
7513 * COPYING: Removed.
7514
7515 2001-11-29 Dave Love <fx@gnu.org>
7516
7517 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
7518 extra extra slot.
7519 (detect_coding_mask): Fix call of detect_coding_iso2022.
7520
7521 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7522
7523 * fileio.c (file-name-coding-system)
7524 (default-file-name-coding-system): Doc fix (links to referenced
7525 variables added).
7526
7527 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
7528
7529 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
7530 Add dummy uses of gcproN variables.
7531
7532 * category.c (describe_category, describe_category_1)
7533 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
7534 (syms_of_category): Don't defsubr Sdescribe_categories.
7535
7536 2001-11-28 Richard M. Stallman <rms@gnu.org>
7537
7538 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
7539
7540 * Makefile.in (lispdir): New variable, referring to build dir.
7541 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
7542
7543 2001-11-28 Andrew Innes <andrewi@gnu.org>
7544
7545 * w32menu.c (w32_menu_display_help): Actually add the new argument
7546 OWNER.
7547
7548 2001-11-28 Jason Rumney <jasonr@gnu.org>
7549
7550 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
7551 menu items. From David Ponce <dponce@wanadoo.fr>.
7552 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
7553 conditionally.
7554 (w32_menu_display_help): New argument OWNER. Rewritten to store a
7555 help event in the owner frame's keyboard buffer.
7556
7557 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
7558 (Fx_show_tip): Don't subtract last width from row width.
7559
7560 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
7561 (w32_read_socket): Use EQ to compare frames.
7562
7563 2001-11-28 Gerd Moellmann <gerd@gnu.org>
7564
7565 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
7566 OVERLAPS_P.
7567
7568 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7569
7570 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
7571 `gcpro3' and `gcpro4'.
7572
7573 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
7574
7575 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
7576
7577 * ccl.c: Use AREF and ASIZE.
7578
7579 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
7580
7581 * lisp.h (run_hook_list_with_args): Remove.
7582 (LIST_END_P): Fix call to wrong_type_argument.
7583 (make_fixnum_or_float): Use EMACS_INT rather than int.
7584
7585 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
7586
7587 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
7588 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
7589
7590 * eval.c: Use AREF and ASIZE.
7591 (Ffetch_bytecode): Add the file name to the error message.
7592
7593 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
7594 which match the end of the file-name.
7595 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
7596 is not a valid env var, but leave it as is instead.
7597
7598 * keymap.c (access_keymap): Handle t bindings like nil bindings.
7599 Make nil bindings in char-tables transparent.
7600 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
7601
7602 2001-11-26 Richard M. Stallman <rms@gnu.org>
7603
7604 * textprop.c (set_text_properties_1): Allow START, END in either order.
7605 Do nothing if range is empty.
7606
7607 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
7608
7609 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
7610 (clean): Not here.
7611
7612 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
7613
7614 * textprop.c (set_text_properties_1): Clearly mark that the
7615 interval should not be empty.
7616
7617 * intervals.c (graft_intervals_into_buffer):
7618 Don't call set_text_properties_1 on an empty interval.
7619
7620 2001-11-25 Richard M. Stallman <rms@gnu.org>
7621
7622 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
7623
7624 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
7625 don't lose the data in it.
7626
7627 2001-11-25 Juanma Barranquero <lektu@terra.es>
7628
7629 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
7630
7631 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
7632
7633 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
7634
7635 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
7636
7637 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
7638
7639 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
7640
7641 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
7642 Niemitalo <kon@iki.fi>.
7643
7644 2001-11-25 Jason Rumney <jasonr@gnu.org>
7645
7646 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
7647
7648 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
7649 (Fx_show_tip): Block input during frame creation.
7650 (Fx_show_tip, Fx_hide_tip): Enable.
7651
7652 2001-11-24 Richard M. Stallman <rms@gnu.org>
7653
7654 * lread.c (Fload): Detect recursive load error for more than 3
7655 nestings of the same file.
7656 (Vrecursive_load_depth_limit): Variable deleted.
7657 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
7658
7659 2001-11-24 Jason Rumney <jasonr@gnu.org>
7660
7661 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
7662 mouse position if either left or top is not specified.
7663
7664 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
7665 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
7666 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
7667 (my_create_tip_window): Assign tip_window.
7668 (x_create_tip_frame): Use same defaults as X.
7669 (compute_tip_xy): Remove unused variable. Use full screen width.
7670 (Fx_show_tip): Do not double height. Call ShowWindow directly.
7671
7672 * w32term.c (x_after_update_window_line): Doc fix.
7673 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
7674 frames.
7675 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
7676
7677 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
7678 for all Windowed systems.
7679
7680 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
7681
7682 * msdos.c (IT_clear_screen): If the frame's faces are not yet
7683 realized, use the initial screen colors to clear the screen.
7684
7685 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7686
7687 * textprop.c (Fset_text_properties): Remove unused variables
7688 `unchanged', `prev_changed', `s' and `len'.
7689
7690 * search.c (Freplace_match): Remove unused variable `inslen'.
7691
7692 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
7693
7694 2001-11-22 Jason Rumney <jasonr@gnu.org>
7695
7696 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
7697 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
7698 (my_create_tip_window): New function.
7699 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
7700 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
7701
7702 2001-11-20 Jason Rumney <jasonr@gnu.org>
7703
7704 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
7705 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
7706
7707 * w32fns.c (Vw32_system_coding_system): Remove.
7708 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
7709
7710 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
7711
7712 * fileio.c (Fwrite_region): Move choose_write_coding_system to
7713 after build_annotations.
7714
7715 * syntax.c (describe_syntax): Add dummy arg.
7716 (describe_syntax_1): Update call to describe_vector.
7717
7718 * category.c (describe_category): Add dummy arg.
7719 (describe_category_1): Update call to describe_vector.
7720
7721 * keymap.c (Fdescribe_vector): Add `describer' parameter.
7722 (describe_command, describe_translation): Add dummy second param.
7723 (describe_map): Call elt_describer with two arguments.
7724 (describe_vector_princ): Add `fun' parameter.
7725 Call it instead of the hardcoded `princ'.
7726 (describe_vector): Add arg `args'.
7727 Pass it as a new second argument to elt_describer.
7728
7729 * keymap.h (describe_vector): Update prototype.
7730
7731 * frame.c: Don't include keymap.h any more.
7732 (keys_of_frame): Remove.
7733
7734 * lisp.h (keys_of_frame): Remove declaration.
7735
7736 * emacs.c (main): Don't call `keys_of_frame' any more.
7737
7738 2001-11-14 Andreas Schwab <schwab@suse.de>
7739
7740 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
7741 if defined, 0 otherwise.
7742 (MAP_FAILED): Define if not defined and use it to test mmap failure.
7743 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
7744
7745 2001-11-19 Richard M. Stallman <rms@gnu.org>
7746
7747 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
7748
7749 2001-11-18 Jason Rumney <jasonr@gnu.org>
7750
7751 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
7752 (x_draw_bar_cursor): If the background color of the glyph under
7753 the cursor equals the frame's cursor color, use the glyph's
7754 foreground color for drawing the bar cursor.
7755 (x_after_update_window_line): Clear internal border in different
7756 circumstances.
7757 (w32_set_vertical_scroll_bar): Check for width and height > 0.
7758 (w32_draw_relief_rect): Correct relief by 1 pixel.
7759 (x_set_glyph_string_background_width):
7760 Set extends_to_end_of_line_p if the row's fill_line_p is set and
7761 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
7762 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
7763 if cursor_in_non_selected_windows is false.
7764 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
7765 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
7766 Notice if cursor gets overwritten.
7767 (notice_overwritten_cursor): Renamed from
7768 note_overwritten_text_cursor. Rewritten to take glyph widths
7769 into account, and to take X positions as parameters.
7770 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
7771 around call to x_draw_glyphs.
7772 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
7773 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
7774 color to use for image glyph reliefs.
7775 (x_draw_image_relief): Accept zero tool_bar_button_relief.
7776 (glyph_rect): Remove unused variable `area'.
7777
7778 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
7779 some items.
7780 (x_set_internal_border_width): Set frame garbaged when window
7781 doesn't exist yet.
7782 (Fx_create_frame): Accept zero tool_bar_button_relief.
7783 (x_clear_image_1, four_corners_best, image_background)
7784 (image_background_transparent): New functions.
7785 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
7786 (gs_format): Add `:background' entry.
7787 (lookup_image): Set IMG's background color if specified.
7788 (pbm_load, xbm_load_image, png_load): Set IMG's background field
7789 when appropriate.
7790 (x_clear_image_1): Reset `background_valid' and
7791 `background_transparent_valid' fields.
7792 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
7793 calculating it here. Set IMG's background_transparent field.
7794 (enum xpm_keyword_index): Add XPM_BACKGROUND.
7795 (enum png_keyword_index): Add PNG_BACKGROUND.
7796 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
7797 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
7798 (enum gif_keyword_index): Add GIF_BACKGROUND.
7799 (enum gs_keyword_index): Add GS_BACKGROUND.
7800 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
7801 Pre-calculate image background color where necessary.
7802 (x_create_x_image_and_pixmap, xbm_load, gs_load):
7803 Use display info's n_cbits entry for screen depth.
7804 (Fx_show_tip): Remove unused variables `buffer', `top',
7805 `left', `max_width' and `max_height'.
7806
7807 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
7808
7809 2001-11-18 Gerd Moellmann <gerd@gnu.org>
7810
7811 * puresize.h (BASE_PURESIZE): Increase to 750000.
7812
7813 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7814
7815 * frame.c (Fframe_live_p): Doc fix.
7816
7817 2001-11-18 Richard M. Stallman <rms@gnu.org>
7818
7819 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
7820 (message_dolog_marker3): New static variables hold three markers.
7821 (syms_of_xdisp): Initialize and staticpro them.
7822 (message_dolog): Use message_dolog_marker1..3 instead of
7823 allocating markers each time. Unchain them when done.
7824
7825 2001-11-17 Richard M. Stallman <rms@gnu.org>
7826
7827 * doc.c (Fsnarf_documentation): Doc fix.
7828
7829 2001-11-17 Andreas Schwab <schwab@suse.de>
7830
7831 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
7832
7833 2001-11-17 Richard M. Stallman <rms@gnu.org>
7834
7835 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
7836
7837 2001-11-17 Jason Rumney <jasonr@gnu.org>
7838
7839 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
7840
7841 2001-11-17 Gerd Moellmann <gerd@gnu.org>
7842
7843 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
7844 with invalid position.
7845
7846 2001-11-16 Richard M. Stallman <rms@gnu.org>
7847
7848 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
7849
7850 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
7851 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
7852 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
7853
7854 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
7855
7856 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
7857
7858 * fileio.c (build_annotations): Split off the tail.
7859 (build_annotations_2): New fun. Extracted from build_annotations.
7860 (Fwrite_region): Split the call to build_annotations into two
7861 calls to build_annotations and build_annotations_2.
7862
7863 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7864
7865 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
7866 clear_waiting_for_input with argument.
7867
7868 * xterm.h (x_update_cursor): Remove duplicated prototype.
7869
7870 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
7871
7872 * xterm.c (waiting_for_input): Remove unnecessary declaration.
7873
7874 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
7875
7876 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
7877
7878 * fileio.c (choose_write_coding_system): New fun, extracted
7879 from Fwrite_region.
7880 (Fwrite_region): Use it.
7881
7882 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
7883 (funcall_lambda, run_hook_with_args): Make static and add prototype.
7884 (ml_apply, find_handler_clause): Add prototype.
7885
7886 2001-11-16 Eli Zaretskii <eliz@gnu.org>
7887
7888 * config.in: Add #undef HAVE_COFF_H.
7889
7890 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
7891 Required for ISC 4.1.
7892
7893 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
7894
7895 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
7896 Andrew Wiseman <a.wiseman@btclick.com>.
7897
7898 2001-11-16 Kim F. Storm <storm@cua.dk>
7899
7900 The following changes are made to clean up the various internal
7901 references to the fringes to actually use the term `fringe' for
7902 them. Previously, they were called `flags areas', `bitmap areas',
7903 `left/right side of windows', or implicitly as `flags' or
7904 `bitmaps':
7905
7906 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
7907 Comments fixed. Use renamed symbols.
7908
7909 * dispnew.c: Comment fix. Use renamed symbols.
7910
7911 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
7912 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
7913 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
7914
7915 * msdos.c: Comment fix.
7916
7917 * w32fns.c: Use renamed symbols.
7918
7919 * w32term.c: Comment fixes. Use renamed symbols.
7920 (fringe_bitmap_type): Renamed from bitmap_type.
7921 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
7922 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
7923 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
7924
7925 * w32term.h: Comment fixes. Use renamed symbols.
7926 (fringes_extra): Renamed from flags_areas_extra.
7927 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
7928 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
7929 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
7930 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
7931 (FRAME_X_LEFT_FRINGE_WIDTH):
7932 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
7933 (FRAME_X_RIGHT_FRINGE_WIDTH):
7934 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
7935
7936 * widget.c: Use renamed symbols.
7937
7938 * window.c: Comment fixes. Use renamed symbols.
7939 (coordinates-in-window-p): Doc fix.
7940
7941 * xdisp.c: Comment fixes. Use renamed symbols.
7942
7943 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
7944
7945 * xfns.c: Use renamed symbols.
7946
7947 * xterm.c: Comment fixes. Use renamed symbols.
7948 (fringe_bitmap_type): Renamed from bitmap_type.
7949 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
7950 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
7951 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
7952
7953 * xterm.h: Comment fixes. Use renamed symbols.
7954 (fringes_extra): Renamed from flags_areas_extra.
7955 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
7956 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
7957 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
7958 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
7959 (FRAME_X_LEFT_FRINGE_WIDTH):
7960 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
7961 (FRAME_X_RIGHT_FRINGE_WIDTH):
7962 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
7963
7964 2001-11-15 Jason Rumney <jasonr@gnu.org>
7965
7966 * w32menu.c (add-menu-item): Make help_echo and radio buttons
7967 work for most menu items. From David Ponce
7968 <david.ponce@wanadoo.fr>.
7969
7970 2001-11-15 Gerd Moellmann <gerd@gnu.org>
7971
7972 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
7973 Some x_set_* function expect to be called even if old and new
7974 value are equal.
7975
7976 * xdisp.c (build_desired_tool_bar_string): Accept zero
7977 tool_bar_button_relief.
7978
7979 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
7980
7981 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
7982
7983 * xterm.c (x_draw_bar_cursor): If the background color of the
7984 glyph under the cursor equals the frame's cursor color, use
7985 the glyph's foreground color for drawing the bar cursor.
7986
7987 * dispnew.c (direct_output_forward_char): Fix character/byte
7988 position comparison.
7989
7990 2001-11-15 Miles Bader <miles@gnu.org>
7991
7992 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
7993 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
7994 Update arguments to find_field.
7995 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
7996 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
7997 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
7998 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7999
8000 2001-11-14 Richard M. Stallman <rms@gnu.org>
8001
8002 * editfns.c (Fpropertize): Allow call with 1 arg.
8003
8004 * dispextern.h (image_background, image_background_transparent):
8005 Conditionalize on HAVE_X_WINDOWS.
8006
8007 2001-11-13 Richard M. Stallman <rms@gnu.org>
8008
8009 * print.c (Fprin1_to_string): Doc fix.
8010
8011 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
8012
8013 * floatfns.c (Fceiling, Ffloor): Doc fixes.
8014
8015 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
8016
8017 * fileio.c (Ffile_accessible_directory_p): Doc fix.
8018
8019 * eval.c (syms_of_eval): Doc fix.
8020
8021 * coding.c (syms_of_coding): Doc fix.
8022
8023 * doc.c (Fsnarf_documentation): Doc fix.
8024
8025 * dispnew.c (syms_of_display): Doc fix.
8026
8027 * category.c (Fget_unused_category): Doc fix.
8028
8029 * buffer.c (syms_of_buffer): Doc fixes.
8030
8031 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
8032
8033 * print.c (prin1, print): Doc fix.
8034
8035 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8036
8037 * fontset.h: Remove declarations of variables
8038 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
8039
8040 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
8041 `Vclip_large_size_font'.
8042
8043 2001-11-13 Jason Rumney <jasonr@gnu.org>
8044
8045 * w32fns.c: Doc fix.
8046
8047 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8048
8049 * xfaces.c (Fface_attributes_as_vector): Doc fix.
8050
8051 * fns.c: Doc fix.
8052
8053 * emacs.c: Doc fix.
8054
8055 * coding.c: Doc fix.
8056
8057 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
8058 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
8059 `new style' [w/`doc:' keyword].
8060
8061 2001-11-12 Richard M. Stallman <rms@gnu.org>
8062
8063 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
8064 LeaveNotify events. Only FocusIn and FocusOut do that now.
8065 (x_display_and_set_cursor): Do display hollow cursors in active
8066 minibuffer windows when they are not selected.
8067
8068 2001-11-12 Jason Rumney <jasonr@gnu.org>
8069
8070 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8071 * w32term.c: Change doc-string comments to `new style'.
8072 [w/`doc:' keyword]. Doc fixes.
8073
8074 * w32fns.c: Don't define max.
8075 (Fx_open_connection): Only execute once.
8076
8077 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8078
8079 * ccl.c: Change macros to use do-while block instead of if-else.
8080 Use braces to follow GNU Coding Standards.
8081
8082 2001-11-11 Richard M. Stallman <rms@gnu.org>
8083
8084 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
8085
8086 * lread.c (read_escape): Use end_of_file_error for reporting eof.
8087
8088 * insdel.c (replace_range): Use adjust_markers_for_replace
8089 instead of adjust_markers_for_delete and adjust_markers_for_insert.
8090
8091 * intervals.h: Declare set_text_properties and set_text_properties_1.
8092
8093 * textprop.c (set_text_properties_1): New subroutine
8094 broken out of set_text_properties.
8095 (set_text_properties): Use set_text_properties_1.
8096
8097 * intervals.c (graft_intervals_into_buffer):
8098 Use set_text_properties_1 to clear out properties.
8099
8100 * search.c (Freplace_match): Use replace_range to insert
8101 and delete. Don't request property inheritance from
8102 surrounding text.
8103
8104 2001-11-10 Jason Rumney <jasonr@gnu.org>
8105
8106 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
8107 vertical fonts. Allow them if face name is explicitly specified.
8108 Do not give up if we find a font that cannot be converted to an xlfd.
8109
8110 2001-11-10 Gerd Moellmann <gerd@gnu.org>
8111
8112 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
8113 instead of malloc/free.
8114
8115 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8116
8117 * xfaces.c (merge_face_vectors): Use braces to follow GNU
8118 Coding Standards.
8119 (Finternal_set_lisp_face_attribute): Likewise.
8120
8121 * buffer.c (Fbury_buffer): Likewise.
8122
8123 * indent.c (current_column_1): Remove unused variable `prev_col'.
8124
8125 * coding.c (encode_coding): Use precomputed value of `src'.
8126 (encode_coding): Remove unused variable `src_end'.
8127 (code_convert_region): Remove unused variables `count'.
8128
8129 2001-11-07 Jason Rumney <jasonr@gnu.org>
8130
8131 * w32term.c (x_display_and_set_cursor): Do not move system caret
8132 if cursor_glyph is NULL.
8133
8134 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8135
8136 * keymap.c (access_keymap): Fix compilation error.
8137
8138 2001-11-07 Miles Bader <miles@gnu.org>
8139
8140 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
8141
8142 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8143
8144 * intervals.c (graft_intervals_into_buffer):
8145 Remove #ifdef'd-out code.
8146 (graft_intervals_into_buffer): Remove unused variable `middle'.
8147
8148 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
8149 code (eval-current-buffer).
8150 Change doc-string comments to `new style' [w/`doc:' keyword].
8151
8152 2001-11-06 Richard M. Stallman <rms@gnu.org>
8153
8154 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
8155
8156 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
8157
8158 * lread.c (read1): Fix behavior with nested backquoting.
8159
8160 * keyboard.c (make_lispy_event): Check integerness and fix
8161 Lisp_Object/int mixup.
8162
8163 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8164
8165 * fns.c (copy_hash_table): Remove unused variable `v'.
8166
8167 * fontset.c (fontset_font_pattern): Remove unused variable
8168 `family_registry'.
8169
8170 * indent.c (current_column_1): Remove unused variable `prev_col'.
8171
8172 2001-11-05 Richard M. Stallman <rms@gnu.org>
8173
8174 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
8175
8176 * buffer.c (Fkill_buffer): Don't delete auto save file
8177 if buffer is modified.
8178
8179 2001-11-05 Andrew Innes <andrewi@gnu.org>
8180
8181 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
8182 CHECK_NUMBER_CDR.
8183
8184 2001-11-05 Richard M. Stallman <rms@gnu.org>
8185
8186 * unexelf.c (unexec): Minor changes; clean up comments.
8187
8188 2001-11-05 Sam Steingold <sds@gnu.org>
8189
8190 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
8191
8192 2001-11-05 Andreas Schwab <schwab@suse.de>
8193
8194 * sound.c (sound_perror): Save errno from being clobbered.
8195
8196 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
8197
8198 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
8199 the program image directly.
8200
8201 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8202
8203 * buffer.h (Fbuffer_local_value): Add prototype.
8204
8205 2001-11-04 Richard M. Stallman <rms@gnu.org>
8206
8207 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
8208 and CHECK_BUFFER.
8209
8210 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
8211 (record_char): Likewise.
8212
8213 * keyboard.c (make_lispy_event): Don't insist a drag event must
8214 move to a different buffer position. Instead, check for moving at
8215 least double_click_fuzz.
8216
8217 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
8218
8219 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
8220
8221 * indent.c (current_column_1, Fmove_to_column): Separate the code
8222 for display-table glyphs from the code for buffer text, to fix
8223 bugs in the former.
8224
8225 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
8226
8227 * buffer.c (Fbuffer_local_value): New function.
8228 (syms_of_buffer): Defsubr it.
8229
8230 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
8231 value of `cursor-in-non-selected-windows'.
8232
8233 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
8234 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
8235 (syms_of_xdisp): Initialize it.
8236
8237 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8238
8239 * xfns.c (Fx_create_frame): Doc fix.
8240
8241 * coding.c: Change doc-string comments to `new style' [w/`doc:'
8242 keyword].
8243
8244 * eval.c (top_level_value, top_level_set): Remove commented and
8245 #ifdef'd-out code.
8246 (Fdefvar): Fix usage in doc-string.
8247
8248 2001-11-03 Richard M. Stallman <rms@gnu.org>
8249
8250 * xfns.c: Include unistd.h, if it exists.
8251
8252 * editfns.c: Move the include of ctype.h after unistd.h.
8253
8254 * gmalloc.c: Test BROKEN_PROTOTYPES.
8255
8256 2001-11-03 Ken Raeburn <raeburn@gnu.org>
8257
8258 * lisp.h (CHECK_STRING_CAR): New macro.
8259 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
8260 treating XCAR and XCDR as lvalues.
8261 (openp): Use CHECK_STRING_CAR.
8262 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
8263
8264 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
8265
8266 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
8267 (SIGMASKTYPE): Define.
8268
8269 * syssignal.h (sigunblock): Don't define if already defined.
8270
8271 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8272
8273 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
8274 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
8275 Fix typos in comments.
8276
8277 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
8278 and #ifdef'd-out code.
8279 Fix and reindent comments.
8280
8281 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
8282
8283 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
8284 argument `i' in macros.
8285
8286 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
8287 `i' in macros.
8288
8289 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
8290 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
8291 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
8292 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
8293 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
8294 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
8295 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
8296 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
8297 in macros.
8298
8299 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8300 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
8301 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
8302 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
8303 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
8304 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
8305 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
8306 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
8307 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
8308 (remove unused second argument).
8309
8310 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
8311
8312 * syntax.c (describe_syntax): New wrapper.
8313 (Finternal_describe_syntax_value): Rename from describe_syntax.
8314 Don't insert space at front and \n at the end.
8315 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
8316
8317 * regex.c (re_wctype): Try to fix some warnings.
8318 (regcomp, regexec): Don't forget the __restrict.
8319
8320 2001-11-02 Richard M. Stallman <rms@gnu.org>
8321
8322 * textprop.c (Fget_char_property): Doc fix.
8323
8324 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8325
8326 * process.c (Fstart_process): Add usage to doc-string.
8327
8328 * data.c (Fsetq_default): Ditto.
8329
8330 * callint.c (Finteractive): Ditto.
8331
8332 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
8333
8334 * macros.c: Don't include keymap.h any more.
8335
8336 2001-11-01 Richard M. Stallman <rms@gnu.org>
8337
8338 * data.c (Fmake_local_variable): Doc fix.
8339
8340 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
8341 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
8342
8343 * keymap.c (Fdescribe_buffer_bindings): Print character property
8344 bindings along with or instead of the buffer local map.
8345 Make the overriding maps override what they should.
8346
8347 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8348
8349 * window.c (grow_mini_window): Fix typo in comment.
8350
8351 2001-11-01 Gerd Moellmann <gerd@gnu.org>
8352
8353 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
8354 (XTset_vertical_scroll_bar): Likewise.
8355
8356 * xfns.c (x_build_heuristic_mask): Use four_corners_best
8357 instead of IMAGE_BACKGROUND.
8358
8359 * xfns.c (four_corners_best): Reindent.
8360
8361 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
8362 Handle :box so that it is possible to specify sexprs.
8363
8364 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
8365
8366 * s/hpux11.h: New file.
8367
8368 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8369
8370 * emacs.c (USAGE1): Show command line option --no-window-system
8371 instead of --no-windows in usage.
8372 (standard_args): Rename --no-windows to --no-window-system.
8373 (bug_reporting_address): Follow Emacs coding conventions.
8374
8375 * eval.c (Fcommandp): Doc fix.
8376 Change doc-string comments to `new style' [w/`doc:' keyword].
8377
8378 * frame.c (Fframe_live_p): Doc fix.
8379
8380 * buffer.c (selective-display-ellipses): Doc fix.
8381
8382 2001-10-31 Gerd Moellmann <gerd@gnu.org>
8383
8384 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
8385
8386 * xfaces.c (realize_x_face): If C is not a single-byte character,
8387 set the face's colors_copied_bitwise_p instead of the defaulted_p
8388 members which have a different meaning.
8389 (free_face_colors): Do nothing for a face whose colors have been
8390 copied bitwise.
8391
8392 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
8393
8394 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8395
8396 * marker.c, mocklisp.c: Change doc-string comments to `new style'
8397 [w/`doc:' keyword].
8398
8399 2001-10-31 Gerd Moellmann <gerd@gnu.org>
8400
8401 * fns.c (require_unwind): Return Lisp_Object.
8402
8403 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8404
8405 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
8406 (last-input-char): Revert doc-string to be the same as the
8407 doc-string of `last-input-event'.
8408
8409 * xdisp.c: Fix typos in comments.
8410
8411 2001-10-31 Gerd Moellmann <gerd@gnu.org>
8412
8413 * window.c (grow_mini_window): Handle case that the root
8414 window is already smaller than the nominal mininum height.
8415
8416 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
8417
8418 * emacs.c (main): Don't call keys_of_macros any more.
8419
8420 * lisp.h (keys_of_macros): Remove.
8421
8422 * macros.c (keys_of_macros): Remove.
8423
8424 * xfaces.c (Fface_attribute_relative_p): Declare args.
8425
8426 2001-10-30 Jason Rumney <jasonr@gnu.org>
8427
8428 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
8429 (enum_font_cb2): Ignore fonts with vertical orientation.
8430
8431 2001-10-30 Richard M. Stallman <rms@gnu.org>
8432
8433 * keyboard.c (Finput_pending_p): Doc fix.
8434
8435 2001-10-30 Gerd Moellmann <gerd@gnu.org>
8436
8437 * xterm.c (x_after_update_window_line): Don't run the code
8438 clearing in borders for rows whose visible height is 0.
8439
8440 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
8441 resized_p flag is set. If not set, use the much less flickering
8442 method previously used.
8443
8444 * dispnew.c (change_frame_size_1): Set frame's resized_p.
8445
8446 * frame.h (struct frame) <resized_p>: New member.
8447
8448 * lread.c (to_multibyte): Ensure read_buffer is at least twice
8449 as large as the number of bytes to convert.
8450
8451 * lread.c (to_multibyte): New function.
8452 (read1): Use it.
8453
8454 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
8455
8456 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
8457
8458 2001-10-30 Gerd Moellmann <gerd@gnu.org>
8459
8460 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
8461 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
8462 if the row's fill_line_p is set and drawing the last glyph with
8463 DRAW_IMAGE_{RAISED,SUNKEN}.
8464
8465 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
8466
8467 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
8468
8469 * xmenu.c: Include coding.h and charset.h.
8470 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
8471 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
8472 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
8473 Explicitly set wv->help. Use `TRUE' rather than `True'.
8474 (menu_help_callback): Use empty_string.
8475
8476 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
8477 (Fx_popup_dialog): Explicitly init f.
8478 (w32_menu_display_help): Use empty_string.
8479
8480 2001-10-29 Richard M. Stallman <rms@gnu.org>
8481
8482 * fns.c (Frequire): Detect recursive try to require the same
8483 feature 3 or more levels deep, and get error.
8484 (require_unwind): New subroutine.
8485 (require_nesting_list): New variable.
8486 (syms_of_fns): Init and staticpro it.
8487
8488 * print.c (print_object): Clarify indication of insertion type.
8489
8490 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
8491
8492 * coding.c (syms_of_coding): Document that locale-coding-system is
8493 used for decoding input on X.
8494
8495 * window.c (Fscroll_left, Fscroll_right): Doc fix.
8496
8497 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8498
8499 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
8500 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
8501
8502 2001-10-29 Gerd Moellmann <gerd@gnu.org>
8503
8504 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
8505 use NO_CURSOR if cursor_in_non_selected_windows is false.
8506
8507 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
8508 the slant attribute if FRAME is t.
8509
8510 * xfns.c (x_set_internal_border_width): Set frame garbaged
8511 when X window doesn't exist yet.
8512
8513 * xterm.c (x_after_update_window_line): Clear internal border
8514 in different circumstances.
8515
8516 * xterm.c (XTread_socket) <KeyPress>: Don't use
8517 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
8518 <handa@etl.go.jp>.
8519
8520 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
8521
8522 * m/ibms390.h: New file. From Adam Thornton
8523 <athornton@sinenomine.net>.
8524
8525 2001-10-28 Gerd Moellmann <gerd@gnu.org>
8526
8527 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
8528
8529 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
8530 a loop counter.
8531
8532 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8533
8534 * emacs.c: Use argv[0] instead of emacs when -t was specified.
8535
8536 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
8537 keyword].
8538 Fix typos in comments.
8539
8540 * emacs.c (bug_reporting_address): New function.
8541 Use it when displaying usage message.
8542
8543 * minibuf.c (read_minibuf): Remove unused external declaration of
8544 variable `Qread_only'.
8545
8546 * keymap.c (access_keymap): Remove unused variable `charset'.
8547
8548 2001-10-28 Miles Bader <miles@gnu.org>
8549
8550 * xfaces.c (merge_face_heights): Handle TO being relative as well.
8551 Remove #ifdef'd-out code.
8552 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
8553 (syms_of_xfaces): Initialize them.
8554
8555 2001-10-27 Jason Rumney <jasonr@gnu.org>
8556
8557 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
8558 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
8559 position using the system caret.
8560
8561 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
8562 (w32_system_caret_height, w32_system_caret_x)
8563 (w32_system_caret_y): New variables for tracking system caret.
8564 (w32_initialize): Initialize them.
8565 (x_display_and_set_cursor): Make system caret follow the active cursor.
8566
8567 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
8568 New messages types.
8569
8570 * w32term.c (note_mouse_highlight): Clear old help_echo.
8571
8572 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8573
8574 * xterm.c: Fix typo in a comment.
8575
8576 * emacs.c: Fix typos in comments.
8577 Remove unnecessary spaces.
8578 Change doc-string comments to `new style' [w/`doc:' keyword].
8579 (USAGE2): Fix typos in usage string.
8580
8581 * xterm.c: Fix typo in a comment.
8582
8583 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
8584 emacs.c.
8585
8586 2001-10-27 Gerd Moellmann <gerd@gnu.org>
8587
8588 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
8589 instead of 1/2 line_height in the heuristic for skipping
8590 farther backward when target_y was not reached.
8591
8592 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
8593 Display errno only if non-zero.
8594 (sound_warning): New function.
8595 (vox_configure): Don't treat failing to set sample rate as error.
8596 (various places): Improve error messages.
8597
8598 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
8599
8600 * fileio.c (Faccess_file): Run the argument filename through
8601 Fexpand_file_name, before using it.
8602
8603 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
8604 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
8605
8606 2001-10-26 Gerd Moellmann <gerd@gnu.org>
8607
8608 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
8609
8610 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
8611 Fix clearing in the case of scroll bars on the right.
8612
8613 2001-10-26 Juanma Barranquero <lektu@terra.es>
8614
8615 * w32gui.h (XImage): Add a dummy typedef.
8616
8617 2001-10-26 Gerd Moellmann <gerd@gnu.org>
8618
8619 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
8620
8621 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
8622
8623 * frame.c (Fframe_parameter): Fix last change.
8624
8625 * fileio.c: Revert last change (which removed old commented-out
8626 version of expand-file-name). Add a comment that explains why
8627 this old version should not be removed.
8628
8629 2001-10-25 Gerd Moellmann <gerd@gnu.org>
8630
8631 * frame.c (Fframe_parameter): Fix a bug whereby some
8632 ``artificial'' frame parameters, like `minibuffer' were not
8633 obtained by calling Fframe_parameters.
8634
8635 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
8636 cursor differently.
8637
8638 * xdisp.c (move_it_vertically_backward): Compute line height
8639 differently. Add heuristic to try to be more compatible to 20.x.
8640
8641 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
8642
8643 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
8644
8645 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
8646 boolean.
8647
8648 2001-10-25 Miles Bader <miles@gnu.org>
8649
8650 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
8651 BG is a pointer to a structure, not a structure.
8652 (gif_format, png_format): Add missing commas.
8653
8654 2001-10-24 Richard M. Stallman <rms@gnu.org>
8655
8656 * xfaces.c (Fface_attributes_as_vector): New function.
8657 (syms_of_xfaces): Defsubr it.
8658
8659 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8660
8661 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
8662 variable `area'.
8663
8664 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8665
8666 * search.c (scan_newline): Remove unused variable `selective_display'.
8667
8668 2001-10-25 Miles Bader <miles@gnu.org>
8669
8670 * dispextern.h (struct image): Add `background',
8671 `background_valid', and `background_transparent' fields.
8672 (image_background, image_background_transparent): New declarations.
8673 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
8674 * xfns.c (image_background, image_background_transparent)
8675 (four_corners_best): New functions.
8676 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
8677 (gs_format): Add `:background' entry.
8678 (lookup_image): Set IMG's background color if specified.
8679 (pbm_load, xbm_load_image, png_load): Set IMG's background field
8680 when appropriate.
8681 (x_clear_image_1): Reset `background_valid' and
8682 `background_transparent_valid' fields.
8683 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
8684 calculating it here. Set IMG's background_transparent field.
8685 (enum xpm_keyword_index): Add XPM_BACKGROUND.
8686 (enum png_keyword_index): Add PNG_BACKGROUND.
8687 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
8688 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
8689 (enum gif_keyword_index): Add GIF_BACKGROUND.
8690 (enum gs_keyword_index): Add GS_BACKGROUND.
8691 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
8692 Pre-calculate image background color where necessary.
8693 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
8694 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
8695 color to use for image glyph reliefs.
8696
8697 2001-10-24 Gerd Moellmann <gerd@gnu.org>
8698
8699 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
8700 in full-width rows.
8701
8702 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
8703 Fix clearing of area not covered by scroll bar.
8704
8705 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8706
8707 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
8708 and `real_start'.
8709 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
8710 (glyph_rect): Remove unused variable `area'.
8711
8712 2001-10-24 Gerd Moellmann <gerd@gnu.org>
8713
8714 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
8715
8716 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
8717 (row_containing_pos): Take additional argument DY.
8718 Treat rows ending in middle of char differently.
8719 (display_line): Handle tabs on window systems differently.
8720
8721 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
8722 with additional argument.
8723
8724 * dispextern.h (row_containing_pos): Adjust prototype.
8725
8726 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
8727 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
8728 (try_window_id, try_window_reusing_current_matrix)
8729 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
8730 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
8731
8732 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8733
8734 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
8735 gnuemacs).
8736 (HAVE_BOXES): Fix typo in comment.
8737 (push_menu_pane): Fix typo in comment.
8738
8739 * xdisp.c: (display_prop_string_p): Remove unused local declaration
8740 of `Qwhen'.
8741 (single_display_prop_string_p): Remove unused local declarations
8742 of `Qwhen' and `Qmargin'.
8743 (string_buffer_position): Remove unused variable `around'.
8744 (store_frame_title): Remove unused variable `width'.
8745
8746 * window.c: Don't define max.
8747 (coordinates_in_window): Remove unused variable `uy'.
8748
8749 * widget.c: Don't define max.
8750
8751 * process.c: Don't define max.
8752 (create_process): Remove unused variable `buffer'.
8753
8754 2001-10-23 Gerd Moellmann <gerd@gnu.org>
8755
8756 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
8757
8758 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
8759
8760 * xfaces.c (Finternal_set_lisp_face_attribute)
8761 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
8762 frame is on a windowed display.
8763
8764 2001-10-23 Gerd Moellmann <gerd@gnu.org>
8765
8766 * dispnew.c (sync_window_with_frame_matrix_rows):
8767 Fix handling of windows which aren't full-width, fix handling
8768 of marginal areas.
8769
8770 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
8771
8772 2001-10-23 Andreas Schwab <schwab@suse.de>
8773
8774 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
8775 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
8776
8777 2001-10-23 Gerd Moellmann <gerd@gnu.org>
8778
8779 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
8780 REAL_END. Notice if cursor gets overwritten.
8781 (notice_overwritten_cursor): Take X positions as parameters.
8782 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
8783 around call to x_draw_glyphs.
8784
8785 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8786
8787 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
8788 instead of C) and usage.
8789
8790 * editfns.c (char-to-string): Fix argument names (use CHAR instead
8791 of C) and usage.
8792
8793 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
8794 `left', `max_width' and `max_height'.
8795
8796 2001-10-23 Gerd Moellmann <gerd@gnu.org>
8797
8798 * xdisp.c (display_line): For a tab continued to the next line,
8799 set row's ends_in_middle_of_char_p.
8800
8801 2001-10-22 Gerd Moellmann <gerd@gnu.org>
8802
8803 * xdisp.c (display_line): Fix computation of continuation lines
8804 width for TABs.
8805
8806 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8807
8808 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
8809 `Qlaplace'.
8810
8811 * fileio.c: Remove unused code.
8812
8813 2001-10-22 Miles Bader <miles@gnu.org>
8814
8815 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
8816 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
8817 Remove `DOC_STRINGS_IN_COMMENTS' cases.
8818
8819 2001-10-21 Jason Rumney <jasonr@gnu.org>
8820
8821 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
8822
8823 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
8824
8825 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
8826 (Finsert_string): Avoid the multi-line string literals warning.
8827
8828 2001-10-22 Miles Bader <miles@gnu.org>
8829
8830 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
8831 (Fdocumentation): Don't use it.
8832 (syms_of_doc): Don't initialize it.
8833
8834 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
8835 * print.c (Fwith_output_to_temp_buffer): Likewise.
8836 * window.c (Fsave_window_excursion): Likewise.
8837 * editfns.c (Fsave_excursion, Fsave_current_buffer)
8838 (Fsave_restriction): Likewise.
8839 * eval.c (Frun_hooks, Frun_hook_with_args)
8840 (Frun_hook_with_args_until_failure)
8841 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
8842 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
8843 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
8844 (Funwind_protect, Fcondition_case): Likewise.
8845 * coding.c (Ffind_operation_coding_system): Likewise.
8846 * keyboard.c (Ftrack_mouse): Likewise.
8847
8848 2001-10-21 Miles Bader <miles@gnu.org>
8849
8850 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
8851 (Fmake_hash_table): Add usage: string to doc string.
8852 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
8853 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
8854 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
8855 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
8856 (Fml_prefix_argument_loop): Likewise.
8857
8858 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8859
8860 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
8861
8862 * sysdep.c (init_sys_modes): Change doc-string comments to `new
8863 style' [w/`doc:' keyword].
8864
8865 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
8866 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
8867 comments to `new style' [w/`doc:' keyword].
8868
8869 2001-10-21 Jason Rumney <jasonr@gnu.org>
8870
8871 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
8872
8873 * w32term.c (remember_mouse_glyph): New function.
8874 (w32_mouse_position): Use it.
8875 (note_mouse_movement): If the mouse moved off the glyph, remember
8876 its new position.
8877
8878 * w32term.h (struct w32_output): Correct spelling of x_compatible.
8879 (w32_display_info): Add mouse_face_overlay.
8880
8881 * w32term.c (notice_overwritten_cursor): Renamed from
8882 note_overwritten_text_cursor. Rewritten to take glyph widths into
8883 account.
8884 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
8885 (fast_find_string_pos): New function.
8886 (fast_find_position): Return the correct vpos. Add parameter
8887 STOP. In the final row, stop before glyphs having STOP as object.
8888 Don't consider glyphs that are not from a buffer.
8889 (fast_find_position) [0]: Add a presumably more correct version
8890 for after 21.1.
8891 (expose_window_tree, expose_frame): Don't compute intersections here.
8892 (expose_window): Do it here instead.
8893 (expose_window_tree, expose_window, expose_line): Return 1 when
8894 overwriting mouse-face.
8895 (expose_window): If W is the window currently being updated, mark
8896 the frame garbaged.
8897 (expose_frame): If mouse-face was overwritten, redo it.
8898 (x_use_underline_position_properties): New variable.
8899 (syms_of_xterm): DEFVAR_BOOL it.
8900 (x_draw_glyph_string): Add comment to use it in future.
8901 (x_draw_glyph_string): Restore clipping after drawing box.
8902 Fix a computation of the underline position.
8903 (w32_get_glyph_string_clip_rect): Minor cleanup.
8904 (x_fill_stretch_glyph_string): Remove an assertion.
8905 (x_produce_glyphs): Don't convert multibyte characters
8906 to unibyte characters in unibyte buffers.
8907 (cursor_in_mouse_face_p): New function.
8908 (x_draw_stretch_glyph_string): Use it to choose a different GC
8909 when drawing a cursor within highlighted text. Don't draw
8910 background again if it has already been drawn.
8911 (x_draw_glyph_string_box): Don't draw a full-width
8912 box just because the glyph row's full_width_p flag is set.
8913 (x_draw_glyphs): Fix computation of rightmost x for
8914 full-width rows.
8915 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
8916 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
8917 change bottom shadow accordingly. Some cleanup.
8918 (x_update_window_end): Handle overwritten mouse face
8919 also for tool bar windows.
8920 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
8921 DRAW is DRAW_IMAGE_RAISED.
8922 (clear_mouse_face): Return 1 if text with mouse face was
8923 actually redrawn. Make the function static.
8924 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
8925 optimize away highlighting if we pass over that same overlay again.
8926 (note_mouse_highlight): Call mouse_face_overlay_overlaps
8927 to detect a case where we have to highlight a different region
8928 despite not having left the currently highlighted region.
8929 Set mouse_face_overlay in the x_display_info. Avoid changing the
8930 mouse pointer shape when show_mouse_face has already done it, or
8931 there is no need. Handle mouse-face and help-echo in strings.
8932 (glyph_rect): New function.
8933 (w32_mouse_position): Use it to raise the threshold for mouse
8934 movement event generation.
8935 (w32_initialize_display_info): Initialize the x_display_info's
8936 mouse_face_overlay.
8937 (w32_set_vertical_scroll_bar): Don't clear a zero height
8938 or width area.
8939 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
8940 a widget to zero height.
8941
8942 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
8943 Protect unibyte strings created by replacing their multibyte
8944 equivalents in menu_items.
8945 (w32_menu_show): Don't overwrite an item's name with its key
8946 description in case the description is a multibyte string.
8947 (single_submenu): Some cleanup.
8948
8949 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
8950 (postprocess_image): New function.
8951 (lookup_image): Call it for all image types except PostScript.
8952 (x_kill_gs_process): Call postprocess_image.
8953 (tiff_error_handler, tiff_warning_handler): New functions.
8954 (tiff_load): Install them as handlers.
8955 (x_kill_gs_process): Recognize if someone has cleared the image
8956 cache under us.
8957 (valid_image_p): Protect better against invalid image
8958 specifications. Previous code could signal an error.
8959 (Fx_hide_tip, Fshow_tip): Doc fix.
8960 (Fv_max_tooltip_size): New variable.
8961 (syns_of_xfns): DEFVAR_LISP it.
8962 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
8963 window buffer to *tip* right after creating the frame. Set frame's
8964 window_width. Use a maximum tooltip size specified by
8965 Vx_max_tooltip_size, if that has valid contents.
8966 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
8967 Make sure the tooltip is completely visible.
8968 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
8969 (Fx_create_frame): Adjust the frame's height for presence
8970 of the tool bar before calling x_figure_window_size.
8971 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
8972 when the window gets smaller.
8973 (x_set_foreground_color): Set frame's cursor_pixel.
8974 (x_set_foreground_color, x_set_background_color): Cleaned up.
8975 (x_set_font): Handle case of x_new_fontset returning the same name
8976 as before, although there was a change in fontsets.
8977
8978 2001-10-21 Miles Bader <miles@gnu.org>
8979
8980 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
8981 (Flogxor): Add usage: string to doc string.
8982 * charset.c (Fstring): Likewise.
8983 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
8984 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
8985
8986 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8987
8988 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
8989
8990 * alloc.c: Reindent DEFUNs with doc: keywords.
8991
8992 * abbrev.c (Finsert_abbrev_table_description): Reindent.
8993
8994 * frame.c: Change doc-string comments to `new style' [w/`doc:'
8995 keyword].
8996
8997 See ChangeLog.9 for earlier changes.
8998
8999 ;; Local Variables:
9000 ;; coding: iso-2022-7bit
9001 ;; End:
9002
9003 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
9004 Copying and distribution of this file, with or without modification,
9005 are permitted provided the copyright notice and this notice are preserved.