]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
2
3 * indent.c (Fvertical_motion): Force move if starting on
4 stretch glyph.
5
6 2005-12-08 Richard M. Stallman <rms@gnu.org>
7
8 * lread.c (read_escape) <\s>: Don't treat strings specially.
9
10 * xfns.c (Fx_create_frame): Comment out previous change.
11
12 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
13
14 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
15 when needed.
16
17 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
18
19 * minibuf.c (keys_of_minibuf): Just unbind SPC in
20 Vminibuffer_local_filename_completion_map rather than forcing it
21 explicitly to the same binding as the global map.
22
23 2005-12-06 Ken Raeburn <raeburn@gnu.org>
24
25 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP
26 argument.
27 * bytecode.c (Fbyte_code): Likewise.
28 * fileio.c (internal_delete_file, Fread_file_name_internal):
29 Likewise.
30 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
31 * undo.c (truncate_undo_list): Likewise.
32
33 2005-12-05 Richard M. Stallman <rms@gnu.org>
34
35 * window.c (enlarge_window): Eliminate arg preserve_before.
36 Assume it is 0. All callers changed.
37 (Fenlarge_window, Fshrink_window): Likewise.
38
39 2005-12-02 Eli Zaretskii <eliz@gnu.org>
40
41 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
42 fit below.
43
44 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
45
46 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
47
48 * xfns.c (x_real_positions): int ign => unsigned int.
49 (xg_set_icon_from_xpm_data): Remove unused variable err.
50 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
51 to remove compiler warning.
52 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
53
54 2005-12-02 David Reitter <david.reitter@gmail.com>
55
56 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
57 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
58 and Vminibuffer_local_must_match_filename_map keymaps.
59 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
60
61 * keymap.c (Vminibuffer_local_filename_completion_map)
62 (Vminibuffer_local_must_match_filename_map): New variables.
63 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
64 parent to be Vminibuffer_local_completion_map and
65 Vminibuffer_local_must_match_map, respectively.
66
67 * commands.h (Vminibuffer_local_filename_completion_map)
68 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
69
70 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
71
72 * window.c (Fset_window_configuration): Don't accidentally copy the
73 window-point of one window to another.
74
75 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
76
77 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
78
79 2005-11-30 Kim F. Storm <storm@cua.dk>
80
81 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
82 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
83 passing it to `emacs_write'.
84
85 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
86
87 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
88
89 2005-11-27 Richard M. Stallman <rms@gnu.org>
90
91 * window.c (adjust_window_trailing_edge): New function.
92 (Fadjust_window_trailing_edge): New function.
93 (syms_of_window): Defsubr it.
94 (window_deletion_count): New variable.
95 (delete_window): Update window_deletion_count.
96
97 2005-11-26 Eli Zaretskii <eliz@gnu.org>
98
99 * minibuf.c (syms_of_minibuf): Mention the extension of
100 `completion-auto-help's meaning by complete.el.
101
102 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
103
104 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
105 Handle :inherit property as a lisp expression.
106
107 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
108
109 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
110 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
111 Qsuper, and Qmodifier_value.
112 (Vmac_control_modifier, Vmac_option_modifier)
113 (Vmac_command_modifier, Vmac_function_modifier)
114 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
115 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
116 (Vmac_charset_info_alist): Doc fixes.
117
118 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
119
120 * emacs.c (main) [MAC_OSX]: Change working directory to home
121 directory if `-psn_*' option is specified.
122
123 * mac.c (DECODE_UTF_8): Remove macro.
124 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
125 created from cfstring_to_lisp.
126 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
127 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
128
129 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
130 Add prototype.
131
132 2005-11-21 Ken Raeburn <raeburn@gnu.org>
133
134 * keymap.c (shadow_lookup): Use make_number to pass a number to
135 Fsubstring.
136
137 2005-11-21 Juri Linkov <juri@jurta.org>
138
139 * puresize.h (BASE_PURESIZE): Increment to 1180000.
140
141 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
142
143 * xfaces.c (Finternal_set_lisp_face_attribute):
144 Use :ignore-defface for new frame defaults when `unspecified' is
145 supplied.
146 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
147 (merge_face_vectors): Don't do :ignore-defface overwriting here.
148 (Finternal_merge_in_global_face): Do it here.
149
150 2005-11-20 Juri Linkov <juri@jurta.org>
151
152 * charset.c (invalid_character): Use Lisp-readable syntax
153 for octal and hex. Reorder decimal, octal and hex values.
154
155 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
156
157 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
158 this type is recognised when debugging.
159
160 2005-11-19 Andreas Schwab <schwab@suse.de>
161
162 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
163 Lisp_Cons and Lisp_Float.
164
165 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
166
167 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
168 New variable.
169 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
170 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
171 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
172 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
173
174 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
175
176 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
177
178 * xfaces.c (Qignore_defface): New variable.
179 (syms_of_xfaces): Provide `:ignore-defface'.
180 (IGNORE_DEFFACE_P): New macro.
181 (check_lface_attrs, lface_fully_specified_p)
182 (Finternal_set_lisp_face_attribute)
183 (Fface_attribute_relative_p, Fmerge_face_attribute):
184 Handle Qignore_defface as a possible value.
185 (merge_face_vectors): The merged face is `unspecified' if the
186 mergee specifies `:ignore-defface'.
187
188 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
189
190 * lread.c (readevalloop): Add missing GCPROs.
191
192 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
193
194 * xfns.c (xg_set_icon_from_xpm_data): New function.
195
196 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
197 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
198
199 * xterm.c (x_bitmap_icon): Use the xpm if available.
200
201 * image.c (x_create_bitmap_from_xpm_data): New function.
202 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
203
204 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
205
206 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
207
208 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
209
210 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
211
212 2005-11-15 Andreas Schwab <schwab@suse.de>
213
214 * lisp.h (struct Lisp_Cons): Make cdr a union.
215 (XCDR_AS_LVALUE): Adjust.
216 (struct Lisp_Float): Make data a union.
217 (XFLOAT_DATA): Adjust.
218
219 * alloc.c (free_float): Make free list chaining aliasing-safe.
220 (make_float): Likewise.
221 (free_cons): Likewise.
222 (Fcons): Likewise.
223 (check_cons_list): Likewise.
224 (Fmake_symbol): Likewise.
225 (allocate_misc): Likewise.
226 (free_misc): Likewise.
227 (gc_sweep): Likewise.
228
229 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
230
231 * mac.c (HASHKEY_QUERY_CACHE): New define.
232 (xrm_create_database, xrm_q_put_resource): Empty query cache.
233 (xrm_get_resource): Use query cache.
234
235 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
236 inhibit_window_system is set.
237
238 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
239
240 * macgui.h (USE_CG_TEXT_DRAWING): New define.
241 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
242 and cg_glyphs.
243
244 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
245 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
246 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
247 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
248 not used and font substitution never occurs for ASCII and Latin-1
249 characters.
250 (XLoadQueryFont): Maximum and minimum metrics are now those among
251 ASCII characters.
252 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
253 height adjustments for Courier, Helvetica, and Times.
254
255 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
256
257 2005-11-11 David Reitter <david.reitter@gmail.com>
258
259 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
260 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
261 Vmac_control_modifier / mac-control-modifier,
262 Vmac_option_modifier / mac-option-modifier,
263 Vmac_command_modifier / mac-command-modifier.
264 (mac_to_emacs_modifiers): Use the new style modifier
265 variables. Return UInt32 (modifiers are longs now.)
266 (backtranslate_modified_keycode): New function (refactoring).
267 (XTread_socket): Use new modifier variables and refactored function.
268 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
269 no dedicated meta key. Not in use anyway.)
270 (convert_fn_keycode): Map Fn-keys to their original keycode
271 using a table (english keyboard only).
272
273 2005-11-11 Kim F. Storm <storm@cua.dk>
274
275 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
276 Add post hook to "backtrace" to always dump lisp call stack to
277 increase chance of people sending it to us when reporting bugs.
278
279 * doc.c (Fsubstitute_command_keys): Doc fix.
280
281 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
282
283 * xdisp.c (handle_stop): Skip overlay string handling if
284 ignore_overlay_strings_at_pos_p is set.
285 (set_iterator_to_next): At end of display vector, set
286 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
287 string, so we skip those overlay strings at current pos.
288
289 2005-11-10 Lars Hansen <larsh@soem.dk>
290
291 * fileio.c (file-regular-p): Doc fix.
292
293 2005-11-10 Kim F. Storm <storm@cua.dk>
294
295 * alloc.c (valid_lisp_object_p): New function to validate that
296 an object is really a valid Lisp_Object.
297
298 * lisp.h (valid_lisp_object_p): Add prototype.
299
300 * print.c (safe_debug_print): New function to be called from gdb
301 to print Lisp objects; use valid_lisp_object_p to avoid crashing
302 if user tries to print something which is not a Lisp object.
303
304 * .gdbinit (pp, pp1): Use safe_debug_print.
305 (pv, pv1): New commands to print value of a lisp variable.
306
307 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
308
309 * .gdbinit (pp1): New user-defined function.
310
311 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
312
313 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
314
315 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
316 related variables for dumped executable.
317
318 * unexmacosx.c (unexec_write_zero): New function.
319 (copy_data_segment): Clear uninitialized local variables in
320 statically linked libraries.
321
322 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
323
324 2005-11-09 Juri Linkov <juri@jurta.org>
325
326 * keymap.c (shadow_lookup): If Flookup_key returns a number,
327 call it again with a sub-key-sequence, and if its return value
328 is non-nil (sub-key is bound), return nil.
329
330 2005-11-08 Kim F. Storm <storm@cua.dk>
331
332 * process.c (Fsignal_process): Recognize signal names with and
333 without SIG prefix, e.g. SIGHUP and HUP.
334
335 * search.c (search_buffer): No need to initialize base_pat.
336
337 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
338
339 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
340 Don't abuse the `mini' arg. Use the `obj' arg instead.
341
342 2005-11-04 Kim F. Storm <storm@cua.dk>
343
344 * xdisp.c (show_mouse_face): Clear mouse face to eol.
345
346 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
347
348 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
349 font-lock.elc and jit-lock.elc.
350
351 2005-11-03 Richard M. Stallman <rms@gnu.org>
352
353 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
354 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
355 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
356
357 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
358
359 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
360
361 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
362
363 * window.c (Fdisplay_buffer): Fix last change to not use
364 a dedicated window.
365
366 2005-11-01 Kim F. Storm <storm@cua.dk>
367
368 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
369 Instead, rotate the bottom angle bitmap 180 degrees to indicate
370 that the bottom row does not end in a newline.
371
372 2005-11-01 Andreas Schwab <schwab@suse.de>
373
374 * unexelf.c (unexec): Handle .plt section in BSS segment.
375
376 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
377
378 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
379
380 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
381 determine whether to consider dedicated windows as well.
382 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
383 (Fdisplay_buffer): Do consider dedicated windows in those cases where
384 we will split the window rather than reuse it.
385 Don't try to use windows on other displays.
386
387 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
388
389 * puresize.h (BASE_PURESIZE): Increment to 1170000.
390
391 2005-10-31 Romain Francoise <romain@orebokech.com>
392
393 * macfns.c: Update copyright year.
394 * m/gould.h: Likewise.
395
396 2005-10-30 Kim F. Storm <storm@cua.dk>
397
398 * xdisp.c (display_line): Restore it->current_x and call
399 extend_face_to_end_of_line when last glyph doesn't fit on line.
400 (set_glyph_string_background_width): Remove specific tests here
401 to see if face background should extend to end of line. Simplify.
402
403 2005-10-30 Richard M. Stallman <rms@gnu.org>
404
405 * alloc.c (BYTES_USED): Use uordblks, not arena.
406 (bytes_used_when_reconsidered): New variable.
407 (emacs_blocked_free): Set that.
408
409 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
410
411 * alloc.c (emacs_blocked_free): Fix typo.
412
413 2005-10-29 Richard M. Stallman <rms@gnu.org>
414
415 * data.c (Fmake_variable_frame_local): Doc fix.
416
417 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
418 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
419 controls whether to save and restore mode_line_proptrans_alist.
420 Callers changed.
421 (unwind_format_mode_line): Work with that feature.
422 (redisplay_internal): Don't call prepare_menu_bars if memory full.
423 (move_elt_to_front): New function.
424 (display_mode_element): Use move_elt_to_front.
425 Don't bother munging text props on a null string.
426 Delete obsolete elts from mode_line_proptrans_alist.
427 (decode_mode_spec): Test Vmemory_full, not spare_memory.
428 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
429
430 * lisp.h (memory_full_cons_threshold): Declare.
431 (internal_lisp_condition_case): Declare.
432
433 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
434 (Fmemory_full_p): Function deleted.
435 (syms_of_alloc): Don't defsubr it.
436 (memory_full_cons_threshold): New variable.
437 (spare_memory): Now a vector of 7 elts.
438 (buffer_memory_full): Don't set Vmemory_full here.
439 (xfree): Don't try to refill here.
440 (emacs_blocked_free): Record BYTES_USED in local var.
441 (memory_full): Now free all the slots in spare_memory.
442 (refill_memory_reserve): Allocate each slot in spare_memory.
443 (init_alloc_once): Call refill_memory_reserve.
444
445 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
446
447 * eval.c (internal_lisp_condition_case): New function.
448 (Fcondition_case): Use internal_lisp_condition_case.
449 (Feval): Test Vmemory_full and memory_full_cons_threshold.
450 (Ffuncall): Likewise.
451
452 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
453
454 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
455
456 * syntax.c (Fparse_partial_sexp): Fix docstring.
457
458 2005-10-28 Romain Francoise <romain@orebokech.com>
459
460 * puresize.h (BASE_PURESIZE): Increment to 1130000.
461
462 2005-10-28 Richard M. Stallman <rms@gnu.org>
463
464 * xfns.c (syms_of_xfns): Provide `x' as feature.
465
466 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
467
468 * editfns.c (Fformat): Don't include string padding
469 between info[n].start and info[n].end.
470
471 * alloc.c (spare_memory): No longer static.
472 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
473
474 * puresize.h (BASE_PURESIZE): Increment to 1120000.
475
476 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
477
478 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
479
480 * fringe.c (update_window_fringes): Handle case where buffer ends
481 with a newline.
482
483 2005-10-27 Kenichi Handa <handa@m17n.org>
484
485 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
486
487 2005-10-24 Kenichi Handa <handa@m17n.org>
488
489 * charset.h (charset_mule_unicode_0100_24ff)
490 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
491 Extern them.
492
493 * charset.c (charset_mule_unicode_0100_24ff)
494 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
495 New variables.
496 (Fsetup_special_charsets): Initialize them.
497
498 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
499 supported Unicode characters.
500
501 2005-10-25 Jason Rumney <jasonr@gnu.org>
502
503 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
504
505 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
506
507 * image.c [MAC_OS] (image_load_qt_1): Check image size.
508 Use GraphicsImportGetImageDescription instead of
509 GraphicsImportGetNaturalBounds.
510 [MAC_OSX] (image_load_quartz2d): Check image size.
511 [MAC_OS] (xpm_load_image): Likewise.
512
513 * macterm.c (last_mouse_glyph_frame): New var.
514 (note_mouse_movement): Say mouse moved if current frame differs
515 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
516 (XTmouse_position): Set last_mouse_glyph_frame.
517 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
518 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
519 Use EndianU16_BtoN.
520 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
521 (x_per_char_metric, XLoadQueryFont)
522 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
523 glyph bounds.
524 (mac_to_x_fontname, mac_do_list_fonts)
525 (mac_initialize_display_info): Change screen resolutions to 72dpi.
526
527 2005-10-25 Masatake YAMATO <jet@gyve.org>
528
529 * minibuf.c (Fdisplay_completion_list): Small doc fix.
530
531 2005-10-24 Kim F. Storm <storm@cua.dk>
532
533 * xterm.c: Undo 2005-10-23 change.
534 (last_mouse_glyph_frame): New var.
535 (note_mouse_movement): Say mouse moved if current frame differs
536 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
537 (XTmouse_position): Set last_mouse_glyph_frame.
538 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
539 last_mouse_glyph] on mouse up/down event.
540
541 * editfns.c (Fcompare_buffer_substrings): Fix last change.
542
543 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
544
545 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
546
547 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
548
549 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
550 so tool tips don't interfere with press on tool bar button.
551
552 2005-10-23 Richard M. Stallman <rms@gnu.org>
553
554 * casetab.c (Fset_case_table): Doc fix.
555
556 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
557 (readevalloop): Compute ENTIRE properly.
558 (syms_of_lread) <load-history>: Doc fix.
559
560 2005-10-21 Richard M. Stallman <rms@gnu.org>
561
562 * lread.c (Fload): Simplify gcpro structure.
563 Gcpro FOUND as well as FILE, but not EFOUND.
564 Unless preloading, record FOUND instead of FILE in Vload_history.
565 Rename repeat local FILE to MSG_FILE.
566 (syms_of_lread) <load-history>: Doc fix.
567
568 2005-10-21 Kenichi Handa <handa@m17n.org>
569
570 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
571
572 2005-10-20 Kim F. Storm <storm@cua.dk>
573
574 * buffer.c (clone_per_buffer_values): Remove unused var tem.
575 (init_buffer): Remove unused vars dotstat, pwdstat.
576
577 * ccl.c (check_ccl_update): Remove unused var vp.
578
579 * fileio.c (auto_save_error): Call SAFE_FREE.
580
581 * fns.c (Fchar_table_range): Remove unused var i.
582
583 * minibuf.c (display_completion_list_1): New wrapper function
584 for Fdisplay_completion_list.
585 (Fminibuffer_completion_help): Use it.
586
587 * term.c (encode_terminal_code): Remove unused var src_start.
588
589 * window.c (Fwindow_tree): Remove unused var alist.
590
591 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
592
593 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
594
595 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
596
597 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
598
599 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
600
601 2005-10-20 Andreas Schwab <schwab@suse.de>
602
603 * minibuf.c (Fdisplay_completion_list): Doc fix.
604
605 2005-10-19 Kim F. Storm <storm@cua.dk>
606
607 * image.c (check_image_size): Handle integer Vmax_image_size value
608 directly as max pixel value. Use default frame size for null frame.
609 (syms_of_image) <max-image-size>: Describe integer value.
610
611 2005-10-19 Romain Francoise <romain@orebokech.com>
612
613 * emacs.c (main): Update copyright year.
614
615 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
616
617 * image.c (Vmax_image_size): New variable.
618 (check_image_size): New function.
619 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
620 (gif_load, gs_load): Use it.
621 (lookup_image): Try loading again if previous load failed.
622 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
623 to display in, NULL if none.
624 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
625 argument.
626
627 2005-10-18 Richard M. Stallman <rms@gnu.org>
628
629 * search.c (Fstring_match): Doc fix.
630
631 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
632
633 * macterm.c (note_mouse_movement): Use PtInRect.
634 (XTread_socket): Also ignore mouse motion just before a button
635 release event. Don't process button release event when mouse is
636 not grabbed.
637
638 2005-10-16 Masatake YAMATO <jet@gyve.org>
639
640 * minibuf.c (Fdisplay_completion_list): Add new optional
641 argument COMMON_SUBSTRING. Bind `completion-common-substring'
642 to the optional argument during running `completion-setup-hook'.
643
644 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
645
646 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
647 Allow nil as argument.
648 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
649 for encoding arguments as UTF-16 in native byte order, no BOM.
650
651 * macfns.c (Fx_create_frame): Add debugging code.
652 (Fx_show_tip): Set frame pixel width and height.
653
654 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
655 (FRAME_NORMAL_GC): New macro.
656 (mac_draw_line, mac_clear_area, mac_clear_window)
657 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
658 (mac_draw_image_string, mac_draw_image_string_16): Rename from
659 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
660 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
661 All uses changed.
662 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
663 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
664 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
665 (mac_draw_string_16, mac_draw_image_string)
666 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
667 (mac_scroll_area): Drawing functions now take frame as destination.
668 All uses changed.
669 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
670 (x_draw_fringe_bitmap): Set clipping area in face->gc.
671
672 * macterm.h (mac_clear_area): Add extern.
673
674 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
675
676 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
677 changes for xterm.c.
678
679 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
680
681 2005-10-14 Kenichi Handa <handa@m17n.org>
682
683 * search.c (search_buffer): Give up BM search on case-fold-search
684 if one of a target character has a case-equivalence of different
685 charset even if that target charcter is an ASCII.
686
687 * casefiddle.c (casify_object): Fix for the case that case
688 conversion change the byte length.
689
690 2005-10-14 Kim F. Storm <storm@cua.dk>
691
692 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
693 (handle_one_xevent): Only clear help_echo_string; restore it if
694 note_mouse_movement didn't record any mouse movement.
695
696 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
697 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
698
699 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
700 (Fposn_at_x_y): Fix calculation of x coordinate.
701 (Fposn_at_point): Return nil if point is hscrolled out of view.
702
703 2005-10-13 Andreas Schwab <schwab@suse.de>
704
705 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
706 non-interactive mode.
707
708 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
709
710 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
711
712 2005-10-12 Kim F. Storm <storm@cua.dk>
713
714 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
715
716 2005-10-12 Romain Francoise <romain@orebokech.com>
717
718 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
719
720 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
721
722 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
723 get end of text rows. Obtain header-line/mode-line rows directly.
724
725 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
726 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
727
728 2005-10-12 Kim F. Storm <storm@cua.dk>
729
730 * xdisp.c (remember_mouse_glyph): New generic version based on
731 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
732 properly handle all different window areas.
733
734 * dispextern.h (remember_mouse_glyph): Add prototype.
735
736 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
737 (note_mouse_movement, XTmouse_position): Use generic
738 remember_mouse_glyph, add last_mouse_glyph arg.
739
740 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
741 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
742 (note_mouse_movement, w32_mouse_position): Use generic
743 remember_mouse_glyph, add last_mouse_glyph arg.
744
745 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
746 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
747 (XTmouse_position): Adapt to use generic remember_mouse_glyph
748 instead of pixel_to_glyph_coords.
749
750 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
751 Fix x position for ON_TEXT when left margin width > 0.
752
753 2005-10-11 Kim F. Storm <storm@cua.dk>
754
755 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
756
757 * keyboard.c (make_lispy_position): Fix buffer calculations for
758 mouse click or movement in right fringe and the margins.
759
760 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
761
762 * image.c (fn_jpeg_stdio_src): Don't define it.
763 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
764 (our_common_init_source): Rename from `our_init_source'.
765 (our_common_term_source): Rename from `our_term_source'.
766 (our_memory_fill_input_buffer): Rename from
767 `our_fill_input_buffer'.
768 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
769 (jpeg_memory_src): Use the new names.
770 (struct jpeg_stdio_mgr): New struct.
771 (JPEG_STDIO_BUFFER_SIZE): New constant.
772 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
773 (jpeg_file_src): New functions.
774 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
775
776 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
777
778 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
779 (fm_font_family_alist): New variable.
780 (syms_of_macterm): Initialize and staticpro it.
781 (decode_mac_font_name): Replace '-' in family name with '_' if it
782 occurs just once. Lower family name.
783 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
784 All uses changed. Remove argument MF and code conversion for it.
785 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
786 to CHARSET. Parse font size. Lower family name. Return integer
787 value for status of parsing.
788 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
789 Don't use Fdowncase because family name is already lowered by
790 decode_mac_font_name.
791 (init_font_name_table): Always call decode_mac_font_name.
792 Add pair of family name and its reference to fm_font_family_alist.
793 (mac_clear_font_name_table): Clear fm_font_family_alist.
794 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
795 Lookup fm_font_family_alist to get font family reference.
796 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
797 name is already lowered by parse_x_font_name.
798
799 2005-10-11 Kim F. Storm <storm@cua.dk>
800
801 * xterm.c (glyph_rect): Return 0 if position is outside text area.
802
803 * keyboard.c (make_lispy_position): Fix buffer position calculation for
804 mouse click or movement in fringe.
805
806 2005-10-10 Jason Rumney <jasonr@gnu.org>
807
808 * xterm.c (remember_mouse_glyph): New function.
809 (note_mouse_movement): Use it to remember the current glyph if changed.
810 (XTmouse_position): Fix calculation of fake glyph under mouse.
811 Move code to calculate glyph under mouse into remember_mouse_glyph.
812
813 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
814
815 * emacs.c (USAGE3, standard_args): -nb => -nbi.
816
817 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
818
819 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
820 (next_frame, prev_frame, set_term_frame_name): Make static.
821
822 * window.c (Fwindow_tree): Fix spelling.
823
824 2005-10-09 Romain Francoise <romain@orebokech.com>
825
826 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
827
828 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
829
830 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
831 Add options -nb, --no-bitmap-icon.
832
833 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
834
835 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
836
837 * macgui.h (MAX_CLIP_RECTS): New define.
838 (struct _XGC): New member clip_region.
839 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
840 clip_rects.
841
842 * macterm.c (GC_CLIP_REGION): New macro.
843 (saved_port_clip_region): New variable.
844 (mac_begin_clip, mac_end_clip): New functions.
845 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
846 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
847 (mac_copy_area_with_mask, mac_scroll_area): Use them.
848 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
849 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
850 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
851 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
852 rectangles stored in gc.
853 (XFreeGC): Dispose of clipping region.
854 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
855 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
856 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
857 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
858 (x_draw_bar_cursor): Use them.
859 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
860 get multiple clipping rectangles.
861
862 * macterm.h (mac_term_init): Add types to extern.
863 (struct mac_output): Remove members mWP and pending_menu_activation.
864 Put members scroll_bar_foreground_pixel and
865 scroll_bar_background_pixel in #if 0.
866 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
867
868 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
869 Add debugging code.
870
871 2005-10-08 Kim F. Storm <storm@cua.dk>
872
873 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
874
875 2005-10-07 Kim F. Storm <storm@cua.dk>
876
877 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
878 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
879 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
880
881 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
882
883 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
884 to for_overlaps. Now occupy 3 bits.
885 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
886 (OVERLAPS_ERASED_CURSOR): New defines.
887 (struct redisplay_interface): Add new OVERLAPS arg to member
888 fix_overlapping_area.
889 (x_fix_overlapping_area): Add new OVERLAPS arg.
890 (get_glyph_string_clip_rects): Add extern.
891
892 * dispnew.c (redraw_overlapping_rows):
893 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
894
895 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
896 for_overlaps.
897 (get_glyph_string_clip_rects): New function created from
898 get_glyph_string_clip_rect. Set clipping rectangles according to the
899 value of for_overlaps. Enable to store multiple clipping rectangles.
900 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
901 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
902 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
903 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
904 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
905 calculating clipping rectangles later. Call x_fix_overlapping_area
906 with new OVERLAPS arg to draw only erased cursor area.
907 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
908 to draw overlaps in both preceding and succeeding rows.
909
910 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
911 struct glyph_string to for_overlaps.
912
913 2005-10-04 Richard M. Stallman <rms@gnu.org>
914
915 * alloc.c (refill_memory_reserve): Conditionalize the body,
916 not the function's existence.
917
918 2005-10-04 Kim F. Storm <storm@cua.dk>
919
920 * window.c (window_split_tree): New function.
921 (Fwindow_split_tree): New defun.
922 (syms_of_window): Defsubr it.
923
924 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
925
926 * macterm.c (mac_invert_rectangle): New function.
927 (XTflash): Use it.
928
929 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
930
931 * regex.h (re_char): Don't expose it in the interface.
932 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
933
934 * regex.c (re_char): Move it back here.
935 (re_set_whitespace_regexp): Change the arg's type to not use it.
936
937 * keyboard.c (make_lispy_event): If point has moved between down and up
938 event, make it a drag, not a click, to mirror what
939 mouse-drag-region expects.
940
941 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
942
943 * lisp.h (fatal): Undo previous change.
944 * term.c (fatal): Undo previous change.
945
946 2005-10-01 Richard M. Stallman <rms@gnu.org>
947
948 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
949
950 2005-10-01 Kim F. Storm <storm@cua.dk>
951
952 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
953
954 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
955
956 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
957
958 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
959 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
960 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
961 Try ATSUI-compatible 12pt Monaco font first.
962
963 * macgui.h (struct _XCharStruct): New member valid_p.
964 (STORE_XCHARSTRUCT): Set valid_p.
965 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
966
967 * macterm.c (mac_draw_string_common, x_per_char_metric)
968 (mac_compute_glyph_string_overhangs, init_font_name_table)
969 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
970 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
971 (x_draw_glyph_string_background)
972 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
973 XDrawImageString. Always draw background and foreground separately.
974 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
975 functions for one-byte chars when using ATSUI-compatible fonts.
976 (atsu_font_id_hash) [USE_ATSUI]: New variable.
977 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
978 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
979 max_char_or_byte2 more in detail.
980 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
981
982 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
983
984 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
985 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
986
987 * unexelf.c (fatal): Fix prototype.
988
989 * term.c (fatal): Implement using varargs.
990
991 * regex.c (re_char): Move typedef ...
992 * regex.h (re_char): ... here.
993 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
994
995 * emacs.c (malloc_set_state): Fix return type.
996 (endif): Fix type.
997
998 * lisp.h (fatal): Add argument types.
999
1000 * dispextern.h (fatal): Delete prototype.
1001
1002 * systime.h: (make_time): Prototype moved from ...
1003 * editfns.c (make_time): ... here.
1004
1005 * editfns.c: Move systime.h include after lisp.h.
1006 * dired.c:
1007 * xsmfns.c:
1008 * process.c: Likewise.
1009
1010 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1011 Add parameter types.
1012 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1013 (emacs_blocked_free): Change definition to match __free_hook.
1014 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1015 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1016
1017 2005-09-30 Romain Francoise <romain@orebokech.com>
1018
1019 * minibuf.c (Fread_buffer): Follow convention for reading from the
1020 minibuffer with a default value. Doc fix.
1021
1022 2005-09-29 Juri Linkov <juri@jurta.org>
1023
1024 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1025 Rename argument name `string' to `format-string'.
1026 (Fformat): Doc fix.
1027
1028 2005-09-28 Kim F. Storm <storm@cua.dk>
1029
1030 * image.c (gif_load): Fix size of allocated image buffer
1031 for images where a sub-image may be larger than the image's
1032 total height/width specifications.
1033
1034 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1035
1036 * macgui.h (struct _XCharStruct): Each member now takes short value.
1037
1038 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1039
1040 * xfaces.c (lookup_derived_face): Add parameter type.
1041
1042 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1043
1044 * marker.c (verify_bytepos): Add parameter type.
1045
1046 * process.c (get_operating_system_release): Move prototype ...
1047
1048 * systime.h (get_operating_system_release): ... here.
1049
1050 * xterm.c (handle_one_xevent): Refer to union field to match the
1051 type required by the function definition.
1052 (set_vertical_scroll_bar): Move prototype ...
1053
1054 * xterm.h: ... here.
1055
1056 * fns.c (internal_equal, seed_random): Fix prototypes.
1057 (internal_equal): Add missing parameter.
1058
1059 2005-09-25 Richard M. Stallman <rms@gnu.org>
1060
1061 * keyboard.c (update_menu_bindings): Variable deleted.
1062 (syms_of_keyboard): Don't defvar it.
1063 (parse_menu_item): Don't test it.
1064
1065 2005-09-23 Richard M. Stallman <rms@gnu.org>
1066
1067 * editfns.c (Fformat): Explicitly test for end of format string
1068 and don't use `index'.
1069
1070 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1071
1072 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1073 Define BROKEN_GET_CURRENT_DIR_NAME.
1074
1075 * sysdep.c (get_current_dir_name): Also define if
1076 BROKEN_GET_CURRENT_DIR_NAME.
1077
1078 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1079
1080 2005-09-22 Kim F. Storm <storm@cua.dk>
1081
1082 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1083 (message2): Fix commentary. Ok to use alloca'ed memory.
1084 Still not ok to use Lisp string data (because of GC).
1085 (set_message): Add comment why GC cannot happen.
1086
1087 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1088
1089 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1090 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1091 variants for a scalable font multiple times.
1092
1093 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1094
1095 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1096 Setup slave tty options before forking.
1097
1098 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1099
1100 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1101 positions have been set for the frame (as is done for frames in
1102 special-display-buffer-names).
1103
1104 2005-09-19 Kim F. Storm <storm@cua.dk>
1105
1106 * editfns.c (Fformat): Don't scan past end of format string that
1107 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1108
1109 2005-09-18 Andreas Schwab <schwab@suse.de>
1110
1111 * window.h (struct window): Remove height_fixed_p, no longer set.
1112
1113 * window.c (make_window): Don't initialize height_fixed_p.
1114 (window_fixed_size_p): Don't use it.
1115
1116 2005-09-18 John Paul Wallington <jpw@pobox.com>
1117
1118 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1119
1120 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1121
1122 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1123
1124 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1125 New variables.
1126 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1127 file selection.
1128
1129 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1130
1131 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1132
1133 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1134 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1135
1136 2005-09-16 Romain Francoise <romain@orebokech.com>
1137
1138 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1139
1140 2005-09-15 Richard M. Stallman <rms@gnu.org>
1141
1142 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1143 (display_mode_element): Instead of `lisp_string' and `this',
1144 record `offset' and increment that.
1145 `last_offset' replaces `last'.
1146
1147 * Makefile.in (XMENU_OBJ): Variable deleted.
1148 (obj): Use xmenu.o unconditionally.
1149 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1150
1151 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1152
1153 2005-09-15 Kim F. Storm <storm@cua.dk>
1154
1155 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1156 (reseat_at_next_visible_line_start): Likewise (in xassert).
1157
1158 2005-09-14 Romain Francoise <romain@orebokech.com>
1159
1160 * fileio.c (write_region_inhibit_fsync): New variable.
1161 (Fwrite_region): Use it to skip call to fsync.
1162 (syms_of_fileio): Initialize it.
1163
1164 2005-09-14 Kenichi Handa <handa@m17n.org>
1165
1166 * coding.c (code_convert_region_unwind): Argument format changed.
1167 (run_pre_post_conversion_on_str): If pre-write-conversion function
1168 changed the current buffer, delete the new buffer.
1169 (run_pre_write_conversin_on_c_str): Likewise.
1170
1171 * fileio.c (Fexpand_file_name): Check multibyteness of
1172 default_directory.
1173
1174 2005-09-13 Kenichi Handa <handa@m17n.org>
1175
1176 * composite.c (compose_chars_in_text): Delete it.
1177
1178 * composite.h (compose_chars_in_text): Delete extern.
1179
1180 2005-09-13 Kim F. Storm <storm@cua.dk>
1181
1182 * print.c (print_error_message): Fix last change.
1183
1184 2005-09-12 Kim F. Storm <storm@cua.dk>
1185
1186 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1187 Unconditionally reload `ptr' and `pend' after eval.
1188
1189 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1190
1191 * print.c (print_error_message): Pass copy of caller name to
1192 message_dolog.
1193
1194 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1195
1196 2005-09-12 Kenichi Handa <handa@m17n.org>
1197
1198 * xdisp.c (display_mode_element): Be sure to make variables THIS
1199 and LISP_STRING point into a string data of ELT.
1200
1201 2005-09-12 Kim F. Storm <storm@cua.dk>
1202
1203 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1204 signal_after_change that may have GC'ed.
1205 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1206
1207 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1208 after insert while runs signal_after_change.
1209
1210 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1211 declaration to where it is used.
1212
1213 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1214
1215 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1216 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1217 know if xfree is needed instead of guessing.
1218
1219 * xterm.h (x_encode_text): Remove prototype.
1220
1221 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1222
1223 * w32term.c (x_bitmap_icon): Load small icons too.
1224
1225 2005-09-10 Romain Francoise <romain@orebokech.com>
1226
1227 * buffer.c (init_buffer): Grow buffer to add directory separator
1228 and terminal zero. Fix typos.
1229
1230 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1231
1232 * buffer.c (init_buffer): Fix error message for failed call to
1233 get_current_dir_name.
1234 (get_current_dir_name): Remove prototype.
1235
1236 * xsmfns.c: (get_current_dir_name): Remove prototype.
1237
1238 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1239 Add prototype.
1240
1241 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1242 Don't #undef NULL after including blockinput.h.
1243
1244 * config.in: Regenerated.
1245
1246 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1247
1248 Remove the MAXPATHLEN limitations:
1249
1250 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1251 New function.
1252
1253 * buffer.c (init_buffer): Use it.
1254
1255 * xsmfns.c (smc_save_yourself_CB): Ditto.
1256
1257 2005-09-09 Kim F. Storm <storm@cua.dk>
1258
1259 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1260 commands that are remapped from some other command.
1261
1262 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1263 flag in disabled rows below the window.
1264
1265 * frame.h (struct frame): New member updated_p.
1266
1267 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1268 member. Remove local `updated' array and associated variables.
1269
1270 2005-09-07 Kim F. Storm <storm@cua.dk>
1271
1272 * xdisp.c (handle_display_prop): Respect overlay window property.
1273
1274 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1275 Fixes crash reported by YAMAMOTO Mitsuharu.
1276
1277 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1278
1279 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1280 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1281 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1282 (xlfdpat_block_match): New macro.
1283 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1284 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1285 (add_font_name_table_entry): Increase font_name_table_size more
1286 rapidly.
1287 (mac_c_string_match): Remove function.
1288 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1289 expression match.
1290
1291 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1292
1293 2005-09-03 Richard M. Stallman <rms@gnu.org>
1294
1295 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1296 (move_it_in_display_line_to): Stop after last char on line even
1297 on a windowing terminal, if that's the specified stop position.
1298
1299 * fns.c (Fsort): Doc fix.
1300
1301 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1302
1303 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1304
1305 * dired.c (directory_files_internal_unwind, directory_files_internal)
1306 (file_name_completion): Use a Save_Value object rather than a cons of
1307 two 16bit ints to store the DIR*.
1308 (directory_files_internal, file_name_completion): Handle both EINTR and
1309 EAGAIN consistently after `readdir'.
1310
1311 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1312
1313 * intervals.c (update_interval): Add position info in error.
1314
1315 * dispnew.c (window_to_frame_hpos, update_window):
1316 Avoid gcc warning about unused variable `f'.
1317
1318 2005-08-31 Jason Rumney <jasonr@gnu.org>
1319
1320 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1321 error, revert to using AppendMenu.
1322
1323 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1324
1325 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1326 All uses changed.
1327 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1328 cases.
1329 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1330 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1331 Use posix_pathname_to_fsspec.
1332 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1333 while we have mask.
1334
1335 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1336
1337 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1338
1339 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1340
1341 * syntax.c (update_syntax_table): Properly reproduce the special +1
1342 setting of e_property at the end of the buffer when bumping into the
1343 INTERVALS_AT_ONCE limit.
1344
1345 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1346
1347 * emacs.c (USAGE1): Fix the description of the -Q option.
1348
1349 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1350
1351 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1352
1353 2005-08-26 Kim F. Storm <storm@cua.dk>
1354
1355 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1356 Don't move PT to new window start.
1357
1358 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1359
1360 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1361 ICONIFY/DEICONIFY_EVENT.
1362
1363 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1364 Restore background color.
1365 (mac_handle_visibility_change): New function.
1366 (x_make_frame_invisible, x_iconify_frame)
1367 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1368 [USE_CARBON_EVENTS] (mac_handle_window_event)
1369 (install_window_handler): Handle visibility change events.
1370 (x_make_frame_visible): Don't reposition window if it is iconified
1371 or asked for visible before. Select and uncollapse window when it
1372 is made visible.
1373 (x_make_frame_invisible): Don't reset x_highlight_frame.
1374 (x_iconify_frame): Likewise. Make invisible frame visible before
1375 it is iconified.
1376 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1377 (do_window_update): Don't change visibility of invisible frame.
1378
1379 2005-08-22 Juri Linkov <juri@jurta.org>
1380
1381 * term.c (turn_on_face): Check for TS_set_foreground and
1382 TS_set_background depending on standout_mode. Simplify.
1383
1384 2005-08-21 Kim F. Storm <storm@cua.dk>
1385
1386 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1387 bitmaps on fully visible rows.
1388
1389 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1390 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1391 and return 0.
1392
1393 * xdisp.c (redisplay_window): Call update_window_fringes with
1394 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1395
1396 2005-08-20 Richard M. Stallman <rms@gnu.org>
1397
1398 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1399 (resize_mini_window): Set w->start, and PT, so as to display the tail
1400 end of the buffer, if it doesn't all fit.
1401
1402 2005-08-18 Kim F. Storm <storm@cua.dk>
1403
1404 * xdisp.c (calc_pixel_width_or_height): Use actual display
1405 resolution when available instead of Vdisplay_pixels_per_inch.
1406
1407 2005-08-17 Kim F. Storm <storm@cua.dk>
1408
1409 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1410
1411 * dispnew.c (buffer_posn_from_coords): Check that target row is
1412 within matrix.
1413
1414 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1415
1416 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1417 xg_set_frame_icon and call it.
1418
1419 * gtkutil.c (xg_set_frame_icon): New function.
1420
1421 * gtkutil.h (xg_set_frame_icon): Declare it.
1422
1423 2005-08-16 Kim F. Storm <storm@cua.dk>
1424
1425 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1426
1427 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1428 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1429
1430 2005-08-15 Richard M. Stallman <rms@gnu.org>
1431
1432 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1433
1434 2005-08-15 Kim F. Storm <storm@cua.dk>
1435
1436 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1437
1438 * process.c (deactivate_process, status_notify, read_process_output)
1439 (update_status, status_convert, decode_status, allocate_pty)
1440 (make_process, remove_process, list_processes_1)
1441 (create_process_1, unwind_request_sigio, read_process_output)
1442 (send_process, keyboard_bit_set): Declare static.
1443 (Fdelete_process): Simplify. Pass process to status_notify, so we
1444 don't try to read output from it.
1445 (status_notify): New arg deleting_process--don't try to read
1446 output from that process.
1447
1448 * lisp.h (deactivate_process, status_notify, read_process_output):
1449 Remove prototypes.
1450
1451 2005-08-14 Richard M. Stallman <rms@gnu.org>
1452
1453 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1454 define_image_type.
1455
1456 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1457
1458 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1459 (xg_get_image_for_pixmap): Move some code to
1460 xg_get_pixbuf_from_pix_and_mask, and call it.
1461
1462 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1463
1464 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1465 to get an GTK icon and set it with GTK functions to avoid having GTK
1466 override an icon set with just X functions.
1467
1468 2005-08-11 Richard M. Stallman <rms@gnu.org>
1469
1470 * image.c (syms_of_image): Init image_types here, and call
1471 define_image_type.
1472 (init_image): Not here.
1473
1474 2005-08-09 Richard M. Stallman <rms@gnu.org>
1475
1476 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1477
1478 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1479
1480 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1481
1482 * floatfns.c (Fexpt): Use floats for negative exponent.
1483
1484 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1485
1486 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1487 should not be there, causing menu display errors with GTK 2.6.9.
1488
1489 2005-08-07 Richard M. Stallman <rms@gnu.org>
1490
1491 * floatfns.c (Fexpt): Undo previous change.
1492
1493 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1494 so it can be used with various state vectors.
1495
1496 * emacs.c (endif): Convert -script into -scriptload.
1497 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1498
1499 * fns.c (syms_of_fns): Add `emacs' to features.
1500
1501 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1502 output newlines to scroll the old screen contents off the screen.
1503
1504 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1505
1506 * floatfns.c (Fexpt): Use floats for negative exponent.
1507 Reported by D Goel.
1508
1509 2005-08-02 Richard M. Stallman <rms@gnu.org>
1510
1511 * frame.c (Fframe_char_width): Doc fix.
1512
1513 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1514
1515 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1516 Defvar it.
1517
1518 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1519
1520 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1521 (my_create_window, my_create_tip_window): Make static.
1522
1523 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1524 (my_set_foreground_window, my_destroy_window): Make static.
1525
1526 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1527
1528 Merge gnulib getopt implementation into Emacs.
1529
1530 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1531 now part of lib-src.
1532
1533 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1534
1535 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1536
1537 2005-07-25 Jason Rumney <jasonr@gnu.org>
1538
1539 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1540 navigating menus with the keyboard.
1541
1542 2005-07-23 Richard M. Stallman <rms@gnu.org>
1543
1544 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1545
1546 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1547 gc_relative_threshold, one by one.
1548
1549 * keyboard.c (read_char): Test gc_cons_threshold.
1550 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1551
1552 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1553 gc_relative_threshold, one by one.
1554
1555 * alloc.c (gc_cons_threshold): Not static.
1556 (gc_cons_combined_threshold): Var deleted.
1557 (gc_relative_threshold): New variable.
1558 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1559 instead of gc_cons_combined_threshold.
1560
1561 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1562 (gc_cons_combined_threshold): Declaration deleted.
1563
1564 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1565
1566 * mac.c: Don't include stdlib.h or string.h.
1567 (Fdo_applescript, Fmac_file_name_to_posix)
1568 (Fmac_file_name_to_posix): Doc fixes.
1569 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1570 (Fmac_code_convert_string): Likewise.
1571 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1572 if the executable is not contained in a bundle.
1573
1574 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1575 (gray_width, gray_height): Remove defines.
1576 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1577 (gray_bitmap_bits): Remove variables.
1578 (lispy_function_keys): Remove extern.
1579 (free_frame_menubar): Add extern.
1580 (x_window_to_frame): Remove function.
1581 (unwind_create_tip_frame): Add declaration.
1582 (x_set_name_internal): New function.
1583 (x_set_name, x_set_title): Use it.
1584 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1585 (Fx_display_pixel_height, Fx_display_planes)
1586 (Fx_display_color_cells, Fx_server_max_request_size)
1587 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1588 (Fx_display_mm_height, Fx_display_mm_width)
1589 (Fx_display_backing_store, Fx_display_visual_class)
1590 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1591
1592 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1593
1594 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1595 (Fx_get_selection_internal, Fx_selection_owner_p)
1596 (Fx_selection_exists_p): Doc fixes.
1597 (syms_of_macselect) <selection-converter-alist>: Likewise.
1598
1599 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1600
1601 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1602
1603 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1604 (Fccl_execute_on_string): Likewise; add usage info.
1605
1606 * composite.c (Fcompose_region_internal)
1607 (Fcompose_string_internal):
1608 Improve argument/docstring consistency.
1609
1610 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1611 Fix typos in docstrings.
1612
1613 * textprop.c (Fnext_char_property_change)
1614 (Fprevious_char_property_change): Doc fixes.
1615
1616 * window.c (Fset_window_margins, Fset_window_fringes):
1617 Improve argument/docstring consistency.
1618
1619 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1620
1621 2005-07-21 Andreas Schwab <schwab@suse.de>
1622
1623 * eval.c (restore_stack_limits): Return a value.
1624
1625 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1626
1627 * eval.c (Fdefvar): Doc fix.
1628
1629 2005-07-20 Kim F. Storm <storm@cua.dk>
1630
1631 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1632 Use make_save_value to unwind protect stream.
1633
1634 * lread.c (Fload, load_unwind):
1635 Use make_save_value to unwind protect stream.
1636
1637 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1638
1639 * eval.c (Fprog2, Fcalled_interactively_p),
1640 (syms_of_eval) <debug-on-quit>: Doc fixes.
1641 (syms_of_eval) <max-specpdl-size>:
1642 (Finteractive_p): Fix typos in docstrings.
1643
1644 2005-07-19 Kim F. Storm <storm@cua.dk>
1645
1646 * w32fns.c (Vx_hand_shape): Variable removed.
1647 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1648
1649 2005-07-19 Kenichi Handa <handa@m17n.org>
1650
1651 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1652
1653 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1654
1655 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1656
1657 2005-07-18 Kim F. Storm <storm@cua.dk>
1658
1659 * frame.h (struct frame): New member already_hscrolled_p.
1660
1661 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1662 to avoid redisplay looping hscrolling back and forth ad infinitum.
1663
1664 2005-07-18 Juri Linkov <juri@jurta.org>
1665
1666 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1667 * keymap.c (Fminor_mode_key_binding):
1668 * macterm.c (mac-emulate-three-button-mouse):
1669 Delete duplicate duplicate words.
1670
1671 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1672
1673 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1674
1675 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1676
1677 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1678
1679 * macgui.h (struct _XGC): New struct.
1680 (GC): Use it.
1681 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1682 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1683
1684 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1685 (XSetFont): Add declaration.
1686 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1687 Remove functions.
1688 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1689 New defines.
1690 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1691 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1692 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1693 Use them.
1694 (mac_erase_rectangle): New function.
1695 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1696 (x_draw_stretch_glyph_string): Use it.
1697 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1698 (XSetBackground, XSetFont): Adjust for new GC implementation.
1699 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1700 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1701
1702 * macterm.h (struct mac_display_info): Change types of
1703 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1704 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1705
1706 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1707
1708 2005-07-16 Richard M. Stallman <rms@gnu.org>
1709
1710 * buffer.c (Fmake_overlay): Doc fix.
1711
1712 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1713
1714 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1715 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1716
1717 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1718
1719 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1720 Use Fstring_as_unibyte instead of string_make_unibyte.
1721
1722 2005-07-15 Richard M. Stallman <rms@gnu.org>
1723
1724 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1725
1726 2005-07-15 Kim F. Storm <storm@cua.dk>
1727
1728 * xdisp.c: Fix redisplay loop in last change.
1729 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1730 (move_it_vertically_backward, move_it_by_lines): Use it.
1731
1732 2005-07-14 Jason Rumney <jasonr@gnu.org>
1733
1734 * w32.c (init_environment): Default HOME directory to user's
1735 appdata directory if possible.
1736
1737 2005-07-14 Kim F. Storm <storm@cua.dk>
1738
1739 * .gdbinit (pitx): Fix output format. Print string charpos.
1740
1741 * lread.c (syms_of_lread): Initialize seen_list.
1742
1743 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1744
1745 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1746 Staticpro re_match_object.
1747
1748 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1749
1750 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1751 dereference.
1752
1753 * macterm.c (mac_window_to_frame): Remove duplicate define.
1754
1755 2005-07-14 Kenichi Handa <handa@m17n.org>
1756
1757 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1758 (code_convert_region): Adjust for the above change.
1759 (set_conversion_work_buffer): If the work buffer is already in
1760 use, generate a new buffer and return it. Otherwise return Qnil.
1761 (run_pre_post_conversion_on_str): Adjust for the above change.
1762 (run_pre_write_conversin_on_c_str): Likewise.
1763
1764 2005-07-13 Kim F. Storm <storm@cua.dk>
1765
1766 * xdisp.c (start_display): Don't reseat to next visible line start
1767 if current start position is in a string or image.
1768 (move_it_vertically_backward): Be sure to move out of strings and
1769 images when moving it2 forward.
1770 (move_it_by_lines): When moving forward, move to next buffer
1771 position if we end up in a string or image. When moving backward,
1772 count rows moved over when moving to start of current row in case
1773 row starts in middle of a string or image. Also move further
1774 backward if we end up in a string or image.
1775 (try_cursor_movement): If overlay string spans multiple lines,
1776 move backward to set cursor on start of an overlay string.
1777 (cursor_row_p): Row is ok if cursor is at newline from string, but
1778 string starts on this line (so we always position cursor at start
1779 of string).
1780
1781 * indent.c (Fvertical_motion): If start position is on an image,
1782 don't move back if we move too far (that's almost certain to happen).
1783
1784 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1785 row in minibuffer windows.
1786 (try_window): Don't check margins in minibuffer windows.
1787
1788 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1789
1790 * macterm.c: Don't include stdlib.h or composite.h.
1791 (x_use_underline_position_properties, last_mouse_press_frame)
1792 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1793 (syms_of_macterm, mac_initialize): Don't initialize them.
1794 (waiting_for_input, initial_argv, initial_argc)
1795 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1796 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1797 (extra_keyboard_modifiers): Fix type in extern.
1798 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1799 (x_scroll_bar_report_motion): Add argument types to declaration.
1800 (mac_compute_glyph_string_overhangs): Add declaration.
1801 (disable_mouse_highlight): Remove unused variable.
1802 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1803 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1804 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1805 All callers changed.
1806 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1807 timestamp.
1808 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1809 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1810 only when its width is less than the height.
1811 (XTredeem_scroll_bar): Sync with xterm.c.
1812 (font_name_table, font_name_table_size, font_name_count):
1813 Make static.
1814 (drag_and_drop_file_list): Remove variable. Previous use is now
1815 local to function.
1816 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1817 from XTread_socket.
1818 (XTread_socket): Consolidate setting of event timestamp.
1819 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1820 Support extra_keyboard_modifiers.
1821
1822 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1823 beginning with that for ASCII.
1824
1825 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1826
1827 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1828 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1829 (syms_of_alloc): Declare gc-cons-percentage.
1830
1831 * eval.c (Feval, Ffuncall):
1832 * keyboard.c (read_char):
1833 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1834
1835 * lisp.h (gc_cons_combined_threshold): Declare.
1836
1837 2005-07-12 Kim F. Storm <storm@cua.dk>
1838
1839 * coding.c (Qprocess_argument):
1840 * coding.h (Qprocess_argument): Remove unused var.
1841
1842 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1843
1844 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1845
1846 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1847 Endian.h.
1848 [!MAC_OSX] (fchmod, fchown): New functions.
1849 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1850 Use SBYTES and EndianU32_BtoN.
1851 (mac_get_object_from_code): Return 4 byte string even if argument
1852 is 0. Use make_unibyte_string and EndianU32_NtoB.
1853 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1854 (Fmac_set_file_type): Fix documents and argument declarations.
1855 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1856
1857 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1858
1859 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1860
1861 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1862
1863 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1864 Lucid if X_I18N, font otherwise.
1865
1866 2005-07-10 Steven Tamm <steventamm@mac.com>
1867
1868 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1869 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1870 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1871
1872 2005-07-10 Richard M. Stallman <rms@gnu.org>
1873
1874 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1875 (syms_of_lread): Set up eval-buffer-list.
1876 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1877
1878 2005-07-08 Richard M. Stallman <rms@gnu.org>
1879
1880 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1881
1882 2005-07-08 Kim F. Storm <storm@cua.dk>
1883
1884 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1885 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1886
1887 2005-07-07 Kim F. Storm <storm@cua.dk>
1888
1889 * window.c (Frecenter): Fix last change (set iarg before use).
1890
1891 2005-07-06 Richard M. Stallman <rms@gnu.org>
1892
1893 * window.c (Frecenter): When arg is inside the scroll margin,
1894 move it out of the margin.
1895
1896 2005-07-06 Jason Rumney <jasonr@gnu.org>
1897
1898 * w32console.c (initialize_w32_display): Detect when the console
1899 dimensions are insane, and default to 80x25 instead.
1900 (w32_use_full_screen_buffer): Default to NIL.
1901
1902 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1903
1904 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1905 VERTICAL_BORDER_FACE_ID for vertical border line.
1906 (mac_encode_char): Call check_ccl_update in advance.
1907 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1908 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1909 Don't assume that font family length is less than 32.
1910 (x_compute_min_glyph_bounds): Make static.
1911 (x_load_font): Never set fonts_changed_p to zero.
1912
1913 2005-07-04 Lute Kamstra <lute@gnu.org>
1914
1915 * Update FSF's address in GPL notices.
1916
1917 2005-07-03 Richard M. Stallman <rms@gnu.org>
1918
1919 * xdisp.c (try_window): Fix previous change in how it handles
1920 a partially-visible line or one only partly past the margin.
1921
1922 * window.c (window_scroll_pixel_based): Take account
1923 of this_scroll_margin when finding point when scrolling up.
1924
1925 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1926
1927 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1928 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1929 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1930
1931 2005-07-02 Juri Linkov <juri@jurta.org>
1932
1933 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1934 VERTICAL_BORDER_FACE_ID for vertical border line.
1935
1936 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1937
1938 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1939 fchmod so that chmod doesn't get called on MSDOS before the file
1940 is closed.
1941
1942 2005-07-01 Jason Rumney <jasonr@gnu.org>
1943
1944 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1945 workaround.
1946 (w32_initialize): Initialize it.
1947 (w32_native_per_char_metric): Allow a couple of extra pixels when
1948 Cleartype is active.
1949
1950 * w32term.c (w32_initialize): Move check for screen reader here
1951 from syms_of_w32term.
1952
1953 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1954
1955 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1956 is not zero.
1957
1958 2005-07-01 Masatake YAMATO <jet@gyve.org>
1959
1960 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1961
1962 2005-06-30 Juri Linkov <juri@jurta.org>
1963
1964 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1965 decrease x coord of vertical border by 1 pixel to not occupy text
1966 area of the right window.
1967
1968 * xterm.c (x_draw_vertical_window_border): Use foreground of
1969 VERTICAL_BORDER_FACE_ID for vertical border line.
1970
1971 * term.c (turn_on_face): In standout mode apply specified
1972 fg to bg, and specified bg to fg (this makes the logic of
1973 inversion on terminal consistent with X).
1974
1975 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1976
1977 * eval.c (user_variable_p_eh): New function.
1978 (Fuser_variable_p): Use it. Clarify docstring.
1979 Return t for aliases of user options, nil for alias loops.
1980
1981 2005-06-27 Richard M. Stallman <rms@gnu.org>
1982
1983 * eval.c (Fdefvar): Improve error message.
1984
1985 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1986
1987 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1988 change.
1989
1990 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1991
1992 * eval.c (Fdefvar): Don't try to set constant symbols.
1993
1994 2005-06-25 Richard M. Stallman <rms@gnu.org>
1995
1996 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1997
1998 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1999
2000 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2001
2002 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2003 (redisplay_window): Handle try_window reporting point in scroll margin.
2004
2005 * dispextern.h (try_window): Declare new arg.
2006
2007 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2008 Use fchmod to copy the file modes.
2009 (Frename_file): Don't copy UID and GID here;
2010 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2011
2012 * eval.c (call_debugger): Take full care of extending stack limits
2013 to make space for the debugger, and restore the change afterward.
2014 Bind debug-on-error to nil.
2015 (restore_stack_limits): New subroutine.
2016 (Fsignal): Extend specpdl bound along with eval depth bound,
2017 for calling edebug. Don't do either one, for calling debugger.
2018 (find_handler_clause): Don't bind debug-on-error here.
2019 Don't unbind anything either.
2020 Temporarily advance max_specpdl_size for calling
2021 internal_with_output_to_temp_buffer.
2022 (grow_specpdl): Don't alter max_specpdl_size before signaling
2023 an error.
2024 (syms_of_eval) <max-specpdl-size>: Doc fix.
2025
2026 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2027
2028 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2029
2030 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2031 chown on DOS_NT platforms.
2032
2033 * w32.c (sys_chown): New function.
2034
2035 * s/ms-w32.h (chown): New; define to sys_chown.
2036
2037 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2038
2039 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2040 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2041
2042 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2043
2044 2005-06-23 Richard M. Stallman <rms@gnu.org>
2045
2046 * xdisp.c (get_next_display_element): Finish reversing the tests of
2047 Vnobreak_char_display.
2048
2049 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2050 All uses changed.
2051 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2052 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2053
2054 * fileio.c (Frename_file): Preserve owner and group, if possible,
2055 when copying.
2056
2057 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2058
2059 * abbrev.c (Funexpand_abbrev):
2060 * category.c (Fmake_category_set):
2061 * dispnew.c (Fsleep_for, Fsit_for):
2062 * editfns.c (Fsubst_char_in_region):
2063 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2064 * frame.c (make_frame_without_minibuffer):
2065 * lread.c (read_vector):
2066 * macfns.c (check_x_frame):
2067 * process.c (Fstop_process, Fcontinue_process):
2068 * search.c (Freplace_match):
2069 * syntax.c (Fstring_to_syntax):
2070 * w32fns.c (check_x_frame, check_x_display_info):
2071 * xfaces.c (x_supports_face_attributes_p):
2072 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2073
2074 * image.c (fn_png_init_io): Don't define it.
2075 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2076 (png_read_from_file): New function, based on png_read_from_memory.
2077 (png_load): Use it, instead of fn_png_init_io.
2078
2079 2005-06-23 Kim F. Storm <storm@cua.dk>
2080
2081 * search.c (Fmatch_data): Remove evaporate option.
2082 (Fset_match_data): Do not mention evaporate option in doc string.
2083 Add commentary explaining evaporate arg (for internal use only).
2084 (unwind_set_match_data): Add comment on evaporate use.
2085
2086 2005-06-22 Miles Bader <miles@gnu.org>
2087
2088 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2089 (realize_basic_faces, syms_of_xfaces): Update references to it.
2090 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2091 to `VERTICAL_BORDER_FACE_ID'.
2092 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2093
2094 2005-06-21 Juri Linkov <juri@jurta.org>
2095
2096 * dispextern.h: Add extern Qframe_set_background_mode.
2097
2098 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2099 Qframe_set_background_mode.
2100
2101 * frame.c (Fmodify_frame_parameters):
2102 Call frame-set-background-mode after changing the background color
2103 on non-window non-dos branch.
2104
2105 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2106
2107 * fns.c (Fchar_table_range):
2108 * process.c (Fmake_network_process): Fix spellings.
2109
2110 2005-06-20 Kim F. Storm <storm@cua.dk>
2111
2112 * fns.c (Fsort): Doc fix.
2113
2114 2005-06-20 Miles Bader <miles@gnu.org>
2115
2116 * xfaces.c (Qvertical_divider): New variable.
2117 (realize_basic_faces): Realize its face.
2118 (syms_of_xfaces): Initialize it.
2119
2120 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2121
2122 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2123 window-separator on ttys using `vertical-divider' face by default.
2124
2125 2005-06-17 Richard M. Stallman <rms@gnu.org>
2126
2127 * xdisp.c (get_next_display_element):
2128 Reverse test of Vshow_nonbreak_escape.
2129
2130 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2131 (Ftty_no_underline): New function.
2132 (syms_of_term): defsubr it.
2133
2134 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2135
2136 * dispnew.c (spec_glyph_lookup_face): New function.
2137 (build_frame_matrix_from_leaf_window): Use it.
2138
2139 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2140
2141 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2142
2143 2005-06-12 Richard M. Stallman <rms@gnu.org>
2144
2145 * keyboard.c (read_char): After catching a longjmp,
2146 call restore_getcjmp.
2147
2148 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2149
2150 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2151
2152 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2153
2154 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2155 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2156 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2157 events.
2158 (XTread_socket): Don't pass keyboard events with the option
2159 modifier to the system when Vmac_command_key_is_meta is nil or
2160 Vmac_option_modifier is non-nil.
2161 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2162 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2163 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2164 handler function.
2165 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2166 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2167 handler part to mac_handle_mouse_event.
2168
2169 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2170
2171 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2172 NEW-ALIAS and BASE-VARIABLE, respectively.
2173
2174 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2175
2176 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2177 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2178 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2179
2180 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2181
2182 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2183
2184 * w32term.c (x_use_underline_position_properties): New variable.
2185 (x_draw_glyph_string): Remind in a comment to change doc string of
2186 x-use-underline-position-properties if/when underline positioning
2187 is implemented.
2188 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2189 and initialize it to nil.
2190
2191 2005-06-12 Jason Rumney <jasonr@gnu.org>
2192
2193 * w32fns.c (NEWOPENFILENAME): New struct.
2194 (Fx_file_dialog): Use it to trick the system into giving us up to
2195 date dialogs on systems that are documented to support it.
2196 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2197
2198 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2199
2200 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2201 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2202
2203 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2204
2205 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2206 to CreateDIBSection to avoid a compiler warning.
2207 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2208 warning.
2209 (png_load): Cast return values of fn_png_create_read_struct and
2210 fn_png_create_info_struct, to avoid compiler warnings on W32.
2211 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2212 to avoid compiler warnings.
2213 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2214 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2215 avoid a compiler warning.
2216 (tiff_load): Cast return values of fn_TIFFOpen and
2217 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2218 to IMAGE_BACKGROUND to avoid a compiler warning.
2219 (gif_load): Cast return values of fn_DGifOpenFileName and
2220 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2221 IMAGE_BACKGROUND to avoid a compiler warning.
2222 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2223 before redefining.
2224
2225 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2226 the call to CreateDIBSection, to avoid a compiler warning.
2227
2228 2005-06-11 Jason Rumney <jasonr@gnu.org>
2229
2230 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2231 minibuffer.
2232 * macfns.c (Fx_file_dialog): Likewise.
2233
2234 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2235
2236 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2237
2238 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2239
2240 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2241 * w32fns.c (syms_of_w32fns): Fix spellings.
2242
2243 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2244
2245 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2246 `verbose'; print diagnostic messages only if it is non-zero.
2247 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2248 in the environment.
2249 (copy_executable_and_dump_data): Print section names with %.8s.
2250
2251 2005-06-10 Masatake YAMATO <jet@gyve.org>
2252
2253 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2254 when mouse_face is not given.
2255
2256 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2257
2258 * window.c (Fselect_window): Adapt call to Fselect_frame.
2259
2260 * lisp.h: Update EXFUN of Fselect_frame.
2261
2262 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2263
2264 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2265 no_enter.
2266 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2267 Adapt to above change.
2268
2269 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2270
2271 * fns.c (Fmemq, Fmaphash): Doc fixes.
2272
2273 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2274
2275 * xfaces.c (Fdisplay_supports_face_attributes_p):
2276 Fix typo in docstring.
2277
2278 2005-06-08 Steven Tamm <steventamm@mac.com>
2279
2280 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2281 used by gcc4 on intel mac.
2282
2283 2005-06-09 Kim F. Storm <storm@cua.dk>
2284
2285 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2286 in REUSE list if non-nil; free them if equal to evaporate.
2287 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2288 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2289 (restore_search_regs): Rename from restore_match_data. Uses changed.
2290 (unwind_set_match_data): New function.
2291 (record_unwind_save_match_data): New function like save-match-data.
2292
2293 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2294 (record_unwind_save_match_data): Add prototype.
2295 (restore_search_regs): Rename from restore_match_data.
2296
2297 * composite.c (compose_chars_in_text):
2298 * eval.c (do_autoload):
2299 * macmenu.c (set_frame_menubar):
2300 * process.c (read_process_output, exec_sentinel):
2301 * xmenu.c (set_frame_menubar):
2302 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2303 * w32menu.c (set_frame_menubar):
2304 Use record_unwind_save_match_data.
2305
2306 2005-06-08 Richard M. Stallman <rms@gnu.org>
2307
2308 * xdisp.c (get_next_display_element): Alter previous change:
2309 Distinguish Vshow_nonbreak_escape = t or not t.
2310 For t, use escape_glyph once again, as before previous change.
2311 Use space or hyphen for display, instead of the non-ASCII char.
2312 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2313
2314 * process.c (Fstart_process): Don't touch command_channel_p slot.
2315
2316 * process.h (struct process): Delete command_channel_p.
2317
2318 2005-06-07 Masatake YAMATO <jet@gyve.org>
2319
2320 * xdisp.c (note_mode_line_or_margin_highlight):
2321 Check the overlapping of re-rendering area to avoid flickering.
2322 (note_mouse_highlight): Call clear_mouse_face if PART
2323 is not ON_MODE_LINE nor ON_HEADER_LINE.
2324
2325 2005-06-07 Kim F. Storm <storm@cua.dk>
2326
2327 * process.c: Improve commentary for adaptive read buffering.
2328
2329 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2330
2331 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2332 if available.
2333
2334 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2335
2336 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2337 New functions for popping down menus on C-g.
2338 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2339
2340 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2341 non-static.
2342
2343 * config.in: Add HAVE_CANCELMENUTRACKING.
2344
2345 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2346
2347 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2348
2349 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2350
2351 * w32proc.c (RVA_TO_PTR): New macro.
2352
2353 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2354
2355 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2356 Depend on w32heap.h.
2357
2358 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2359
2360 * keyboard.c (command_loop_1): Update Vthis_original_command.
2361
2362 2005-06-06 Richard M. Stallman <rms@gnu.org>
2363
2364 * xmenu.c (popup_get_selection): Undo previous change.
2365
2366 2005-06-06 Juri Linkov <juri@jurta.org>
2367
2368 * xdisp.c (Qno_break_space): New variable.
2369 (syms_of_xdisp): Initialize it.
2370 (get_next_display_element): Add no-break space and soft hypen
2371 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2372 Use `no-break-space' face for no-break spaces.
2373
2374 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2375
2376 * window.c (delete_window): Handle the case where a h/vchild has
2377 a h/vchild.
2378
2379 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2380
2381 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2382 call to pfn_setsockopt, cast optval to `const char *'.
2383
2384 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2385
2386 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2387 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2388 compiler warnings.
2389
2390 * s/ms-w32.h (fileno): Don't define if already defined.
2391
2392 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2393
2394 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2395
2396 2005-06-04 Richard M. Stallman <rms@gnu.org>
2397
2398 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2399
2400 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2401
2402 * macmenu.c (cleanup_popup_menu): New function.
2403 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2404 mac_menu_show Quit:s.
2405 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2406 a dialog).
2407
2408 2005-06-04 Kim F. Storm <storm@cua.dk>
2409
2410 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2411
2412 * callproc.c (Fcall_process): Don't use alloca to gradually
2413 increase size of buf, as it effectively uses twice the necessary
2414 space on the stack. Instead, pre-allocate buf of full size, and
2415 gradually increase the read size.
2416
2417 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2418
2419 * eval.c (unbind_to): Preserve value of Vquit_flag.
2420
2421 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2422 before a button release event.
2423
2424 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2425
2426 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2427 on faces in a frame, if the argument FRAME is non-nil.
2428 Improve argument/docstring consistency.
2429
2430 2005-06-02 Kim F. Storm <storm@cua.dk>
2431
2432 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2433 (x_consider_frame_title, Fformat_mode_line): Save offset into
2434 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2435
2436 2005-06-01 Kim F. Storm <storm@cua.dk>
2437
2438 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2439
2440 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2441
2442 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2443 resolution fields for scalable fonts to 0.
2444
2445 * xfaces.c (build_scalable_font_name): Round pixel size to the
2446 nearest integer.
2447
2448 2005-06-01 Kim F. Storm <storm@cua.dk>
2449
2450 * xdisp.c (display_mode_line): Support nested calls to redisplay
2451 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2452
2453 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2454
2455 * fileio.c (Finsert_file_contents):
2456 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2457
2458 2005-05-31 Kim F. Storm <storm@cua.dk>
2459
2460 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2461 (mode_line_noprop_ptr): Rename from frame_title_*.
2462 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2463 (store_mode_line_noprop): Rename from store_frame_title.
2464 (mode_line_target): New enum to specify current output target
2465 for mode line formatting.
2466 (display_mode_element): Test it rather than frame_title_ptr and
2467 mode_line_string_list to determine where output should go.
2468 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2469 (Vmode_line_unwind_vector): New variable.
2470 (format_mode_line_unwind_data, unwind_format_mode_line):
2471 New functions for unwind protection in mode line formatting.
2472 (x_consider_frame_title): Use them and new local var 'title_start'
2473 to support nested calls to format-mode-line and redisplay.
2474 Set mode_line_target to MODE_LINE_TITLE.
2475 (Fformat_mode_line): Use them and new local var 'string_start' to
2476 support nested calls to format-mode-line and redisplay.
2477 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2478 Don't trim trailing dashes.
2479 (decode_mode_spec): Don't make infinite number of trailing dashes
2480 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2481 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2482 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2483 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2484 Initialize mode_line_target to MODE_LINE_DISPLAY.
2485
2486 2005-05-29 Richard M. Stallman <rms@gnu.org>
2487
2488 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2489
2490 2005-05-28 Masatake YAMATO <jet@gyve.org>
2491
2492 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2493 pointer to a hand cursor when hoovering over a mouse-face.
2494
2495 2005-05-27 Kenichi Handa <handa@m17n.org>
2496
2497 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2498
2499 * ccl.c: Now an element of Vccl_program_table is a vector of
2500 length 4, not 3.
2501 (ccl_get_compiled_code): New arg idx. Caller changed.
2502 Adjust for the change of Vccl_program_table.
2503 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2504 (check_ccl_update): New function.
2505 (Fregister_ccl_program): Use ASET to set an element of a vector.
2506 Adjusted for the change of Vccl_program_table.
2507
2508 * ccl.h (struct ccl_program): New member idx.
2509 (check_ccl_update): Extern it.
2510
2511 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2512
2513 * image.c (Vimage_library_alist): Move from image.el.
2514 (syms_of_image): Defvar it.
2515 (lookup_image_type): Use it.
2516
2517 * buffer.c (Fbuffer_local_value): Make argument name match its use
2518 in docstring.
2519
2520 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2521
2522 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2523 (Fposn_at_x_y): Make argument name match its use in docstring.
2524
2525 2005-05-26 Lute Kamstra <lute@gnu.org>
2526
2527 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2528
2529 2005-05-24 Masatake YAMATO <jet@gyve.org>
2530
2531 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2532 as loop sentinels.
2533
2534 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2535
2536 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2537 select frame title ("Question"/"Information").
2538 (xdialog_show): Use it.
2539
2540 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2541
2542 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2543
2544 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2545 a third argument (Qnil).
2546
2547 * lisp.h: x-popup-dialog can have three arguments.
2548
2549 * editfns.c (Fmessage_box): Use "Information" for frame title.
2550
2551 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2552
2553 * termcap.c [VMS]: Include <starlet.h>.
2554
2555 2005-05-23 Masatake YAMATO <jet@gyve.org>
2556
2557 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2558 for mouse-face. Change the type of the first argument from `window'
2559 to `Lisp_Object'.
2560 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2561 window instead of w.
2562
2563 2005-05-22 Andreas Schwab <schwab@suse.de>
2564
2565 * process.c (send_process): Move misplaced volatile.
2566
2567 2005-05-21 Richard M. Stallman <rms@gnu.org>
2568
2569 * xdisp.c (display_mode_element): If we're processing a list and
2570 padding is specified, put it after the last element.
2571
2572 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2573
2574 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2575 "superroot" on DOS_NT systems.
2576
2577 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2578
2579 * process.c (send_process): Restore the SIGPIPE handler if we
2580 catch a SIGPIPE.
2581
2582 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2583
2584 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2585 misleading comments).
2586 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2587
2588 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2589
2590 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2591 Correct the right value.
2592
2593 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2594
2595 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2596 post-command-idle-hook and post-command-idle-delay.
2597 (command_loop_1): Don't try to execute post-command-idle-hook.
2598
2599 2005-05-16 Kim F. Storm <storm@cua.dk>
2600
2601 * xdisp.c (handle_display_prop): Handle empty replacement.
2602 (handle_single_display_spec): Return -1 for empty replacement.
2603
2604 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2605
2606 * .gdbinit (pitx): Print more info about iterator.
2607
2608 2005-05-16 Andreas Schwab <schwab@suse.de>
2609
2610 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2611
2612 2005-05-14 Richard M. Stallman <rms@gnu.org>
2613
2614 * xdisp.c (message3): Call cancel_echoing.
2615
2616 * alloc.c (Fmemory_full_p): New function.
2617 (syms_of_alloc): defsubr it.
2618
2619 * process.c (send_process_trap): Unblock SIGPIPE.
2620 (send_process): Reset SIGPIPE handler before reporting error.
2621
2622 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2623
2624 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2625
2626 2005-05-13 Richard M. Stallman <rms@gnu.org>
2627
2628 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2629 (Finsert_file_contents): If we read 0 bytes from a special file,
2630 unlock the visited file if we locked it.
2631 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2632 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2633
2634 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2635
2636 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2637
2638 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2639 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2640 redisplay from being paused by them.
2641
2642 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2643 [!MAC_OSX] (target_ticks): Remove variable.
2644 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2645 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2646 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2647 event occurs before timeout, behave as if the function were interrupted.
2648 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2649 handling using Time Manager routines.
2650 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2651 New variables.
2652 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2653 (setitimer): New functions.
2654
2655 * macfns.c, macmenu.c: Don't include signal.h.
2656
2657 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2658 Rename from get_control_part_bound. All callers changed.
2659 (x_scroll_bar_clear): New function.
2660 (x_clear_frame): Use it.
2661 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2662 (x_scroll_bar_handle_click): Change type of second argument from
2663 int to ControlPartCode.
2664 (check_alarm): Remove declaration.
2665 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2666 (XTread_socket): Use ControlPartCode instead of SInt16.
2667
2668 2005-05-13 Nozomu Ando <nand@mac.com>
2669
2670 * unexmacosx.c: Include assert.h.
2671 (MACOSX_MALLOC_MULT16): New define.
2672 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2673 ptr is in unexec regions by checking it is multiple of 16.
2674 (unexec_malloc_header_t): New typedef.
2675 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2676 allocated size information in unexec_malloc_header.
2677
2678 2005-05-10 Richard M. Stallman <rms@gnu.org>
2679
2680 * xterm.c (noinclude): Add #undef.
2681
2682 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2683
2684 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2685
2686 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2687 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2688 Doc fixes.
2689
2690 * dired.c (Ffile_name_completion): Make argument name
2691 match its use in docstring.
2692
2693 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2694
2695 * eval.c (Fdefvaralias): Remove any pre-existing
2696 variable-documentation property of the alias.
2697
2698 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2699
2700 * xfns.c (start_hourglass): Do nothing when running on a tty.
2701
2702 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2703
2704 * fns.c (Fchar_table_range): Fix typos in docstring.
2705
2706 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2707
2708 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2709
2710 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2711
2712 * lread.c (Flocate_file_internal): Doc fix.
2713
2714 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2715
2716 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2717
2718 * macselect.c (x_own_selection): Accept Lisp string as result of
2719 selection converter function.
2720 (x_clear_frame_selections): Don't call x-lost-selection-functions
2721 if Emacs is not owner of the selection.
2722 (Vmac_services_selection): Put variable and initialization in
2723 #ifdef MAC_OSX.
2724 (syms_of_macselect) [MAC_OSX]: Set default value of
2725 Vmac_services_selection to PRIMARY.
2726
2727 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2728 (mac_handle_tool_bar_click): Remove unused function and declaration.
2729 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2730 (install_scroll_bar_timer, set_scroll_bar_timer)
2731 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2732 (get_control_part_bound, x_scroll_bar_handle_press)
2733 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2734 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2735 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2736 (scroll_bar_timer_event_posted_p): New variables.
2737 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2738 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2739 (x_scroll_bar_create): Set control reference with NewControl.
2740 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2741 Initialize track_top and track_height to nil.
2742 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2743 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2744 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2745 and associated window.
2746 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2747 from window config.
2748 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2749 Set track_top and track_height to nil when scroll bar size is changed.
2750 Recalculate them if they are nil.
2751 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2752 clicked control is a scroll bar.
2753 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2754 event handler functions. Don't add modifiers to scroll bar click
2755 events. Call scroll bar release handler when window is deactivated.
2756 (mac_initialize): Remove unused code for X toolkit.
2757 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2758 Initialize Vx_toolkit_scroll_bars to nil.
2759
2760 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2761 New members track_top and track_height.
2762
2763 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2764 init_process when including sys/select.h.
2765
2766 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2767
2768 * eval.c (Fdefvaralias): Doc fix.
2769
2770 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2771
2772 2005-05-05 Kim F. Storm <storm@cua.dk>
2773
2774 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2775 default value.
2776 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2777 Fix type of cursor-in-non-selected-windows.
2778
2779 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2780
2781 * mac.c: #undef init_process so not to conflict with system headers.
2782
2783 2005-05-02 Richard M. Stallman <rms@gnu.org>
2784
2785 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2786
2787 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2788
2789 * xdisp.c (Vcursor_in_non_selected_windows)
2790 (Qcursor_in_non_selected_windows): Vars deleted.
2791 (syms_of_xdisp): Don't initialize them.
2792 (get_window_cursor_type): Use cursor_in_non_selected_windows
2793 buffer slot.
2794
2795 2005-05-02 Kim F. Storm <storm@cua.dk>
2796
2797 * macros.c (executing_kbd_macro_index): Rename from
2798 executing_macro_index. All uses changed.
2799 (executing_kbd_macro_iterations): Rename from
2800 executing_macro_iterations. All uses changed.
2801 (executing_kbd_macro): Rename from executing_macro.
2802 All uses changed.
2803 (syms_of_macros): Rename Lisp var executing-macro-index to
2804 executing-kbd-macro-index.
2805
2806 * xdisp.c (move_it_in_display_line_to): Fix last change.
2807
2808 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2809
2810 * xmenu.c (Fx_popup_menu): Doc fix.
2811
2812 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2813
2814 2005-05-02 Jason Rumney <jasonr@gnu.org>
2815
2816 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2817
2818 2005-05-02 Nozomu Ando <nand@mac.com>
2819
2820 * sysselect.h: Fix typo.
2821
2822 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2823
2824 * charset.c (Fchars_in_region): Remove as obsolete.
2825
2826 2005-05-01 Kim F. Storm <storm@cua.dk>
2827
2828 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2829 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2830 glyph.
2831
2832 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2833
2834 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2835
2836 2005-05-01 Richard M. Stallman <rms@gnu.org>
2837
2838 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2839 If user cancels the menu, quit unless FOR_CLICK.
2840
2841 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2842 All uses changed.
2843 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2844 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2845 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2846 * commands.h (Vexecuting_kbd_macro): Likewise.
2847
2848 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2849
2850 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2851
2852 2005-04-30 Richard M. Stallman <rms@gnu.org>
2853
2854 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2855 property of the file name handler.
2856 (Qoperations): New variable.
2857 (syms_of_fileio): Initialize and staticpro it.
2858
2859 * xdisp.c (set_message_1): Delete xassert.
2860
2861 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2862
2863 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2864
2865 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2866
2867 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2868 before/after including Carbon.h if there is a working mktime.
2869
2870 2005-04-28 Kim F. Storm <storm@cua.dk>
2871
2872 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2873 Fix cyclic alias check. If alias loop is detected, signal
2874 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2875
2876 2005-04-28 Lute Kamstra <lute@gnu.org>
2877
2878 * eval.c (do_autoload): Record only autoloads in the autoload
2879 property of symbols.
2880
2881 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2882
2883 * emacs.c (USAGE1): Add --basic-display and --quick options.
2884
2885 2005-04-27 Kim F. Storm <storm@cua.dk>
2886
2887 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2888
2889 2005-04-26 Richard M. Stallman <rms@gnu.org>
2890
2891 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2892 (syms_of_window): Doc fixes.
2893
2894 * indent.c (Fvertical_motion): Undo previous change.
2895
2896 2005-04-26 Kenichi Handa <handa@m17n.org>
2897
2898 * fns.c (char_table_range): New function.
2899 (Fchar_table_range): Signal an error if characters in the range
2900 have inconsistent values. Don't check the parent.
2901
2902 2005-04-25 Kenichi Handa <handa@m17n.org>
2903
2904 * fontset.c (fontset_set): Fix previous change.
2905
2906 2005-04-24 Richard M. Stallman <rms@gnu.org>
2907
2908 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2909
2910 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2911
2912 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2913 of RE_TRANSLATE to int, to shut up GCC warnings.
2914
2915 * fileio.c (Fcopy_file): Doc fix.
2916 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2917 not needed.
2918
2919 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2920
2921 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2922 (SOME_MACHINE_OBJECTS): Likewise.
2923 (mac.o): Depend on ccl.h.
2924 (macselect.o): New target.
2925
2926 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2927 Call syms_of_macselect.
2928
2929 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2930
2931 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2932 (QCLIPBOARD): Remove variable.
2933 (syms_of_mac): Don't initialize it.
2934 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2935 Remove functions.
2936 (syms_of_mac): Don't defsubr them.
2937 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2938 (QHFS_plus_D, QHFS_plus_C): New variables.
2939 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2940 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2941 (cfstring_create_normalized): New functions.
2942 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2943 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2944
2945 * macterm.c (handling_window_update, terminate_flag):
2946 Remove variables.
2947 (do_window_update, do_ae_quit_application, XTread_socket):
2948 Don't use them.
2949 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2950 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2951 (init_service_handler): Move to macselect.c. Remove declarations.
2952 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2953 (Qapplication, Qabout): New variables.
2954 (syms_of_mac): Initialize them.
2955 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2956 (Qperform): New variables.
2957 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2958 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2959 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2960 (mac_store_application_menu_event, init_menu_bar): New functions.
2961 [USE_CARBON_EVENTS] (mac_handle_command_event)
2962 (init_command_handler): New functions.
2963 (mac_handle_window_event): Return noErr on window update event.
2964 (do_ae_quit_application): Call mac_store_application_menu_event.
2965 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2966 and init_menu_bar.
2967
2968 * macterm.h (x_clear_frame_selections): Add extern.
2969
2970 * macselect.c: New file for selection processing on Mac OS.
2971
2972 2005-04-23 Richard M. Stallman <rms@gnu.org>
2973
2974 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2975 (Frename_file): Pass new arg to Fcopy_file.
2976
2977 * window.c (window_size_fixed): Variable deleted.
2978 (syms_of_window): Initialize window-size-fixed to nil.
2979 But don't DEFVAR window_size_fixed.
2980
2981 2005-04-23 Andreas Schwab <schwab@suse.de>
2982
2983 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2984 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2985 use lib64 instead of lib.
2986 (_LP64) [_ARCH_PPC64]: Define if not defined.
2987
2988 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2989
2990 * s/ms-w32.h (HAVE_PWD_H): Define.
2991
2992 2005-04-22 Kenichi Handa <handa@m17n.org>
2993
2994 * fns.c (copy_sub_char_table): Explicitly copy the default value
2995 of the sub-chartable.
2996
2997 * fontset.c (fontset_set): When a sub-chartable is created,
2998 explicitly sets the defalt value.
2999
3000 2005-04-22 Kim F. Storm <storm@cua.dk>
3001
3002 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3003 (Fsafe_plist_get): Rename to Fplist_get.
3004 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3005 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3006
3007 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3008
3009 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3010 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3011 Use Fplist_get instead of Fsafe_plist_get.
3012
3013 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3014
3015 2005-04-21 Miles Bader <miles@gnu.org>
3016
3017 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3018
3019 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3020
3021 * sysdep.c: Remove reference to defunct vms-pwd.h.
3022 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3023 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3024
3025 * config.in: Regenerate.
3026
3027 2005-04-20 Kenichi Handa <handa@m17n.org>
3028
3029 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3030 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3031 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3032
3033 * alloc.c (make_sub_char_table): Argument changed to initial
3034 value of the slots.
3035
3036 * data.c (Faref): Handle special slots used as default values of
3037 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3038 default value set for a group of characters.
3039 (Faset): Signal an error if IDXVAL is not a valid character code.
3040 Make a sub-chartable with correct initial value.
3041
3042 * fns.c (Fset_char_table_range): Don't set slots used as default
3043 values for ascii, eight-bit-control, eight-bit-graphic.
3044 Don't call Faref with charset-id.
3045 (Fset_char_table_default): Document how to treat normal character
3046 argument. Handle special slots used as default values of ascii,
3047 eight-bit-control, eight-bit-control. Make a sub chartable if
3048 necessary.
3049
3050 2005-04-20 Kenichi Handa <handa@m17n.org>
3051
3052 * search.c (boyer_moore): Fix previous change.
3053
3054 2005-04-19 Kim F. Storm <storm@cua.dk>
3055
3056 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3057 face unless last visible char and first invisible char have the
3058 same face. Also use default face if saved_face_id is undefined.
3059
3060 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3061
3062 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3063 `full_name'.
3064 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3065 mac_scriptcode member.
3066
3067 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3068 (syms_of_mac): Don't initialize them.
3069 (Vmac_charset_info_alist): New variable.
3070 (syms_of_mac): Defvar it.
3071 (create_text_encoding_info_alist): New function.
3072 (decode_mac_font_name, mac_to_x_fontname)
3073 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3074 code the correspondence among XLFD charsets, Mac script codes, and
3075 Emacs coding systems. Use Vmac_charset_info_alist and result of
3076 create_text_encoding_info_alist instead.
3077 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3078 routines also on Mac OS Classic.
3079 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3080 Use add_font_name_table_entry.
3081 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3082 specified. Derive unspecified scalable fields from specified one.
3083 (x_list_fonts): Consider Valternate_fontname_alist.
3084 (kDefaultFontSize): Change value from 9 to 12.
3085 (XLoadQueryFont): Get decoded font family, font face, and charset
3086 from x_font_name_to_mac_font_name. Set full name of loaded font.
3087 (mac_unload_font): Free `full_name' member.
3088 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3089 NULL. Copy full_name member of struct MacFontStruct to that of
3090 struct font_info.
3091
3092 2005-04-19 Kim F. Storm <storm@cua.dk>
3093
3094 * xdisp.c (handle_stop): Set saved_face_id to current face if
3095 selective_display_ellipsis_p so ellipsis will be shown in same
3096 face as preceding text.
3097 (setup_for_ellipsis): Don't set saved_face_id here.
3098 (next_element_from_display_vector): Default to saved_face_id.
3099
3100 * fns.c (Fsafe_get): New function.
3101 (syms_of_fns): Defsubr it.
3102
3103 * lisp.h (Fsafe_get): EXFUN it.
3104
3105 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3106 loops in case of bad face property lists. Limit number of face
3107 alias lookups to 10 (in case of face alias loops).
3108
3109 2005-04-18 Kim F. Storm <storm@cua.dk>
3110
3111 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3112 It replaces the corresponding member from struct window, as a
3113 window may now show multiple overlay arrows.
3114 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3115
3116 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3117 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3118
3119 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3120 rather than from window.
3121 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3122 overlay_arrow_p members.
3123 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3124 if not default.
3125
3126 * window.h (struct window): Remove member overlay_arrow_bitmap.
3127
3128 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3129
3130 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3131 Calls changed. Don't check for overlay-arrow-bitmap property here.
3132 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3133 fringe is present, return Lisp integer for bitmap (or -1 for default).
3134 Fix value of overlay-arrow-bitmap property to be a symbol, use
3135 lookup_fringe_bitmap to parse it.
3136 (display_line): Change call to overlay_arrow_at_row. Store integer
3137 return value as overlay bitmap in row rather than window.
3138 Only show overlay arrow if row displays text, or if no other overlay
3139 arrow is seen in window (if overlay marker is at point-max).
3140
3141 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3142
3143 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3144
3145 2005-04-18 Lute Kamstra <lute@gnu.org>
3146
3147 * lread.c (Vloads_in_progress): Static.
3148 * fns.c (Vloads_in_progress): Remove extern.
3149 (load_in_progress): Add extern.
3150 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3151
3152 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3153
3154 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3155
3156 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3157
3158 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3159 no frame is visible.
3160
3161 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3162
3163 * term.c (struct keys): Add support for shifted keys.
3164
3165 2005-04-16 Richard M. Stallman <rms@gnu.org>
3166
3167 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3168 (set_message): Call with_echo_area_buffer with WHICH = 0.
3169 (set_message_1): Erase the echo area buffer first thing.
3170 (echo_area_display): Don't clear echo_message_buffer.
3171
3172 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3173
3174 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3175
3176 * mac.c: Include charset.h and coding.h.
3177 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3178 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3179 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3180
3181 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3182
3183 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3184
3185 * macterm.c (x_autoselect_window_p): Remove variable.
3186 (last_window): New variable.
3187 (XTreassert_line_highlight, x_change_line_highlight):
3188 Remove declarations.
3189 (mac_focus_changed, x_detect_focus_change): New functions and
3190 declarations.
3191 (XTextExtents16, front_emacs_window): Remove function.
3192 (mac_focus_frame): New function.
3193 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3194 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3195 (x_scroll_bar_report_motion): Obtain window from control owner.
3196 (x_make_frame_invisible): Set window manager size hint.
3197 (do_mouse_moved): Remove function.
3198 (XTread_socket): Move its contents here. Generate select-window
3199 event on mouse movement if needed. Use x_detect_focus_change on
3200 activate/deactivate events. Don't deiconify frame or invalidate
3201 window rectangle when dnd items are dropped.
3202 Don't activate/deactivate root control.
3203 (frame_highlight, frame_unhighlight): Activate/deactivate root
3204 control here.
3205 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3206
3207 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3208 New extern.
3209
3210 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3211
3212 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3213 (lisp): Use it.
3214 (SOME_MACHINE_LISP): Add tooltip.
3215
3216 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3217
3218 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3219 Don't include TextEncodingConverter.h.
3220 (mac_system_script_code, Vmac_system_locale): New variables.
3221 (syms_of_mac): Defvar them.
3222 (mac_get_system_locale): New function.
3223
3224 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3225 Use ENCODE_SYSTEM to encode title bar string.
3226 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3227 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3228 Use CFStringGetSystemEncoding to get system default string encoding.
3229
3230 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3231 TextEncodingConverter.h.
3232
3233 2005-04-13 Steven Tamm <steventamm@mac.com>
3234
3235 * macterm.c (syms_of_macterm): Remove redundant definition of
3236 mac-pass-control-to-system.
3237
3238 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3239
3240 * window.c (Fset_window_configuration): Be careful when you choose
3241 among several possible points for the new_current_buffer.
3242
3243 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3244
3245 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3246 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3247 (Qlanguage_change) [MAC_OS]: New variable.
3248 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3249 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3250
3251 * macterm.c (mac_keyboard_text_encoding)
3252 (current_mac_keyboard_text_encoding): Remove variables.
3253 (XTread_socket): Store language-change event if keyboard script change
3254 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3255 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3256
3257 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3258
3259 2005-04-10 Richard M. Stallman <rms@gnu.org>
3260
3261 * emacs.c (standard_args): Rename --bare-bones to --quick.
3262 Add -D aka --basic-display.
3263
3264 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3265
3266 2005-04-09 Richard M. Stallman <rms@gnu.org>
3267
3268 * keymap.c (where_is_internal): Convert a string used as event type
3269 into "(any string)".
3270
3271 * lread.c (Vloads_in_progress): Not static.
3272 * fns.c (Vloads_in_progress): Add extern.
3273 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3274
3275 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3276
3277 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3278
3279 2005-04-09 Lute Kamstra <lute@gnu.org>
3280
3281 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3282 within the accessible part of the buffer.
3283
3284 2005-04-09 Kim F. Storm <storm@cua.dk>
3285
3286 * lread.c (readevalloop): Add args START and END as region in
3287 current buffer to read. Callers changed.
3288 When specified, narrow to this region only when reading,
3289 not during eval. Track next point to read from during eval.
3290 Also restore point to "real" buffer position before eval.
3291 (Feval_region): Don't save excursion and restriction here, and
3292 don't narrow to region. Just pass region to readevalloop.
3293 Note: Point is now preserved even when PRINTFLAG is nil.
3294
3295 2005-04-08 Kim F. Storm <storm@cua.dk>
3296
3297 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3298
3299 2005-04-06 Kim F. Storm <storm@cua.dk>
3300
3301 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3302
3303 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3304
3305 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3306 (Fmac_get_preference): Doc fix.
3307
3308 * macfns.c (Fx_create_frame, x_create_tip_frame):
3309 Add "fontset-mac" to fallback font/fontsets.
3310
3311 2005-04-04 Kim F. Storm <storm@cua.dk>
3312
3313 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3314
3315 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3316 Call it again after autoload.
3317
3318 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3319
3320 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3321 mallopt.
3322
3323 * ralloc.c (r_alloc_init): Ditto.
3324
3325 2005-04-01 Kenichi Handa <handa@m17n.org>
3326
3327 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3328 (Vascii_eqv_table): Extern them.
3329
3330 * casetab.c (set_case_table): If standard is nonzero, setup
3331 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3332
3333 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3334 not DOWNCASE_TABLE.
3335 (string_match_1): Likewise.
3336 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3337 Vascii_downcase_table.
3338 (fast_string_match_ignore_case): Likewise.
3339 (search_buffer): Fix checking of boyer-moore usability.
3340 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3341 No need of tranlating characters in PAT. Fix calculation of
3342 simple_translate.
3343
3344 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3345
3346 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3347 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3348 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3349 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3350 really work and that breaks with some versions of Xaw3d.
3351
3352 2005-03-31 Kenichi Handa <handa@m17n.org>
3353
3354 * coding.c (syms_of_coding): Fix previous change.
3355
3356 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3357
3358 * fileio.c (search_embedded_absfilename): Fix last change.
3359
3360 2005-03-25 Kenichi Handa <handa@m17n.org>
3361
3362 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3363 the docstring of coding-category-list.
3364
3365 2005-03-31 Kim F. Storm <storm@cua.dk>
3366
3367 * keyboard.c (Qmouse_fixup_help_message): New var.
3368 (syms_of_keyboard): Intern and staticpro it.
3369 (show_help_echo): Apply mouse-fixup-help-message to help string.
3370
3371 2005-03-30 Kim F. Storm <storm@cua.dk>
3372
3373 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3374
3375 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3376
3377 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3378 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3379 (Ffile_name_absolute_p): Use it.
3380 (search_embedded_absfilename): New fun, extracted from
3381 Fsubstitute_in_file_name. Use file_name_absolute_p.
3382 Free the pw data after use.
3383 (Fsubstitute_in_file_name): Use it.
3384 After cutting a prefix, re-check file-name-handler.
3385
3386 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3387
3388 * w32term.h (x_output): Add focus_state.
3389
3390 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3391 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3392
3393 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3394
3395 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3396 Use Fexit_minibuffer.
3397 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3398
3399 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3400
3401 * dired.c (Ffile_attributes): Add a missing gcpro.
3402
3403 * alloc.c (make_number): The arg can be bigger than `int'.
3404 * lisp.h (make_number): Make prototype more precise.
3405
3406 * process.c, dired.c (Vfile_name_coding_system)
3407 (Vdefault_file_name_coding_system):
3408 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3409 (Vdefault_file_name_coding_system): Remove unused declarations.
3410
3411 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3412
3413 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3414 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3415 menus fail to pop up).
3416
3417 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3418
3419 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3420 Just prepend a backslash without replacing the NBSP by an SPC.
3421
3422 2005-03-22 Kim F. Storm <storm@cua.dk>
3423
3424 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3425 * dispextern.h (lookup_derived_face): Fix prototype.
3426 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3427
3428 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3429 right-fringe face from fringe face.
3430
3431 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3432 Derive face from fringe face.
3433
3434 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3435
3436 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3437
3438 2005-03-22 David Kastrup <dak@gnu.org>
3439
3440 * textprop.c (Fnext_char_property_change)
3441 (Fprevious_char_property_change): Allow marker as limit.
3442 (Fnext_single_char_property_change)
3443 (Fprevious_single_char_property_change): Check that limit is a
3444 number in strings.
3445 (Fnext_single_char_property_change): Coerce position to integer.
3446 (Fprevious_single_char_property_change): Same here.
3447
3448 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3449
3450 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3451
3452 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3453
3454 * frame.c (Fignore_event): Remove.
3455 (syms_of_frame): Don't defsubr it.
3456
3457 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3458 redundant `ignore-event'.
3459
3460 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3461
3462 * unexec.c (write_segment, unexec): Move these functions to avoid
3463 forward references (which cause errors with "gcc -gcoff").
3464
3465 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3466
3467 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3468 that it doesn't become "tooltip". The specbind is enough.
3469
3470 * xrdb.c (x_load_resources): Use different char *helv when I18N
3471 is present.
3472
3473 2005-03-17 Kenichi Handa <handa@m17n.org>
3474
3475 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3476
3477 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3478
3479 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3480 Use xic_create_fontsetname even for non-Motif menus.
3481 Don't forget to free the fontsetname.
3482
3483 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3484
3485 2005-03-17 Richard M. Stallman <rms@gnu.org>
3486
3487 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3488
3489 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3490 (Fmake_symbolic_link): Use G to read the new file name.
3491
3492 * callint.c (Finteractive): Document G option.
3493 (Fcall_interactively): Implement G option.
3494
3495 * buffer.c (buffer_lisp_local_variables): New function,
3496 broken out from Fbuffer_local_variables.
3497 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3498
3499 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3500
3501 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3502 Always return a freshly allocated string.
3503 (xic_create_xfontset): Adjust call.
3504
3505 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3506 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3507 (dump_realized_face): Fix warning.
3508
3509 * emacs.c (Fkill_emacs): YAILOM.
3510
3511 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3512
3513 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3514
3515 * mac.c (HASHKEY_TERMINAL): Remove.
3516 (HASHKEY_MAX_NID): New macro.
3517 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3518 argument.
3519 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3520 (xrm_create_database, xrm_q_put_resource)
3521 (xrm_merge_string_database, xrm_q_get_resource_1)
3522 (xrm_q_get_resource): Change resource database representation so
3523 that it may not use multiple hash tables for a single database.
3524 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3525
3526 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3527
3528 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3529
3530 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3531 locale-coding-system, as was already done for WINDOWSNT.
3532
3533 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3534 translation for chars in the 0-255 range.
3535
3536 2005-03-16 Lute Kamstra <lute@gnu.org>
3537
3538 * floatfns.c (Ffloor): Doc fix.
3539
3540 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3541
3542 * mac.c: Include macterm.h instead of directly including Carbon.h.
3543 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3544 (Qarray, Qdictionary): New variables.
3545 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3546 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3547 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3548 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3549 in callback for CFDictionaryApplyFunction.
3550 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3551 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3552 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3553 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3554 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3555 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3556 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3557 (skip_white_space, parse_comment, parse_include_file)
3558 (parse_binding, parse_component, parse_resource_name, parse_value)
3559 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3560 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3561 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3562 New functions.
3563
3564 * macfns.c (mac_get_rdb_resource): Remove function.
3565 (x_get_string_resource): Use xrm_get_resource.
3566
3567 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3568
3569 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3570 name_list_element.
3571 (mac_make_rdb): Create resource database from preferences and
3572 argument string.
3573 (mac_term_init): Save resource database to cddr part of
3574 name_list_element.
3575
3576 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3577 (xrm_get_preference_database): Add externs.
3578 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3579 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3580 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3581
3582 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3583 defined (DARWIN) || defined (MAC_OSX)'
3584
3585 * s/darwin.h (DARWIN): Don't define.
3586
3587 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3588
3589 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3590 Remove unused variables.
3591 (syms_of_macfns): Don't initialize them. Likewise for
3592 Qface_set_after_frame_default. Defvar and initialize
3593 Vx_window_horizontal_drag_shape.
3594 (x_set_mouse_color): Change mouse pointer shape.
3595 (mac_window) [!MAC_OSX]: Create root control.
3596 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3597 (hourglass_started): New function (from xfns.c).
3598 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3599 MAC_OSX.
3600 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3601 indicator for each non-tooltip frame if needed, and show it.
3602 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3603
3604 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3605 Controls.h. Use ThemeCursor instead of CursHandle.
3606
3607 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3608 Remove functions and declarations.
3609 (mac_set_colors): Take argument for saving background color.
3610 All callers changed.
3611 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3612 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3613 background color.
3614 (x_update_end, mac_do_track_drag): Don't reset background color.
3615 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3616 Use SetThemeCursor.
3617 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3618 indicator control to the upper-right corner of the window.
3619 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3620 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3621 (do_window_update): Update controls after updating content area.
3622 (mac_handle_window_event): Remove unused extern.
3623 (XTread_socket): Check both control handle and control part code
3624 to determine whether a scroll bar is clicked. Activate/deactivate
3625 root control instead of contained scroll bar controls.
3626 (make_mac_terminal_frame): Use ThemeCursor constants.
3627
3628 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3629 New member hourglass_control.
3630 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3631 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3632
3633 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3634
3635 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3636 coincides with that in Apple X11 except `clear', `enter' on
3637 laptops, and fn + `enter' on laptops.
3638
3639 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3640
3641 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3642 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3643 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3644
3645 * xfns.c (xic_defaut_fontset): New constant.
3646 (xic_create_fontsetname): New function.
3647 Extracted from create_frame_xic. Try to generate a slightly
3648 better fontset.
3649 (xic_create_xfontset): Use it.
3650 (create_frame_xic): Simplify.
3651
3652 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3653
3654 * fileio.c (Fmake_symbolic_link): Fix last change.
3655
3656 2005-03-11 Richard M. Stallman <rms@gnu.org>
3657
3658 * fileio.c (Frename_file, Fadd_name_to_file)
3659 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3660 expand the basename of FILE relative to it.
3661
3662 2005-03-11 Kenichi Handa <handa@m17n.org>
3663
3664 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3665 before calling setup_coding_system so that autoloading of a coding
3666 system work.
3667
3668 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3669
3670 * xfns.c (hourglass_started): New function.
3671
3672 * dispextern.h: Declare hourglass_started.
3673
3674 * keyboard.c (Fexecute_extended_command): Restart hourglass
3675 after call to Fcompleting_read if already started.
3676
3677 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3678 GTK main loop is entered in xterm.c, thus doing the redraw.
3679
3680 2005-03-10 Kim F. Storm <storm@cua.dk>
3681
3682 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3683
3684 2005-03-08 Kenichi Handa <handa@m17n.org>
3685
3686 * frame.c (x_set_font): Call set_default_ascii_font if an
3687 available font is found.
3688
3689 * fontset.c (set_default_ascii_font): New function.
3690 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3691
3692 * fontset.h (set_default_ascii_font): Extern it.
3693
3694 2005-03-07 Kim F. Storm <storm@cua.dk>
3695
3696 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3697 (clear_image_cache_count): New var.
3698 (redisplay_internal): Don't clear face and image caches in the
3699 middle of redisplay; do it afterwards.
3700
3701 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3702
3703 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3704 is valid. If not, clear phys_cursor_on_p and return.
3705
3706 2005-03-07 Andreas Schwab <schwab@suse.de>
3707
3708 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3709
3710 2005-03-06 Richard M. Stallman <rms@gnu.org>
3711
3712 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3713
3714 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3715 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3716
3717 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3718
3719 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3720 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3721
3722 2005-03-05 Juri Linkov <juri@jurta.org>
3723
3724 * emacs.c (USAGE1): Replace Info node name "command arguments"
3725 with "emacs invocation".
3726 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3727 allow arguments `--color' and `MODE' to be separated by space.
3728 Add --no-blinking-cursor, -nbc.
3729 (standard_args): Add -nbc, --no-blinking-cursor.
3730
3731 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3732
3733 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3734 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3735 * fileio.c (Fexpand_file_name) [VMS]:
3736 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3737 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3738 (Fsnarf_documentation): Call munge_doc_file_name.
3739
3740 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3741
3742 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3743 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3744 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3745
3746 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3747
3748 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3749 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3750
3751 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3752
3753 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3754 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3755 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3756 (mac_clear_font_name_table): Move extern to macterm.h.
3757
3758 * macfns.c (install_window_handler): Move extern to macterm.h.
3759 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3760 valid. Don't check !NILP (dir) because it is already checked with
3761 CHECK_STRING.
3762 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3763 specifying the default location and obtaining the selected filename.
3764
3765 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3766
3767 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3768 are included via Carbon.h.
3769
3770 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3771 Define USE_CARBON_EVENTS to 1.
3772 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3773 (x_free_frame_resources): Call remove_window_handler for
3774 non-tooltip windows.
3775 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3776 via Carbon.h.
3777 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3778 (mac_do_receive_dragUPP): New variables.
3779 (mac_handle_service_event, init_service_handler): Put declarations
3780 and definitions in #ifdef MAC_OSX.
3781 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3782 drag-and-drop handler functions and register them.
3783 (remove_window_handler): New function.
3784 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3785 Use fsspec_to_posix_pathname.
3786 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3787 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3788 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3789 Set default cursors.
3790 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3791 init_service_handler or init_quit_char_handler.
3792 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3793
3794 * macterm.h (install_window_handler, remove_window_handler)
3795 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3796 (mac_clear_font_name_table): New externs.
3797
3798 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3799
3800 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3801 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3802 (Fexpand_file_name): Likewise.
3803
3804 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3805
3806 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3807 no longer special-case VMS. Add bogus return value.
3808
3809 2005-03-02 Kim F. Storm <storm@cua.dk>
3810
3811 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3812 (xassert) [!XASSERTS]: Define dummy version.
3813
3814 2005-03-02 Kim F. Storm <storm@cua.dk>
3815
3816 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3817 Reported by David Kastrup.
3818
3819 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3820
3821 * xdisp.c (get_next_display_element): Fix control and escape
3822 glyph from display vector.
3823
3824 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3825
3826 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3827
3828 2005-02-27 Richard M. Stallman <rms@gnu.org>
3829
3830 * xdisp.c (fast_find_position): Rename END to BEG.
3831 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3832
3833 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3834
3835 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3836 gtk_window_resize and x_wm_set_size_hint.
3837
3838 2005-02-25 Kim F. Storm <storm@cua.dk>
3839
3840 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3841
3842 * xdisp.c (init_from_display_pos): Don't read past end of
3843 it->overlay_strings array.
3844
3845 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3846
3847 * buffer.c (syms_of_buffer): Fix typo.
3848
3849 2005-02-23 Lute Kamstra <lute@gnu.org>
3850
3851 * buffer.c (Foverlay_buffer): Doc fix.
3852
3853 2005-02-22 Kim F. Storm <storm@cua.dk>
3854
3855 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3856 and symbol keys in alists and hash tables.
3857
3858 * xdisp.c (fast_find_position): Fix search for start of overlay.
3859
3860 2005-02-21 Kim F. Storm <storm@cua.dk>
3861
3862 * window.c (window_scroll_pixel_based): When scrolling backwards,
3863 handle partial visible line at end of window even when we hit PT.
3864
3865 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3866
3867 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3868
3869 2005-02-21 Kim F. Storm <storm@cua.dk>
3870
3871 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3872 I think those asserts are bogus if buffer contains invisible text
3873 or images.
3874
3875 2005-02-21 David Kastrup <dak@gnu.org>
3876
3877 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3878
3879 2005-02-20 Kim F. Storm <storm@cua.dk>
3880
3881 * xdisp.c (pos_visible_p): Be sure to move to the specified
3882 position. Always get the full ascent / descent of the
3883 corresponding row, to return reliable rtop and rbot values.
3884 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3885 Must look one character back, as back_to_previous_line_start
3886 returns position after the newline.
3887 (move_it_vertically_backward): Fix heuristic for when to move further
3888 back in case line_height * 2/3 is larger than window height.
3889 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3890 as it does not do anything anymore. Add arg current_matrix_p to
3891 use current matrix rather than desired matrix when set.
3892 (try_cursor_movement): Don't scroll to make cursor row fully
3893 visible if cursor didn't move. This avoids unexpected recentering
3894 in case of blinking cursor or accepting process output.
3895 Use current matrix to check cursor row visibility.
3896 (redisplay_window): Fix whether to recenter or move to top in case
3897 cursor line is taller than window height.
3898 (find_first_unchanged_at_end_row): Stop search if we reach a row
3899 which not enabled (instead of abort).
3900
3901 2005-02-18 Kim F. Storm <storm@cua.dk>
3902
3903 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3904 to be nil in a :box attribute value list; customize prints that
3905 as lisp value when no box color is specified.
3906
3907 * .gdbinit (pitx, pit): Pretty print display iterator.
3908 (prowx, prow): Pretty print glyph row.
3909 (pcursorx, pcursor): Pretty print a window cursor.
3910 (pwinx, pwin): Pretty print struct window.
3911
3912 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3913
3914 * alloc.c (BLOCK_BYTES): Harmless typo.
3915
3916 2005-02-17 Andreas Schwab <schwab@suse.de>
3917
3918 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3919 of XGetWindowProperty to avoid aliasing issues.
3920 (Fx_window_property): Likewise.
3921
3922 * xselect.c (Fx_disown_selection_internal): Use union of struct
3923 input_event and struct selection_input_event to avoid aliasing issues.
3924
3925 * xterm.c (handle_one_xevent): Use union of struct input_event and
3926 struct selection_input_event to avoid aliasing issues.
3927 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3928
3929 2005-02-17 Kim F. Storm <storm@cua.dk>
3930
3931 * dispextern.h (enum it_method): New enum.
3932 (GET_FROM_*): Its members.
3933 (struct it): Change member method from function pointer to enum.
3934
3935 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3936 (setup_for_ellipsis, handle_single_display_spec)
3937 (handle_composition_prop, next_overlay_string)
3938 (get_overlay_strings, reseat_1, reseat_to_string)
3939 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3940 (in_display_vector_p, display_line, get_next_display_element):
3941 Change it->method from function pointer to enum.
3942 (get_next_element): New array to map it->method to function.
3943 (get_next_display_element): Use it.
3944 (set_iterator_to_next): Use switch instead of if/else chain.
3945
3946 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3947
3948 * w32select.c: Summary: Thorough rework to implement Unicode
3949 clipboard operations and delayed rendering.
3950
3951 Drop last_clipboard_text and related code, keep track of
3952 ownership via clipboard_owner instead. Drop old #if0 sections.
3953
3954 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3955 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3956 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3957 (current_coding_system, current_requires_encoding)
3958 (current_num_nls, current_clipboard_type, current_lcid):
3959 New static variables.
3960
3961 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3962 (render, render_all, run_protected, lisp_error_handler)
3963 (owner_callback, create_owner, setup_config)
3964 (enum_locale_callback, cp_from_locale, coding_from_cp):
3965 New local functions.
3966
3967 (term_w32select, globals_of_w32select): New global functions.
3968
3969 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3970 clipboard_owner instead. Use delayed rendering and provide
3971 all text formats. Provide CF_LOCALE if necessary.
3972
3973 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3974 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3975 available. Force DOS line-ends for decoding.
3976
3977 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3978
3979 (syms_of_w32select): Init and register new variables.
3980
3981 * w32.h: Add prototypes for globals_of_w32select and
3982 term_w32select. Make the neighboring K&R declarations into
3983 prototypes, too.
3984
3985 * emacs.c: Include w32.h to get function prototypes.
3986 (main): Call globals_of_w32select.
3987
3988 * w32.c (term_ntproc): Call term_w32select.
3989
3990 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3991
3992 2005-02-16 Kim F. Storm <storm@cua.dk>
3993
3994 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3995 at end of display vector.
3996
3997 2005-02-15 Richard M. Stallman <rms@gnu.org>
3998
3999 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4000 for mode and header lines.
4001
4002 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4003
4004 * keymap.h (describe_map_tree): Change decl.
4005
4006 * keyboard.c (command_loop_1): Always use safe_run_hooks
4007 to run Qdeferred_action_function.
4008
4009 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4010 (describe_map, describe_vector): Likewise. When it's 1,
4011 don't omit shadowed bindings, instead mark them as shadowed.
4012
4013 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4014 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4015
4016 * data.c (Fsetq_default): Allow no arg case.
4017
4018 2005-02-14 Kenichi Handa <handa@m17n.org>
4019
4020 * coding.c (encode_coding_string): Always return a unibyte string.
4021 If NOCOPY is nonzero and there's no need of encoding, make STR
4022 unibyte directly.
4023
4024 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4025 multibyte string, signal an error instead of aborting.
4026
4027 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4028
4029 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4030
4031 2005-02-12 Kim F. Storm <storm@cua.dk>
4032
4033 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4034
4035 2005-02-10 Kim F. Storm <storm@cua.dk>
4036
4037 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4038 if it moves outside window or it doesn't display text.
4039
4040 2005-02-09 Kim F. Storm <storm@cua.dk>
4041
4042 * undo.c (Fprimitive_undo): Check that undo function does not
4043 switch buffer.
4044
4045 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4046
4047 * xselect.c (selection_data_to_lisp_data): For the special case
4048 type == XA_ATOM, data contains array of int, not array of Atom.
4049 (x_property_data_to_lisp, selection_data_to_lisp_data):
4050 Comment update: data must be array of int for format == 32.
4051
4052 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4053
4054 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4055
4056 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4057
4058 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4059 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4060 convert long array returned from XGetWindowProperty to an int array.
4061 (x_set_tool_bar_lines): Check that width and height is greater than
4062 zero before clearing area.
4063
4064 * xselect.c (x_reply_selection_request): Pass long array to
4065 XChangeProperty so that 64 bit longs are handeled correctly.
4066 (x_get_window_property): If format is 32 and long is bigger than 32
4067 bits convert data from XGetWindowProperty from long array to int array.
4068 (lisp_data_to_selection_data): When the input is a vector and the
4069 format is 32, allocate a long array even if long is bigger than 32 bits.
4070 (x_fill_property_data): Use char, short and long as the man page
4071 for XChangeProperty specifies. This way the data returned is OK for
4072 both 32 and 64 bit machines.
4073 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4074 machines.
4075 (Fx_send_client_event): Undo change from 2005-02-05,
4076 x_fill_property_data now handles that case.
4077
4078 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4079 reason for the approach in the code.
4080
4081 2005-02-07 Kim F. Storm <storm@cua.dk>
4082
4083 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4084
4085 2005-02-06 Richard M. Stallman <rms@gnu.org>
4086
4087 * eval.c (Frun_hook_with_args)
4088 (Frun_hook_with_args_until_success)
4089 (Frun_hook_with_args_until_failure): Doc fixes.
4090
4091 2005-02-05 Andreas Schwab <schwab@suse.de>
4092
4093 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4094
4095 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4096
4097 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4098 the longs in a XClientMessageEvent correctly when long is 64 bits.
4099
4100 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4101
4102 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4103 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4104
4105 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4106
4107 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4108 events so the menu event comes after them. This is to prevent sit-for
4109 from exiting on buffered events directly after a menu selection,
4110 lisp code for Help => About Emacs uses sit-for.
4111
4112 * gtkutil.c (create_menus): Connect selection-done event instead of
4113 the deactivate event to deactivate_cb. This will make the last
4114 leave event come before the call to deactivate_cb, so the leave
4115 event does not make sit-for exit after a menu selection.
4116
4117 2005-02-03 Kim F. Storm <storm@cua.dk>
4118
4119 * dispnew.c (build_frame_matrix_from_leaf_window)
4120 [!GLYPH_DEBUG]: Fix xassert.
4121
4122 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4123
4124 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4125
4126 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4127
4128 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4129 the compiling OS version.
4130
4131 * macfns.c (x_create_tip_frame): Likewise.
4132
4133 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4134
4135 2005-02-03 Richard M. Stallman <rms@gnu.org>
4136
4137 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4138
4139 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4140
4141 * buffer.c (Fbury_buffer): Doc fix.
4142
4143 2005-02-02 Steven Tamm <steventamm@mac.com>
4144
4145 * macfns.c (unwind_create_frame): Fix compile error due to
4146 xassert being uncondition, but predicate is.
4147 * dispnew.c (update_window): Fix compile error due to
4148 xassert being uncondition, but predicate is.
4149
4150 2005-02-02 Miles Bader <miles@gnu.org>
4151
4152 * dispextern.h (xassert): Enable unconditionally.
4153
4154 2005-02-02 Kim F. Storm <storm@cua.dk>
4155
4156 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4157
4158 2005-02-02 Kenichi Handa <handa@m17n.org>
4159
4160 * casefiddle.c (casify_object): Enable changing characters of
4161 different byte length.
4162 (casify_region): Fix loop condition, args to replace_range_2, and
4163 update opoint_byte.
4164
4165 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4166
4167 2005-02-01 Kim F. Storm <storm@cua.dk>
4168
4169 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4170 stack before calling handle_display_prop.
4171
4172 2005-01-31 Kim F. Storm <storm@cua.dk>
4173
4174 * undo.c (Qapply): New lisp var.
4175 (syms_of_undo): Intern and staticpro it.
4176 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4177 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4178
4179 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4180
4181 2005-01-30 Jesper Harder <harder@phys.au.dk>
4182
4183 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4184 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4185
4186 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4187
4188 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4189 Increase value to 3 Meg.
4190
4191 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4192
4193 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4194 button events are not received otherwise.
4195
4196 2005-01-29 Richard M. Stallman <rms@gnu.org>
4197
4198 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4199
4200 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4201
4202 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4203
4204 * keymap.c (access_keymap): YAILOM.
4205
4206 2005-01-27 Kim F. Storm <storm@cua.dk>
4207
4208 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4209 phys cursor position and size for hollow cursor. Position is
4210 aligned with get_glyph_string_clip_rect and ensures that a hollow
4211 cursor is shown, even when the actual glyph is not visible.
4212
4213 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4214
4215 * xterm.c (x_clip_to_row): Ensure y >= 0.
4216 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4217
4218 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4219
4220 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4221
4222 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4223
4224 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4225
4226 2005-01-27 Kim F. Storm <storm@cua.dk>
4227
4228 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4229 glyph, even when row is only partially visible and actual cursor
4230 position is not visible.
4231
4232 2005-01-24 Richard M. Stallman <rms@gnu.org>
4233
4234 * xterm.c (x_error_quitter): No longer static, and moved after
4235 x_error_handler.
4236
4237 2005-01-24 Kim F. Storm <storm@cua.dk>
4238
4239 * xdisp.c (move_it_by_lines): If we move forward after going too
4240 far back, cancel move if end position is same as start position.
4241
4242 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4243
4244 * dispextern.h (struct glyph_string): New members clip_head and
4245 clip_tail.
4246
4247 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4248 region to the area between clip_head and clip_tail.
4249 (draw_glyphs): Record the area that need to be actually redrawn to
4250 the new variables clip_head and clip_tail when there are
4251 overhangs. Set values of these variables to the corresponding
4252 members in struct glyph_string. Refine x coordinates for
4253 notice_overwritten_cursor using clip_head and clip_tail.
4254
4255 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4256
4257 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4258 QDTextBounds.
4259 (x_draw_glyph_string): Don't fill the background of the successor
4260 of a glyph with a right overhang if the successor will draw a cursor.
4261 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4262 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4263
4264 2005-01-24 Kim F. Storm <storm@cua.dk>
4265
4266 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4267 direction if window height was smaller than next-screen-context-lines.
4268 Now always scroll at least one line in the requested direction.
4269 Ensure that we actually do scroll backwards when requested to do so.
4270
4271 * xdisp.c (redisplay_window): Only try to make cursor line fully
4272 visible once (to avoid redisplay loop).
4273
4274 2005-01-23 Kim F. Storm <storm@cua.dk>
4275
4276 * window.c (Fpos_visible_in_window_p): Simplify return value for
4277 partially visible rows.
4278 (window_scroll_pixel_based): Adapt to that change.
4279
4280 * window.c (window_scroll_pixel_based): Force moving to next line
4281 if scrolling doesn't move start point, e.g. if looking at tall image.
4282
4283 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4284 Clear last_height before calling line_bottom_y to get real height.
4285 Fix calculation of y.
4286
4287 2005-01-22 Steven Tamm <steventamm@mac.com>
4288
4289 * s/darwin.h: Removed PTY_ITERATION from here.
4290 (DARWIN): Define.
4291
4292 * process.c (init_process): Default process-connection-type to
4293 nil on darwin 6 or less, t if it is 7 or higher. This way the
4294 broken pty behavior is still allowed on darwin 6 for interactive
4295 processes for people that know what they are doing.
4296
4297 2005-01-22 Kim F. Storm <storm@cua.dk>
4298
4299 * window.c (auto_window_vscroll_p): New boolean.
4300 (syms_of_window): DEFVAR_BOOL it.
4301 (Fpos_visible_in_window_p): Extend return value to include RTOP
4302 and RBOT values if FULLY is nil.
4303 (window_scroll_pixel_based): Adjust vscroll for partially visible
4304 rows if auto_window_vscroll_p is set.
4305 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4306
4307 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4308 to return number of partially invisible pixels at top and bottom
4309 of the dislay row at POS.
4310
4311 * lisp.h (pos_visible_p): Fix prototype.
4312
4313 2005-01-21 Richard M. Stallman <rms@gnu.org>
4314
4315 * fileio.c (Fcopy_file): Doc fix.
4316
4317 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4318
4319 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4320 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4321 start of function for older compilers.
4322
4323 2005-01-20 Richard M. Stallman <rms@gnu.org>
4324
4325 * editfns.c (Fmessage): If arg is "", return "" (as before).
4326
4327 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4328
4329 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4330 variable.
4331
4332 2005-01-20 Steven Tamm <steventamm@mac.com>
4333
4334 * editfns.c (Voperating_system_release): Add.
4335 (init_editfns): Assign new variable operating-system-release
4336 based on call to uname if available.
4337 (get_operating_system_release): Add function to
4338 allow c-level access to operating system release.
4339
4340 * config.h: Regenerated.
4341
4342 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4343 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4344 using ptys as '7'.
4345
4346 2005-01-20 Kim F. Storm <storm@cua.dk>
4347
4348 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4349
4350 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4351 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4352
4353 * macterm.c (x_draw_glyph_string_box): Likewise.
4354
4355 * w32term.c (x_draw_glyph_string_box): Likewise.
4356
4357 * indent.c (Fvertical_motion): Temporarily disable selective display.
4358
4359 2005-01-19 Kim F. Storm <storm@cua.dk>
4360
4361 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4362 image property.
4363
4364 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4365
4366 2005-01-18 Kim F. Storm <storm@cua.dk>
4367
4368 * xdisp.c (fast_find_position): Backtrack to find first row if
4369 charpos is inside a display overlay that spans multiple lines.
4370
4371 2005-01-18 Kenichi Handa <handa@m17n.org>
4372
4373 * coding.c (decode_coding_iso2022): Translate invalid codes if
4374 translation-table is specified.
4375
4376 2005-01-18 Kim F. Storm <storm@cua.dk>
4377
4378 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4379 change. If handle_display_prop indicates newline is replaced by
4380 image or text, move back to start of relevant overlay or interval
4381 and continue scan from there. Simplify.
4382
4383 2005-01-17 Kim F. Storm <storm@cua.dk>
4384
4385 * dispnew.c (mode_line_string, marginal_area_string):
4386 Fix off-by-one error in search for glyph.
4387
4388 2005-01-16 Kim F. Storm <storm@cua.dk>
4389
4390 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4391
4392 2005-01-16 Steven Tamm <steventamm@mac.com>
4393
4394 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4395
4396 2005-01-16 Andreas Schwab <schwab@suse.de>
4397
4398 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4399
4400 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4401
4402 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4403 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4404
4405 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4406
4407 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4408 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4409 New flags for readable_events.
4410 (get_filtered_input_pending, readable_filtered_events): Remove.
4411 (tracking_off): Call readable_events and get_input_pending with
4412 flag READABLE_EVENTS_DO_TIMERS_NOW.
4413 (readable_events): Move code from old readable_filtered_events here,
4414 but check new READABLE_EVENTS_* in argument flags instead of previous
4415 two boolean arguments do_timers_now and filter_events.
4416 If we are doing mouse tracking and the mouse moved, return only if
4417 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4418 (swallow_events): Call get_input_pending with flag
4419 READABLE_EVENTS_DO_TIMERS_NOW.
4420 (get_input_pending): Move code from old get_filtered_input_pending
4421 here. Replace boolean arguments do_timers_now, filter_events with
4422 flags, and pass flags to readable_events. Document new
4423 READABLE_EVENTS_* flags.
4424 (detect_input_pending_ignore_squeezables): New function.
4425 (detect_input_pending_run_timers): Call get_input_pending with flag
4426 READABLE_EVENTS_DO_TIMERS_NOW.
4427 (Finput_pending_p): Call get_input_pending with flags
4428 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4429
4430 * dispnew.c (update_window, update_frame_1): Replace calls to
4431 detect_input_pending with detect_input_pending_ignore_squeezables
4432 so that redisplay is not paused if the event queue contains only
4433 mouse movements.
4434
4435 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4436
4437 2005-01-15 Steven Tamm <steventamm@mac.com>
4438
4439 * macterm.c (Vmac_use_core_graphics): Declare variable for
4440 mac-allow-anti-aliasing.
4441 (syms_of_macterm): DEFVAR_LISP and initialize it.
4442 (mac_draw_string_common): Use core graphics text rendering if
4443 mac-allow-anti-aliasing is enabled.
4444
4445 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4446 file name in the text box.
4447
4448 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4449
4450 * macfns.c (x_set_foreground_color, x_set_background_color):
4451 Sync with xfns.c.
4452 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4453 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4454 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4455
4456 2005-01-14 Kim F. Storm <storm@cua.dk>
4457
4458 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4459
4460 2005-01-13 Richard M. Stallman <rms@gnu.org>
4461
4462 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4463 if Voverriding_terminal_local_map is non-nil.
4464
4465 * keyboard.c (syms_of_keyboard): Doc fix.
4466
4467 2005-01-13 Kim F. Storm <storm@cua.dk>
4468
4469 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4470 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4471
4472 2005-01-12 Richard M. Stallman <rms@gnu.org>
4473
4474 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4475 face property for characters that don't specify one.
4476
4477 * fns.c (Frequire): Record in load-history unconditionally.
4478
4479 2005-01-10 Kim F. Storm <storm@cua.dk>
4480
4481 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4482
4483 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4484 Callers changed.
4485 Add support to merge with lisp face id too (if face_name is t).
4486
4487 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4488 Don't lookup lface_id from display table glyphs here; instead use
4489 merge_faces to merge the lisp face id into current face.
4490
4491 2005-01-09 Kim F. Storm <storm@cua.dk>
4492
4493 * dispextern.h (struct it): New member dpvec_face_id.
4494 (merge_into_realized_face): Add prototype.
4495
4496 * xfaces.c (merge_into_realized_face): New function. Used to
4497 merge escape-glyph face or face from display table into current face.
4498
4499 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4500 (syms_of_xdisp): DEFVAR_LISP it.
4501 (escape_glyph_face): Remove var.
4502 (redisplay_window): Don't initialize it.
4503 (setup_for_ellipsis, get_next_display_element):
4504 Set it->dpvec_face_id to -1.
4505 (get_next_display_element): Test Vshow_nonbreak_escape.
4506 Do not setup escape_glyph_face.
4507 Properly merge escape-glyph face or face from display table with
4508 current face for escape and control characters.
4509 Set it->dpvec_face_id to relevant face id instead of adding it to each
4510 element of display vector.
4511 (next_element_from_display_vector): If it->dpvec_face_id is set,
4512 use that instead of lface_id from glyph itself.
4513
4514 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4515
4516 * xterm.h (struct x_output): New member, toolbar_detached.
4517
4518 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4519 38.
4520 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4521 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4522 (xg_create_tool_bar): Initialize toolbar_detached.
4523 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4524 toolbar_detached is zero.
4525
4526 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4527
4528 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4529 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4530
4531 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4532 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4533 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4534
4535 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4536 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4537 XFLOAT_DATA to get extract number from Lisp object.
4538
4539 2005-01-07 Kim F. Storm <storm@cua.dk>
4540
4541 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4542 Set stop_charpos to current charpos instead of 0.
4543
4544 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4545
4546 * xdisp.c (Fformat_mode_line): First arg now required.
4547
4548 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4549
4550 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4551 font widths that are returned from some Japanese fonts.
4552
4553 2005-01-06 Kim F. Storm <storm@cua.dk>
4554
4555 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4556 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4557 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4558 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4559 fringe_faces array and init elements to nil.
4560 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4561 non-persistent face id.
4562 (mark_fringe_data): New function for GC.
4563
4564 * alloc.c (mark_fringe_data): Declare extern.
4565 (Fgarbage_collect): Call mark_fringe_data.
4566
4567 * alloc.c (overrun_check_free): Invalidate freed memory if
4568 XMALLOC_CLEAR_FREE_MEMORY is defined.
4569
4570 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4571
4572 * macfns.c: Include sys/param.h.
4573 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4574 and function.
4575 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4576 of filename string. Set event callback function when creating
4577 dialog boxes. Add code conversions for filenames. Don't dispose
4578 of apple event descriptor record if failed to create it.
4579
4580 * macterm.c: Include sys/param.h.
4581 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4582 kEventWindowUpdate.
4583 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4584 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4585 of FSSpec from apple event descriptor record.
4586 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4587 size of filename string.
4588 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4589 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4590 file dialog is in action.
4591 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4592 Reject only when there are no filename items. Set background color
4593 before (un)highlighting the window below the dragged items.
4594 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4595
4596 2005-01-05 Romain Francoise <romain@orebokech.com>
4597
4598 * term.c (encode_terminal_code): Fix buffer size computation.
4599
4600 2005-01-04 Richard M. Stallman <rms@gnu.org>
4601
4602 * xdisp.c (Fformat_mode_line): Doc fix.
4603
4604 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4605
4606 * alloc.c (refill_memory_reserve): Move.
4607 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4608 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4609
4610 2005-01-03 Richard M. Stallman <rms@gnu.org>
4611
4612 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4613 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4614
4615 2005-01-03 Jason Rumney <jasonr@gnu.org>
4616
4617 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4618 fontp->space_width to FONT_WIDTH so they are valid.
4619
4620 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4621 average width. Set fontp->average_width and fontp->space_width to
4622 their appropriate values.
4623
4624 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4625 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4626 fontp->space_width.
4627
4628 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4629
4630 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4631 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4632 metrics for max and min bounds.
4633 (x_load_font): Correctly calculate average font width metrics.
4634
4635 2005-01-02 Richard M. Stallman <rms@gnu.org>
4636
4637 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4638
4639 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4640
4641 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4642
4643 2004-12-31 Richard M. Stallman <rms@gnu.org>
4644
4645 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4646 Set it->ellipsis_p to 1 or 0.
4647 (display_line): Record whether row ends in mid-ellipsis.
4648 (set_cursor_from_row): If ends in ellipsis, find start of it.
4649 (cursor_row_p): If PT's at the end of the ellipsis the row
4650 ends within, don't display cursor on this row.
4651
4652 * dispextern.h (struct it): New element ellipsis_p.
4653 (struct glyph_row): New element ends_in_ellipsis_p.
4654
4655 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4656 position if we're reading from something other than the buffer.
4657
4658 * window.c (window_scroll_pixel_based): Only look at
4659 Vscroll_preserve_screen_position if the old PT can't be kept.
4660 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4661
4662 2004-12-30 Kim F. Storm <storm@cua.dk>
4663
4664 * xdisp.c (get_line_height_property): New function extracted from
4665 original calc_line_height_property.
4666 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4667 (x_produce_glyphs): Use them to handle line-height and
4668 line-spacing according to new height spec.
4669 (Qtotal): Remove.
4670 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4671
4672 2004-12-30 Kenichi Handa <handa@m17n.org>
4673
4674 * fileio.c (Finsert_file_contents): Don't use
4675 current_buffer->buffer_file_coding_system even if REPLACE is
4676 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4677
4678 * fontset.h (struct font_info): New members space_width and
4679 average_width.
4680
4681 * frame.h (struct frame): New member space_width.
4682 (FRAME_SPACE_WIDTH): New macro.
4683
4684 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4685
4686 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4687 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4688 fontp->space_width.
4689 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4690 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4691
4692 * xdisp.c (x_produce_glyphs): Calculate tab width by
4693 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4694
4695 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4696
4697 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4698 (do_ae_open_documents): Handle Xcode-style file position open events.
4699
4700 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4701
4702 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4703
4704 2004-12-29 Richard M. Stallman <rms@gnu.org>
4705
4706 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4707
4708 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4709
4710 * macfns.c (install_window_handler): Modify extern to return OSErr
4711 value.
4712 (mac_window): Handle return value of install_window_handler.
4713
4714 * macterm.c (reflect_byte): Remove function.
4715 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4716 Lookup table instead.
4717 (mac_do_font_lists): Simplify calculation of the longest
4718 nonspecial string.
4719 (init_mac_drag_n_drop): Remove function and declaration.
4720 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4721 init_mac_drag_n_drop.
4722 (mac_do_track_drag): New function and declaration.
4723 (install_window_handler): Return OSErr value.
4724 (install_window_handler) [TARGET_API_MAC_CARBON]:
4725 Register handlers for tracking/receiving drag-and-drop items.
4726 (do_ae_open_documents): Generate unibyte strings for filenames.
4727 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4728 Reject only non-filename items. Set event modifiers, and return value.
4729
4730 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4731
4732 * coding.c (decode_coding): Fix previous change.
4733
4734 2004-12-28 Richard M. Stallman <rms@gnu.org>
4735
4736 * xdisp.c (back_to_previous_visible_line_start):
4737 Don't call handle_display_prop.
4738
4739 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4740
4741 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4742 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4743 (decode_coding_iso2022, encode_designation_at_bol)
4744 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4745 (decode_coding): Constify arguments and local vars.
4746
4747 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4748
4749 * xmenu.c (popup_get_selection): Only pop down dialogs
4750 on C-g and Escape.
4751 (popup_get_selection): Remove parameter down_on_keypress.
4752 (create_and_show_popup_menu, create_and_show_dialog):
4753 Remove parameter down_on_keypress to popup_get_selection.
4754
4755 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4756
4757 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4758 (struct glyph_string): Likewise.
4759
4760 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4761 mac_initialize.
4762
4763 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4764 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4765
4766 * fns.c (vector): Change MAC_OSX to MAC_OS.
4767
4768 * frame.c (x_set_frame_parameters, x_report_frame_params)
4769 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4770 (x_set_border_width, Vdefault_frame_scroll_bars):
4771 Change HAVE_CARBON to MAC_OS.
4772
4773 * image.c [MAC_OS]: Include sys/stat.h.
4774 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4775 QuickTimeComponents.h.
4776
4777 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4778 [!MAC_OSX] (select): Use mac_wait_next_event.
4779 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4780 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4781 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4782 (mac_clear_font_name_table): Add extern.
4783 (Fmac_clear_font_name_table): New defun.
4784 (syms_of_mac): Defsubr it.
4785 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4786 [MAC_OSX] (select_and_poll_event): New function.
4787 [MAC_OSX] (sys_select): Use it.
4788 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4789 [MAC_OSX && SELECT_USE_CFSOCKET]
4790 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4791 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4792 RunLoop for simultaneously monitoring two kinds of inputs, window
4793 events and process outputs, without periodically polling.
4794
4795 * macfns.c (mac_initialized): Remove extern.
4796 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4797 xfaces.c.
4798 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4799 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4800 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4801 (mac_get_rdb_resource): New function (from w32reg.c).
4802 (x_get_string_resource): Use it.
4803 (install_window_handler): Add extern.
4804 (mac_window): New function.
4805 (Fx_create_frame): Use it instead of make_mac_frame.
4806 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4807 (Fx_open_connection, Fx_close_connection): New defuns.
4808 (syms_of_macfns): Defsubr them.
4809 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4810 Add kWindowNoUpdatesAttribute to the window attribute.
4811 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4812 (x_create_tip_frame): Don't call ShowWindow.
4813 (Fx_show_tip): Call ShowWindow.
4814 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4815 TARGET_API_MAC_CARBON'.
4816 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4817 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4818
4819 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4820 (Window): Typedef to WindowPtr and move outside `#if
4821 TARGET_API_MAC_CARBON'.
4822 (XSizeHints): New struct.
4823
4824 * macterm.c (x_update_begin, x_update_end)
4825 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4826 frame.
4827 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4828 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4829 (construct_mouse_click): Put in #if 0.
4830 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4831 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4832 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4833 (activate_scroll_bars, deactivate_scroll_bars)
4834 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4835 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4836 if the position is neither user-specified nor program-specified.
4837 (x_free_frame_resources): Free size_hints.
4838 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4839 (mac_clear_font_name_table): New function.
4840 (mac_do_list_fonts): Initialize font_name_table if needed.
4841 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4842 around mac_do_list_fonts.
4843 (mac_unload_font): New function.
4844 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4845 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4846 and definitions with #if TARGET_API_MAC_CARBON.
4847 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4848 (install_window_handler): Add decl.
4849 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4850 window. Use UpdateControls. Get the rectangle that should be
4851 updated and restrict the target of expose_frame to it.
4852 (do_grow_window): Set minimum height/width according to size_hints.
4853 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4854 (do_zoom_window): Don't use x_set_window_size.
4855 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4856 (install_window_handler): New function.
4857 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4858 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4859 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4860 GetEventDispatcherTarget inside BLOCK_INPUT.
4861 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4862 Update mouse_region when mouse is moved.
4863 (make_mac_frame): Remove.
4864 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4865 Initialize mouse pointer shapes. Change values of f->left_pos and
4866 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4867 Don't call ShowWindow.
4868 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4869 Vinvocation_name and Vsystem_name.
4870 (mac_make_rdb): New function (from w32term.c).
4871 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4872 already been opened. Don't pass argument to
4873 mac_initialize_display_info. Don't set dpyinfo->height/width.
4874 Add entries to x_display_list and x_display_name_list.
4875 (x_delete_display): New function.
4876 (mac_initialize): Don't call mac_initialize_display_info.
4877 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4878
4879 * macterm.h (check_mac): Add extern.
4880 (struct mac_output): New member size_hints.
4881 (FRAME_SIZE_HINTS): New macro.
4882 (mac_unload_font): Add extern.
4883
4884 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4885
4886 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4887
4888 2004-12-27 Richard M. Stallman <rms@gnu.org>
4889
4890 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4891 (syms_of_buffer): Don't defsubr it.
4892
4893 * process.c (list_processes_1): Set undo_list instead
4894 of calling Fbuffer_disable_undo.
4895
4896 * xdisp.c (single_display_spec_string_p): Rename from
4897 single_display_prop_string_p.
4898 (single_display_spec_intangible_p): Rename from
4899 single_display_prop_intangible_p.
4900 (handle_single_display_spec): Rename from handle_single_display_prop.
4901 Rewritten to be easier to understand.
4902
4903 Change in load-history format. Functions now get (defun . NAME),
4904 and variables get just NAME.
4905
4906 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4907
4908 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4909 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4910 (Qdefvar): Var deleted.
4911 (syms_of_eval): Don't initialze it.
4912
4913 * lread.c (syms_of_lread) <load-history>: Doc fix.
4914
4915 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4916
4917 * xmenu.c (popup_get_selection): Pop down on C-g.
4918 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4919 pops down menu on C-g.
4920 (xdialog_show): If dialog popped down and no button in the dialog was
4921 pushed, call Fsignal to quit.
4922 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4923 Fsignal to quit.
4924
4925 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4926
4927 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4928 dialogs and menus pop down.
4929
4930 2004-12-27 Kenichi Handa <handa@m17n.org>
4931
4932 * coding.c (code_convert_region): Fix calculation of `ratio'.
4933
4934 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4935
4936 * gtkutil.c (update_frame_tool_bar): Make the value of
4937 tool-bar-button-margin control margins of images in tool bar.
4938
4939 * alloc.c (check_depth): New variable.
4940 (overrun_check_malloc, overrun_check_realloc): Only add
4941 overhead and write check pattern if check_depth is 1 (to handle
4942 recursive calls). Increase/decrease check_depth in entry/exit.
4943 (overrun_check_free): Only check for overhead if check_depth is 1.
4944 Increase/decrease check_depth in entry/exit.
4945
4946 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4947
4948 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4949 before touching input_available_clear_time, to avoid accessing it
4950 from multiple threads.
4951
4952 2004-12-23 Jason Rumney <jasonr@gnu.org>
4953
4954 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4955 of JPEG library.
4956
4957 2004-12-22 Richard M. Stallman <rms@gnu.org>
4958
4959 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4960
4961 * lisp.h (Vundo_outer_limit): Fix decl.
4962
4963 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4964 Uses changed.
4965 (syms_of_undo): Initialize appropriately.
4966 (truncate_undo_list): If it's nil, there's no limit.
4967
4968 2004-12-22 Kenichi Handa <handa@m17n.org>
4969
4970 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4971
4972 2004-12-21 Richard M. Stallman <rms@gnu.org>
4973
4974 * eval.c (unwind_to_catch): Clear immediate_quit.
4975
4976 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4977 specially as `\ ' and `\-'.
4978
4979 * keyboard.c (kbd_buffer_store_event_hold):
4980 In the code for while-no-input, handle immediate_quit.
4981
4982 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4983 Call that at the very start.
4984 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4985 (syms_of_alloc): Don't define undo-limit,
4986 undo-strong-limit and undo-outer-limit here.
4987
4988 * undo.c (truncate_undo_list): Return void.
4989 Take just one argument, the buffer.
4990 Make it current, and inhibit recursive GC.
4991 Access and update the undo list directly; return void.
4992 Refer to the undo...limit variables directly.
4993 Test undo_outer_limit only after counting the whole current command.
4994 When it's exceeded, call the function in undo-outer-limit-function.
4995 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4996 (Vundo_outer_limit_function): New variable.
4997 (syms_of_undo): Define undo-limit, undo-strong-limit
4998 and undo-outer-limit here, and undo-outer-limit-function.
4999 Doc fixes.
5000
5001 * lisp.h (truncate_undo_list): Update decl.
5002
5003 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5004
5005 * fileio.c (Fread_file_name): Delete duplicates in
5006 file-name-history when history_delete_duplicates is true.
5007
5008 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5009
5010 * macterm.c (mac_do_list_fonts): Fix memory leak
5011
5012 2004-12-20 Richard M. Stallman <rms@gnu.org>
5013
5014 * regex.c (re_match_2_internal) <symend, wordend>:
5015 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5016
5017 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5018
5019 * macterm.c (endif, x_font_name_to_mac_font_name):
5020 Use maccentraleurroman instead of maccentraleuropean
5021 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5022 quickly finding a specific font without needing regexps.
5023
5024 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5025
5026 * syssignal.h: Declare main_thread.
5027 (SIGNAL_THREAD_CHECK): New macro.
5028
5029 * keyboard.c (input_available_signal): Move thread checking code
5030 to macro SIGNAL_THREAD_CHECK and call that macro.
5031 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5032
5033 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5034
5035 * emacs.c: Define main_thread.
5036 (main): Initialize main_thread.
5037 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5038 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5039
5040 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5041
5042 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5043
5044 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5045
5046 * process.c (send_process_trap, sigchld_handler):
5047 Call SIGNAL_THREAD_CHECK.
5048
5049 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5050
5051 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5052
5053 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5054 returning when xg_ignore_gtk_scrollbar is true.
5055
5056 2004-12-14 Kim F. Storm <storm@cua.dk>
5057
5058 * keyboard.c (read_char): Save and restore echo_string when
5059 handling input method.
5060
5061 2004-12-13 Richard M. Stallman <rms@gnu.org>
5062
5063 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5064
5065 * keyboard.c (Vthrow_on_input): New variable.
5066 (syms_of_keyboard): Defvar and initialize it.
5067 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5068
5069 * lisp.h (QUIT): Check for Vthrow_on_input.
5070 (Vthrow_on_input): Declare it.
5071
5072 2004-12-13 Kim F. Storm <storm@cua.dk>
5073
5074 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5075 vector.
5076
5077 2004-12-12 Richard M. Stallman <rms@gnu.org>
5078
5079 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5080
5081 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5082 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5083
5084 2004-12-12 Kenichi Handa <handa@m17n.org>
5085
5086 * term.c (encode_terminal_code): Fix previous change.
5087
5088 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5089
5090 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5091 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5092
5093 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5094 in macro arguments.
5095
5096 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5097 XFASTINT blindly.
5098
5099 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5100
5101 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5102
5103 * w32term.c (x_calc_absolute_position): Remove calculation of
5104 difference between inner and outer window. Don't subtract difference
5105 for left and top calculations.
5106
5107 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5108 for left and top calculations. Remove call to x_real_positions.
5109 [Bug report by Drew Adams in November]
5110 (x_check_expected_move): Do not set change_gravity to 1 when calling
5111 x_set_offset.
5112
5113 2004-12-08 Richard M. Stallman <rms@gnu.org>
5114
5115 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5116 control chars and escaped octal codes.
5117 (Qescape_glyph): New variable.
5118 (syms_of_xdisp): Initialize it.
5119 (escape_glyph_face): New variable.
5120 (redisplay_window): Initialize it.
5121
5122 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5123
5124 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5125 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5126
5127 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5128
5129 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5130 reset_malloc_hooks.
5131
5132 * keyboard.c (handle_async_input, input_available_signal):
5133 Add ! defined (SYSTEM_MALLOC) around thread code.
5134
5135 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5136
5137 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5138
5139 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5140
5141 * config.in: Regenerate.
5142
5143 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5144
5145 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5146 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5147 if not given by a mouse click to correspond with x-popup-menu
5148 documentation.
5149
5150 * config.in: Regenerate.
5151
5152 * gtkutil.c: Include signal.h and syssignal.h.
5153 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5154
5155 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5156 new variables main_thread and alloc_mutex,
5157 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5158 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5159 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5160 (UN)BLOCK_INPUT.
5161 (emacs_blocked_free, emacs_blocked_malloc)
5162 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5163 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5164 (reset_malloc_hooks): New function.
5165
5166 * lisp.h: Declare reset_malloc_hooks.
5167
5168 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5169
5170 * keyboard.c: Conditionally include pthread.h
5171 (handle_async_input, input_available_signalt): If not in the main
5172 thread, block signal, send signal to main thread and return.
5173
5174 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5175 Set current folder in file chooser if default_filename is a directory.
5176
5177 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5178
5179 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5180 Remove redundant correctness checks.
5181 (regex_compile): Fix up error codes for \{..\} expressions.
5182
5183 2004-12-05 Richard M. Stallman <rms@gnu.org>
5184
5185 * regex.c (regex_compile): Fix end-of-pattern case for space.
5186
5187 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5188
5189 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5190 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5191 crashes with invalid characters.
5192 * macmenu.c (add_menu_item): Use it.
5193 * image.c (image_load_quartz2d): Likewise.
5194 * macfns.c (x_set_name, x_set_title): Likewise.
5195 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5196 creating them each time for labels.
5197
5198 2004-12-02 Richard M. Stallman <rms@gnu.org>
5199
5200 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5201 don't use it here.
5202
5203 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5204 (interactive_p): Skip Scalled_interactively_p frames
5205 like Sinteractive_p frames.
5206 (unwind_to_catch): Clear handling_signal.
5207
5208 * data.c (Fmake_variable_buffer_local): Doc fix.
5209 (Fmake_local_variable): Doc fix.
5210
5211 * insdel.c (insert_from_string_before_markers)
5212 (insert_from_string): Don't modify buffer on empty insertion.
5213
5214 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5215
5216 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5217
5218 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5219 menu text as UTF8 fails.
5220
5221 2004-12-01 Kim F. Storm <storm@cua.dk>
5222
5223 * alloc.c: Add commentary for last change.
5224 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5225 sizeof(size_t) != 4.
5226 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5227 Use them. Also clear header and trailer of freed memory.
5228 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5229 (string_overrun_cookie): Rename from string_overrun_pattern.
5230 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5231
5232 2004-12-01 Andreas Schwab <schwab@suse.de>
5233
5234 * lisp.h: Declare string_to_multibyte.
5235
5236 2004-12-01 Kenichi Handa <handa@m17n.org>
5237
5238 * w32console.c (w32con_write_glyphs): Decide coding here.
5239 Adjusted for the change of encode_terminal_code.
5240
5241 * term.c (encode_terminal_code): Don't make it "static".
5242
5243 2004-11-30 Kenichi Handa <handa@m17n.org>
5244
5245 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5246 (encode_terminal_code): Argument changed. Encode all
5247 characters at once, and return a pointer to the result of encoding.
5248 (write_glyphs): Decide coding here. Adjusted for the above change.
5249 (insert_glyphs): Likewise.
5250 (term_init): Initialize encode_terminal_bufsize to 0.
5251
5252 * coding.c (Vcode_conversion_workbuf_name): New variable.
5253 (syms_of_coding): Initialize and staticpro it.
5254 (set_conversion_work_buffer): New function.
5255 (run_pre_post_conversion_on_str): Use it.
5256 (run_pre_write_conversin_on_c_str): New function.
5257
5258 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5259
5260 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5261
5262 * keyboard.c: Don't undef SIGIO
5263 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5264 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5265 (macfns.o): Don't depend on ccl.h.
5266 * macfns.c (mac_frame_parm_handlers): Set handlers for
5267 Qleft_fringe and Qright_fringe.
5268 * macterm.c (mac_fill_rectangle_to_pixmap)
5269 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5270 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5271 Put in #if 0.
5272 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5273 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5274 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5275 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5276 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5277 XDrawImageString. Always draw background and foreground separately.
5278 (x_draw_image_foreground): Use clipping instead of computing the
5279 intersection rectangle.
5280 (x_draw_image_glyph_string): Don't draw an image with mask to a
5281 pixmap.
5282 (x_redisplay_interface): Set flush_display_optional member to 0.
5283 (XTread_socket): Correctly reset the TEConverter
5284 object.
5285
5286 2004-11-30 Kim F. Storm <storm@cua.dk>
5287
5288 * lisp.h: New defines to enable buffer overrun checking.
5289 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5290 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5291
5292 * alloc.c: Add more checks for buffer overruns.
5293 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5294 xmalloc_overrun_check_trailer, overrun_check_malloc)
5295 overrun_check_realloc, overrun_check_free): Add.
5296 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5297 (check_sblock, allocate_string_data, compact_small_strings):
5298 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5299 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5300 (check_string_free_list): Add.
5301 (allocate_string, sweep_strings): Call check_string_free_list.
5302
5303 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5304 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5305
5306 2004-11-29 Kim F. Storm <storm@cua.dk>
5307
5308 * fns.c (concat): Use SAFE_ALLOCA.
5309
5310 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5311
5312 * sysdep.c (emacs_write): Don't use QUIT.
5313
5314 2004-11-29 Kenichi Handa <handa@m17n.org>
5315
5316 * buffer.c (init_buffer): Set current_buffer->directory to a
5317 multibyte string made by string_to_multibyte.
5318
5319 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5320
5321 2004-11-27 Andreas Schwab <schwab@suse.de>
5322
5323 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5324
5325 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5326 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5327
5328 * filelock.c (lock_file_1): Call get_boot_time early.
5329 Increase buffer size.
5330
5331 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5332
5333 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5334 is not defined.
5335
5336 2004-11-27 Kim F. Storm <storm@cua.dk>
5337
5338 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5339 marker out of doc string.
5340
5341 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5342
5343 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5344 which was not mentioned in the log.
5345
5346 2004-11-26 Kim F. Storm <storm@cua.dk>
5347
5348 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5349 angle bitmaps at top/bottom line.
5350
5351 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5352 set it when it->method is set to next_element_from_display_vector.
5353 (setup_for_ellipsis): Add LEN argument. Callers changed.
5354 Set it->saved_face_id.
5355 (get_next_display_element): Use loop instead of recursion.
5356 Set it->saved_face_id. Combine duplicate code for ctr chars.
5357 (next_element_from_display_vector): Do not set it->saved_face_id.
5358 (next_element_from_ellipsis): Use setup_for_ellipsis.
5359
5360 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5361
5362 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5363 prevent compiler warnings.
5364
5365 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5366
5367 * keyboard.c (command_loop_1): Print a message describing the key
5368 the user just pressed when this key has no binding.
5369
5370 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5371 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5372
5373 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5374
5375 2004-11-24 Richard M. Stallman <rms@gnu.org>
5376
5377 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5378
5379 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5380
5381 2004-11-24 Kim F. Storm <storm@cua.dk>
5382
5383 * xdisp.c (move_it_in_display_line_to, display_line):
5384 Restore saved_face_id also when truncate-lines or hscrolled.
5385
5386 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5387
5388 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5389 x-use-old-gtk-file-dialog.
5390
5391 * xfns.c: Define x_use_old_gtk_file_dialog.
5392 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5393 outside ifdef USE_GTK.
5394
5395 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5396
5397 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5398 Don't use XFASTINT blindly.
5399
5400 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5401
5402 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5403 in macro arguments.
5404
5405 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5406
5407 * lread.c (oblookup): Don't use XFASTINT blindly.
5408
5409 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5410 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5411
5412 2004-11-23 Kim F. Storm <storm@cua.dk>
5413
5414 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5415 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5416
5417 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5418 signal_p is zero and face name is unknown.
5419 (Fx_list_fonts): Don't signal error in lookup_named_face.
5420 (Fface_font): Signal error in lookup_named_face.
5421 (ascii_face_of_lisp_face): Likewise.
5422
5423 * dispextern.h (lookup_named_face): Fix prototype.
5424
5425 * xdisp.c (handle_single_display_prop): Don't signal error in
5426 lookup_named_face for unknown fringe face name.
5427 (highlight_trailing_whitespace): Don't signal error in
5428 lookup_named_face if trailing-whitespace face unknown.
5429 (calc_line_height_property): Don't signal error in
5430 lookup_named_face if specified face name is unknown.
5431
5432 * fringe.c (update_window_fringes): Show top row indicator if
5433 window has header-line. Don't show arrow at bob and eob
5434 if the boundary indicators are not used.
5435 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5436
5437 * window.c (set_window_buffer): Clear display_error_modiff.
5438
5439 2004-11-22 Kim F. Storm <storm@cua.dk>
5440
5441 * fringe.c (update_window_fringes): Provide sensible fall-back
5442 value for non-nil indicate-buffer-boundaries setting.
5443
5444 2004-11-22 Markus Rost <rost@ias.edu>
5445
5446 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5447
5448 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5449
5450 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5451
5452 2004-11-21 Kim F. Storm <storm@cua.dk>
5453
5454 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5455
5456 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5457 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5458
5459 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5460 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5461
5462 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5463 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5464
5465 * xdisp.c (move_it_in_display_line_to, display_line):
5466 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5467 line is continued before or in middle of element from display vector.
5468
5469 * indent.c (Fvertical_motion): Fix last change. Use another
5470 method to detect if iterator moved too far ahead after reseat.
5471
5472 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5473 expand matrix width for overflow in zero-width area.
5474 (append_glyph, append_composite_glyph, produce_image_glyph)
5475 (append_stretch_glyph): Use it to avoid loop in redisplay.
5476 (note_mode_line_or_margin_highlight): Don't let help-echo from
5477 string override help-echo from image map.
5478
5479 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5480
5481 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5482 * callint.c (Fcall_interactively): Ditto.
5483
5484 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5485
5486 * minibuf.c (Fminibuffer_complete_and_exit):
5487 Fixup the case of the completed value, for case-indep completion.
5488
5489 2004-11-20 Richard M. Stallman <rms@gnu.org>
5490
5491 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5492
5493 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5494 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5495
5496 * search.c (Vsearch_spaces_regexp):
5497 Rename from Vsearch_whitespace_regexp. All uses changed.
5498
5499 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5500
5501 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5502
5503 2004-11-19 Richard M. Stallman <rms@gnu.org>
5504
5505 * search.c (Vsearch_whitespace_regexp): New variable.
5506 (syms_of_search): Defvar it.
5507 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5508 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5509 is non-nil.
5510 (struct regexp_cache): New element whitespace_regexp.
5511 (syms_of_search): Initialize whitespace_regexp elements.
5512 (compile_pattern): Compare whitespace_regexp elements.
5513 (compile_pattern_1): Set whitespace_regexp elements.
5514
5515 * regex.c (regex_compile): Substitute whitespace_regexp
5516 for spaces, if it is nonzero.
5517 (whitespace_regexp): New variable.
5518 (re_set_whitespace_regexp): New function.
5519
5520 2004-11-19 Kim F. Storm <storm@cua.dk>
5521
5522 * indent.c (Fvertical_motion): Fix last change.
5523
5524 2004-11-18 Kim F. Storm <storm@cua.dk>
5525
5526 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5527 Instead, move back again if reseating moves too far ahead.
5528
5529 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5530
5531 * xdisp.c (message3): Call clear_message.
5532
5533 2004-11-17 Kim F. Storm <storm@cua.dk>
5534
5535 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5536
5537 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5538
5539 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5540
5541 * xmenu.c (x_menu_in_use): Remove.
5542 (x_menu_set_in_use): Also set popup_activated_flag.
5543
5544 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5545 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5546
5547 * xterm.h (x_menu_in_use): Remove.
5548
5549 2004-11-16 Richard M. Stallman <rms@gnu.org>
5550
5551 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5552 Use map-keymap-internal to implement that.
5553
5554 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5555
5556 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5557
5558 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5559 a window before using XWINDOW.
5560
5561 * window.c (make_window, Fselect_window, make_dummy_parent)
5562 (save_window_save):
5563 * frame.c (make_frame):
5564 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5565
5566 * lisp.h (NILP): Use EQ rather than XFASTINT.
5567
5568 2004-11-16 Kim F. Storm <storm@cua.dk>
5569
5570 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5571
5572 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5573 moving backwards.
5574
5575 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5576
5577 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5578
5579 2004-11-16 Kenichi Handa <handa@m17n.org>
5580
5581 * xdisp.c (display_mode_element): Fix previous change (calculate
5582 end position of substring to display correctly).
5583
5584 2004-11-16 Kim F. Storm <storm@cua.dk>
5585
5586 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5587 Reported by Andrew M. Scott.
5588
5589 2004-11-15 Kim F. Storm <storm@cua.dk>
5590
5591 * fns.c (Fsafe_plist_get): New defun.
5592 (syms_of_fns): Defsubr it.
5593
5594 * lisp.h (Fsafe_plist_get): Add EXFUN.
5595
5596 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5597 Use Fsafe_plist_get.
5598 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5599 Fix image map element parsing. Use Fsafe_plist_get.
5600
5601 2004-11-15 Richard M. Stallman <rms@gnu.org>
5602
5603 * xdisp.c (get_next_display_element): Fix previous change.
5604
5605 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5606
5607 * window.c (shrink_windows): Handle special case of one window left
5608 when trying to shrink the final reminder. Grow windows if
5609 total_removed is less than total_shrink.
5610
5611 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5612 extract pointer from arg with XSAVE_VALUE.
5613 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5614 Construct arg to record_unwind_protect with make_save_value.
5615
5616 2004-11-13 Richard M. Stallman <rms@gnu.org>
5617
5618 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5619 (get_next_display_element): Fix previous change to apply only to \n.
5620
5621 * indent.c (Fvertical_motion): Scan to PT from start of line to
5622 make iterator consistent.
5623
5624 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5625
5626 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5627
5628 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5629
5630 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5631 Record unwind with clean_up_file_dialog.
5632
5633 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5634 Declare.
5635
5636 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5637
5638 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5639
5640 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5641 (xg_file_sel_destroy): Remove.
5642 (xg_file_response_cb, pop_down_file_dialog)
5643 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5644 New functions.
5645 (xg_get_file_with_chooser, xg_get_file_with_selection):
5646 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5647 Move common code to xg_get_file_name. Return widget created.
5648 (xg_get_file_name): Set name, transient for, modal and destroy
5649 with parent here. Connect response signal to xg_file_response_cb,
5650 connect delete-event to gtk_true. Record pop_down_file_dialog
5651 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5652 (xg_create_widget): Make dialogs modal.
5653
5654 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5655 Lisp_Object.
5656 (popup_get_selection): Move unwind protect ...
5657 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5658 Move destroy of widget to pop_down_menu.
5659 (popup_widget_loop): Move unwind protect ...
5660 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5661 Move destroy of widget to pop_down_menu.
5662 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5663 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5664 x_mouse_leave and grabbed = 0 to pop_down_menu.
5665
5666 2004-11-13 Kim F. Storm <storm@cua.dk>
5667
5668 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5669 (syms_of_xdisp): DEFVAR_BOOL it.
5670 (make_cursor_line_fully_visible, try_cursor_movement)
5671 (try_window_id): Use it.
5672
5673 2004-11-12 Kim F. Storm <storm@cua.dk>
5674
5675 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5676 (struct it): New member max_extra_line_spacing.
5677 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5678 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5679 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5680 part of last line is only extra line spacing (so the text on the
5681 line is fully visible). Use helper macros.
5682 Add W arg (to use them). All callers changed.
5683 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5684 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5685
5686 * window.c (window_scroll_pixel_based, Frecenter):
5687 Use move_it_vertically_backward directly.
5688 (Frecenter): Fix calculation of new start pos for negative arg.
5689 Before, the new start pos was sometimes chosen too far back, so
5690 the last line became only partially visible, and thus would be
5691 either only semi-visible or automatically scrolled to the middle
5692 of the window by redisplay.
5693
5694 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5695 (move_it_vertically_backward): Don't recure to move further back.
5696 (move_it_vertically): Remove superfluous condition.
5697 (move_it_by_lines): Clear last_height when moved 0 lines.
5698 (resize_mini_window): Use it.max_extra_line_spacing.
5699 (display_tool_bar_line): Clear row->extra_line_spacing.
5700 (try_scrolling): Use move_it_vertically_backward directly.
5701 (redisplay_window): Likewise.
5702 (compute_line_metrics): Set row->extra_line_spacing.
5703 (display_line, display_string): Likewise.
5704 (x_produce_glyphs): Update it->max_extra_line_spacing.
5705
5706 * xmenu.c (pop_down_menu): Return nil.
5707
5708 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5709
5710 * xmenu.c (x_menu_wait_for_event): New function.
5711 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5712 to handle timers.
5713 (popup_widget_loop): Add argument do_timers.
5714 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5715 do_timers to popup_widget_loop.
5716 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5717 x_menu_wait_for_event is called by XMenuActivate.
5718 (create_and_show_popup_menu): Pass 1 for do_timers to
5719 popup_get_selection.
5720 (pop_down_menu): New function.
5721 (popup_get_selection, popup_widget_loop): Unwind protect to
5722 pop_down_menu.
5723 (popup_widget_loop): Add argument widget.
5724 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5725 argument widget to popup_widget_loop.
5726
5727 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5728
5729 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5730
5731 2004-11-09 Kim F. Storm <storm@cua.dk>
5732
5733 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5734 Fix various comments referring to XEvents instead of input events.
5735 (x_queue_event): Fix format strings.
5736 (x_stop_queuing_selection_requests): Likewise.
5737
5738 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5739 (pint2hrstr): Add extra braces to silence compiler.
5740
5741 * print.c (print_object): Fix format string.
5742
5743 * lread.c (read1): Fix next_char matching.
5744
5745 * lisp.h (Fdelete): Add EXFUN.
5746 (replace_range_2): Add prototype.
5747
5748 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5749
5750 * intervals.h (NULL_INTERVAL_P): Add separate version when
5751 ENABLE_CHECKING is not defined to silence compiler.
5752 (compare_string_intervals): Add prototype.
5753
5754 * fringe.c (destroy_fringe_bitmap): Fix return type.
5755 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5756
5757 * emacs.c (Fdump_emacs): Fix format string.
5758
5759 * doc.c: Include <ctype.h>.
5760 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5761
5762 * data.c (store_symval_forwarding): Remove unused variables.
5763
5764 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5765
5766 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5767
5768 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5769 to ${OLDXMENU}.
5770
5771 2004-11-09 Kim F. Storm <storm@cua.dk>
5772
5773 * process.c (Fmake_network_process): Remove kludge for interrupted
5774 connects on BSD. If connect is interrupted, just close socket and
5775 start over rather than sleeping and retry with same socket.
5776
5777 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5778
5779 * .cvsignore: Add buildobj.lst.
5780
5781 * doc.c: New variable Vbuild_files.
5782 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5783 file names from buildobj.lst. Only attach docstrings from files
5784 that are in Vbuild_files.
5785 (syms_of_doc): Defvar Vbuild_files.
5786
5787 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5788 and w32*.o.
5789 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5790 (mostlyclean): Rm buildobj.lst
5791
5792 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5793 is linked.
5794
5795 2004-11-09 Kim F. Storm <storm@cua.dk>
5796
5797 * fringe.c (update_window_fringes): Update fringe bitmaps if
5798 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5799 also update previous row to get rid of misc. artifacts.
5800
5801 2004-11-08 Kim F. Storm <storm@cua.dk>
5802
5803 * xdisp.c (fast_find_position): Fix start pos if header line present.
5804 (note_mouse_highlight): Clear mouse face if we move out of text area.
5805
5806 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5807
5808 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5809 Don't include <sys/time.h> explicitly.
5810 Include <stdio.h> unconditionally, not just on MacOS.
5811
5812 2004-11-08 Kenichi Handa <handa@m17n.org>
5813
5814 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5815 don't pay attention to '\' before '*'.
5816 (fontset_pattern_regexp): Change the meaning of the second arg.
5817 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5818 (check_fontset_name): Try NAME as literal at first, and if it
5819 failes, try NAME as pattern.
5820
5821 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5822
5823 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5824
5825 2004-11-07 Andreas Schwab <schwab@suse.de>
5826
5827 * lisp.h (Fmsdos_downcase_filename): Declare.
5828 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5829 * fileio.c: Likewise.
5830
5831 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5832
5833 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5834 comparisons with integers instead of Lisp_Object address.
5835 (Fmsdos_set_keyboard): Declare argument allkeys.
5836
5837 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5838
5839 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5840 int/Lisp_Object mixup.
5841
5842 * fileio.c: Ditto.
5843
5844 2004-11-06 Steven Tamm <steventamm@mac.com>
5845
5846 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5847
5848 2004-11-06 Richard M. Stallman <rms@gnu.org>
5849
5850 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5851
5852 * xfaces.c (merge_named_face): GCPRO the face_name in the
5853 named_merge_point struct that we make.
5854 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5855
5856 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5857 before deciding whether to inactivate mark.
5858
5859 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5860
5861 * config.in: Regenerate (add HAVE_GETRUSAGE).
5862 * editfns.c (Fget_internal_run_time): New function.
5863 (syms_of_data): Defsubr it.
5864 * fns.c (sxhash): As far as possible, merge calculation of
5865 hash code for symbols and strings.
5866
5867 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5868
5869 * frame.c (syms_of_frame): Fix the example in the doc string.
5870
5871 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5872
5873 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5874
5875 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5876 (create_and_show_dialog): Revert change from 2004-10-31.
5877
5878 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5879
5880 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5881
5882 2004-11-05 Kim F. Storm <storm@cua.dk>
5883
5884 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5885
5886 * fileio.c (Ffile_modes): Doc fix.
5887 (auto_save_1): Check for Ffile_modes nil value.
5888
5889 2004-11-05 Kim F. Storm <storm@cua.dk>
5890
5891 * xselect.c (struct selection_event_queue, selection_queue)
5892 (x_queue_selection_requests, x_queue_event)
5893 (x_start_queuing_selection_requests)
5894 (x_stop_queuing_selection_requests): Add new queue for selection
5895 input events to replace previous XEvent queue in xterm.c.
5896 (queue_selection_requests_unwind): Adapt to new queue.
5897 (x_reply_selection_request): Adapt to new queue.
5898 Unexpect wait_object in case of x errors (memory leak).
5899 (x_handle_selection_request, x_handle_selection_clear): Make static.
5900 (x_handle_selection_event): New function. May queue selection events.
5901 (wait_for_property_change_unwind): Use save_value instead of cons.
5902 Clear property_change_reply_object.
5903 (wait_for_property_change): Abort if already waiting.
5904 Use save_value instead of cons for unwind data.
5905 (x_handle_property_notify): Skip events already arrived, but don't
5906 free them, as "arrived" field is checked by wait_for_property_change,
5907 and it will be freed by unwind or explicit unexpect_property_change.
5908 (x_get_foreign_selection): Add to new queue.
5909 (receive_incremental_selection): Don't unexpect wait_object when done
5910 as it has already been freed by previous wait_for_property_change.
5911
5912 * xterm.h (x_start_queuing_selection_requests)
5913 (x_stop_queuing_selection_requests, x_handle_selection_request)
5914 (x_handle_selection_clear): Remove prototypes.
5915 (x_handle_selection_event): Add prototype.
5916
5917 * xterm.c (handle_one_xevent): Don't queue X selection events
5918 here, it may be too late if we start queuing after we have already
5919 stored some selection events into the kbd buffer.
5920 (struct selection_event_queue, queue, x_queue_selection_requests)
5921 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5922 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5923 (x_catch_errors_unwind): Block input around final XSync.
5924
5925 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5926
5927 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5928 (kbd_buffer_unget_event): New function.
5929 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5930 and use x_handle_selection_event.
5931 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5932
5933 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5934
5935 * xselect.c (TRACE3): New debug macro.
5936 (x_reply_selection_request): Use it.
5937 (receive_incremental_selection): In call to TRACE0, the name of
5938 a symbol is in xname.
5939
5940 2004-11-05 Kim F. Storm <storm@cua.dk>
5941
5942 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5943
5944 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5945
5946 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5947
5948 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5949
5950 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5951 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5952 * xfns.c (syms_of_xfns): ... to here.
5953
5954 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5955 it doesn't start with /.
5956
5957 2004-11-04 Kenichi Handa <handa@m17n.org>
5958
5959 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5960 treat it as a literal character.
5961
5962 2004-11-03 Kim F. Storm <storm@cua.dk>
5963
5964 * .gdbinit (ppt): New function.
5965
5966 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5967
5968 * xterm.c (x_window_to_scroll_bar): Only call
5969 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5970
5971 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5972 of save.
5973
5974 2004-11-02 Andreas Schwab <schwab@suse.de>
5975
5976 * window.c (Fscroll_right): Fix last change.
5977
5978 2004-11-02 Kim F. Storm <storm@cua.dk>
5979
5980 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5981
5982 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5983
5984 * callproc.c (Fcall_process): Block input around vfork.
5985
5986 2004-11-02 Kim F. Storm <storm@cua.dk>
5987
5988 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5989 (syms_of_eval): Defsubr it.
5990
5991 2004-11-02 Richard M. Stallman <rms@gnu.org>
5992
5993 * insdel.c (replace_range_2): New function.
5994
5995 * casefiddle.c (casify_region): Handle changes in byte-length
5996 using replace_range_2.
5997
5998 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5999
6000 * xdisp.c (back_to_previous_visible_line_start):
6001 Subtract 1 from pos when checking previous newline for invisibility.
6002
6003 * window.c (window_scroll_pixel_based): Update preserve_y
6004 for header line if any.
6005 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6006 use a new second argument instead.
6007
6008 * eval.c (Fcall_interactive_p): New function.
6009 (interactive_p): Don't test INTERACTIVE here.
6010 (Finteractive_p): Doc fix.
6011
6012 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6013
6014 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6015
6016 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6017 comparing font names.
6018
6019 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6020
6021 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6022 Fx_file_dialog if only directories should be read.
6023
6024 * lisp.h: Fx_file_dialog takes 5 parameters.
6025
6026 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6027 Add parameter only_dir_p.
6028 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6029 dialog, just text field part. Do not add DEFAULT_FILENAME
6030 to list of files if it isn't there.
6031 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6032
6033 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6034 Check only_dir_p instead of comparing prompt to "Dired". When using
6035 a save dialog, add option kNavDontConfirmReplacement, change title
6036 to "Enter name", change text for save button to "Ok".
6037
6038 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6039 Check only_dir_p instead of comparing prompt to "Dired".
6040
6041 * gtkutil.c (xg_get_file_with_chooser)
6042 (xg_get_file_with_selection): New functions, only defined ifdef
6043 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6044 respectively.
6045 (xg_get_file_name): Add parameter only_dir_p.
6046 Call xg_get_file_with_chooser or xg_get_file_with_selection
6047 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6048 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6049
6050 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6051
6052 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6053
6054 2004-11-01 Kim F. Storm <storm@cua.dk>
6055
6056 * process.c (connect_wait_mask, num_pending_connects):
6057 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6058 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6059 (IF_NON_BLOCKING_CONNECT): New helper macro.
6060 (wait_reading_process_output): Only declare and use local vars
6061 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6062
6063 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6064
6065 * w32term.c (x_scroll_run): Delete region objects after use.
6066
6067 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6068
6069 * xmenu.c: Add prototypes for forward function declarations.
6070 (popup_get_selection): Remove parameter do_timers, remove call to
6071 timer_check.
6072 (create_and_show_popup_menu, create_and_show_dialog):
6073 Remove parameter do_timers from call to popup_get_selection.
6074
6075 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6076 tool_bar_items and assign the result to f->tool_bar_items if
6077 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6078 tool_bar_items to assignment of result.
6079
6080 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6081 pending_atmers is non-zero.
6082
6083 2004-10-31 Kim F. Storm <storm@cua.dk>
6084
6085 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6086
6087 2004-10-28 Will <will@glozer.net>
6088
6089 * macterm.c: Allow user to assign key modifiers to the Mac Option
6090 key via a 'mac-option-modifier' variable.
6091
6092 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6093
6094 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6095 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6096 (x_handle_selection_request, x_handle_selection_clear)
6097 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6098
6099 2004-10-28 Richard M. Stallman <rms@gnu.org>
6100
6101 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6102
6103 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6104
6105 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6106
6107 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6108 comment-starter over a 1-char one.
6109
6110 2004-10-27 Richard M. Stallman <rms@gnu.org>
6111
6112 * xdisp.c (get_next_display_element): In mode lines,
6113 treat newline and tab like other control characters.
6114
6115 * editfns.c (Fmessage): Doc fix.
6116
6117 * indent.c (vmotion): When moving up, check the newline before.
6118 Make prevline an int, not a Lisp_Object.
6119
6120 2004-10-27 Kim F. Storm <storm@cua.dk>
6121
6122 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6123 Only allocate info and discarded tables once.
6124
6125 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6126 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6127 (SAFE_FREE): Test it to determine if we need to unwind to free.
6128 Remove size arg. All users changed.
6129 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6130
6131 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6132
6133 * gtkutil.c: Put empty line between comment and function body.
6134 (xg_destroy_widgets): Rename from remove_from_container.
6135 Just destroy all widgets in list. Argument wcont removed.
6136 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6137 instead of remove_from_container.
6138 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6139 (free_frame_tool_bar): Add comment.
6140
6141 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6142 is not NULL before strcmp.
6143
6144 2004-10-26 Kim F. Storm <storm@cua.dk>
6145
6146 * callint.c (Fcall_interactively): Add 'U' code to get the
6147 up-event discarded by a previous 'k' or 'K' argument.
6148
6149 2004-10-26 David Kastrup <dak@gnu.org>
6150
6151 * buffer.c (syms_of_buffer): Fix a few typos.
6152
6153 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6154
6155 * xsmfns.c: Put empty line between comment and function body.
6156 Use two spaces before comment end.
6157
6158 2004-10-25 Kenichi Handa <handa@m17n.org>
6159
6160 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6161 PATTERN is full XLFD.
6162
6163 2004-10-24 Kenichi Handa <handa@m17n.org>
6164
6165 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6166
6167 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6168 (regex_compile): Return REG_ERANGEX if appropriate.
6169
6170 2004-10-22 Kenichi Handa <handa@m17n.org>
6171
6172 * editfns.c (Ftranslate_region_internal): New function.
6173 (syms_of_editfns): Defsubr it.
6174
6175 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6176
6177 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6178
6179 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6180
6181 * xterm.h (x_output): New member `xic_base_fontname'.
6182 (FRAME_XIC_BASE_FONTNAME): New macro.
6183 (xic_free_xfontset): Declare.
6184
6185 * xfns.c (xic_create_xfontset): Share fontsets between frames
6186 based on base_fontname.
6187 (xic_free_xfontset): New function.
6188 (free_frame_xic): Use it.
6189 (xic_set_xfontset): Ditto.
6190
6191 * xterm.c (xim_destroy_callback): Ditto.
6192
6193
6194 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6195
6196 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6197
6198 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6199
6200 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6201 XSync.
6202
6203 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6204 New variables and constant.
6205 (main): Calculate heap_bss_diff. If we are dumping and the
6206 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6207 and exec ourself again.
6208 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6209 print a warning.
6210
6211 * lastfile.c: Make my_endbss and my_endbss_static available on all
6212 platforms.
6213
6214 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6215 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6216
6217 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6218
6219 * data.c (Flocal_variable_if_set_p): Doc fix.
6220
6221 2004-10-19 Jason Rumney <jasonr@gnu.org>
6222
6223 * w32.c (init_environment): Set emacs_dir correctly when running
6224 emacs from the build directory.
6225
6226 2004-10-19 Richard M. Stallman <rms@gnu.org>
6227
6228 * editfns.c (Fdelete_and_extract_region):
6229 If region is empty, return null string.
6230
6231 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6232
6233 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6234 and canon_width.
6235 (xg_frame_cleared): Remove.
6236
6237 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6238 (xg_find_top_left_in_fixed): Remove.
6239 (xg_create_scroll_bar): Put an event box widget between
6240 the scroll bar widget and the edit widget.
6241 (xg_show_scroll_bar): Show the parent widget (the event box).
6242 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6243 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6244 Move the parent (the event box) widget inside the fixed widget.
6245 Move window clear to xterm.c.
6246
6247 * gtkutil.h (xg_frame_cleared): Remove.
6248
6249 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6250 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6251 Remove arguments left and width to xg_update_scrollbar_pos.
6252 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6253
6254 2004-10-19 Kenichi Handa <handa@m17n.org>
6255
6256 * xdisp.c (display_mode_element): Fix display of wide chars.
6257
6258 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6259
6260 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6261 gdk_window_clear and move gdk_window_process_all_updates after
6262 clear so events are sent to the X server in correct order.
6263
6264 2004-10-18 Kenichi Handa <handa@m17n.org>
6265
6266 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6267 comparing font names.
6268 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6269 (list_fontsets): Likewise.
6270
6271 * search.c (fast_string_match_ignore_case): New function.
6272
6273 * lisp.h (fast_string_match_ignore_case): Extern it.
6274
6275 2004-10-17 Kim F. Storm <storm@cua.dk>
6276
6277 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6278 than bitmap if there is not left fringe.
6279 (get_overlay_arrow_glyph_row): Also used on windows system.
6280 (display_line): Display overlay string if no left fringe.
6281
6282 2004-10-16 Jason Rumney <jasonr@gnu.org>
6283
6284 * w32fns.c (w32_font_match): Encode font name being matched.
6285
6286 2004-10-16 Richard M. Stallman <rms@gnu.org>
6287
6288 * window.c (Fspecial_display_p): Doc fix.
6289
6290 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6291
6292 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6293 Don't ignore menus, because where-is-internal already does it for us.
6294
6295 2004-10-15 Kim F. Storm <storm@cua.dk>
6296
6297 * xdisp.c (redisplay_window): Only update fringes and vertical
6298 border on window frames.
6299
6300 2004-10-14 Andreas Schwab <schwab@suse.de>
6301
6302 * m/ia64.h (DATA_SEG_BITS): Don't define.
6303
6304 2004-10-14 Kim F. Storm <storm@cua.dk>
6305
6306 * xterm.h: Include Xutil.h after keysym.h to work around bug
6307 in some X versions.
6308
6309 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6310
6311 * fns.c (map_char_table): Add missing gcpros.
6312
6313 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6314
6315 * keymap.c (get_keymap): An autoload form is not a keymap.
6316
6317 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6318
6319 2004-10-13 Kim F. Storm <storm@cua.dk>
6320
6321 * callproc.c (Fcall_process): Simplify handling of display arg.
6322 Resume `display_on_the_fly' once a coding system is determined.
6323
6324 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6325
6326 2004-10-12 Kim F. Storm <storm@cua.dk>
6327
6328 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6329 caller, such as call-process, is not going to poll for input.
6330 (calc_line_height_property): Handle case where it->object is nil.
6331
6332 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6333
6334 2004-10-12 Kenichi Handa <handa@m17n.org>
6335
6336 * xdisp.c (get_next_display_element):
6337 If unibyte_display_via_language_environment is zero, display 8-bit
6338 chars in octal in unibyte buffer.
6339
6340 2004-10-12 Kim F. Storm <storm@cua.dk>
6341
6342 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6343 are no ordinary bindings.
6344
6345 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6346
6347 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6348
6349 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6350
6351 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6352 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6353 (make_mac_frame): Add BLOCK_INPUT around the making of a
6354 terminal frame.
6355 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6356 * macgui.h (mktime): Use emacs_mktime.
6357 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6358 Make a cancel file-open dialog be like C-g.
6359 * mac.c (mktime): Use emacs_mktime.
6360 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6361 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6362
6363 2004-10-10 Kim F. Storm <storm@cua.dk>
6364
6365 * keyboard.c (timer_resume_idle): New function to resume idle
6366 timer without resetting timers on the idle list.
6367 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6368 (timer_start_idle, timer_stop_idle): Declare static.
6369 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6370
6371 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6372
6373 2004-10-08 Steven Tamm <steventamm@mac.com>
6374
6375 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6376 * macterm.c (mac_check_for_quit_char): Remove warning for using
6377 NULL where 0 should be used.
6378 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6379 objc/malloc.h
6380 * mac.c: Include time.h for Tiger compatibility.
6381
6382 2004-10-07 Kim F. Storm <storm@cua.dk>
6383
6384 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6385 windows. Update vertical line after drawing window fringes, but
6386 only if actually drawing any bitmaps--or there is no fringe.
6387
6388 * xterm.c (x_update_window_end): Likewise.
6389 * macterm.c (x_update_window_end): Likewise.
6390 * w32term.c (x_update_window_end): Likewise.
6391
6392 * fringe.c (draw_window_fringes): Return value now indicates if
6393 any fringe bitmaps were redrawn (or there are no fringes).
6394
6395 * dispextern.h (draw_window_fringes): Update prototype.
6396
6397 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6398
6399 * macfns.c (mac_get_window_bounds): Add extern.
6400 (x_real_positions): Use mac_get_window_bounds.
6401
6402 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6403 xmenu.c (YAILOM).
6404
6405 * macterm.c [!MAC_OSX]: Include Windows.h.
6406 (front_emacs_window): Rename from mac_front_window. All uses
6407 changed. Return the frontmost non-tooltip emacs window.
6408 (mac_get_window_bounds): New function.
6409 (x_calc_absolute_position): Use the difference of width and height
6410 between the inner and outer window.
6411 (x_set_offset): Specify window position by the coordinae of the
6412 outer window. Adjust the position if the title bar is completely
6413 outside the screen.
6414 (app_is_suspended, app_sleep_time): Remove unused variables.
6415 (do_app_resume, do_app_suspend): Remove their contents because
6416 window-activate/deactivate events will do the job.
6417 (do_zoom_window): Remove unused variables. Make compliant to the
6418 standard way of zooming. Set f->left_pos and f->top_pos.
6419 (XTread_socket): Don't use argument `expected'. Don't use
6420 FrontWindow to determine the clicked window. Exclude unprocessed
6421 mouseUp cases in the early stage. Add parentheses to fix operator
6422 precedence.
6423 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6424
6425 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6426
6427 * config.in: Regenerate.
6428
6429 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6430 HAVE_EXECSHIELD.
6431
6432 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6433
6434 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6435 a row if Alt or Meta has been found for that row. Also stop scanning
6436 for Keysyms for that row.
6437
6438 2004-10-04 Kim F. Storm <storm@cua.dk>
6439
6440 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6441 to list. Include overlay arrow bitmap in return value.
6442
6443 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6444 bars with fractional column width. If scroll bar separates two
6445 windows, move it towards the window it belongs to. Only update
6446 the padding area below the scroll bar widget when necessary,
6447 i.e. when scroll bar widget is created, moved, or resized.
6448
6449 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6450 while tracking/dragging mouse.
6451 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6452
6453 * window.c (coordinates_in_window): Relax check for cursor
6454 on vertial border between mode lines.
6455 (Fset_window_fringes): Do not allow negative widths.
6456 (Fset_window_scroll_bars): Likewise.
6457
6458 * .gdbinit (pp): Shorthand for p ARG + pr.
6459 (ff): New command: flush frame updates (X only).
6460
6461 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6462
6463 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6464
6465 2004-09-30 Kenichi Handa <handa@m17n.org>
6466
6467 * process.c (send_process): Free composition data.
6468
6469 * fileio.c (Finsert_file_contents): Free composition data.
6470
6471 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6472 compositions to encode.
6473 (encode_coding_string): Likewise. Free composition data.
6474
6475 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6476
6477 * coding.c (code_convert_region): Free composition data.
6478
6479 2004-09-29 Kim F. Storm <storm@cua.dk>
6480
6481 * fringe.c: Remove limit on number of bitmaps.
6482 (fringe_bitmaps, fringe_faces): Change to pointers.
6483 (max_fringe_bitmaps): New var.
6484 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6485 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6486
6487 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6488 (struct glyph_row): Reorder fringe_bitmap related fields.
6489 (struct it): Likewise.
6490
6491 * w32term.c (fringe_bmp): Change to pointer.
6492 (max_fringe_bmp): New var.
6493 (w32_define_fringe_bitmap): Expand fringe_bmp.
6494 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6495 (w32_destroy_fringe_bitmap): Likewise.
6496
6497 2004-09-29 Kim F. Storm <storm@cua.dk>
6498
6499 * fringe.c: Simplify last change.
6500 (lookup_fringe_bitmap): New function.
6501 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6502 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6503 Keep standard bitmaps in Vfringe_bitmaps.
6504 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6505 (Fset_fringe_bitmap_face): Likewise.
6506
6507 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6508 (valid_fringe_bitmap_p): Remove prototype.
6509
6510 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6511
6512 2004-09-29 Kim F. Storm <storm@cua.dk>
6513
6514 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6515 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6516
6517 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6518
6519 * fringe.c (Vfringe_bitmaps): New variable.
6520 (syms_of_fringe): DEFVAR_LISP it.
6521 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6522 Change arg to Lisp_Object and fail if not an integer.
6523 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6524 (destroy_fringe_bitmap): New functions.
6525 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6526 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6527 clear its fringe property.
6528 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6529 Fdestroy_fringe_bitmap.
6530 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6531 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6532 and set fringe property. Signal error if no free slots.
6533 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6534 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6535
6536 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6537 symbols with a fringe property.
6538
6539 2004-09-27 Kim F. Storm <storm@cua.dk>
6540
6541 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6542 Doc fix. Format may now be a symbol or alist, not a cons.
6543
6544 * fringe.c (update_window_fringes): Handle new formats of
6545 indicate-buffer-boundaries (symbol or alist). No longer
6546 allow a simple cons.
6547 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6548
6549 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6550
6551 * config.in: Rebuild.
6552
6553 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6554
6555 * config.in: Rebuild.
6556
6557 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6558
6559 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6560
6561 * xterm.c (x_term_init): Work around a bug in some X servers.
6562
6563 2004-09-18 Richard M. Stallman <rms@gnu.org>
6564
6565 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6566
6567 * xdisp.c (try_window_reusing_current_matrix):
6568 Handle the case where we reach the old displayed text,
6569 out of sync with the old line boundary.
6570
6571 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6572
6573 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6574 narrowed buffer.
6575
6576 2004-09-14 Kim F. Storm <storm@cua.dk>
6577
6578 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6579
6580 * xfaces.c (Qface_no_inherit): New var.
6581 (syms_of_xfaces): Intern and staticpro it.
6582 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6583 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6584 Don't increment face_change_count when face has non-nil
6585 face-no-inherit property.
6586
6587 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6588
6589 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6590 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6591
6592 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6593 before doing the mark_stack_check_gcpros since they're not on the stack.
6594
6595 2004-09-12 Kim F. Storm <storm@cua.dk>
6596
6597 * editfns.c (Fformat): Handle format strings with multiple text
6598 properties. Reverse text property list from the format string,
6599 so the positions are in increasing order.
6600
6601 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6602
6603 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6604 x_uncatch_errors so that possible protocol errors are delivered.
6605
6606 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6607
6608 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6609 blockinput.h.
6610 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6611 charset.h, and coding.h
6612 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6613 (term.o): Depend on window.h and keymap.h.
6614 (abbrev.o): Depend on syntax.h.
6615 (callint.o): Depend on keymap.h.
6616 (casefiddle.o): Depend on charset.h and keymap.h.
6617 (category.o): Depend on keymap.h.
6618 (coding.o): Depend on dispextern.h.
6619 (cmds.o): Depend on keyboard.h and keymap.h.
6620 (dispnew.o): Depend on indent.h and intervals.h.
6621 (doc.o): Depend on keymap.h.
6622 (editfns.o): Depend on frame.h.
6623 (emacs.o): Depend on dispextern.h.
6624 (fileio.o): Don't depend on ccl.h.
6625 (filelock.o): Depend on charset.h and coding.h.
6626 (frame.o): Depend on w32term.h and macterm.h.
6627 (insdel.o): Depend on region-cache.h.
6628 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6629 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6630 (search.o): Depend on $(INTERVALS_SRC).
6631 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6632 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6633 xterm.h, w32term.h, and macterm.h.
6634 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6635 w32term.h, and macterm.h.
6636 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6637 region-cache.h, xterm.h, w32term.h, and macterm.h.
6638 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6639 (data.o): Depend on frame.h.
6640 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6641 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6642 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6643 (intervals.o): Depend on keymap.h.
6644
6645 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6646 Add debugging print-out to termscript.
6647
6648 2004-09-09 Richard M. Stallman <rms@gnu.org>
6649
6650 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6651
6652 2004-09-08 Richard M. Stallman <rms@gnu.org>
6653
6654 * window.c (Fset_window_buffer): Doc fix.
6655
6656 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6657
6658 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6659
6660 * minibuf.c (history_delete_duplicates): New variable.
6661 (read_minibuf): Use it.
6662 (syms_of_minibuf): Create the corresponding lisp variable.
6663
6664 2004-09-08 Kim F. Storm <storm@cua.dk>
6665
6666 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6667 overlay just before point.
6668
6669 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6670
6671 * buffer.h (struct buffer): Add auto_save_file_format field.
6672 * buffer.c (reset_buffer, init_buffer_once):
6673 Handle auto_save_file_format field.
6674 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6675 `buffer-auto-save-file-format'.
6676 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6677 (build_annotations): Adapt to replacement of
6678 `auto-save-file-format' with the new buffer-local variable
6679 `buffer-auto-save-file-format'.
6680 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6681
6682 2004-09-07 Jason Rumney <jasonr@gnu.org>
6683
6684 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6685
6686 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6687 Handle Unicode menu titles.
6688
6689 2004-09-07 Kim F. Storm <storm@cua.dk>
6690
6691 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6692 property from text property or overlay strings at point.
6693
6694 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6695
6696 * xmenu.c (update_submenu_strings): YAILOM.
6697 (set_frame_menubar): Make sure last_i is initialized.
6698
6699 2004-09-03 Jason Rumney <jasonr@gnu.org>
6700
6701 * w32menu.c (_widget_value): Add lname and lkey.
6702 (digest_single_submenu): Set lname and lkey in widget_value
6703 instead of name and key.
6704 (update_submenu_strings): New function.
6705 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6706 call update_submenu_strings.
6707
6708 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6709 (digest_single_submenu, w32_menu_show): Encode menu strings as
6710 UTF-8 if Unicode API is available.
6711 (utf8to16): New function.
6712 (add_menu_item): Use it when calling Unicode API.
6713
6714 2004-09-03 Kim F. Storm <storm@cua.dk>
6715
6716 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6717 in overlay or text-property strings; set cursor on corresponding
6718 glyph rather than at end of the string.
6719
6720 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6721
6722 * macfns.c (x_real_positions): Save the current window port and
6723 set a new one before obtaining the global coordinate.
6724 Use FRAME_MAC_WINDOW.
6725 (x_set_name, x_set_title): Encode title to UTF8.
6726 Use SetWindowTitleWithCFString.
6727 (Fx_server_version): Get correct OS version.
6728
6729 * macmenu.c (add_menu_item): Remove unused variable `i'.
6730 Don't let separator items destroy refence constants of other menu items.
6731
6732 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6733 BLOCK_INPUT.
6734 (x_set_offset): Use FRAME_MAC_WINDOW.
6735
6736 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6737 nontext_cursor if it is on a scroll bar.
6738
6739 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6740 Carbon support.
6741 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6742 Use LIBS_CARBON.
6743
6744 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6745
6746 * xfns.c (x_set_name_internal): New function. Check if we shall call
6747 xfree before ENCODE_UTF_8.
6748 (x_set_name, x_set_title): Call x_set_name_internal.
6749
6750 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6751
6752 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6753 reload it.
6754
6755 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6756
6757 * macmenu.c (_widget_value): Add lname and lkey.
6758 (single_submenu): Set lname and lkey in widget_value
6759 instead of name and key.
6760 (update_submenu_strings): New function.
6761 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6762 call update_submenu_strings.
6763
6764 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6765 instead of name and key.
6766 (update_submenu_strings): New function.
6767 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6768 call update_submenu_strings.
6769
6770 * gtkutil.h (_widget_value): Added lname and lkey.
6771
6772 2004-08-30 Steven Tamm <steventamm@mac.com>
6773
6774 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6775 by using different names for inner loop variables.
6776
6777 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6778
6779 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6780 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6781
6782 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6783 tool bar items is 0.
6784
6785 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6786
6787 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6788 strings in menu items.
6789 (single_submenu): Use ENCODE_MENU_STRING
6790 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6791 button release isn't passed to event loop
6792 (add_menu_item): Use SetMenuItemWithCFString
6793
6794 2004-08-26 Steven Tamm <steventamm@mac.com>
6795
6796 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6797 tool-bar/menu click.
6798 * macfns.c (Fx_file_dialog): Implement using NavServices.
6799
6800 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6801
6802 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6803
6804 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6805 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6806 (x_top_window_to_frame): Return 0 if wdesc is None.
6807
6808 2004-08-22 Richard M. Stallman <rms@gnu.org>
6809
6810 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6811 HAVE_TERMIOS]: If there's no char for this signal, drop through
6812 and use system calls.
6813
6814 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6815
6816 2004-08-20 Kim F. Storm <storm@cua.dk>
6817
6818 * process.c (wait_reading_process_output): Rename from
6819 wait_reading_process_input. All uses changed.
6820 (wait_reading_process_output_1): Rename from
6821 wait_reading_process_input_1. All uses changed.
6822
6823 * dispnew.c (Fsleep_for): Remove obsolete code.
6824
6825 2004-08-20 Kenichi Handa <handa@m17n.org>
6826
6827 * syntax.c (skip_chars): Fix for unibyte case.
6828
6829 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6830
6831 * syntax.c (char_quoted): Mixup byte/char pos.
6832 (back_comment): Fixup globals in all cases.
6833
6834 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6835
6836 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6837 passing it to gtk_window_set_title.
6838
6839 2004-08-19 Kim F. Storm <storm@cua.dk>
6840
6841 * process.c (wait_reading_process_input): Clean up.
6842 Add wait_for_cell, wait_proc, and just_wait_proc args
6843 to avoid overloading `read_kbd' and `do_display' args.
6844 Change read_kbd arg to int. All callers changed.
6845
6846 * process.c (process_send_signal): Use CDISABLE.
6847
6848 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6849
6850 2004-08-18 Kim F. Storm <storm@cua.dk>
6851
6852 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6853 forward to wait_reading_process_input via DO_DISPLAY arg.
6854 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6855 object, only process output from that process; also inhibit
6856 running timers if DO_DISPLAY==-2.
6857
6858 2004-08-17 Kim F. Storm <storm@cua.dk>
6859
6860 * process.c (process_send_signal): Fix last change--use
6861 _POSIX_VDISABLE instead of CVDISABLE when available.
6862
6863 2004-08-16 Richard M. Stallman <rms@gnu.org>
6864
6865 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6866 Set VQUIT and VINTR chars to the standard ones if they are unset.
6867 [AIX]: Don't do that here. And don't force VINTR to standard
6868 when SIGNALS_VIA_CHARACTERS.
6869
6870 * process.c (process_send_signal)
6871 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6872 Do nothing if the character is CVDISABLE.
6873
6874 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6875
6876 * intervals.c (move_if_not_intangible):
6877 Force POSITION to be between BEGV and ZV.
6878
6879 2004-08-14 John Paul Wallington <jpw@gnu.org>
6880
6881 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6882
6883 * fileio.c (Fread_file_name): Doc fix.
6884
6885 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6886
6887 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6888
6889 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6890
6891 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6892
6893 * keyboard.c: Declare Qdisabled_command_function instead of
6894 Qdisabled_command_hook.
6895 (Fcommand_execute): Use Qdisabled_command_function instead of
6896 Qdisabled_command_hook.
6897 (syms_of_keyboard): Ditto.
6898
6899 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6900
6901 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6902 (syms_of_keymap) <key-translation-map>: Doc fixes.
6903
6904 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6905
6906 * window.c (window_list_1): YAILOM.
6907
6908 * fileio.c (make_temp_name): Handle multibyte prefixes.
6909
6910 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6911
6912 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6913 Doc fix.
6914
6915 2004-08-03 Kenichi Handa <handa@m17n.org>
6916
6917 * coding.c (decode_coding_string): Adjust coding->consumed, and
6918 etc. with shrinked_bytes.
6919
6920 2004-08-03 Kim F. Storm <storm@cua.dk>
6921
6922 * indent.c (compute_motion): Fix check for full width window
6923 in non-window case. Do not count left truncation glyph on
6924 window systems.
6925
6926 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6927
6928 * data.c (Finteractive_form): Doc fix.
6929
6930 2004-08-02 Kim F. Storm <storm@cua.dk>
6931
6932 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6933 properly accounting for continuation glyph on non-window systems.
6934 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6935 actual window width/height if TOPOS is nil, properly accounting for
6936 continuation glyphs on non-window systems, and optional header lines.
6937 (vmotion): Let compute_motion calculate actual window width.
6938
6939 * window.c (window_scroll_line_based): Let compute_motion
6940 calculate actual window width.
6941
6942 2004-08-02 Kim F. Storm <storm@cua.dk>
6943
6944 * process.c (read_process_output): Use whole read buffer.
6945 Don't trigger adaptive read buffering on errors.
6946
6947 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6948
6949 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6950
6951 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6952
6953 * callint.c (Fcall_interactively): Doc fix.
6954
6955 2004-07-30 Richard M. Stallman <rms@gnu.org>
6956
6957 * abbrev.c (Fexpand_abbrev): Undo previous change.
6958
6959 2004-07-30 Kim F. Storm <storm@cua.dk>
6960
6961 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6962
6963 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6964
6965 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6966
6967 2004-07-27 Kim F. Storm <storm@cua.dk>
6968
6969 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6970 we have ensured that the glyph fits on the current line (or returned
6971 MOVE_LINE_CONTINUED otherwise).
6972
6973 2004-07-26 Kim F. Storm <storm@cua.dk>
6974
6975 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6976 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6977 if target position is at end of display line but char is not a newline.
6978
6979 2004-07-25 Richard M. Stallman <rms@gnu.org>
6980
6981 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6982 instead of ON_VERTICAL_BORDER, when on scroll bar.
6983 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6984
6985 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6986
6987 * window.c (Fcoordinates_in_window_p):
6988 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6989
6990 * alloc.c (check_cons_list): New function (contents commented out).
6991
6992 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6993
6994 * xfaces.c (Fcolor_supported_p): Doc fix.
6995
6996 * frame.c (Fselect_frame, Fset_frame_selected_window)
6997 (Fframe_visible_p, Fraise_frame): Doc fixes.
6998
6999 2004-07-24 Richard M. Stallman <rms@gnu.org>
7000
7001 * keyboard.h (not_single_kboard_state): Declare.
7002
7003 * fileio.c (Fwrite_region): Doc fix.
7004
7005 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7006
7007 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7008 only when a real abbrev is present.
7009
7010 * xfns.c (x_icon_verify): New function.
7011 (Fx_create_frame): Use it.
7012
7013 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7014
7015 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7016
7017 2004-07-21 Kim F. Storm <storm@cua.dk>
7018
7019 * window.h (struct glyph_matrix): New members nrows_scale_factor
7020 and ncols_scale_factor.
7021
7022 * window.c (make_window): Initialize nrows_scale_factor and
7023 ncols_scale_factor members.
7024
7025 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7026 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7027 (required_matrix_height): Apply nrows_scale_factor.
7028 (required_matrix_width): Apply ncols_scale_factor.
7029
7030 * xdisp.c (display_line): Increment nrows_scale_factor and set
7031 fonts_changed_p if past last allocated row.
7032 (append_glyph, append_composite_glyph, produce_image_glyph)
7033 (append_stretch_glyph): Increment ncols_scale_factor and set
7034 fonts_changed_p if current area is full.
7035
7036 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7037
7038 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7039
7040 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7041
7042 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7043 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7044 (Fset_window_start, Fscroll_up, Fscroll_down)
7045 (Fother_window_for_scrolling, Fscroll_other_window)
7046 (Fsave_window_excursion, Fset_window_vscroll)
7047 (syms_of_window) <window-size-fixed>: Doc fixes.
7048
7049 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7050
7051 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7052 ENCODE_SYSTEM for filenames.
7053
7054 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7055
7056 * mac.c (sys_select): Block input around call to
7057 ReceiveNextEvent to prevent breakage. Correctly handle
7058 blocking on event queue only by calling ReceiveNextEvent
7059 instead of select (since GUI events aren't on an fd).
7060 (sys_read): Remove function
7061 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7062
7063 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7064
7065 * mac.c (sys_select): Redo sys_select to use alarm-based
7066 polling instead of 1 sec timeouts (like solaris).
7067
7068 * macterm.c (x_make_frame_visible): Comment in polling on
7069 frame creation.
7070
7071 * keyboard.c: Undef SIGIO on Carbon
7072
7073 * atimer.c (alarm_signal_handler): Call alarm handlers after
7074 scheduling.
7075
7076 * eval.c (Feval): Remove quit_char test
7077
7078 * process.c (wait_reading_process_input): Remove clearing
7079 stdin for select call on process input.
7080
7081 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7082
7083 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7084 capitalization error in docstring.
7085
7086 2004-07-17 Juanma Barranquero <lektu@terra.es>
7087
7088 * keyboard.c (not_single_kboard_state): Do nothing unless
7089 MULTI_KBOARD is defined.
7090
7091 2004-07-17 Richard M. Stallman <rms@gnu.org>
7092
7093 * window.c (coordinates_in_window): Inside the window but outside
7094 its box to the L or R, return ON_VERTICAL_BORDER.
7095 (window_list_1): Rotate the list to start with WINDOW.
7096
7097 * print.c (print_preprocess): Test for print_depth at limit
7098 before entering in being_printed.
7099
7100 * keyboard.c (not_single_kboard_state): New function.
7101 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7102
7103 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7104 this kboard, and we delete its last frame, go to any_kboard_state.
7105
7106 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7107
7108 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7109
7110 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7111 system before passing them to OS functions for display.
7112
7113 2004-07-15 David Kastrup <dak@gnu.org>
7114
7115 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7116 Apparently fixes an abort condition.
7117
7118 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7119
7120 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7121 instead of a cons.
7122
7123 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7124
7125 * keyboard.c (echo_dash): Do nothing if there already is a dash
7126 at the end of the echo string.
7127
7128 2004-07-12 Kim F. Storm <storm@cua.dk>
7129
7130 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7131 if GC_MARK_STACK.
7132
7133 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7134
7135 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7136
7137 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7138 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7139 (Freplace_buffer_in_windows, Fset_window_buffer)
7140 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7141 (syms_of_window): Expand docstring of `display-buffer-function'.
7142
7143 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7144
7145 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7146 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7147 that time values of the type (HIGH . LOW) are considered obsolete.
7148
7149 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7150
7151 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7152 docstring.
7153
7154 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7155
7156 2004-07-06 John Paul Wallington <jpw@gnu.org>
7157
7158 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7159
7160 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7161
7162 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7163
7164 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7165 instead of CGMainDisplayID (only in OSX 10.2 and later).
7166
7167 2004-07-04 John Paul Wallington <jpw@gnu.org>
7168
7169 * fileio.c (read_file_name_completion_ignore_case): New variable.
7170 (syms_of_fileio): Declare and initialise it.
7171 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7172
7173 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7174
7175 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7176 for event.x and event.y.
7177
7178 2004-07-01 Kenichi Handa <handa@m17n.org>
7179
7180 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7181 after getting a new string by pre-write-conversion.
7182
7183 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7184
7185 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7186 (x_calc_absolute_position): Remove unused var `child'.
7187
7188 * xfaces.c (x_supports_face_attributes_p)
7189 (Fdisplay_supports_face_attributes_p): YAILOM.
7190 (tty_supports_face_attributes_p): Remove unused var `i'.
7191
7192 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7193 back_unibyte_ok.
7194
7195 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7196
7197 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7198
7199 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7200
7201 2004-06-30 Andreas Schwab <schwab@suse.de>
7202
7203 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7204 (Finit_image_library): Pass LIBRARIES through to
7205 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7206 (lookup_image_type): Pass Qnil as second argument to
7207 Finit_image_library.
7208
7209 * lisp.h (Finit_image_library): Declare.
7210
7211 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7212
7213 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7214 (XTread_socket): Send mouse button events to the toolbox
7215 dispatcher even when the mouse is grabbed. Don't process window
7216 activate events for non-Emacs windows. Replace function calls to
7217 do_window_activate and do_window_deactivate with their contents.
7218 Reset mouse grabbing status when a window is deactivated.
7219
7220 2004-06-29 Steven Tamm <steventamm@mac.com>
7221
7222 * macterm.c (mac_get_emulated_btn)
7223 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7224 support to correctly mask out modifiers.
7225
7226 2004-06-29 David Kastrup <dak@gnu.org>
7227
7228 * search.c (Fset_match_data): Allow buffer before end of list
7229 which can happen if set-match-data is using a pre-consed list.
7230
7231 2004-06-28 Steven Tamm <steventamm@mac.com>
7232
7233 * macterm.c (XTread_socket): Correctly set the frame position
7234 after the window is moved.
7235
7236 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7237
7238 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7239 gpix and gmask just before return to avoid memory leak.
7240 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7241 so insensitive and activated icons look ok.
7242
7243 2004-06-27 Jason Rumney <jasonr@gnu.org>
7244
7245 * w32fns.c (file_dialog_callback): Disable edit control if set
7246 to directories only on CDN_INITDONE message.
7247 (Fx_file_dialog): Default to directories only when prompt starts
7248 with "Dired".
7249
7250 2004-06-25 Kim F. Storm <storm@cua.dk>
7251
7252 * alloc.c (allocate_misc): Update total_free_markers.
7253 (free_misc): New function.
7254 (safe_alloca_unwind, free_marker): Use it.
7255
7256 * lisp.h (free_misc): Add prototype.
7257
7258 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7259
7260 2004-06-24 Richard M. Stallman <rms@gnu.org>
7261
7262 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7263 (syms_of_emacs): Lisp variables deleted.
7264
7265 2004-06-23 David Kastrup <dak@gnu.org>
7266
7267 * search.c (Freplace_match): Adjust the match-data more thoroughly
7268 when replacing strings in the buffer.
7269 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7270 a buffer, add the buffer as last element to the match data.
7271 (Fset_match_data): If an additional element of the match-data is a
7272 buffer, restore it to last_thing_searched.
7273 (save_search_regs): Save last_thing_searched as part of the match data.
7274 (restore_match_data): Restore it again.
7275
7276 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7277
7278 * keymap.c (Ftext_char_description): Doc fix.
7279 * doc.c (Fsnarf_documentation): Doc fix.
7280
7281 2004-06-22 Kim F. Storm <storm@cua.dk>
7282
7283 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7284
7285 * lisp.h (struct Lisp_Save_Value): New member dogc.
7286 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7287 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7288 (SAFE_FREE_LISP): New macro.
7289
7290 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7291 (make_save_value): Init new dogc member.
7292 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7293
7294 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7295 SAFE_FREE_LISP macros.
7296
7297 2004-06-22 Kim F. Storm <storm@cua.dk>
7298
7299 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7300 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7301 in that memory area are unknown to GC. Add comments.
7302
7303 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7304
7305 2004-06-21 Kim F. Storm <storm@cua.dk>
7306
7307 * lisp.h (MAX_ALLOCA): Define here.
7308 (safe_alloca_unwind): Add prototype.
7309 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7310
7311 * alloc.c (safe_alloca_unwind): New function.
7312
7313 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7314
7315 * charset.c (Fstring): Use SAFE_ALLOCA.
7316
7317 * coding.c (MAX_ALLOCA): Remove define.
7318
7319 * data.c (MAX_ALLOCA): Remove define.
7320 (Faset): Use SAFE_ALLOCA.
7321
7322 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7323
7324 * fns.c (string_make_multibyte, string_to_multibyte)
7325 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7326 (MAX_ALLOCA): Remove define.
7327 (Fbase64_encode_region, Fbase64_encode_string)
7328 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7329 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7330 memory leak if encoding fails.
7331
7332 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7333
7334 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7335
7336 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7337
7338 2004-06-20 Richard M. Stallman <rms@gnu.org>
7339
7340 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7341
7342 * search.c (match_limit): Cleaner err msg when no match data available.
7343
7344 * window.c (syms_of_window): Doc fix.
7345
7346 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7347 for Vtransient_mark_mode.
7348
7349 * buffer.c (syms_of_buffer): Doc fix.
7350
7351 2004-06-21 David Kastrup <dak@gnu.org>
7352
7353 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7354 and unbinding of `case-fold-search' according to
7355 `completion-ignore-case' around calls of string-match and
7356 predicates, respectively. Should give satisfactory performance
7357 in all relevant cases.
7358
7359 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7360
7361 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7362 clip_x/y_origin.
7363
7364 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7365
7366 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7367
7368 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7369 on Mac OSX.
7370
7371 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7372
7373 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7374
7375 2004-06-16 Kim F. Storm <storm@cua.dk>
7376
7377 * dispextern.h (Vimage_types): Remove extern.
7378
7379 2004-06-16 Miles Bader <miles@gnu.org>
7380
7381 * image.c (lookup_image_type): Initialize image type if necessary.
7382
7383 2004-06-15 Kim F. Storm <storm@cua.dk>
7384
7385 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7386 margin at top of window.
7387 (try_window_reusing_current_matrix): Calculate proper cursor position
7388 after scrolling up with non-zero scroll margin, as the old cursor
7389 position corresponds to value of PT before executing this command.
7390 (try_window_id): Consider scroll margin at bottom of window too;
7391 otherwise we fail to scroll when hl-line-mode is enabled.
7392
7393 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7394 proper format and class is a lower-case word.
7395
7396 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7397
7398 * gtkutil.c (xg_get_image_for_pixmap): New function.
7399 (xg_get_gdk_pixmap_and_mask): Remove.
7400 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7401 xg_get_gdk_pixmap_and_mask.
7402
7403 * xterm.h (struct x_display_info): Typo in comment fixed.
7404
7405 2004-06-14 Juanma Barranquero <lektu@terra.es>
7406
7407 * dispextern.h (Vimage_types): Make it conditional on
7408 HAVE_WINDOW_SYSTEM.
7409
7410 * image.c (Vimage_types): Move from xdisp.c.
7411 (Vimage_type_cache): New variable.
7412 (define_image_type): New argument indicating whether an image
7413 library was loaded; cache loaded status and return t on success,
7414 nil otherwise.
7415 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7416 (w32_delayed_load): New function to load an image library from a
7417 list of possible filenames.
7418 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7419 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7420 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7421 (Finit_image_library): New function, extracted from `init_image'.
7422 Try to initialize an image library on demand and cache whether we
7423 were successful or not.
7424 (syms_of_image): Initialize `Vimage_types' and
7425 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7426 Export `init-image-library'.
7427 (init_image): Remove initialization of all image types, except xbm
7428 and pbm.
7429
7430 * xdisp.c (Vimage_types): Delete (moved to image.c).
7431
7432 2004-06-14 Andreas Schwab <schwab@suse.de>
7433
7434 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7435 Avoid calling specbind when completion-regexp-list is empty.
7436
7437 2004-06-13 Richard M. Stallman <rms@gnu.org>
7438
7439 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7440 (re_wctype, re_iswctype, re_wctype_to_bit):
7441 Non-function definitions moved here from regex.c.
7442
7443 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7444 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7445 (re_wctype, re_iswctype, re_wctype_to_bit):
7446 Non-function definitions moved to regex.h.
7447
7448 * window.c (Fselect_window): Doc fix.
7449
7450 * syntax.c: Include regex.h.
7451 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7452 If requested, make a list of classes, then check the scanned
7453 chars for membership in them.
7454 (in_classes): New function.
7455 Doc fix.
7456
7457 * keyboard.c (cmd_error): Don't call any_kboard_state
7458 if inside a recursive edit level.
7459
7460 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7461
7462 * keyboard.c (command_loop): Call any_kboard_state before
7463 command_loop_2 when at top level.
7464
7465 2004-06-13 Andreas Schwab <schwab@suse.de>
7466
7467 * print.c (print_object): Always use %ld for printing EMACS_INT.
7468
7469 * keyboard.c (cancel_hourglass_unwind): Return a value.
7470 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7471 (Fexecute_extended_command): Likewise.
7472
7473 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7474 avoid clashes.
7475 (SYNTAX): Likewise.
7476 (SYNTAX_WITH_FLAGS): Likewise.
7477 (SYNTAX_MATCH): Likewise.
7478
7479 * syntax.c (char_quoted): Avoid warning about undefined operation.
7480 (find_defun_start): Likewise.
7481 (scan_lists): Likewise.
7482 (INC_FROM): Likewise.
7483 (scan_sexps_forward): Likewise.
7484
7485 * image.c: Include <ctype.h>.
7486
7487 * xfaces.c (face_attr_equal_p): Declare parameters.
7488
7489 2004-06-13 Kenichi Handa <handa@m17n.org>
7490
7491 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7492
7493 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7494
7495 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7496
7497 2004-06-12 Kenichi Handa <handa@m17n.org>
7498
7499 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7500 ccl_prog_stack_struct and update it.
7501 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7502 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7503 ccl->eof_ic on EOF.
7504 (ccl_debug_hook): New function.
7505 (struct ccl_prog_stack): New member eof_ic.
7506 (ccl_driver): Handle EOF in subrountine call correctly.
7507
7508 2004-06-11 Kenichi Handa <handa@m17n.org>
7509
7510 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7511
7512 2004-06-11 Kim F. Storm <storm@cua.dk>
7513
7514 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7515
7516 2004-06-11 Juanma Barranquero <lektu@terra.es>
7517
7518 * keyboard.c (Fposn_at_point): Doc fix.
7519
7520 2004-06-11 David Kastrup <dak@gnu.org>
7521
7522 * search.c (match_limit): Don't flag an error if match-data
7523 exceeding the allocated search_regs.num_regs gets requested, just
7524 return Qnil.
7525
7526 2004-06-08 Miles Bader <miles@gnu.org>
7527
7528 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7529
7530 2004-06-07 Juanma Barranquero <lektu@terra.es>
7531
7532 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7533 (Fcurrent_time_string, Fcurrent_time_zone)
7534 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7535
7536 2004-06-07 Miles Bader <miles@gnu.org>
7537
7538 * xfaces.c (struct named_merge_point): New type.
7539 (push_named_merge_point): New function.
7540 (merge_named_face): New function.
7541 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7542 Use `merge_named_face'.
7543 (merge_face_inheritance): Function removed.
7544 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7545 Add new `err_msgs' and `named_merge_points' args. Return error
7546 status. Only print error messages if ERR_MSGS is true. Don't try to
7547 do :inherit attribute validation.
7548 (merge_face_heights): Handle `unspecified' in both directions.
7549 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7550 Call `merge_face_ref' instead of `merge_face_inheritance'.
7551 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7552 (compute_char_face, face_at_buffer_position)
7553 (face_at_string_position): Call `merge_face_ref' instead of
7554 `merge_face_vector_with_property'.
7555
7556 2004-06-07 Kenichi Handa <handa@m17n.org>
7557
7558 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7559 the necessary places.
7560
7561 2004-06-07 Kim F. Storm <storm@cua.dk>
7562
7563 * process.c (Fdelete_process): Undo 2004-05-28 change.
7564 Instead, call status_notify also for network process.
7565 (status_message): Use process instead of status as arg.
7566 Give messages "deleted" or "connection broken by remote peer" for
7567 an exited network process.
7568 (status_notify): Change call to status_message.
7569 (read_process_output): Increase readmax to 4096. Do not increase
7570 buffer size for datagram channels (default is now large enough).
7571
7572 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7573
7574 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7575 problem due to newly defined variable.
7576
7577 2004-06-06 Miles Bader <miles@gnu.org>
7578
7579 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7580 immediately if non-interactive or not initialized.
7581
7582 2004-06-05 Richard M. Stallman <rms@gnu.org>
7583
7584 * minibuf.c (Fcompleting_read): Doc fix.
7585
7586 2004-06-05 Andreas Schwab <schwab@suse.de>
7587
7588 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7589
7590 2004-06-05 Juanma Barranquero <lektu@terra.es>
7591
7592 * keymap.c (Fdescribe_vector): Fix docstring.
7593 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7594
7595 2004-06-05 Miles Bader <miles@gnu.org>
7596
7597 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7598 attributes have different values than the default face.
7599
7600 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7601
7602 * xfaces.c (x_supports_face_attributes_p): Make this function
7603 conditional on HAVE_WINDOW_SYSTEM.
7604 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7605 Don't call x_supports_face_attributes_p if it was not compiled in.
7606
7607 2004-06-04 Miles Bader <miles@gnu.org>
7608
7609 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7610 from Ftty_supports_face_attributes_p.
7611 (x_supports_face_attributes_p): New function.
7612 (Ftty_supports_face_attributes_p): Function deleted.
7613 (Fdisplay_supports_face_attributes_p): New function.
7614 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7615 (face_attr_equal_p): New function.
7616 (lface_equal_p): Use it.
7617
7618 2004-06-03 Juanma Barranquero <lektu@terra.es>
7619
7620 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7621 (Vw32_color_map): Fix typo in docstring.
7622 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7623 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7624 Make argument names match their use in docstring.
7625
7626 2004-06-02 Juanma Barranquero <lektu@terra.es>
7627
7628 Work around bugs/problems with MinGW builds of graphics libraries
7629 called from MSVC builds of Emacs.
7630
7631 * image.c (lookup_image): Make pointer to img static.
7632 (png_read_from_memory): Disable "global" optimization.
7633
7634 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7635
7636 * eval.c (Fcondition_case): Fix usage. Simplify.
7637
7638 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7639
7640 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7641
7642 * macfns.c: Don't include ccl.h.
7643 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7644 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7645 TextUtils.h.
7646 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7647 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7648 display height/width.
7649 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7650 (unwind_create_tip_frame, compute_tip_xy): New functions.
7651 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7652 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7653 and last_show_tip_args.
7654
7655 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7656 (Cursor, No_Cursor): New defines.
7657 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7658 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7659
7660 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7661
7662 * macterm.c: Don't include Gestalt.h.
7663 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7664 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7665 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7666 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7667 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7668 (construct_mouse_click, XTmouse_position)
7669 (x_scroll_bar_report_motion, x_calc_absolute_position)
7670 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7671 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7672 (note_mouse_movement): Clear the mouse face and reset the pointer
7673 shape when the pointer goes outside the frame without grabbing.
7674 (mac_front_window): New function.
7675 (mac_window_to_frame): New macro.
7676 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7677 (do_window_activate, do_window_deactivate, do_app_resume)
7678 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7679 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7680 (mac_check_for_quit_char): Use mac_front_window and/or
7681 mac_window_to_frame.
7682 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7683 scroll-bar click event.
7684 (mac_define_frame_cursor): Change the pointer shape.
7685 (x_free_frame_resources): Reset tip_window to NULL when it is
7686 disposed of.
7687 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7688 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7689 (do_window_update): Don't do anything if the updated window is the
7690 tooltip window.
7691 (do_mouse_moved): Handle mouse movement events here (previously in
7692 XTread_socket). Clear the mouse face if
7693 dpyinfo->mouse_face_hidden is set.
7694 (do_os_event, do_events): Remove (now in XTread_socket).
7695 (XTread_socket): Immediately return if interrupt_input_blocked.
7696 Loop until all the events in the queue are processed.
7697 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7698 contents of do_os_event and do_events. Remove mouse movement
7699 handling (now in do_mouse_moved). Add the case where
7700 Vmouse_highlight has an integer value.
7701 (NewMacWindow): Remove.
7702 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7703 excess initializations.
7704 (make_mac_terminal_frame): Previous initializations in
7705 make_mac_frame are moved here.
7706 (mac_initialize_display_info):
7707 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7708
7709 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7710 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7711
7712 2004-05-29 Richard M. Stallman <rms@gnu.org>
7713
7714 * lisp.h (truncate_undo_list): Update decl.
7715
7716 * alloc.c (undo_outer_limit): New variable.
7717 (syms_of_alloc): Defvar it.
7718 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7719
7720 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7721
7722 * alloc.c (lisp_align_malloc): Check for base == 0
7723 regardless of HAVE_POSIX_MEMALIGN.
7724 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7725
7726 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7727
7728 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7729 (marker_blocks_pending_free): Remove.
7730 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7731 Mark the undo lists after claning them up.
7732 Don't free block in marker_blocks_pending_free.
7733 (mark_buffer): Don't mark undo_list.
7734 (gc_sweep): Sweep hash-tables and strings first.
7735 Do free marker blocks that are empty.
7736
7737 2004-05-28 Jim Blandy <jimb@redhat.com>
7738
7739 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7740 after 'case wordend'. For symbeg and symend, print to stderr,
7741 like the other cases.
7742
7743 2004-05-28 Noah Friedman <friedman@splode.com>
7744
7745 * process.c (Fdelete_process): Do not call remove_process.
7746
7747 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7748
7749 * alloc.c (struct backtrace): Remove.
7750 (Fgarbage_collect): Use the new mark_backtrace.
7751
7752 * eval.c (mark_backtrace): New function.
7753
7754 * minibuf.c (run_exit_minibuf_hook): New function.
7755 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7756 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7757
7758 2004-05-27 Kim F. Storm <storm@cua.dk>
7759
7760 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7761 over display properties, e.g. images, that replace buffer text.
7762
7763 2004-05-25 Kim F. Storm <storm@cua.dk>
7764
7765 * alloc.c (marker_blocks_pending_free): New var.
7766 (gc_sweep): Store free marker blocks on that list.
7767 (Fgarbage_collect): Free them after undo-list cleanup.
7768
7769 * process.c (wait_reading_process_input): Check connect_wait_mask
7770 before actually accepting connection in case it has already been
7771 accepted due to recursion.
7772
7773 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7774
7775 * coding.c (Fset_safe_terminal_coding_system_internal):
7776 Set suppress_error in safe_terminal_coding, not terminal_coding.
7777
7778 2004-05-22 Richard M. Stallman <rms@gnu.org>
7779
7780 * alloc.c (Fmake_string): Doc fix.
7781
7782 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7783 and the alist pairs too.
7784
7785 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7786
7787 * emacs.c (main): Update copyright year.
7788
7789 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7790
7791 * insdel.c (del_range_2, replace_range): Don't write an anchor
7792 if the gap is empty.
7793
7794 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7795 scroll-down-aggressively is small but positive, put point
7796 near the screen edge.
7797
7798 2004-05-22 Juanma Barranquero <lektu@terra.es>
7799
7800 * keymap.c (Fdefine_key): Doc fix.
7801
7802 2004-05-22 Kim F. Storm <storm@cua.dk>
7803
7804 * alloc.c (struct backtrace): Add debug_on_exit member.
7805 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7806 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7807 the removed cons cells.
7808 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7809 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7810 any cons cells pointing to unallocated stings.
7811 Do not lisp_free any marker blocks, as there may still be pointers
7812 to them from buffer undo lists at this stage of GC.
7813
7814 * keyboard.c (struct backtrace): Add debug_on_exit member.
7815 (Fcommand_execute): Clear it.
7816
7817 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7818
7819 * intervals.c (lookup_char_property): Do not prematurely return nil.
7820
7821 2004-05-19 Jim Blandy <jimb@redhat.com>
7822
7823 Add support for new '\_<' and '\_>' regexp operators, matching the
7824 beginning and end of symbols.
7825
7826 * regex.c (enum syntaxcode): Add Ssymbol.
7827 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7828 (re_opcode_t): New opcodes `symbeg' and `symend'.
7829 (print_partial_compiled_pattern): Print the new opcodes properly.
7830 (regex_compile): Parse the new operators.
7831 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7832 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7833 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7834 (re_match_2_internal): Match symbeg and symend.
7835
7836 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7837
7838 2004-05-19 Kim F. Storm <storm@cua.dk>
7839
7840 * .gdbinit (xsymbol): Fix last change.
7841
7842 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7843
7844 * .gdbinit (xprintstr): New fun.
7845 (xstring, xprintsym): Use it.
7846
7847 * w32proc.c (create_child): Use INTMASK.
7848
7849 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7850 unmarked elements of the undo list.
7851
7852 2004-05-18 David Ponce <david@dponce.com>
7853
7854 * print.c (print): Reset print_depth before to call print_object.
7855
7856 2004-05-18 Jason Rumney <jasonr@gnu.org>
7857
7858 * w32console.c: Prefix RIF functions with w32con_ to avoid
7859 namespace clash with functions in term.c and w32term.c.
7860
7861 * w32menu.c (add_menu_item, w32_menu_display_help)
7862 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7863
7864 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7865
7866 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7867
7868 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7869
7870 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7871 with make_number.
7872 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7873 with XINT.
7874
7875 2004-05-18 Kim F. Storm <storm@cua.dk>
7876
7877 * blockinput.h (INPUT_BLOCKED_P): New macros.
7878
7879 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7880 (Ftop_level): Unblock input if blocked.
7881
7882 * buffer.h (GET_OVERLAYS_AT): New macro.
7883 * msdos.c (IT_note_mouse_highlight): Use it.
7884 * textprop.c (get_char_property_and_overlay): Use it.
7885 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7886 * xfaces.c (face_at_buffer_position): Use it.
7887
7888 * print.c (print_object): Increase buf size.
7889
7890 2004-05-17 Jason Rumney <jasonr@gnu.org>
7891
7892 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7893 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7894 Lisp_Object using i member.
7895 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7896 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7897 consistently.
7898
7899 * w32proc.c (create_child): Use make_number instead of masking pid.
7900
7901 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7902 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7903 Use EQ to compare Lisp_Objects.
7904 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7905
7906 * w32term.c (w32_num_mouse_buttons): Rename from
7907 Vw32_num_mouse_buttons and make it an int.
7908
7909 * w32.c (init_environment): Use it.
7910
7911 * w32fns.c (w32_wnd_proc): Likewise.
7912
7913 * w32proc.c (w32_pipe_read_delay): Rename from
7914 Vw32_pipe_read_delay and make it an int.
7915
7916 * w32.c (_sys_read_ahead): Use it.
7917
7918 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7919
7920 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7921
7922 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7923 (key_event): Don't mix Lisp_Object and int.
7924
7925 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7926
7927 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7928 modifiers in language change event.
7929
7930 2004-05-17 Kim F. Storm <storm@cua.dk>
7931
7932 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7933 Such objects may be freed markers which still exist on an undo list.
7934
7935 2004-05-16 Juanma Barranquero <lektu@terra.es>
7936
7937 * data.c (Fset_default): Make argument names match their use in
7938 docstring.
7939
7940 2004-05-15 Andreas Schwab <schwab@suse.de>
7941
7942 * emacs.c (gdb_array_mark_flag): Define.
7943 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7944
7945 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7946
7947 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7948 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7949 defined for the MS-DOS build.
7950
7951 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7952
7953 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7954
7955 2004-05-14 Kenichi Handa <handa@m17n.org>
7956
7957 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7958
7959 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7960
7961 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7962 section to frame.c section.
7963 (Fxw_display_color_p, Fx_file_dialog): Declare if
7964 HAVE_WINDOW_SYSTEM defined.
7965
7966 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7967
7968 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7969
7970 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7971 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7972 (XTread_socket): Fix int/Lisp_Object mixup.
7973 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7974
7975 * macterm.h (struct frame, struct face, struct image)
7976 (display_x_get_resource, Fx_display_color_p)
7977 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7978 Add prototypes.
7979
7980 2004-05-14 Kim F. Storm <storm@cua.dk>
7981
7982 * process.c (wait_reading_process_input): Make reentrant.
7983 Make Available and Connecting non-static. Save and restore value
7984 of waiting_for_user_input_p.
7985
7986 2004-05-13 Kim F. Storm <storm@cua.dk>
7987
7988 * keyboard.c (mark_kboards): Don't mark x and y members
7989 that are overloaded in selection request events.
7990
7991 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7992
7993 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7994
7995 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7996
7997 * window.c (Fdisplay_buffer, Fsplit_window)
7998 (split-height-threshold): Doc fix.
7999
8000 2004-05-13 Juanma Barranquero <lektu@terra.es>
8001
8002 * xfaces.c (Ftty_supports_face_attributes_p)
8003 (Finternal_copy_lisp_face): Fix typo in docstring.
8004 (Finternal_get_lisp_face_attribute): Fix docstring.
8005
8006 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8007
8008 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8009
8010 2004-05-11 Steven Tamm <steventamm@mac.com>
8011
8012 * macfns.c (Fx_create_frame): Default to using tool-bar by
8013 setting tool-bar-lines to 1 in default-frame-alist.
8014
8015 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8016
8017 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8018 (xpm_get_color_table_v, xpm_make_color_table_h)
8019 (xpm_put_color_table_h, xpm_get_color_table_h)
8020 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8021 (syms_of_image): Support XPM on Carbon Emacs. Does not
8022 depend on libXpm, but only supports XPM version 3 without extensions.
8023
8024 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8025
8026 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8027 instead of FRAME_X_P
8028
8029 2004-05-11 Kim F. Storm <storm@cua.dk>
8030
8031 * process.c (read_process_output): Grow decoding_buf when needed;
8032 this could cause a crash in allocate_string and compact_small_strings.
8033
8034 2004-04-29 Jim Blandy <jimb@redhat.com>
8035
8036 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8037 against proper opcode.
8038
8039 2004-05-10 Juanma Barranquero <lektu@terra.es>
8040
8041 * process.c (Fstart_process): Fix docstring.
8042
8043 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8044 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8045 (Fsplit_char, Fchar_charset): Make argument names match their use
8046 in docstring.
8047
8048 2004-05-10 Richard M. Stallman <rms@gnu.org>
8049
8050 * print.c (print_preprocess): Use being_printed, loop_count and
8051 halftail to detect overdeep nesting and cyclic cdr chains.
8052
8053 2004-05-10 Andreas Schwab <schwab@suse.de>
8054
8055 * lisp.h (Fmake_symbolic_link): Declare.
8056
8057 * fileio.c (Frename_file): Remove extra argument in call to
8058 Fmake_symbolic_link.
8059
8060 2004-05-10 Kim F. Storm <storm@cua.dk>
8061
8062 * xdisp.c (calc_line_height_property): Use string position when
8063 object is a string.
8064
8065 2004-05-10 Kenichi Handa <handa@m17n.org>
8066
8067 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8068 inhibit-modification-hooks to t temporarily before calling
8069 Ferase_buffer.
8070
8071 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8072 inhibit-modification-hooks to t temporarily before calling
8073 Ferase_buffer.
8074
8075 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8076 inhibit-modification-hooks to t temporarily before calling
8077 Ferase_buffer.
8078
8079 * fns.c (count_combining): Delete it.
8080 (concat): Don't check combining bytes.
8081
8082 2004-05-09 Jason Rumney <jasonr@gnu.org>
8083
8084 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8085 (globals_of_w32fns): Set it.
8086
8087 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8088
8089 * data.c (Fquo): Simplify.
8090
8091 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8092
8093 * data.c (Fquo): If any argument is float, do the computation in
8094 floating point.
8095
8096 2004-05-08 Juanma Barranquero <lektu@terra.es>
8097
8098 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8099 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8100 Fix spelling of Emacs on docstring.
8101 (Fset_process_coding_system, Fprocess_coding_system)
8102 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8103 Make argument names match their use in docstring.
8104 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8105 Fix docstring.
8106
8107 * editfns.c (Finsert_buffer_substring): Make argument names match their
8108 use in docstring.
8109
8110 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8111
8112 2004-05-07 Steven Tamm <steventamm@mac.com>
8113
8114 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8115 around call to ReceiveEvent to avoid certain crashes.
8116
8117 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8118
8119 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8120 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8121 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8122 Save/restore the current graphics port and device handle when
8123 drawing into an offscreen graphics world.
8124
8125 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8126 (gif_load): Likewise.
8127
8128 2004-05-07 Juanma Barranquero <lektu@terra.es>
8129
8130 * window.c (Fset_window_buffer): Fix docstring.
8131
8132 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8133
8134 * emacs.c (main) [VMS]: Fix var ref.
8135
8136 2004-05-06 Romain Francoise <romain@orebokech.com>
8137
8138 * data.c (Fsetq_default): Fix docstring.
8139
8140 2004-05-06 Jason Rumney <jasonr@gnu.org>
8141
8142 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8143 to avoid name clash.
8144
8145 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8146
8147 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8148 (Frename_file): Handle renaming of symlinks across file systems.
8149 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8150
8151 2004-05-04 Kim F. Storm <storm@cua.dk>
8152
8153 * xdisp.c (Qtotal): New var.
8154 (syms_of_xdisp): Intern and staticpro it.
8155 (calc_line_height_property): New arg total. Set it if
8156 line-spacing property has format (total . VALUE).
8157 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8158 Handle total line-spacing property.
8159
8160 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8161
8162 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8163 "under" scroll bar when size/position changes.
8164
8165 2004-05-03 Jason Rumney <jasonr@gnu.org>
8166
8167 * makefile.nt: Remove.
8168
8169 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8170
8171 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8172 Avoid compiler warnings.
8173
8174 * Makefile.in (region-cache.o): Depend on config.h.
8175
8176 2004-05-02 Romain Francoise <romain@orebokech.com>
8177
8178 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8179 with continuation lines, too.
8180
8181 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8182
8183 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8184
8185 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8186
8187 * xdisp.c (calc_line_height_property): YAILOM (yet another
8188 int/Lisp_Object mixup).
8189
8190 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8191
8192 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8193 undo bad effect of pack(4) in some versions of system headers.
8194
8195 2004-05-01 Jason Rumney <jasonr@gnu.org>
8196
8197 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8198
8199 2004-04-30 Kim F. Storm <storm@cua.dk>
8200
8201 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8202 (syms_of_buffer) <cursor-type>: Doc fix.
8203
8204 * dispextern.h (struct it): Remove member use_default_face.
8205 Add members override_ascent, override_descent, override_boff.
8206
8207 * xdisp.c (init_iterator): Handle line-spacing float value.
8208 Initialize override_ascent member.
8209 (append_space_for_newline): Reset override_ascent.
8210 Remove use_default_face.
8211 (calc_line_height_property): New function to calculate value of
8212 line-height and line-spacing properties. Look at overlays, too.
8213 Set override_ascent, override_descent, override_boff members when
8214 using another face than the current face. Float values are now
8215 relative to the frame default font, by default; accept a cons
8216 of ratio and face name to specify value relative to a specific face.
8217 (x_produce_glyphs): Use calc_line_height_property.
8218 Use override_ascent etc. when set to handle different face heights.
8219 A negative line-spacing property value is interpreted as a total
8220 line height, rather than inter-line spacing.
8221 (note_mouse_highlight): Allocate room for 40 overlays initially.
8222
8223 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8224
8225 * data.c (Fsubr_name): New fun.
8226 (syms_of_data): Defsubr it.
8227
8228 2004-04-29 Kim F. Storm <storm@cua.dk>
8229
8230 * xdisp.c (null_glyph_slice): New var.
8231 (append_glyph, append_composite_glyph, append_stretch_glyph):
8232 Use it to initialize glyph slice.
8233
8234 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8235
8236 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8237 (on_hot_spot_p): Make sure we always return a value.
8238 (Flookup_image_map): Remove unused var ix and iy.
8239 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8240
8241 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8242
8243 * msdos.c (init_environment): If one of the TMP... environment
8244 variables is set to a drive letter without a trailing slash,
8245 append a slash.
8246
8247 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8248
8249 * editfns.c (lisp_time_argument): Provide externally.
8250
8251 * fileio.c (Fset_file_times): New function.
8252 (syms_of_fileio): Intern and staticpro it.
8253
8254 2004-04-27 Kim F. Storm <storm@cua.dk>
8255
8256 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8257 header line strings.
8258
8259 * dispextern.h (struct it): New member use_default_face.
8260
8261 * xdisp.c (Qline_height): New variable.
8262 (syms_of_xdisp): Intern and staticpro it.
8263 (append_space_for_newline): Partially undo 2004-04-25 change;
8264 add default_face_p arg, and restore callers.
8265 Clear it->use_default_face after use.
8266 (x_produce_glyphs): Set default font for ascii char if
8267 it->use_default_font is set. Change line-spacing property to set
8268 just extra line spacing. Handle new line-height property.
8269
8270 2004-04-26 Andreas Schwab <schwab@suse.de>
8271
8272 * print.c (print_object): Print non-ascii characters in bool
8273 vector representation as octal escapes.
8274
8275 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8276 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8277 bool vectors.
8278 * lread.c (read1): Likewise.
8279 * alloc.c (Fmake_bool_vector): Likewise.
8280 * data.c (Faref, Faset): Likewise.
8281 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8282 (mapcar1): Likewise.
8283
8284 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8285
8286 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8287
8288 2004-04-26 Miles Bader <miles@gnu.org>
8289
8290 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8291
8292 2004-04-26 Juanma Barranquero <lektu@terra.es>
8293
8294 * buffer.c (Fpop_to_buffer): Fix docstring.
8295
8296 2004-04-26 Steven Tamm <steventamm@mac.com>
8297
8298 * lread.c (init_lread): Don't display missing lisp directory
8299 warnings with Carbon Emacs because self-contained bundled Emacs
8300 may be built without correct installation path.
8301
8302 2004-04-25 Kim F. Storm <storm@cua.dk>
8303
8304 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8305
8306 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8307
8308 * xdisp.c (append_space_for_newline): Rename from append_space.
8309 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8310 (x_produce_glyphs): Handle line-spacing property on newline char.
8311 If value is t, adjust ascent and descent to fit current row height.
8312 If value is an integer or float, set extra_line_spacing to integer
8313 value, or to float value x current line height.
8314
8315 2004-04-23 Kenichi Handa <handa@m17n.org>
8316
8317 * fontset.c (Finternal_char_font): If POSITION is nil, return
8318 font for displaying CH with the default face.
8319
8320 2004-04-23 Juanma Barranquero <lektu@terra.es>
8321
8322 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8323
8324 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8325
8326 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8327 Don't make assumptions about the relative place of i and val.
8328 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8329
8330 2004-04-21 Kim F. Storm <storm@cua.dk>
8331
8332 * dispextern.h (struct glyph_slice): New struct.
8333 (struct glyph): New member slice.
8334 (GLYPH_SLICE_EQUAL_P): New macro.
8335 (GLYPH_EQUAL_P): Use it.
8336 (struct glyph_string): New member slice.
8337 (struct it_slice): New struct.
8338 (struct it): New member slice, add member to stack too.
8339 New member constrain_row_ascent_descent_p.
8340 (image_ascent): Add prototype.
8341
8342 * dispnew.c (buffer_posn_from_coords): Return full image width
8343 and height even for image slices (posn is relative to full image).
8344 (marginal_area_string): Adjust x0,y0 for image slice.
8345
8346 * image.c (image_ascent): Add slice arg; calculate ascent for
8347 image slice (or full image).
8348
8349 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8350 (syms_of_keyboard): Defsubr them.
8351
8352 * lisp.h (pos_visible_p): Fix prototype.
8353
8354 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8355 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8356 (x_draw_image_foreground, x_draw_image_relief)
8357 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8358 Draw sliced images.
8359
8360 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8361 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8362 (x_draw_image_foreground, x_draw_image_relief)
8363 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8364 Draw sliced images.
8365
8366 * w32term.h (image_ascent): Remove prototype.
8367
8368 * window.c (Fpos_visible_in_window_p): Return pixel position if
8369 PARTIALLY arg is non-nil. Simplify. Doc fix.
8370 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8371 to return/set vscroll in pixels.
8372
8373 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8374
8375 * xdisp.c (Qslice): New variable.
8376 (syms_of_xdisp): Intern and staticpro it.
8377 (pos_visible_p): Return pixel position in new x and y args.
8378 (init_iterator): Reset it->slice info.
8379 (handle_display_prop): Parse (slice ...) property.
8380 (push_it, pop_it): Save/restore slice info.
8381 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8382 force repositioning of tall row if window is vscrolled, as that
8383 would reset vscroll.
8384 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8385 increasing row height if row is non-empty.
8386 (fill_image_glyph_string): Copy slice info.
8387 (take_vertical_position_into_account): Simplify.
8388 (produce_image_glyph): Handle iterator slice info, setup glyph
8389 slice info. Do not force minimum line height.
8390 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8391 do not increase height (ascent/descent) of non-empty row when
8392 adding normal character glyph; instead reduce glyph ascent/descent
8393 appropriately; if row is higher than current glyph, adjust glyph
8394 descent/ascent to reposition glyph within the existing row.
8395 Likewise, when char is newline, only set ascent/descent if row is
8396 currently empty.
8397 (note_mouse_highlight): Handle hotspots with sliced image.
8398
8399 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8400 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8401 (x_draw_image_foreground, x_draw_image_relief)
8402 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8403 Draw sliced images.
8404
8405 * xterm.h (image_ascent): Remove prototype.
8406
8407 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8408
8409 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8410
8411 2004-04-20 John Paul Wallington <jpw@gnu.org>
8412
8413 * fns.c (Fassoc, Feql): Fix indentation.
8414
8415 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8416
8417 2004-04-19 John Paul Wallington <jpw@gnu.org>
8418
8419 * fns.c (Feql): New function.
8420 (syms_of_fns): Defsubr it.
8421
8422 2004-04-18 Jason Rumney <jasonr@gnu.org>
8423
8424 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8425 after closing the clipboard.
8426
8427 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8428
8429 * buffer.c (Fbuffer_base_buffer): Doc fix.
8430
8431 2004-04-17 Kim F. Storm <storm@cua.dk>
8432
8433 * keymap.c (Fkey_description): Add optional PREFIX arg.
8434 Combine prefix with KEYS to make up the full key sequence to describe.
8435 Correlate meta_prefix_char and following (simple) key to describe
8436 as meta modifier. All callers changed.
8437 (describe_map): Rename arg `keys' to `prefix'. Remove local
8438 `elt_prefix' var. Use Fkey_description with prefix instead of
8439 elt_prefix combined with Fsingle_key_description.
8440 (describe_vector): Declare static. Replace arg `elt_prefix' with
8441 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8442 if !KEYMAP_P. Use Fkey_description with prefix instead of
8443 Fsingle_key_description.
8444
8445 * keymap.h (Fkey_description): Fix prototype.
8446 (describe_vector): Remove prototype.
8447
8448 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8449
8450 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8451 (png_load): Fix calculation of transparent background color on X
8452 and W32 platforms.
8453
8454 2004-04-16 Juanma Barranquero <lektu@terra.es>
8455
8456 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8457 not too large before computing how much to scroll.
8458
8459 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8460
8461 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8462
8463 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8464
8465 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8466 Add hyperlink to Elisp manual to the docstring.
8467
8468 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8469
8470 * callint.c (fix_command): Use XDCR.
8471
8472 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8473
8474 * window.c (Fget_lru_window): Doc fix.
8475
8476 2004-04-14 Kim F. Storm <storm@cua.dk>
8477
8478 * editfns.c (Fformat): Fix allocation size of precision array.
8479
8480 * dispnew.c (update_window): Only set changed_p if
8481 scrolling_window actually did scroll.
8482 (scrolling_window): Only return 1 if we actually did scroll.
8483
8484 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8485 height to glyph height when cursor row is not fully visible.
8486 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8487 failure in case row is higher than window. Callers changed.
8488 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8489 Try to scroll partially visible, higher-than-window cursor row.
8490 (redisplay_window): Always try to scroll partially visible,
8491 higher-than-window cursor row - both initially and again with
8492 centering_position = 0.
8493 Clear desired matrix before retrying with centering_position = 0.
8494
8495 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8496
8497 * syntax.c (scan_lists): Simplify backward string scan.
8498 Fix off-by-one boundary check for string and comment fences.
8499
8500 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8501
8502 * sheap.c, unexcw.c: New files.
8503
8504 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8505
8506 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8507 base buffer has been killed. Correct the error message if the
8508 base buffer does not exist.
8509
8510 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8511
8512 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8513 Cygwin itself. Add support for Xaw3d scrollbars.
8514
8515 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8516
8517 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8518
8519 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8520 before Cygwin unexec.
8521
8522 * Makefile.in: Link changes for Cygwin unexec() support.
8523
8524 2004-04-12 Andreas Schwab <schwab@suse.de>
8525
8526 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8527
8528 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8529
8530 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8531 IGNORE argument equals NAME. Doc fix.
8532
8533 2004-04-11 Masatake YAMATO <jet@gyve.org>
8534
8535 * buffer.c (fix_start_end_in_overlays): Make overlays
8536 empty if they are backwards.
8537
8538 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8539
8540 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8541
8542 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8543
8544 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8545
8546 2004-04-06 Kim F. Storm <storm@cua.dk>
8547
8548 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8549 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8550
8551 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8552 clearing highlight.
8553
8554 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8555
8556 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8557 clearing highlight.
8558
8559 * indent.c (vmotion): Do not reserve one column for continuation
8560 marks on window frames.
8561
8562 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8563
8564 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8565 from GCC.
8566
8567 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8568
8569 * .gdbinit-union: Remove.
8570
8571 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8572 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8573 ($nonvalbits): Remove.
8574 ($valmask): Set it by calling xreload to avoid redundancy.
8575
8576 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8577 (gdb_emacs_intbits): Remove.
8578
8579 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8580
8581 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8582
8583 2004-03-30 Kenichi Handa <handa@m17n.org>
8584
8585 * editfns.c (Fformat): Fix initialization of the array info.
8586
8587 2004-03-30 Kim F. Storm <storm@cua.dk>
8588
8589 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8590 (syms_of_xterm): DEFVAR_BOOL it.
8591 (ignore_next_mouse_click_timeout): New var.
8592 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8593 Use it to filter mouse clicks following focus event.
8594
8595 2004-03-29 David Ponce <david@dponce.com>
8596
8597 * callint.c (Fcall_interactively): Fix last change.
8598
8599 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8600
8601 * eval.c (Fcommandp): Simplify.
8602
8603 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8604 Extend to handle all kinds of functions.
8605
8606 * lisp.h (Finteractive_form): Declare.
8607
8608 * callint.c (Fcall_interactively): Use it.
8609
8610 2004-03-26 Kim F. Storm <storm@cua.dk>
8611
8612 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8613 to catch errors in calc_pixel_width_or_height during redisplay.
8614
8615 2004-03-26 Masatake YAMATO <jet@gyve.org>
8616
8617 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8618
8619 * lisp.h (fix_start_end_in_overlays): Likewise.
8620
8621 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8622
8623 * editfns.c (Ftranspose_regions): Likewise.
8624
8625 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8626
8627 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8628
8629 2004-03-19 Richard M. Stallman <rms@gnu.org>
8630
8631 * s/sol2-6.h: Delete previous change.
8632
8633 2004-03-19 Kim F. Storm <storm@cua.dk>
8634
8635 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8636 to_charpos corresponds to newline in right fringe. Use local
8637 BUFFER_POS_REACHED_P macro.
8638
8639 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8640
8641 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8642 to compile on non-window system.
8643
8644 2004-03-19 Kim F. Storm <storm@cua.dk>
8645
8646 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8647
8648 * image.c (Qcenter): Move to xdisp.c.
8649
8650 * xdisp.c (Qcenter): Declare here.
8651 (syms_of_xdisp): Intern and staticpro it.
8652 (handle_single_display_prop): Allow space display property on all
8653 platforms.
8654 (display_mode_line): Set mode_line_p before displaying line.
8655 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8656 handling. Remove complex cases for fringes and scroll-bars.
8657 Add left, right, and center alignment positions. Add text (area)
8658 width/height. Return width or height for image specs.
8659 (produce_stretch_glyph): Improve handling of :align-to. Is now
8660 relative to left of text area by default, but other base offsets
8661 can be specified -- also for text lines.
8662
8663 * term.c (produce_glyphs): Handle IT_STRETCH.
8664 (produce_stretch_glyph): New function to handle space width and
8665 align-to display properties on non-window systems.
8666
8667 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8668
8669 * fileio.c (Fread_file_name): Set completion-ignore-case for
8670 case-insensitive systems.
8671
8672 2004-03-14 Masatake YAMATO <jet@gyve.org>
8673
8674 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8675 when keymap and cursor are setup.
8676
8677 2004-03-14 Steven Tamm <steventamm@mac.com>
8678
8679 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8680
8681 2004-03-14 Kim F. Storm <storm@cua.dk>
8682
8683 * dispextern.h (x_find_image_file): Add prototype.
8684
8685 * image.c (x_find_image_file): Make extern.
8686
8687 * xfns.c (x_find_image_file): Remove prototype.
8688
8689 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8690
8691 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8692
8693 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8694
8695 2004-03-12 Richard M. Stallman <rms@gnu.org>
8696
8697 * fns.c (internal_equal): New arg PROPS controls comparing
8698 text properties. All callers changed.
8699 (Fequal_including_properties): New function.
8700 (syms_of_fns): defsubr it.
8701
8702 2004-03-12 Kim F. Storm <storm@cua.dk>
8703
8704 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8705
8706 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8707 (image_background, image_background_transparent): Fix prototypes.
8708
8709 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8710
8711 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8712 (x_query_font, x_find_ccl_program, x_set_window_size)
8713 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8714 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8715 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8716
8717 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8718 (x_query_font, x_find_ccl_program, x_set_window_size)
8719 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8720 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8721 (mac_draw_line_to_pixmap): Add prototypes.
8722
8723 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8724
8725 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8726
8727 2004-03-11 Kim F. Storm <storm@cua.dk>
8728
8729 * dispextern.h: Move image related prototypes from xfns.c section
8730 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8731 HAVE_X_WINDOWS.
8732
8733 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8734 Move gtkutil.o to new GTK_OBJ list.
8735 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8736 (GTK_OBJ) [USE_GTK]: New declaration.
8737 (obj): Add $(GTK_OBJ) to list.
8738
8739 2004-03-11 Steven Tamm <steventamm@mac.com>
8740
8741 * image.c [MAC_OSX]: Include sys/stat.h.
8742
8743 * macfns.c (syms_of_macfns): Remove definitions of things now
8744 defined in image.c.
8745
8746 2004-03-11 Kim F. Storm <storm@cua.dk>
8747
8748 The following changes consolidates the identical/similar image
8749 support code previously found in xfns.c, w32fns.c, and macfns.c
8750 into a new file image.c.
8751
8752 * makefile.w32-in (OBJ1): Add image.o.
8753 ($(BLD)/image.$(O)): Add dependencies.
8754
8755 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8756 (image.o): Add dependencies.
8757
8758 * image.c: New file with consolidated image support code.
8759 (COLOR_TABLE_SUPPORT): New define to control whether
8760 color table support is available (X only).
8761 (Bitmap_Record): Common name for x_bitmap_record,
8762 w32_bitmap_record, and mac_bitmap_record.
8763 (XImagePtr): Common name for pointer to XImage or equivalent.
8764 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8765 to XImagePtr on X+MAC, and to HDC on W32.
8766 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8767 (NO_PIXMAP): Common name for "None" or equivalent.
8768 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8769 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8770 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8771 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8772 Define with suitable equivalents on W32 and MAC for code sharing.
8773 (XDrawLine): Define on MAC for code sharing.
8774 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8775 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8776 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8777 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8778 (x_reference_bitmap, x_create_bitmap_from_data)
8779 (x_create_bitmap_from_file, x_destroy_bitmap)
8780 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8781 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8782 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8783 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8784 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8785 (define_image_type, lookup_image_type, valid_image_p)
8786 (image_error, enum image_value_type, struct image_keyword)
8787 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8788 (make_image, free_image, prepare_image_for_display, image_ascent)
8789 (four_corners_best, image_background, image_background_transparent)
8790 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8791 (make_image_cache, free_image_cache, clear_image_cache)
8792 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8793 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8794 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8795 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8796 (init_image_func_pointer, image_load_quartz2d)
8797 (struct ct_color, init_color_table, free_color_table)
8798 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8799 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8800 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8801 (x_disable_image, x_build_heuristic_mask)
8802 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8803 (TIFF support, GIF support, Ghostscript support): Consolidate image
8804 code from xfns.c, w32fns.c, and macfns.c.
8805 (syms_of_image): Consolidate image related symbol setup here.
8806 (init_image): Consolidate image related initializations here.
8807
8808 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8809 and init_image. Remove call to init_xfns.
8810
8811 * macterm.h (struct mac_bitmap_record): Add file member.
8812 Not currently used, but simplifies code sharing.
8813
8814 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8815 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8816 (x_reference_bitmap, x_create_bitmap_from_data)
8817 (x_create_bitmap_from_file, x_destroy_bitmap)
8818 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8819 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8820 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8821 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8822 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8823 (define_image_type, lookup_image_type, valid_image_p)
8824 (image_error, enum image_value_type, struct image_keyword)
8825 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8826 (make_image, free_image, prepare_image_for_display, image_ascent)
8827 (four_corners_best, image_background, image_background_transparent)
8828 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8829 (make_image_cache, free_image_cache, clear_image_cache)
8830 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8831 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8832 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8833 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8834 (init_image_func_pointer, image_load_quartz2d)
8835 (struct ct_color, init_color_table, free_color_table)
8836 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8837 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8838 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8839 (x_disable_image, x_build_heuristic_mask)
8840 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8841 (TIFF support, GIF support, Ghostscript support): Merge with image
8842 code from xfns.c and macfns.c into image.c.
8843 (syms_of_xfns): Move image related symbols to image.c.
8844 (init_external_image_libraries, init_xfns): Remove; initialization
8845 moved to init_image in image.c.
8846
8847 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8848 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8849 (x_reference_bitmap, x_create_bitmap_from_data)
8850 (x_create_bitmap_from_file, x_destroy_bitmap)
8851 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8852 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8853 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8854 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8855 (define_image_type, lookup_image_type, valid_image_p)
8856 (image_error, enum image_value_type, struct image_keyword)
8857 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8858 (make_image, free_image, prepare_image_for_display, image_ascent)
8859 (four_corners_best, image_background, image_background_transparent)
8860 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8861 (make_image_cache, free_image_cache, clear_image_cache)
8862 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8863 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8864 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8865 (struct ct_color, init_color_table, free_color_table)
8866 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8867 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8868 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8869 (x_disable_image, x_build_heuristic_mask)
8870 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8871 (TIFF support, GIF support, Ghostscript support): Merge with image
8872 code from xfns.c and macfns.c into image.c.
8873 (syms_of_xfns): Move image related symbols to image.c.
8874 (init_external_image_libraries, init_xfns): Remove; initialization
8875 moved to init_image in image.c.
8876
8877 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8878 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8879 (x_reference_bitmap, x_create_bitmap_from_data)
8880 (x_create_bitmap_from_file, x_destroy_bitmap)
8881 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8882 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8883 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8884 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8885 (define_image_type, lookup_image_type, valid_image_p)
8886 (image_error, enum image_value_type, struct image_keyword)
8887 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8888 (make_image, free_image, prepare_image_for_display, image_ascent)
8889 (four_corners_best, image_background, image_background_transparent)
8890 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8891 (make_image_cache, free_image_cache, clear_image_cache)
8892 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8893 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8894 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8895 (struct ct_color, init_color_table, free_color_table)
8896 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8897 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8898 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8899 (x_disable_image, x_build_heuristic_mask)
8900 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8901 (TIFF support, GIF support, Ghostscript support): Merge with
8902 w32fns.c and macfns.c image code into image.c.
8903 (syms_of_xfns): Move image related symbols to image.c.
8904 (init_xfns): Remove; initialization moved to init_image in image.c.
8905
8906 * lisp.h (syms_of_image, init_image): Add protoypes.
8907 (init_xfns): Remove prototype.
8908
8909 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8910 (x_reference_bitmap, x_create_bitmap_from_data)
8911 (x_create_bitmap_from_file, x_destroy_bitmap)
8912 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8913 (gamma_correct) [MAC_OS]: Add prototype.
8914
8915 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8916 (x_reference_bitmap, x_create_bitmap_from_data)
8917 (x_create_bitmap_from_file, x_destroy_bitmap)
8918 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8919
8920 2004-03-09 Kenichi Handa <handa@etlken2>
8921
8922 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8923 correctly.
8924
8925 2004-03-04 Richard M. Stallman <rms@gnu.org>
8926
8927 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8928
8929 * window.c (Fdisplay_buffer): Doc fix.
8930
8931 * buffer.c (Fpop_to_buffer): Doc fix.
8932
8933 2004-03-03 Kim F. Storm <storm@cua.dk>
8934
8935 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8936
8937 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8938
8939 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8940
8941 2004-03-02 Richard M. Stallman <rms@gnu.org>
8942
8943 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8944
8945 2004-03-02 Kenichi Handa <handa@m17n.org>
8946
8947 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8948
8949 2004-03-02 Kim F. Storm <storm@cua.dk>
8950
8951 * window.h (struct window): New member overlay_arrow_bitmap.
8952
8953 * window.c (make_window): Initialize overlay_arrow_bitmap.
8954
8955 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8956 implement and integrate multiple overlay arrows with redisplay.
8957 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8958 (last_arrow_position, last_arrow_string): Replace by properties.
8959 (Qlast_arrow_position, Qlast_arrow_string)
8960 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8961 (syms_of_xdisp): Intern and staticpro them.
8962 (overlay_arrow_string_or_property, update_overlay_arrows)
8963 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8964 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8965 (redisplay_internal): Use them instead of directly accessing
8966 Voverlay_arrow_position etc. for multiple overlay arrows.
8967 (mark_window_display_accurate): Use update_overlay_arrows.
8968 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8969 (try_window_id): Use overlay_arrows_changed_p.
8970 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8971 (display_line): Use overlay_arrow_at_row to check multiple
8972 overlay arrows, and get relevant overlay-arrow-string and
8973 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8974 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8975 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8976
8977 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8978 (update_window_fringes): Remove unused code.
8979
8980 2004-03-01 Jason Rumney <jasonr@gnu.org>
8981
8982 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8983
8984 2004-03-01 Juanma Barranquero <lektu@terra.es>
8985
8986 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8987
8988 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8989
8990 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8991
8992 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8993 how many colors can be displayed.
8994
8995 2004-03-01 Kenichi Handa <handa@m17n.org>
8996
8997 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8998 correctly.
8999
9000 2004-02-28 Kim F. Storm <storm@cua.dk>
9001
9002 * dispnew.c (update_window): Update header line also if there are
9003 no other changes in window (move code after set_cursor label).
9004
9005 * lisp.h (mark_window_display_accurate): Remove prototype.
9006
9007 * window.c (window_loop, Fforce_window_update): Force mode line
9008 updates by setting prevent_redisplay_optimizations_p and
9009 update_mode_lines.
9010
9011 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9012
9013 * xfns.c (x_window): Fix indentation.
9014
9015 * xterm.c (x_calc_absolute_position): Call x_real_positions
9016 to get WM window sizes and use those to calculate position.
9017 (x_set_offset): Remove code commented out.
9018
9019 2004-02-28 Miles Bader <miles@gnu.org>
9020
9021 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9022
9023 2004-02-28 Kim F. Storm <storm@cua.dk>
9024
9025 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9026 an event into kbd fifo, but with special handling of quit event;
9027 a quit event is saved for later, and further events are discarded
9028 until the saved quit event has been processed.
9029 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9030 (gen_help_event): Store help event in kbd fifo.
9031 (NREAD_INPUT_EVENTS): Remove.
9032 (read_avail_input): Adapt to new read_socket_hook interface.
9033 Remove allocation and initialization of local input_event buffer,
9034 as read_socket_hook stores events directly in fifo. Allocate and
9035 initialize local hold_quit event to handle postponed quit event
9036 (and store it if set by kbd_buffer_store_event_hold).
9037
9038 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9039 (gen_help_event): Fix prototype.
9040
9041 * macterm.c (XTread_socket): Remove bufp_r and
9042 numcharsp args. Add hold_quit arg.
9043 Rework to use just one, local, inev input_event. Store inev
9044 directly in fifo using kbd_buffer_store_event_hold.
9045
9046 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9047 (read_input_waiting): Adapt to new read_socket_hook interface.
9048 Remove allocation and initialization of local input_event buffer,
9049 as read_socket_hook stores events directly in fifo. Allocate and
9050 initialize local hold_quit event to handle postponed quit event
9051 (and store it if set by kbd_buffer_store_event_hold).
9052
9053 * term.c (read_socket_hook): Fix arg list.
9054
9055 * termhooks.h (read_socket_hook): Fix prototype.
9056
9057 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9058 numcharsp args. Add hold_quit arg.
9059 Rework to use just one, local, inev input_event. Store inev
9060 directly in fifo using kbd_buffer_store_event_hold.
9061
9062 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9063
9064 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9065 Add hold_quit arg. Rework to use just one, local, inev
9066 input_event. Store inev directly in fifo using
9067 kbd_buffer_store_event_hold. Update count in one place.
9068 Postpone call to gen_help_event until inev is stored; use new
9069 local do_help for this.
9070 Remove local emacs_event in handing of ButtonPress event; just use
9071 inev instead (so no reason to copy it later).
9072
9073 * xsmfns.c (x_session_check_input): Remove numchars arg.
9074
9075 * xterm.c (x_focus_changed, x_detect_focus_change):
9076 Remove numchars arg. Always store event into bufp arg.
9077 Return nothing. Callers changed accordingly.
9078 (glyph_rect): Simplify.
9079 (STORE_KEYSYM_FOR_DEBUG): New macro.
9080 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9081 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9082 (current_hold_quit) [USE_GTK]: Add.
9083 (event_handler_gdk): Adapt to new handle_one_xevent.
9084 (handle_one_xevent): Remove bufp_r and numcharsp args.
9085 Add hold_quit arg. Rework to use just one, local, inev
9086 input_event. Store inev directly in fifo using
9087 kbd_buffer_store_event_hold. Update count in one place.
9088 Postpone call to gen_help_event until inev is stored; use new
9089 local do_help for this.
9090 Simplify handling of keysyms (consolidate common code). Fix bug
9091 where count was updated with nchars instead of nbytes.
9092 Remove local emacs_event in handing of ButtonPress event; just use
9093 inev instead (so no reason to copy it later).
9094 Remove `out' label. Rename label `ret' to `done'; add various
9095 `goto done' to clarify code flow in deeply nested blocks.
9096 (x_dispatch_event): Simplify as handle_one_xevent now calls
9097 kbd_buffer_store_event itself.
9098 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9099 arg. Call handle_one_xevent with new arglist. Store event from
9100 x_session_check_input in fifo.
9101 [USE_GTK]: Setup current_hold_quit.
9102 Decrement handling_signal before unblocking input.
9103 (x_initialize) [USE_GTK]: Initialize current_count.
9104
9105 * xterm.h (x_session_check_input): Fix prototype.
9106
9107 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9108
9109 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9110
9111 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9112 macgui.h).
9113
9114 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9115
9116 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9117 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9118 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9119 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9120 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9121 (Bitmap): Remove typedef.
9122 (Pixmap): Change int to GWorldPtr.
9123
9124 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9125
9126 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9127 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9128 New #define to extract 16-bit depth color components from unsigned
9129 long representation.
9130 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9131 colors used for masks.
9132 (struct mac_display_info): Add color_p. Remove n_cbits.
9133
9134 * macfns.c: Include sys/types.h and sys/stat.h.
9135 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9136 Include QuickTime/QuickTime.h.
9137 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9138 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9139 functions defined in macterm.c.
9140 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9141 (ZPixmap): New #define for compatibility with xfns.c.
9142 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9143 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9144 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9145 New functions.
9146 (four_corners_best, x_create_x_image_and_pixmap)
9147 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9148 (x_edge_detection, init_color_table, colors_in_color_table)
9149 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9150 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9151 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9152 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9153 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9154 long mixup.
9155 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9156 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9157 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9158 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9159 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9160 (x_alloc_image_color, clear_image_cache, lookup_image)
9161 (x_find_image_file, xbm_read_bitmap_file_data)
9162 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9163 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9164 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9165 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9166 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9167 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9168 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9169 #if 0.
9170 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9171 #if 0. Free white_relief.gc and black_relief.gc.
9172 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9173 New functions (from xfns.c).
9174 (Fx_create_frame): Record unwind_create_frame.
9175 (Fxw_display_color_p): Use dpyinfo->color_p.
9176 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9177 dpyinfo->n_cbits.
9178 (Fx_display_color_cells): Use dpyinfo->n_planes;
9179 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9180 (Qheuristic, cross_disabled_images, emboss_matrix)
9181 (laplace_matrix): New variables (from xfns.c).
9182 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9183 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9184 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9185 (image_background_transparent): New function (from xfns.c).
9186 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9187 (image_load_quicktime): Add declaration.
9188 [MAC_OSX] (image_load_quartz2d): Likewise.
9189 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9190 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9191 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9192 (xbm_load_image_from_file, x_laplace_read_row)
9193 (x_laplace_write_row, pbm_read_file): Remove functions.
9194 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9195 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9196 (colors_in_color_table): Sync with xfns.c (although not used).
9197 (lookup_rgb_color): Don't lookup color table. Just do gamma
9198 correction.
9199 (COLOR_INTENSITY): New #define (from xfns.c).
9200 (x_disable_image): New function (from xfns.c).
9201 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9202 (x_build_heuristic_mask): Sync with xfns.c.
9203 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9204 (HAVE_PBM): Remove #ifdef.
9205 (pbm_load): Sync with xfns.c. Set img->width and img->height
9206 before IMAGE_BACKGROUND.
9207 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9208 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9209 Don't enclose with #if HAVE_PNG.
9210 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9211 symbol _CGImageCreateWithPNGDataProvider is defined.
9212 Otherwise use image_load_quicktime.
9213 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9214 [HAVE_PNG] (png_load): Sync with xfns.c.
9215 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9216 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9217 HAVE_JPEG.
9218 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9219 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9220 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9221 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9222 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9223 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9224 HAVE_TIFF.
9225 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9226 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9227 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9228 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9229 New functions (from xfns.c).
9230 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9231 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9232 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9233 Don't enclose with #if HAVE_GIF.
9234 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9235 animated gif. Otherwise use image_load_quicktime.
9236 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9237 gif_DrawText to avoid conflict with QuickdrawText.h.
9238 [HAVE_GIF] (gif_load): Sync with xfns.c.
9239 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9240 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9241 Ghostscript is not supported yet).
9242 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9243 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9244 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9245 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9246 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9247 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9248 HAVE_PNG. Call EnterMovies to support animated gifs.
9249 Call init_image_func_pointer to bind a symbol
9250 _CGImageCreateWithPNGDataProvider if it is defined.
9251
9252 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9253 (x_draw_bar_cursor): Sync declaration with xterm.c.
9254 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9255 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9256 graphics).
9257 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9258 (mac_draw_line_to_pixmap, XCreatePixmap)
9259 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9260 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9261 New functions.
9262 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9263 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9264 Cast bits to char *.
9265 (reflect_byte): New function (from w32fns.c).
9266 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9267 due to byte alignment.
9268 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9269 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9270 (XSetForeground): Remove static (now used in macfns.c).
9271 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9272 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9273 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9274 (x_draw_glyph_string_box, x_draw_image_foreground)
9275 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9276 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9277 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9278 Sync with xterm.c.
9279 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9280 than the xterm.c version when a strictly horizontal or vertical
9281 line is drawn.
9282 (XTset_terminal_window): Add static.
9283 (x_make_frame_visible): Add UNBLOCK_INPUT.
9284 (x_free_frame_resources): New funcion (from xterm.c).
9285 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9286 occurs in tool bar area.
9287 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9288 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9289 Initialize image cache.
9290 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9291 Enclose unused functions with #if 0.
9292 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9293 (decode_mac_font_name): New function to apply code conversions
9294 from a mac font name to an XLFD font name according to its script code.
9295 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9296 font name to a mac font name according to REGISTRY and ENCODING fields.
9297 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9298 whose name starts with `.'.
9299 (init_font_name_table): Use decode_mac_font_name. Add both
9300 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9301 of a font is smJapanese.
9302 (mac_do_list_fonts): New function to list fonts that match a given
9303 pattern.
9304 (x_list_fonts, XLoadQueryFont): Use it.
9305 (XLoadQueryFont): Set rbearing field for each variable width
9306 character to avoid needless redraw.
9307 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9308
9309 2004-02-26 Kim F. Storm <storm@cua.dk>
9310
9311 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9312 as read_socket_hook handler on X aborts if buffer is too small
9313 and W32 handler doesn't always check buffer limit.
9314
9315 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9316 right-fringe similar to a display margin image. Specifically,
9317 the characters having the fringe prop are no longer shown, and
9318 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9319 do this. Set fringe bitmap face_id in it->face_id.
9320 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9321 still realize it->face (i.e. the fringe bitmap face).
9322
9323 2004-02-25 Miles Bader <miles@gnu.org>
9324
9325 * xdisp.c (check_it): Check string/string_pos consistency.
9326 (init_iterator): Initialize string-related fields properly.
9327
9328 2004-02-11 Miles Bader <miles@gnu.org>
9329
9330 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9331
9332 2004-02-10 Miles Bader <miles@gnu.org>
9333
9334 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9335 BLOCK_INPUT can be nested, so it doesn't make much sense.
9336
9337 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9338
9339 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9340 (xbm_read_bitmap_data): Use unsigned char for image data.
9341
9342 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9343
9344 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9345
9346 2004-02-22 Jason Rumney <jasonr@gnu.org>
9347
9348 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9349 correctly over other bitmaps.
9350
9351 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9352
9353 * emacs.c (USAGE1): Split into two halves.
9354 (USAGE2): Second half of the old USAGE1.
9355 (USAGE3): Rename from USAGE2.
9356 (USAGE4): Rename from USAGE3.
9357
9358 2004-02-21 Juri Linkov <juri@jurta.org>
9359
9360 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9361 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9362 --file. Fix -f, -l. Sort options. Untabify.
9363 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9364
9365 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9366
9367 * category.c (Fdefine_category, Fcategory_docstring)
9368 (Fget_unused_category, Fset_category_table)
9369 (Fcategory_set_mnemonics): Doc fixes.
9370
9371 2004-02-20 Kim F. Storm <storm@cua.dk>
9372
9373 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9374 The following changes are relative to the 2004-01-21 revision.
9375 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9376 in one call to read_socket_hook. Value is 8.
9377 (read_avail_input): Separate and rework handling of read_socket_hook
9378 and non-read_socket_hook cases. Use smaller input_event buffer
9379 in read_socket_hook case, and repeat if full buffer is read.
9380 Use new local variable 'discard' to skip input after C-g.
9381 In non-read_socket_hook case, just use a single input_event, and
9382 call kbd_buffer_store_event on the fly for each character.
9383
9384 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9385
9386 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9387 Remove unused `gu' alternative.
9388
9389 2004-02-19 Andreas Schwab <schwab@suse.de>
9390
9391 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9392 warning.
9393
9394 2004-02-18 Kim F. Storm <storm@cua.dk>
9395
9396 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9397 Fix last change.
9398
9399 2004-02-17 Kim F. Storm <storm@cua.dk>
9400
9401 * xdisp.c (fast_find_position): Fix return value of new version;
9402 it was inverted compared to the 21.1 version.
9403 (get_window_cursor_type): Don't look at glyph if NULL.
9404 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9405
9406 * keyboard.c: Rework previous change; it didn't consider that the
9407 buf array was allocated on the stack.
9408 (prev_read): Remove variable.
9409 (read_avail_input_buf): New static event buffer array.
9410 (in_read_avail_input): New static variable to handle re-entrancy.
9411 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9412 Use in_read_avail_input to handle re-entrance; when re-entered,
9413 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9414 Do not initialize read_avail_input_buf in full here; instead assume it
9415 is always cleared on entry. To ensure that, we clear (just) the
9416 entries that were used before we return.
9417 (init_keyboard): Initialize read_avail_input_buf here.
9418
9419 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9420
9421 * cmds.c (Fend_of_line): Doc fix.
9422
9423 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9424
9425 * keyboard.c (prev_read): New static variable.
9426 (read_avail_input): Use it to zero out only those slots in buf[]
9427 that were used last time we were called.
9428
9429 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9430
9431 * Makefile.in (obj): Move fringe.o from here...
9432 (XOBJ, MAC_OBJ): ...to here.
9433
9434 2004-02-16 Stephen Eglen <stephen@gnu.org>
9435
9436 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9437
9438 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9439
9440 * data.c (Fbyteorder):
9441 * fringe.c (Fdefine_fringe_bitmap):
9442 * xdisp.c (handle_single_display_prop):
9443 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9444
9445 2004-02-16 Jason Rumney <jasonr@gnu.org>
9446
9447 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9448
9449 2004-02-15 Steven Tamm <steventamm@mac.com>
9450
9451 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9452 controlling emulation of a three button mouse with option and
9453 command keys.
9454 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9455 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9456
9457 2004-02-15 Kim F. Storm <storm@cua.dk>
9458
9459 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9460
9461 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9462 Perform byte-swapping.
9463
9464 2004-02-14 Kim F. Storm <storm@cua.dk>
9465
9466 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9467 bits from char to short to facilitate wider bitmaps.
9468 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9469 member.
9470
9471 * fringe.c (struct fringe_bitmap): Change member bits from char to
9472 short to facilitate 16 bits wide bitmaps. Modify all standard
9473 bitmaps accordingly.
9474 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9475 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9476 (draw_fringe_bitmap): Ditto.
9477 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9478 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9479 handle up to 16 bits wide bitmaps.
9480 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9481 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9482
9483 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9484 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9485 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9486
9487 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9488 so it is no longer necessary to expand them here.
9489
9490 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9491
9492 2004-02-12 Kim F. Storm <storm@cua.dk>
9493
9494 * window.c (Fwindow_fringes): Doc fix.
9495
9496 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9497
9498 * xselect.c (x_get_foreign_selection): Add new optional parameter
9499 time_stamp.
9500 (Fx_get_selection_internal): Ditto, pass time_stamp to
9501 x_get_foreign_selection.
9502
9503 * data.c (Fbyteorder): New function.
9504
9505 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9506
9507 * atimer.c: Move include stdio.h to same place as in other files.
9508
9509 * region-cache.c: Ditto.
9510
9511 * sysdep.c: Ditto.
9512
9513 * xfaces.c: Ditto.
9514
9515 2004-02-09 Sam Steingold <sds@gnu.org>
9516
9517 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9518
9519 2004-02-09 Kim F. Storm <storm@cua.dk>
9520
9521 * fringe.c: New file. Move original fringe related declarations
9522 and code from dispextern.h and xdisp.c here.
9523 Rework code to support user defined fringe bitmaps, redefining
9524 standard bitmaps, ability to overlay user defined bitmap with
9525 overlay arrow bitmap, and add faces to bitmaps.
9526 (Voverflow_newline_into_fringe): Declare here.
9527 (enum fringe_bitmap_align): New enum.
9528 (..._bits): All bitmaps are now defined without bitswapping; that
9529 is now done in init_fringe_once (if necessary).
9530 (standard_bitmaps): New array with specifications for the
9531 standard fringe bitmaps.
9532 (fringe_faces): New array.
9533 (valid_fringe_bitmap_id_p): New function.
9534 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9535 (draw_fringe_bitmap): New function which draws fringe bitmap,
9536 possibly overlaying bitmap with cursor in right fringe or the
9537 overlay arrow in the left fringe.
9538 (update_window_fringes): Do not handle overlay arrow here.
9539 Compare and copy fringe bitmap faces.
9540 (init_fringe_bitmap): New function.
9541 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9542 define and destroy user defined fringe bitmaps.
9543 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9544 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9545 (syms_of_fringe): New function. Defsubr new DEFUNs.
9546 DEFVAR_LISP Voverflow_newline_into_fringe.
9547 (init_fringe_once, init_fringe): New functions.
9548 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9549
9550 * Makefile.in (obj): Add fringe.o.
9551 (fringe.o): New dependencies.
9552
9553 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9554 bits allocated to hold a fringe number. Increase number of bits
9555 from 4 to 8 to allow user defined fringe bitmaps.
9556 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9557 left_user_fringe_face_id, right_user_fringe_bitmap,
9558 right_user_fringe_face_id.
9559 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9560 Move to new file fringe.c.
9561 (MAX_FRINGE_BITMAPS): Define here.
9562 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9563 and overlay_p. Change member which to int.
9564 (struct redisplay_interface): New members define_fringe_bitmap
9565 and destroy_fringe_bitmap.
9566 (valid_fringe_bitmap_id_p): Add prototype.
9567 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9568
9569 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9570 arrows.
9571 (update_frame): Do flush_display if force_flush_display_p to
9572 ensure display (specifically fringes) are updated in a timely
9573 manner when resizing the frame by dragging the mouse.
9574 (update_window_line): Update row if overlay arrow changed.
9575 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9576 or overlay arrow changed.
9577
9578 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9579 syms_of_fringe, and init_fringe.
9580
9581 * frame.h (struct frame): New member force_flush_display_p.
9582
9583 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9584 Add prototypes.
9585
9586 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9587 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9588 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9589 Use cursor color for displaying cursor in fringe.
9590 (x_redisplay_interface): Add null handlers for
9591 define_fringe_bitmap and destroy_fringe_bitmap functions.
9592
9593 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9594 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9595 for displaying cursor in fringe.
9596 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9597 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9598 (w32_redisplay_interface): Add them to redisplay_interface.
9599 (w32_term_init): Call w32_init_fringe instead of explicitly
9600 defining fringe bitmaps in fringe_bmp array.
9601 (x_delete_display): Call w32_reset_fringes instead of explicitly
9602 destroying fringe bitmaps in fringe_bmp array.
9603
9604 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9605 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9606 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9607 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9608 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9609 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9610 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9611 Move fringe handling vars and code to new file fringe.c.
9612 (handle_display_prop): Handle left-fringe and right-fringe
9613 display properties; store user fringe bitmaps in iterator.
9614 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9615 (clear_garbaged_frames): Set force_flush_display_p if resized.
9616 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9617 (display_line): Handle cursor in fringe at eob.
9618 (display_line): Set row user fringe bitmaps from iterator.
9619
9620 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9621 Use cursor color for displaying cursor in fringe.
9622 (x_redisplay_interface): Add null handlers for
9623 define_fringe_bitmap and destroy_fringe_bitmap functions.
9624
9625 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9626
9627 * macfns.c (Fx_change_window_property): Make doc string and
9628 parameters same as for X version.
9629
9630 * w32fns.c (Fx_change_window_property): Ditto.
9631
9632 2004-02-07 Kim F. Storm <storm@cua.dk>
9633
9634 * xdisp.c (hscroll_window_tree): Position cursor near to right
9635 margin in hscrolled window when jumping to end of line (rather
9636 than centering cursor).
9637
9638 * process.c (wait_reading_process_input): Don't do adaptive read
9639 buffering if waiting for a specific process.
9640
9641 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9642
9643 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9644 (Fread_minibuffer, Feval_minibuffer)
9645 (Fread_string, Fread_no_blanks_input)
9646 (Fcompleting_read): Doc fixes.
9647 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9648 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9649 (read_minibuf): Fix initial comment.
9650 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9651 case-fold-search to the value of completion-ignore-case when
9652 checking completion-regexp-list.
9653 (Fdisplay_completion_list): Make it handle arguments that are
9654 symbols. Doc fix.
9655
9656 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9657
9658 * xterm.h: Add declaration of free_frame_menubar.
9659
9660 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9661 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9662 (Fx_change_window_property): Add declaration of parameters type and
9663 format. Remove unused variable cons.
9664
9665 * xselect.c: Include stdio,h.
9666
9667 2004-02-05 Kenichi Handa <handa@m17n.org>
9668
9669 * fns.c (Fset_char_table_range): Fix previous change.
9670
9671 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9672
9673 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9674
9675 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9676
9677 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9678
9679 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9680 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9681
9682 2004-02-04 Kenichi Handa <handa@m17n.org>
9683
9684 * fns.c (Fset_char_table_range): Handle charsets ascii,
9685 eight-bit-control, and eight-bit-graphic correctly.
9686
9687 2004-02-03 Jason Rumney <jasonr@gnu.org>
9688
9689 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9690
9691 * w32fns.c (x_to_w32_font): Likewise.
9692
9693 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9694
9695 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9696 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9697
9698 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9699 ClientMessages.
9700
9701 * xselect.c: Include termhooks.h and X11/Xproto.h
9702 (x_check_property_data, x_fill_property_data)
9703 (x_property_data_to_lisp, mouse_position_for_drop)
9704 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9705 (Fx_send_client_event): Move here from xfns.c.
9706 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9707
9708 * xfns.c (x-send-client-message): Move to xselect.c
9709 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9710 OUTER_P.
9711 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9712 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9713 if vector_ret_p is true.
9714 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9715
9716 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9717
9718 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9719 basename of FILE relative to it, not FILE itself.
9720
9721 2004-02-02 Kenichi Handa <handa@m17n.org>
9722
9723 * coding.c (coding_restore_composition): Check invalid
9724 composition data more rigidly.
9725
9726 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9727
9728 * fileio.c (Fread_file_name_internal): Correctly handle the case
9729 where insert-default-directory is nil.
9730 (Fread_file_name): Always return an empty string if the user exits
9731 with an empty minibuffer. Adapt the docstring accordingly.
9732 (syms_of_fileio): Adapt the docstring of insert-default-directory
9733 to the change in Fread_file_name.
9734
9735 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9736
9737 * alloca.c [!alloca]: Fix the prototype for xfree.
9738
9739 2004-01-29 Kenichi Handa <handa@m17n.org>
9740
9741 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9742 (string_byte_to_char): Likewise.
9743
9744 2004-01-28 Peter Runestig <peter@runestig.com>
9745
9746 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9747
9748 2004-01-27 Steven Tamm <steventamm@mac.com>
9749
9750 * unexmacosx.c (unexec_copy): Do not copy more than was
9751 requested to prevent overwriting during unexec.
9752
9753 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9754
9755 * process.c (sigchld_handler): Add comment about not calling malloc.
9756
9757 * process.h: Add extern to synch_process_termsig.
9758
9759 2004-01-27 Steven Tamm <steventamm@mac.com>
9760
9761 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9762 Move setting of scroll bars from make_mac_frame to
9763 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9764
9765 2004-01-26 Richard M. Stallman <rms@gnu.org>
9766
9767 * search.c (Freplace_match): Handle nonexistent
9768 back-references properly.
9769
9770 2004-01-03 Richard M. Stallman <rms@gnu.org>
9771
9772 * window.c (decode_any_window): New function.
9773 (Fwindow_height, Fwindow_width, Fwindow_edges)
9774 (Fwindow_pixel_edges, Fwindow_inside_edges)
9775 (Fwindow_inside_pixel_edges): Use decode_any_window.
9776
9777 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9778
9779 * process.h: synch_process_termsig new variable.
9780
9781 * callproc.c: Define synch_process_termsig.
9782 (Fcall_process): Initiate synch_process_termsig to zero and
9783 check if non-zero and get signal name after subprocess has ended.
9784
9785 * process.c (sigchld_handler): Set synch_process_termsig
9786 if terminated by a signal. synch_process_death setting removed.
9787
9788 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9789
9790 2004-01-26 Andreas Schwab <schwab@suse.de>
9791
9792 * print.c (print_preprocess): Declare size as EMACS_INT to not
9793 lose bits.
9794 (print_object): Likewise.
9795 * alloc.c (Fpurecopy): Likewise.
9796
9797 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9798
9799 * window.c (Fwindow_minibuffer_p): Doc fix.
9800
9801 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9802
9803 * editfns.c (Fformat): Make both passes accept the same set of flags.
9804
9805 2004-01-23 Kenichi Handa <handa@m17n.org>
9806
9807 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9808 one, set buffer to OBJECT temporarily.
9809
9810 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9811
9812 * keyboard.c (kbd_buffer_gcpro): Remove.
9813 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9814 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9815 Don't initialize and/or maintain the variable any more. It was made
9816 redundant by my commit of 2003-06-15.
9817
9818 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9819
9820 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9821
9822 * lisp.h: Add undef DECL_ALIGN.
9823
9824 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9825
9826 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9827 Check interrupt_input_pending explicitly.
9828
9829 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9830
9831 * keyboard.c (handle_async_input): New fun,
9832 extracted from input_available_signal.
9833 (input_available_signal, reinvoke_input_signal): Use it.
9834
9835 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9836
9837 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9838
9839 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9840 manipulation macros for when tags are in the lower bits.
9841 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9842 (DECL_ALIGN): New macro.
9843 (DEFUN): Use it.
9844
9845 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9846
9847 * s/darwin.h (__attribute__): Remove outdated workaround.
9848
9849 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9850
9851 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9852 Don't check range of malloc address.
9853 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9854
9855 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9856
9857 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9858
9859 2004-01-19 Kenichi Handa <handa@m17n.org>
9860
9861 * fontset.c (fontset_font_pattern): Fix previous change.
9862
9863 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9864
9865 * xdisp.c (Voverflow_newline_into_fringe)
9866 (move_it_in_display_line_to, redisplay_internal)
9867 (update_window_fringes, redisplay_window, display_line, window):
9868 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9869 that it compiles without a window-system.
9870 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9871
9872 2004-01-16 Kim F. Storm <storm@cua.dk>
9873
9874 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9875
9876 * buffer.c (init_buffer_once): Set buffer_defaults and
9877 buffer_local_flags for indicate_buffer_boundaries.
9878 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9879 default- variable for it.
9880
9881 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9882 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9883 New members exact_window_width_line_p and cursor_in_fringe_p for
9884 overflowing newlines into right fringe.
9885 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9886 and indicate_bottom_line_p for buffer boundaries and scrolling.
9887 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9888 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9889 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9890 and HOLLOW_SQUARE_BITMAP.
9891 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9892 Add prototypes.
9893
9894 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9895 instead of related indicator fields.
9896 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9897 (direct_output_for_insert): Handle exact width lines like
9898 contined lines. Call update_window_fringes.
9899 (update_window): Call update_window_fringes.
9900 (scrolling_window): Don't skip desired rows with changed bitmaps.
9901 Check if fringe bitmaps changes when assigning scrolled rows.
9902
9903 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9904 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9905 (move_it_in_display_line_to): Overflow newline into fringe for
9906 rows that are exactly as wide as the window.
9907 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9908 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9909 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9910 (fringe_bitmaps): Add new bitmaps.
9911 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9912 Select proper bitmap for cursor in fringe when appropriate.
9913 Handle alignment of bitmap to top or bottom of row.
9914 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9915 done by update_window_fringes.
9916 (update_window_fringes, draw_window_fringes): New functions.
9917 (redisplay_internal): Call update_window_fringes in case only
9918 cursor row is updated.
9919 (redisplay_window): Call update_window_fringes.
9920 Explicitly call draw_window_fringes if redisplay was done using
9921 the current matrix or the overlay arrow is in the window.
9922 (try_window_reusing_current_matrix): Mark scrolled rows for
9923 fringe update (to update buffer-boundaries / scrolling icons).
9924 (find_last_unchanged_at_beg_row): Handle exact width lines line
9925 continued lines.
9926 (display_line): Overflow newline into fringe for rows that are
9927 exactly as wide as the window. Don't append space for newline
9928 in this case.
9929 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9930 in fringe as if it had been overwritten.
9931 (erase_phys_cursor): Erase cursor bitmap in fringe.
9932 (syms_of_xdisp): Mark show-trailing-whitespace and
9933 void-text-area-pointer as user options.
9934 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9935
9936 * xterm.c (x_update_window_end): Call draw_window_fringes.
9937 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9938 in row instead of actually drawing fringe bitmaps.
9939 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9940 (x_draw_window_cursor): Draw cursor in fringe.
9941
9942 * w32term.c (x_update_window_end): Call draw_window_fringes.
9943 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9944 in row instead of actually drawing fringe bitmaps.
9945 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9946 (w32_draw_window_cursor): Draw cursor in fringe.
9947
9948 * macterm.c (x_update_window_end): Call draw_window_fringes.
9949 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9950 in row instead of actually drawing fringe bitmaps.
9951 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9952 (mac_draw_window_cursor): Draw cursor in fringe.
9953
9954 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9955
9956 * xterm.c (handle_one_xevent): Don't handle characters that are part
9957 of an old style (XLookupString) compose sequence.
9958
9959 2004-01-15 Kenichi Handa <handa@m17n.org>
9960
9961 * search.c (Freplace_match): Use make_multibyte_string or
9962 make_unibyte_string according to the buffer multibyteness.
9963
9964 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9965
9966 * alloc.c (struct interval_block, struct string_block)
9967 (struct symbol_block, struct marker_block, live_string_p)
9968 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9969 Better preserve alignment for objects in blocks.
9970 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9971
9972 * lread.c (defvar_per_buffer): Remove dead declaration.
9973
9974 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9975 space size.
9976
9977 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9978
9979 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9980 if a key press should pop down. Only pop down if a key is pressed
9981 outside the menu/dialog.
9982 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9983 popup_get_selection.
9984 (create_and_show_dialog): Pass 1 for down_on_keypress to
9985 popup_get_selection.
9986
9987 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9988
9989 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9990 BLOCK/UNBLOCK_INPUT.
9991
9992 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9993
9994 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9995 specified.
9996
9997 2004-01-08 Kenichi Handa <handa@m17n.org>
9998
9999 * editfns.c (Fformat): Fix '&' to '&&'.
10000
10001 2004-01-08 Andreas Schwab <schwab@suse.de>
10002
10003 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10004 size if PSEUDOVECTOR_FLAG is set.
10005
10006 2004-01-07 Kenichi Handa <handa@m17n.org>
10007
10008 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10009
10010 * fontset.c (fontset_ref_via_base): Fix previous change.
10011
10012 2004-01-07 Kim F. Storm <storm@cua.dk>
10013
10014 * process.c (read_process_output): Only activate adaptive
10015 buffering if we read less than 256 bytes at a time.
10016
10017 2004-01-06 Kim F. Storm <storm@cua.dk>
10018
10019 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10020 object and image object. Return glyph width and height.
10021 (mode_line_string, marginal_area_string): Ditto.
10022
10023 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10024 (marginal_area_string): Fix prototypes.
10025
10026 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10027 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10028 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10029
10030 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10031 buffer_posn_from_coords, and marginal_area_string functions to
10032 include both string object and image object in the lispy position.
10033 Also add actual glyph width and height to position.
10034 (read_key_sequence): Use real buffer position from mouse
10035 event to find keymap property even when click is in marginal area.
10036
10037 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10038 mode_line_string and marginal_area_string functions to handle
10039 both string object and image object properties.
10040
10041 2004-01-06 Andreas Schwab <schwab@suse.de>
10042
10043 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10044 character.
10045
10046 2004-01-02 Andreas Schwab <schwab@suse.de>
10047
10048 * macterm.c (emacs_options, x_initialized, same_x_server):
10049 Remove unused (and duplicated) definitions.
10050
10051 2004-01-02 Kim F. Storm <storm@cua.dk>
10052
10053 * process.h (struct Lisp_Process): New members for adaptive read
10054 buffering: adaptive_read_buffering, read_output_delay, and
10055 read_output_skip.
10056
10057 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10058 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10059 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10060 (process_output_delay_count, process_output_skip): New vars.
10061 (Vprocess_adaptive_read_buffering): New variable.
10062 (make_process): Initialize adaptive read buffering members.
10063 (Fstart_process): Set adaptive_read_buffering member.
10064 (deactivate_process): Cleanup adaptive read buffering.
10065 (wait_reading_process_input): Temporarily omit delayed
10066 subprocesses from the set of file descriptors to read from;
10067 adjust the select timeout if we skipped any subprocesses.
10068 (read_process_output): Increase adaptive read buffering delay if
10069 we read less than a full buffer; reduce delay when we read a
10070 full buffer.
10071 (send_process): Simplify using local Lisp_Process var.
10072 Reset adaptive read buffering delay after write.
10073 (init_process): Initialize process_output_delay_count and
10074 process_output_skip.
10075 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10076
10077 2004-01-01 Jason Rumney <jasonr@gnu.org>
10078
10079 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10080
10081 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10082
10083 * print.c (Ferror_message_string): Add hyperlink in the docstring
10084 to the definition of `signal' in the Elisp manual.
10085 * eval.c (Fsignal): Ditto.
10086
10087 2003-12-29 James Clark <jjc@jclark.com>
10088
10089 * fns.c (internal_equal): Return t for two NaN arguments.
10090
10091 2003-12-29 Richard M. Stallman <rms@gnu.org>
10092
10093 * data.c (store_symval_forwarding): Handle setting
10094 default-fill-column, etc., by changing the value in
10095 buffers that use the default.
10096
10097 * minibuf.c (Fset_minibuffer_window): Doc fix.
10098
10099 * fileio.c (choose_write_coding_system): Ignore auto_saving
10100 if using the visited file for auto saves.
10101 (Fwrite_region): Don't update SAVE_MODIFF
10102 if auto-saving in visited file.
10103
10104 2003-12-29 Kenichi Handa <handa@m17n.org>
10105
10106 * dispextern.h (face_font_available_p): Extern it.
10107
10108 * fontset.c (Voverriding_fontspec_alist): New variable.
10109 (lookup_overriding_fontspec): New function.
10110 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10111 (fontset_font_pattern): Likewise.
10112 (regulalize_fontname): New function.
10113 (Fset_fontset_font): Call regulalize_fontname.
10114 (Fset_overriding_fontspec_internal): New function.
10115 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10116 Defsubr Sset_overriding_fontspec_internal.
10117
10118 * xfaces.c (face_font_available_p): New function.
10119
10120 2003-12-28 Richard M. Stallman <rms@gnu.org>
10121
10122 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10123 or if its name is nil.
10124
10125 * buffer.c (Fkill_buffer): Don't delete auto-save file
10126 if it's the same as the visited file.
10127
10128 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10129
10130 * coding.c (Fcheck_coding_system): Doc fix.
10131
10132 2003-12-28 Kim F. Storm <storm@cua.dk>
10133
10134 * Makefile.in (eval.o): Depend on dispextern.h.
10135
10136 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10137 image glyph using image's ascent.
10138 (mode_line_string): Return image glyph as object clicked on.
10139 Adjust y0 for image glyph using image's ascent.
10140
10141 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10142 (struct glyph): New members, ascent and descent. Used to save
10143 this glyph's ascent and descent, instead of having.
10144 (struct glyph): Declare member face_id using FACE_ID_BITS.
10145 (find_hot_spot): Add prototype.
10146
10147 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10148 (QCmap): Declare extern.
10149 (make_lispy_position): When position is inside image hot-spot,
10150 use hot-spot element's id as posn element.
10151
10152 * lisp.h (IMAGEP): New macro to test for image object type.
10153 (Qimage): Declare extern.
10154
10155 * macfns.c (Qimage): Remove extern (now in lisp.h).
10156 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10157
10158 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10159
10160 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10161 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10162
10163 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10164
10165 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10166
10167 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10168 pointer types.
10169 (Qrelative_width, Qalign_to): Remove unused variables.
10170 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10171 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10172 image maps.
10173 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10174 new dx and dy args.
10175 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10176 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10177 than row's ascent and height, to get sensible height on tall rows.
10178 (build_desired_tool_bar_string): Remove Qimage extern.
10179 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10180 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10181 image glyph is alone on the last line.
10182 (append_glyph, append_composite_glyph, produce_image_glyph)
10183 (append_stretch_glyph): Set glyph's ascent and descent.
10184 (on_hot_spot_p): New function to check if position is inside an
10185 rectangular, circular, or polygon-shaped image hot-spot,
10186 (find_hot_spot): New function to search for image hot-spot.
10187 (Flookup_image_map): New defun to search for image hot-spot.
10188 (define_frame_cursor1): New aux function to determine frame pointer.
10189 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10190 Handle `pointer' text property and :pointer image property to
10191 control frame pointer shape. Detect image hot-spots for pointer
10192 and help_echo properties. Use define_frame_cursor1.
10193 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10194 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10195 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10196
10197 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10198
10199 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10200 (Qimage): Remove extern (now in lisp.h).
10201 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10202
10203 * xmenu.c (show_help_event): Remove unused code.
10204
10205 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10206 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10207 row's ascent and descent, to get a sensible height on tall rows.
10208
10209 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10210
10211 * minibuf.c (Fcompleting_read): Undo previous change.
10212
10213 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10214
10215 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10216 Arguments GCPRO'ed in call to file name handler.
10217
10218 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10219
10220 * termcap.c (tgetst1): Scan for "%pN"; if all
10221 N are continuous in [1,9], remove all "%pN".
10222
10223 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10224
10225 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10226
10227 * xfaces.c (lface_fully_specified_p): Take into account that
10228 MAC OS always have unspecified stipple.
10229
10230 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10231
10232 * tparam.c (tparam1): Add handling for `%pN', which
10233 means use param N for the next substitution.
10234
10235 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10236
10237 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10238 In case `frame' is nil, consult the selected frame.
10239 (Fcolor_supported_p): Likewise.
10240
10241 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10242
10243 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10244 Doc fixes.
10245
10246 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10247 and an integer. Adapt the introductory comment accordingly.
10248 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10249 Doc fix.
10250 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10251 read_minibuf.
10252 (Fcompleting_read): Delete code moved into read_minibuf.
10253 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10254
10255 2003-12-03 Kenichi Handa <handa@m17n.org>
10256
10257 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10258 encoding sequence.
10259
10260 2003-12-01 Kenichi Handa <handa@m17n.org>
10261
10262 * composite.c (syms_of_composite): Don't make the compostion hash
10263 table week.
10264
10265 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10266
10267 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10268 * textprop.c (Fget_char_property_and_overlay): New function.
10269 (syms_of_textprop): Defsubr it.
10270
10271 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10272
10273 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10274 to compile on terminal configuration.
10275
10276 * fileio.c (Fread_file_name): Check use_file_dialog also before
10277 calling Fx_file_dialog.
10278
10279 * fns.c (use_file_dialog): New variable.
10280 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10281
10282 2003-11-29 Kim F. Storm <storm@cua.dk>
10283
10284 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10285 (syms_of_msdos): Don't intern and staticpro them.
10286
10287 2003-11-27 Kim F. Storm <storm@cua.dk>
10288
10289 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10290 coordinates relative to glyph at posn. If glyph is an image,
10291 return that as object at posn. Callers changed.
10292 (mode_line_string, marginal_area_string): Calculate and return
10293 pixel coordinates relative to glyph. Callers changed.
10294
10295 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10296 (marginal_area_string): Fix prototypes.
10297 (window_box_left_offset, window_box_right_offset): Add prototypes.
10298
10299 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10300 Remove prototypes.
10301
10302 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10303
10304 * keyboard.c (make_lispy_position): Add x and y coordinates
10305 relative to the current glyph as 7th element of position.
10306 If glyph is an image, return it in the object element.
10307 (read_key_sequence): Skip checks for keymap property in cases
10308 where POSN_STRING is not a string (e.g. an image).
10309
10310 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10311 (Vshow_text_cursor_in_void): New variable.
10312 (glyph_to_pixel_coords): Don't use negative hpos.
10313 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10314 (append_stretch_glyph): Change ascent arg to be actual value
10315 in pixels rather than ratio to height. Callers changed.
10316 (calc_pixel_width_or_height): New aux function, implementing
10317 pixel based artihmetic for glyph widths and heights.
10318 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10319 :width, :height, :align-to, and :ascent, thus allowing these to
10320 be specified in pixels as well as multiples of characters.
10321 Don't produce stretch glyphs with zero width or height.
10322 (get_specified_cursor_type): Declare static.
10323 (get_window_cursor_type): Declare static. Add glyph arg to be
10324 able to know when cursor is on an image; always substitute
10325 hollow-box cursor for filled-box cursor on images, to avoid
10326 negative images and flicker when blinking the cursor.
10327 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10328 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10329 than vertical scroll-bar cursor in display margins.
10330 (note_mouse_highlight): Use non-text cursor rather than text
10331 cursor in fringes and over images in the text area.
10332 Use non-text cursor when mouse pointer is outside editable text,
10333 i.e. in the void after end-of-line or end-of-buffer; this was
10334 already done for W32, but is now standard for all systems --
10335 user can toggle show-text-cursor-in-void to get old behaviour.
10336 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10337 Vdisplay_pixels_per_inch.
10338
10339 2003-11-25 Andreas Schwab <schwab@suse.de>
10340
10341 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10342 EMACS_INT to not lose bits.
10343 (Ffillarray): Don't set bits beyond the size of a bool vector.
10344
10345 2003-11-25 Kim F. Storm <storm@cua.dk>
10346
10347 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10348 define this defun on systems that cannot use stderr as lvalue.
10349
10350 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10351
10352 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10353 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10354 ld's default is incompatible with unexec.
10355
10356 2003-11-23 Kim F. Storm <storm@cua.dk>
10357
10358 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10359 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10360 (Fforce_window_update): New defun.
10361 (syms_of_window): Defsubr it.
10362 (Fset_window_margins, Fset_window_fringes): Doc fix.
10363
10364 * print.c (Fredirect_debugging_output): New defun.
10365 (syms_of_print): Defsubr it.
10366
10367 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10368
10369 * fns.c (Fset_char_table_parent): Doc fix.
10370
10371 2003-11-22 Kim F. Storm <storm@cua.dk>
10372
10373 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10374 for glyph clicked on, rather than (unused) pixel positions.
10375 (mode_line_string, marginal_area_string): Change X and Y args to
10376 pointers for returning actual row/column for glyph clicked on.
10377 Simplify and optimize loops.
10378
10379 * dispextern.h (mode_line_string, marginal_area_string):
10380 Update prototypes.
10381
10382 * keyboard.c (make_lispy_position): New function for generating
10383 mouse click positions from frame and pixel coordinates.
10384 Enhanced to return buffer position and actual row/column for
10385 events outside the text area using updated mode_line_string and
10386 marginal_area_string functions.
10387 Return left-fringe and right-fringe clicks as such, rather than
10388 clicks in text area.
10389 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10390 pixel_to_glyph_coords, as we never use the results.
10391 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10392 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10393 Eliminate unused code in WHEEL_EVENT handling.
10394 (make_lispy_movement): Use make_lispy_position.
10395
10396 * window.c (coordinates_in_window): Remove redundant tests.
10397 Fix returned X pixel value for left-margin.
10398
10399 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10400 mode_line_string and marginal_area_string parameters.
10401
10402 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10403
10404 * w32.c (struct the_group, getgrgid): Add.
10405 * mac.c (struct my_group, getgrgid): Add.
10406
10407 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10408
10409 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10410
10411 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10412
10413 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10414 include in call to file name handler. Optionally translate numeric
10415 UID and GID to strings. Update docstring.
10416 (directory_files_internal): Add parameter ID-FORMAT.
10417 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10418 include in call to file name handler and call to
10419 directory_files_internal. Update Docstring.
10420 (Fdirectory_files): Add dummy parameter in call to
10421 directory_files_internal.
10422 * lisp.h (Qinteger): Add.
10423 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10424 (Ffile_attributes): Add parameter.
10425 * data.c (Qinteger): Export.
10426
10427 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10428
10429 * fns.c (Freverse, Fnreverse): Doc fixes.
10430
10431 2003-11-19 Kim F. Storm <storm@cua.dk>
10432
10433 * xdisp.c (init_iterator): Initialize it->start to position
10434 before reseating (in case start position is invisible).
10435 (init_to_row_start): Set it->start to row-start.
10436 (redisplay_window): Accept optional_new_start if start position
10437 is invisible (in which case IT_CHARPOS overshoots PT).
10438 (display_line): Setup row->start from it->start (rather than
10439 it->current which is wrong if first char on line is invisible).
10440 When done, reseat it->start to it->current (= start of next row).
10441 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10442 is only partially visible.
10443
10444 * dispextern.h (struct it): New member start.
10445
10446 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10447
10448 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10449 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10450 of block_index outside of the macro call.
10451 (Fgarbage_collect): Remove null code.
10452
10453 * m/amdx86-64.h: Don't redefine XPNTR.
10454
10455 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10456 of VALMASK.
10457
10458 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10459 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10460 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10461
10462 * lisp.h (VALMASK): Only define for non-union type.
10463 (MARKBIT): Remove.
10464 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10465 (XTYPE): Define unconditionally.
10466 (XSETTYPE): Remove one more remnant.
10467 (EQ): Define differently for the union and non-union cases.
10468 (INTMASK): New bit mask.
10469 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10470 (GC_EQ): Delegate to EQ.
10471
10472 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10473
10474 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10475
10476 * xterm.c (x_window_to_scroll_bar): Move check of display to
10477 where window_id is compared.
10478
10479 2003-11-17 Kim F. Storm <storm@cua.dk>
10480
10481 * dispextern.h (struct it): New member first_vpos.
10482
10483 * xdisp.c (start_display): Set it->first_vpos.
10484 (try_window_id): Use first_vpos to start display in first _text_
10485 line if no reusable lines at start of window with header line.
10486
10487 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10488
10489 * w32fns.c (XPutPixel):
10490 * w32bdf.c (w32_init_bdf_font):
10491 * sunfns.c (sel_read):
10492 * process.c (Fmake_network_process):
10493 * frame.c (store_frame_param):
10494 * fontset.c (Fset_fontset_font):
10495 * emacs.c (shut_down_emacs):
10496 * ccl.c (ccl_driver): Remove period at end of error message.
10497
10498 * config.in: Regenerate.
10499
10500 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10501 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10502 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10503 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10504 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10505
10506 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10507
10508 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10509 (XTmouse_position, handle_one_xevent): Pass Display* to
10510 x_window_to_scroll_bar.
10511 (x_window_to_scroll_bar): Take a Display* argument.
10512 Check that display for frame is equal to Display* argument.
10513 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10514 x_display_info_for_display instead. Use Display in xev instead
10515 of GDK_DISPLAY.
10516 (x_dispatch_event): Call x_display_info_for_display.
10517 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10518 (x_connection_closed): Call xg_display_close for GTK.
10519 (x_term_init): Call xg_display_open for additional displays.
10520 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10521 for GTK.
10522
10523 * xmenu.c (single_menu_item, mouse_position_for_popup)
10524 (x_activate_menubar): Formatting adjustments.
10525
10526 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10527 adjustments.
10528
10529 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10530 (xg_display_close, xg_create_default_cursor)
10531 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10532 handling.
10533 (xg_left_ptr_cursor): Remove.
10534 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10535 cursor here.
10536 (xg_win_to_widget): Take Display* argument, call
10537 gdk_xid_table_lookup_for_display.
10538 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10539 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10540 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10541 in FRAME_X_DISPLAY_INFO.
10542 (xg_get_scroll_id_for_window): Take Display* argument.
10543 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10544 (xg_initialize): Remove xg_left_ptr_cursor.
10545
10546 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10547 Display* argument.
10548 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10549
10550 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10551
10552 * xterm.c (x_detect_focus_change): Do not change focus frame for
10553 Enter/LeaveNotify if the current focus frame has explicit focus.
10554
10555 2003-11-14 Kim F. Storm <storm@cua.dk>
10556
10557 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10558 is active and first glyph is only partially visible.
10559
10560 2003-11-13 Kenichi Handa <handa@m17n.org>
10561
10562 * xdisp.c (select_frame_for_redisplay): New function.
10563 (redisplay_internal): Record also selected_frame for
10564 unwind_redisplay. Call select_frame_for_redisplay before
10565 redrawing each frame.
10566 (unwind_redisplay): Argument changed to a cons.
10567
10568 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10569
10570 * fns.c (Fstring_to_multibyte): Doc fix.
10571
10572 2003-11-11 Kenichi Handa <handa@m17n.org>
10573
10574 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10575
10576 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10577
10578 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10579 program specified positions.
10580
10581 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10582
10583 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10584
10585 2003-11-08 Kenichi Handa <handa@m17n.org>
10586
10587 * Makefile.in (lisp): Add kannada.el.
10588 (shortlisp): Likewise.
10589
10590 2003-11-07 Kenichi Handa <handa@m17n.org>
10591
10592 * coding.c (coding_allocate_composition_data):
10593 Reset coding->composing to COMPOSITION_NO.
10594 (coding_restore_composition): Detect invalid composition data.
10595 Give Fstring and Fvector a Lispy integer, not C int.
10596
10597 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10598
10599 * floatfns.c (Flogb): Don't use VALMASK.
10600
10601 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10602 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10603
10604 * lisp.h (XINT): Move the cast to clarify what is going on.
10605 (GCTYPEMASK, XSETTYPE): Remove.
10606 (XGCTYPE): Make it an alias of XTYPE.
10607
10608 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10609
10610 * xterm.c (x_term_init): Fix formatting.
10611
10612 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10613
10614 * gtkutil.h (xg_have_tear_offs): Declare.
10615 (xg_keep_popup, xg_did_tearoff): Remove.
10616
10617 * gtkutil.c: Remove variable xg_did_tearoff.
10618 (xg_have_tear_offs): New function.
10619 (tearoff_remove): Just decrease xg_detached_menus.
10620 (tearoff_activate): Increase xg_detached_menus and call
10621 tearoff_remove when tearoff is removed.
10622 (xg_keep_popup): Remove function.
10623 (create_menus): Give add_tearoff_p as argument to recursive
10624 call to create_menus.
10625 (xg_create_widget): Use variables instead of multiple
10626 strcmp. Tell create_menus to create tear off only for
10627 menu bar menus.
10628 (xg_update_menubar): Change title for a detached menu also.
10629 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10630 of deep_p.
10631 (xg_initialize): Initialize xg_detached_menus, remove
10632 initialization of xg_did_tearoff.
10633
10634 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10635 xg_have_tear_offs returns non-zero.
10636 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10637 call to xg_keep_popup.
10638
10639 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10640
10641 * macterm.c (XTread_socket): Handle menubar selection and grow
10642 window only for mouseDown events.
10643
10644 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10645
10646 * xterm.c (x_term_init): For GTK part, increase x_initialized
10647 to check for more than one display. Use error instead of return 0.
10648
10649 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10650
10651 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10652 (copy_dysymtab): Call it.
10653
10654 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10655
10656 * eval.c (Fdefvaralias): Doc fix.
10657
10658 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10659
10660 * data.c (Fsetplist): Doc fix.
10661
10662 2003-10-14 Lute Kamstra <lute@gnu.org>
10663
10664 * window.c (Fset_window_fringes): Clarify docstring.
10665
10666 2003-10-14 Kim F. Storm <storm@cua.dk>
10667
10668 * window.c (Fset_window_margins): Simplify arg checking.
10669
10670 2003-10-13 Richard M. Stallman <rms@gnu.org>
10671
10672 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10673 (print_partial_compiled_pattern): Replace assert with a printout.
10674 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10675
10676 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10677
10678 * window.c (Fset_window_margins): Allow only integers as args.
10679 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10680 Doc fixes.
10681
10682 2003-10-13 Lute Kamstra <lute@gnu.org>
10683
10684 * window.c (Fset_window_fringes): Elaborate docstring.
10685
10686 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10687
10688 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10689
10690 * s/darwin.h (GC_MARK_STACK): Define.
10691
10692 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10693
10694 * window.c (shrink_windows): New function.
10695 (size_window): Call shrink_windows to calculate window sizes when
10696 shrinking frame with more than one window.
10697
10698 2003-10-12 Kim F. Storm <storm@cua.dk>
10699
10700 * xdisp.c (compute_fringe_widths): Doc fix.
10701
10702 2003-10-08 Kenichi Handa <handa@m17n.org>
10703
10704 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10705
10706 2003-10-07 Kenichi Handa <handa@m17n.org>
10707
10708 * coding.c (Qcoding_system_define_form): New variable.
10709 (syms_of_coding): Intern and staticpro it.
10710 (Fcheck_coding_system): Try to autoload the definition of
10711 CODING-SYSTEM.
10712
10713 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10714
10715 * fns.c (Frequire): Doc fix.
10716
10717 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10718
10719 * xfns.c (Fx_send_client_event): New function as a base for
10720 manipulating extended window manager hints.
10721 (Fx_send_client_event): Remove unused variable s.
10722
10723 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10724 that function is removed.
10725
10726 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10727 x/y_pixels_outer_diff.
10728 (x_check_expected_move): Calculate move_offset_left/top.
10729
10730 * xterm.h (struct x_output): New members: move_offset_top/left.
10731
10732 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10733 call x_set_offset directly.
10734
10735 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10736
10737 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10738
10739 * xterm.c (x_delete_display): Free font names and font_encoder
10740 in dpyinfo->font_table.
10741
10742 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10743 Move xfree of font names to x_delete_display.
10744
10745 * xterm.h (struct x_display_info): New member, wm_type.
10746 (struct x_output): New members, expected_top/left and
10747 check_expected_move.
10748
10749 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10750 is received.
10751 (handle_one_xevent): Rename x_check_expected_move from
10752 x_check_fullscreen_move.
10753 (x_set_offset): Only add WM decoration sizes to modified_top/left
10754 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10755 (x_check_expected_move): Rename from x_check_fullscreen_move.
10756 Removed fullscreen specific code. Use check_expected_move,
10757 expected_left/top instead. Also, set wm_type.
10758 (x_term_init): Initialize wm_type to unknown.
10759
10760 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10761 sizes to move_x/y.
10762
10763 2003-10-03 Kenichi Handa <handa@m17n.org>
10764
10765 * macterm.c (x_load_font): Clear all members of FONTP before start
10766 filling them.
10767
10768 2003-10-02 Kenichi Handa <handa@m17n.org>
10769
10770 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10771 before calling find_ccl_program_func. Call find_ccl_program_func
10772 only when fontp->font_encoder is not NULL.
10773
10774 * xterm.c (x_load_font): Clear all members of FONTP before start
10775 filling them.
10776
10777 2003-10-03 John Paul Wallington <jpw@gnu.org>
10778
10779 * keymap.c (map_keymap): Don't abort when binding is a vector.
10780
10781 2003-10-02 Jason Rumney <jasonr@gnu.org>
10782
10783 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10784 Sync dependencies with Makefile.in.
10785 (alloca.o): Remove.
10786
10787 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10788 filling them.
10789
10790 * w32bdf.c (w32_load_bdf_font): Likewise.
10791
10792 2003-09-30 Richard M. Stallman <rms@gnu.org>
10793
10794 * term.c (set_tty_color_mode): Calculate current_mode_spec
10795 regardless of value of VAL.
10796
10797 * intervals.c (graft_intervals_into_buffer):
10798 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10799 Handle over_used when splitting UNDER.
10800
10801 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10802
10803 * regex.c (regex_compile): Free the stack when returning from function.
10804
10805 2003-09-28 Kenichi Handa <handa@m17n.org>
10806
10807 * fontset.c (Finternal_char_font): Change return value to
10808 cons (FONT-NAME . GLYPH-CODE).
10809
10810 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10811
10812 * term.c (tty_setup_colors): Treat any negative argument as -1.
10813
10814 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10815
10816 * process.c (send_process): Delete unused temp_buf.
10817
10818 2003-09-26 Dave Love <fx@gnu.org>
10819
10820 * xterm.c (x_bitmap_mask): Declare.
10821
10822 2003-09-25 Dave Love <fx@gnu.org>
10823
10824 * Makefile.in (fns.o): Depend on md5.h.
10825
10826 2003-09-25 Kim F. Storm <storm@cua.dk>
10827
10828 * window.c (set_window_buffer): Fix redisplay problems when
10829 switching between buffers with different display margin widths.
10830
10831 2003-09-23 Kim F. Storm <storm@cua.dk>
10832
10833 * process.c (set_socket_option): Fix :bindtodevice option.
10834 (Fset_network_process_option): Update process contact list when
10835 setting option succeeds.
10836 (Fmake_network_process): Doc fix.
10837
10838 2003-09-23 Dave Love <fx@gnu.org>
10839
10840 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10841
10842 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10843
10844 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10845 color mode is an integer number (it could be -1).
10846
10847 2003-09-22 Richard M. Stallman <rms@gnu.org>
10848
10849 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10850 in the case where OVER is longer than UNDER.
10851
10852 2003-09-22 Masatake YAMATO <jet@gyve.org>
10853
10854 * window.c (Fset_window_scroll_bars): Validate the value of
10855 `vertical_type'.
10856
10857 2003-09-21 Kim F. Storm <storm@cua.dk>
10858
10859 * frame.c (Vdefault_frame_scroll_bars): New variable.
10860 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10861 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10862 window-system default scroll bar position.
10863
10864 * window.c (Fwindow_scroll_bars): Doc fix.
10865
10866 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10867
10868 * xterm.c (x_set_offset): Take window manager decorations into account.
10869
10870 2003-09-19 Richard M. Stallman <rms@gnu.org>
10871
10872 * atimer.h: Don't include lisp.h.
10873 (P_): Define it here (as well as elsewhere).
10874
10875 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10876 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10877
10878 * data.c (Fvariable_binding_locus): New function.
10879 (syms_of_data): defsubr it.
10880 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10881
10882 2003-09-18 Dave Love <fx@gnu.org>
10883
10884 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10885
10886 * process.c (Fnetwork_interface_info): Fix type error.
10887 (Fnetwork_interface_list): Doc fix.
10888 (read_process_output, read_process_output): Delete unused var.
10889
10890 2003-09-17 Kim F. Storm <storm@cua.dk>
10891
10892 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10893 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10894 (Fnetwork_interface_info): Check that ifreq struct has required
10895 fields before accessing them; this requires that those fields are
10896 defined as macros, which may be too restrictive on some platforms,
10897 but it is better than failing on other platforms.
10898 (syms_of_process): Only defsubr above fns when included.
10899
10900 2003-09-17 Dave Love <fx@gnu.org>
10901
10902 * unexalpha.c: Don't include varargs.h.
10903
10904 2003-09-17 Kim F. Storm <storm@cua.dk>
10905
10906 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10907 for network process.
10908 (socket_options): Add `:' prefix to option names. Add optbit field.
10909 (set_socket_option): Remove no_error arg and special handling of s < 0.
10910 Return 1<<optbit for known option, 0 for unknown.
10911 Do not interpret 0 as false for boolean option (only nil).
10912 Pass failed option and value to report_file_error.
10913 (Fset_network_process_options): Replace by Fset_network_process_option.
10914 (Fset_network_process_option): New function to set just one option.
10915 (Fmake_network_process): Allow :coding arg to be a cons.
10916 Allow :server arg to be an integer specifying backlog size.
10917 Remove :options arg, and allow options to be specified directly
10918 as :KEY, VALUE pairs. Parse these options before binding socket.
10919 As before, :reuseaddr t is default for a server process, but this
10920 can now be disabled by specifying :reuseaddr nil.
10921 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10922 (init_process): Availability of network options is now checked with
10923 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10924 setup features.
10925 (syms_of_process): Fix defsubr's for the replaced functions.
10926
10927 2003-09-16 Dave Love <fx@gnu.org>
10928
10929 * Makefile.in: Depend on coding.h.
10930
10931 2003-09-14 Kim F. Storm <storm@cua.dk>
10932
10933 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10934 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10935 (syms_of_process): Defsubr them.
10936
10937 * config.in: Regenerate.
10938
10939 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10940
10941 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10942 * m/news-r6.h (XUNMARK): Remove.
10943 * m/mips.h (XUNMARK): Remove.
10944 * m/mips-siemens.h (XUNMARK): Remove.
10945 * m/iris4d.h (XUNMARK): Remove.
10946 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10947
10948 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10949
10950 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10951 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10952 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10953 (XTYPE): Use unsigned right-shift.
10954 (XMARKBIT, XMARK, XUNMARK): Remove.
10955
10956 * alloc.c (init_intervals, init_symbol, init_marker):
10957 Don't preallocate anything.
10958 (Fgarbage_collect, mark_object): Ignore the markbit.
10959
10960 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10961
10962 2003-09-08 Lute Kamstra <lute@gnu.org>
10963
10964 * xdisp.c (pint2hrstr): New function.
10965 (decode_mode_spec): Add `%i' and `%I' specs.
10966 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10967 for `mode-line-format'.
10968
10969 2003-09-07 Andreas Schwab <schwab@suse.de>
10970
10971 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10972 avoid warning.
10973
10974 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10975
10976 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10977
10978 2003-09-03 Kim F. Storm <storm@cua.dk>
10979
10980 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10981 change (superseded by 2002-08-30 change); the default blink-off
10982 cursor is now again "no cursor".
10983
10984 2003-09-01 Jason Rumney <jasonr@gnu.org>
10985
10986 * makefile.w32-in (alloca.o): Remove.
10987 (coding.o): Depend on intervals.h
10988 (emacs.o, bytecode.o): Depend on window.h
10989
10990 2003-09-01 Dave Love <fx@gnu.org>
10991
10992 * Makefile.in (alloca.o): Remove commands.
10993 (coding.o): Depend on intervals.h composite.h window.h.
10994 (emacs.o): Depend on window.h keyboard.h keymap.h.
10995 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10996 (bytecode.o): Depend on window.h.
10997
10998 2003-08-31 Jason Rumney <jasonr@gnu.org>
10999
11000 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11001 returned even when font_type is unknown.
11002
11003 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11004
11005 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11006
11007 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11008
11009 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11010 *_offset.
11011
11012 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11013 calculate pixel value.
11014
11015 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11016
11017 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11018 Don't tell redisplay display is accurate when it's actually been
11019 paused for pending input.
11020
11021 2003-08-29 Richard M. Stallman <rms@gnu.org>
11022
11023 * dispnew.c (adjust_glyph_matrix): Call window_box
11024 whenever W is nonzero.
11025
11026 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11027 (Fkill_local_variable, Fmake_variable_frame_local)
11028 (Flocal_variable_p, Flocal_variable_if_set_p):
11029 Use indirect_variable to trace thru variable aliases.
11030
11031 * config.in: Updated.
11032
11033 * callint.c (Fcall_interactively): Save and restore
11034 Vthis_command, Vthis_original_command, real_this_command,
11035 and current_kboard->Vlast_command.
11036
11037 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11038
11039 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11040
11041 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11042
11043 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11044
11045 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11046 (decode_coding_sjis_big5): Likewise.
11047
11048 2003-08-27 Jason Rumney <jasonr@gnu.org>
11049
11050 * w32.c (sys_pipe): Protect against file descriptor overflow.
11051
11052 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11053
11054 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11055
11056 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11057
11058 * xfns.c (Vgtk_version_string): New variable.
11059 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11060
11061 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11062
11063 * term.c (term_init): Remove `const' from buffer_size's declaration.
11064
11065 * Makefile.in (msdos.o): Depend on intervals.h.
11066
11067 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11068
11069 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11070
11071 * xterm.h (struct x_display_info): New fields: client_leader_window
11072 and Xatom_wm_client_leader.
11073
11074 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11075 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11076
11077 * xsmfns.c (create_client_leader_window): New function.
11078 (x_session_initialize): Call create_client_leader_window, take
11079 dpyinfo as argument.
11080
11081 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11082
11083 * Makefile.in (xsmfns.o): Add more depenedencies.
11084
11085 2003-08-21 Dave Love <fx@gnu.org>
11086
11087 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11088
11089 2003-08-21 Kenichi Handa <handa@m17n.org>
11090
11091 * term.c (term_init): Fix previous change; don't rely on the
11092 length of `buffer' if TERMINFO is defined.
11093
11094 2003-08-20 Dave Love <fx@gnu.org>
11095
11096 * atimer.h: Include lisp.h.
11097
11098 * lisp.h (EMACS_LISP_H): New.
11099 (popup_activated_flag): Don't declare.
11100
11101 * alloca.c: Some merging with gnulib. Change logic and doc
11102 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11103 [DO_BLOCK_INPUT]: Don't include lisp.h.
11104 (xmalloc, xfree): Declare.
11105 (malloc): Don't declare.
11106
11107 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11108 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11109 atimer.h, blockinput.h.
11110
11111 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11112
11113 * alloca.s: Remove.
11114
11115 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11116
11117 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11118 use -lncurses.
11119
11120 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11121 FreeBSD returns something longer than 2044. Abort if the end of
11122 the buffer is overwritten.
11123
11124 2003-08-19 Miles Bader <miles@gnu.org>
11125
11126 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11127
11128 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11129
11130 * alloc.c (lisp_align_malloc): Check for memory full when
11131 allocating ablocks, which also avoids freeing a pointer into an
11132 ablocks structure.
11133
11134 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11135
11136 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11137
11138 2003-08-16 Richard M. Stallman <rms@gnu.org>
11139
11140 * editfns.c (Fencode_time): Doc fix.
11141
11142 2003-08-16 David Ponce <david@dponce.com>
11143
11144 * fileio.c (Fwrite_region): Fix conditional expression to issue
11145 the right message.
11146
11147 2003-08-16 Juri Linkov <juri@jurta.org>
11148
11149 * syntax.c (Fforward_word): Argument changed to optional.
11150 Set default value to 1.
11151
11152 2003-08-15 Kenichi Handa <handa@m17n.org>
11153
11154 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11155 what autoscaled.
11156 (best_matching_font): Once we find a better scalable font, set
11157 non_scalable_has_exact_height_p to 1.
11158 (try_font_list): Call try_alternative_families to try any family
11159 with the given registry.
11160
11161 2003-08-09 Andreas Schwab <schwab@suse.de>
11162
11163 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11164
11165 * print.c (print_string): Fix printing of multibyte string with
11166 nontrivial printcharfun.
11167
11168 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11169
11170 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11171
11172 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11173
11174 2003-07-31 Kenichi Handa <handa@m17n.org>
11175
11176 * process.c (read_process_output): Return the actually read bytes
11177 instead of the result of decoding.
11178
11179 2003-07-31 Kenichi Handa <handa@m17n.org>
11180
11181 * xterm.h (struct x_bitmap_record): New member have_mask.
11182
11183 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11184 to 0.
11185 (x_create_bitmap_from_file): Likewise.
11186 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11187 (x_destroy_all_bitmaps): Likewise.
11188 (x_create_bitmap_mask): Set have_mask member to 1.
11189
11190 2003-07-30 Richard M. Stallman <rms@gnu.org>
11191
11192 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11193
11194 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11195
11196 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11197
11198 2003-07-29 Richard M. Stallman <rms@gnu.org>
11199
11200 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11201 Conditionalize XIM code on HAVE_XIM.
11202
11203 * fns.c (Fclear_string): New function.
11204 (syms_of_fns): defsubr it.
11205
11206 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11207
11208 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11209
11210 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11211
11212 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11213
11214 * buffer.c (delete_all_overlays): New function.
11215 * buffer.h (delete_all_overlays): Declare.
11216 * coding.c (run_pre_post_conversion_on_str):
11217 * print.c (temp_output_buffer_setup):
11218 * fileio.c (Finsert_file_contents):
11219 * minibuf.c (get_minibuffer): Use it.
11220
11221 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11222
11223 * unexmacosx.c (unexec_regions_sort_compare):
11224 (unexec_regions_merge): New functions. Sort and merge unexec
11225 regions before dumping them.
11226
11227 2003-07-22 Dave Love <fx@gnu.org>
11228
11229 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11230
11231 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11232
11233 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11234 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11235 MARKBIT as the gcmarkbit for strings.
11236
11237 2003-07-21 Richard M. Stallman <rms@gnu.org>
11238
11239 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11240
11241 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11242 (syms_of_fns): Corresponding change.
11243
11244 * alloc.c (syms_of_alloc): Doc fixes.
11245
11246 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11247
11248 * s/netbsd.h: Use -Wl syntax.
11249
11250 2003-07-17 Richard M. Stallman <rms@gnu.org>
11251
11252 * xterm.c (xim_initialize): Redo 6/24 change.
11253
11254 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11255
11256 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11257 (Fswitch_to_buffer): Don't signal an error when switching to the same
11258 buffer in a dedicated window.
11259
11260 * alloc.c: Use bitmaps for cons, as was done for floats.
11261 (init_float, init_cons): Let the normal code allocate the first block.
11262 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11263 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11264 New macros.
11265 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11266 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11267 (live_cons_p): Check the pointer is not past the `conses' array.
11268 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11269 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11270 (survives_gc_p): Use CONS_MARKED_P and simplify.
11271 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11272
11273 2003-07-13 Paul Eggert <eggert@twinsun.com>
11274
11275 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11276 puts it into BSS instead, at least on Solaris 8 and 9.
11277 This is a valid optimization, and it may occur on other platforms,
11278 so Emacs should not assume that initializing a static variable to
11279 zero puts it into data.
11280 * alloc.c (pure, staticvec):
11281 Initialize these arrays to nonzero, so that they're not
11282 put into BSS by that optimization.
11283
11284 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11285
11286 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11287 (lisp_align_malloc): Use posix_memalign is available.
11288 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11289 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11290 for consistency. Update users.
11291
11292 2003-07-13 Richard M. Stallman <rms@gnu.org>
11293
11294 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11295
11296 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11297
11298 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11299 and use the Gtk+ function gtk_window_icon_from_file if available.
11300
11301 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11302 handle mask of bitmaps.
11303 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11304 mask property.
11305 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11306
11307 * xterm.h (xg_set_icon): New function.
11308
11309 2003-07-12 Paul Eggert <eggert@twinsun.com>
11310
11311 * unexelf.c (unexec): Consider a section to precede the .bss
11312 section if its addresses overlap that of .bss.
11313
11314 2003-07-12 Richard M. Stallman <rms@gnu.org>
11315
11316 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11317
11318 * config.in (HAVE_CRTIN): Add #undef.
11319 (INLINE): Really inline only if OPTIMIZE is defined.
11320
11321 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11322 END_FILES_1.
11323 (START_FILES_1, END_FILES_1): New macros (conditional).
11324 (LD_SWITCH_SYSTEM_TEMACS): Define.
11325
11326 * s/openbsd.h: Don't include bsd4-3.h.
11327 (TERMINFO): Define.
11328 (LIBS_TERMCAP): Define.
11329 (LD_SWITCH_SYSTEM): Define (two definitions).
11330
11331 * xfns.c: Include libpng/png.h instead of png.h.
11332
11333 2003-07-11 Andreas Schwab <schwab@suse.de>
11334
11335 * buffer.c (modify_overlay): Update prototype.
11336 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11337 Likewise.
11338
11339 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11340
11341 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11342 (struct interval): Move to intervals.h.
11343 (struct Lisp_Marker): Use EMACS_INT for position info.
11344 (forward_point): Remove prototype of defunct function.
11345 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11346 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11347 (syms_of_textprop, set_text_properties): Remove prototypes that are
11348 already in intervals.h.
11349
11350 * intervals.h (struct interval): Move from lisp.h.
11351 Use EMACS_INT for position and size info.
11352
11353 * coding.c: Include intervals.h for Fset_text_properties.
11354
11355 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11356 position and length information.
11357
11358 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11359
11360 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11361 position and length information.
11362
11363 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11364
11365 Change overlays_after and overlays_before so the overlays themselves
11366 are linked into lists, rather than using cons cells. After all each
11367 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11368 Lisp_Overlay for free and save up one cons cell per overlay (not
11369 to mention one indirection when traversing the list of overlay).
11370
11371 * lisp.h (struct Lisp_Overlay): New field `next'.
11372
11373 * buffer.h (struct buffer): Change overlays_before and overlays_after
11374 from Lisp lists of overlays to pointers to overlays.
11375
11376 * buffer.c (overlay_strings, recenter_overlay_lists):
11377 Fix typo in eassert in last commit.
11378 (unchain_overlay): New function.
11379 (add_overlay_mod_hooklist): Use AREF.
11380 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11381 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11382 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11383 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11384 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11385 Adjust to new type of overlays_(before|after).
11386
11387 * alloc.c (mark_object): Mark the new `next' field of overlays.
11388 (mark_buffer): Manually mark the overlays_(after|before) fields.
11389
11390 * coding.c (run_pre_post_conversion_on_str):
11391 * editfns.c (overlays_around):
11392 * xdisp.c (load_overlay_strings):
11393 * fileio.c (Finsert_file_contents):
11394 * indent.c (current_column):
11395 * insdel.c (signal_before_change, signal_after_change):
11396 * intervals.c (set_point_both):
11397 * print.c (temp_output_buffer_setup): Use new type for
11398 overlays_(before|after).
11399
11400 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11401
11402 * buffer.c (report_overlay_modification): Don't run hooks while
11403 traversing the list of overlays.
11404
11405 * buffer.h (struct buffer): Use an int for overlay_center.
11406 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11407 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11408
11409 * buffer.c (reset_buffer, recenter_overlay_lists)
11410 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11411 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11412 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11413 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11414 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11415
11416 * xdisp.c (fast_find_position): Remove unused var.
11417
11418 * cmds.c (Qexpand_abbrev): New sym.
11419 (syms_of_cmds): Initialize it.
11420 (internal_self_insert): Use it to call expand-abbrev.
11421
11422 2003-07-09 Kim F. Storm <storm@cua.dk>
11423
11424 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11425 was configured with --without-xim.
11426 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11427
11428 2003-07-07 Richard M. Stallman <rms@gnu.org>
11429
11430 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11431
11432 * alloc.c (Fgarbage_collect): Doc fix.
11433
11434 2003-07-07 Nozomu Ando <nand@mac.com>
11435
11436 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11437
11438 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11439
11440 * minibuf.c (read_minibuf): UNGCPRO before returning.
11441 (Ftry_completion, Fall_completions): Doc fix.
11442
11443 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11444 now that `floats' is not the last element of the struct any more.
11445
11446 2003-07-06 Jason Rumney <jasonr@gnu.org>
11447
11448 * w32term.h (ClipboardSequence_Proc): New type.
11449
11450 * w32fns.c (clipboard_sequence_fn): New variable.
11451 (globals_of_w32fns): Initialize it.
11452
11453 * w32select.c (last_clipboard_sequence_number): New variable.
11454 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11455 number if possible.
11456
11457 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11458
11459 * m/amdx86-64.h (MARKBIT):
11460 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11461 MARKBIT and ARRAY_MARK_FLAG any more.
11462
11463 * m/hp800.h (XSETMARKBIT):
11464 * m/sr2k.h (XSETMARKBIT):
11465 * lisp.h (XSETMARKBIT): Remove unused macro.
11466
11467 * lisp.h (mark_object): Change prototype.
11468
11469 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11470 (last_marked): Change accordingly.
11471 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11472 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11473 (mark_buffer): Update calls to mark_object.
11474
11475 * bytecode.c (mark_byte_stack):
11476 * fns.c (sweep_weak_table):
11477 * keyboard.c (mark_kboards): Update calls to mark_object.
11478
11479 2003-07-06 Jason Rumney <jasonr@gnu.org>
11480
11481 * alloc.c (struct ablock): Only include padding when there is some.
11482
11483 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11484
11485 * alloc.c (ALIGN): Add casts to simplify usage.
11486 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11487 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11488 (struct ablock, struct ablocks): New types.
11489 (free_ablock): New global var.
11490 (lisp_align_malloc, lisp_align_free): New functions.
11491 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11492 (struct float_block): Reorder and add gcmarkbits.
11493 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11494 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11495 (init_float, make_float): Use lisp_align_malloc.
11496 (free_float, live_float_p): Don't use `type' any more.
11497 (make_float): Use FLOAT_UNMARK to access to mark bit.
11498 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11499 Use FLOAT_MARKED_P to access the mark bit.
11500 (pure_alloc): Simplify use of ALIGN.
11501 (mark_object): Use FLOAT_MARK to access the mark bit.
11502 (gc_sweep): Use new macros to access the float's mark bit.
11503 (init_alloc_once): Init free_ablock.
11504
11505 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11506
11507 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11508
11509 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11510 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11511 (allocate_buffer): Move.
11512 (string_bytes): Don't mask markbit of `size_byte'.
11513 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11514 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11515 Use the `size' field of buffers (rather than the `name' field) for
11516 the mark bit, as is done for all other vectorlike objects.
11517 Use the new macros to access the mark bit of vectorlike objects.
11518
11519 2003-06-26 Richard M. Stallman <rms@gnu.org>
11520
11521 * puresize.h (BASE_PURESIZE): Increment base size.
11522
11523 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11524
11525 * xterm.c (xim_initialize): Undo previous change.
11526
11527 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11528
11529 * alloc.c (survives_gc_p): Simplify.
11530
11531 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11532
11533 * window.c (Fset_window_dedicated_p): Simplify.
11534 (display_buffer_1): Don't raise the win from which minibuf was entered.
11535 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11536 (Fminibuffer_selected_window): Simplify.
11537
11538 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11539
11540 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11541 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11542
11543 * insdel.c (check_markers, adjust_markers_for_delete)
11544 (adjust_markers_for_insert, adjust_markers_for_replace)
11545 (prepare_to_modify_buffer, RESTORE_VALUE):
11546 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11547 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11548 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11549 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11550 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11551 * editfns.c (save_excursion_restore, transpose_markers):
11552 * window.c (delete_window):
11553 * xdisp.c (message_dolog): Update for new types.
11554
11555 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11556
11557 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11558 (realize_default_face): Use default_face_done_p for the force_p
11559 argument to set_lface_from_font_name. Set default_face_done_p to one.
11560
11561 * frame.c (make_frame): Initialize default_face_done_p.
11562
11563 * frame.h (struct frame): Add default_face_done_p.
11564
11565 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11566 will be defined.
11567
11568 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11569
11570 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11571 Initialize the new field `gcmarkbit'.
11572 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11573 (mark_interval_tree): Don't mark the tree separately from the nodes.
11574 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11575 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11576 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11577
11578 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11579 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11580 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11581 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11582 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11583
11584 2003-06-24 Dave Love <fx@gnu.org>
11585
11586 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11587
11588 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11589 from gnulib.
11590
11591 2003-06-21 Richard M. Stallman <rms@gnu.org>
11592
11593 * fileio.c (Fwrite_region): Alternate messages
11594 for append and partial write.
11595
11596 * keyboard.c (read_key_sequence): When converting upcase fn key to
11597 downcase, update fkey and keytran so `backspace' gets translated.
11598
11599 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11600
11601 * process.c (wait_reading_process_input): Don't signal SIGIO
11602 in batch mode.
11603
11604 2003-06-17 Kenichi Handa <handa@m17n.org>
11605
11606 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11607 composite.h.
11608
11609 * xselect.c: Don't include charset.h, coding.h, composite.h.
11610 (Qforeign_selection): New variable.
11611 (syms_of_xselect): Intern and static it.
11612 (selection_data_to_lisp_data): Return a unibyte string made from
11613 data with `foreign-selection' text property.
11614
11615 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11616
11617 * termhooks.h (EVENT_INIT): New macro.
11618
11619 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11620
11621 * alloc.c (mark_kboards): Move to keyboard.c.
11622
11623 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11624 * xterm.c (x_dispatch_event):
11625 * xmenu.c (find_and_call_menu_selection):
11626 * xdisp.c (handle_tool_bar_click):
11627 * w32menu.c (menubar_selection_callback):
11628 * sysdep.c (kbd_input_ast, read_input_waiting):
11629 * msdos.c (dos_rawgetc):
11630 * macterm.c (mac_check_for_quit_char):
11631 * macmenu.c (menubar_selection_callback):
11632 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11633 data to kbd_buffer_store_event.
11634
11635 2003-06-15 Kim F. Storm <storm@cua.dk>
11636
11637 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11638 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11639
11640 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11641
11642 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11643
11644 2003-06-12 Kenichi Handa <handa@m17n.org>
11645
11646 * fileio.c (Fwrite_region): Save and restore restriction.
11647
11648 2003-06-12 Dave Love <fx@gnu.org>
11649
11650 * alloca.c (alloca): Declare arg as size_t.
11651
11652 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11653 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11654
11655 2003-06-11 Dave Love <fx@gnu.org>
11656
11657 * search.c (shrink_regexp_cache): Use xrealloc.
11658 (syms_of_search): Use xmalloc.
11659
11660 2003-06-10 Kim F. Storm <storm@cua.dk>
11661
11662 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11663 Adjust phys_cursor.x to be relative to window box, rather than
11664 text area before checking -- to ensure cursor is redrawn when
11665 exposing window.
11666 Note: This also fixes a similar (older) bug if display margins
11667 are present.
11668
11669 2003-06-06 Kenichi Handa <handa@m17n.org>
11670
11671 * coding.c (encoding_buffer_size): If coding->type is
11672 coding_type_ccl, double magnification on CRLF encoding.
11673
11674 2003-06-06 Jason Rumney <jasonr@gnu.org>
11675
11676 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11677 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11678
11679 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11680 Mac too.
11681
11682 2003-06-05 Dave Love <fx@gnu.org>
11683
11684 * strftime.c: Merge changes from gnulib.
11685
11686 * mktime.c (__mktime_internal): Merge changes from gnulib
11687 involving year 69 and dst2.
11688
11689 Changes to merge with gnulib version and be consistent with the
11690 autoconf test:
11691
11692 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11693 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11694 [HAVE_LOCALE_H]: Include locale.h.
11695 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11696
11697 2003-06-05 Kim F. Storm <storm@cua.dk>
11698
11699 * window.c (coordinates_in_window): Convert X and Y to window
11700 relative coordinates inside mode-line and header-line parts.
11701 Convert X and Y to margin area relative coordinates inside left
11702 and right display margin parts.
11703
11704 2003-06-05 Jason Rumney <jasonr@gnu.org>
11705
11706 * w32fns.c (add_system_logical_colors_to_map): New function.
11707 (Fx_open_connection): Use it.
11708
11709 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11710
11711 * process.c (allocate_pty): Revert part of the previous patch.
11712 (Faccept_process_output): Simplify.
11713
11714 2003-06-04 Jason Rumney <jasonr@gnu.org>
11715
11716 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11717
11718 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11719 (lispy_mouse_wheel_names): Remove.
11720 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11721 Always define drag_and_drop_syms.
11722
11723 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11724 WHEEL_EVENT events.
11725
11726 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11727
11728 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11729
11730 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11731
11732 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11733
11734 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11735 menu item label.
11736
11737 2003-06-03 Richard M. Stallman <rms@gnu.org>
11738
11739 * window.c (Fwindow_edges): Doc fix.
11740 (Fwindow_pixel_edges, Fwindow_inside_edges)
11741 (Fwindow_inside_pixel_edges): New functions.
11742 (syms_of_window): defsubr them.
11743
11744 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11745 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11746
11747 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11748
11749 * dispnew.c (Fsit_for): Don't lie about the number of args.
11750
11751 2003-06-02 Dave Love <fx@gnu.org>
11752
11753 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11754 (syms_of_callproc) <process-environment>: Doc fix.
11755
11756 * doc.c: Use HAVE_FCNTL_H, not USG5.
11757
11758 * xfaces.c (font_rescale_ratio): Fix for K&R.
11759
11760 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11761
11762 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11763
11764 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11765
11766 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11767 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11768
11769 * xterm.c (Qutf_8): Move to coding.c
11770
11771 * xmenu.c (ENCODE_MENU_STRING): New.
11772 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11773 Use it.
11774
11775 * coding.h (ENCODE_UTF_8): New.
11776 (Qutf_8): Declare.
11777
11778 * coding.c (Qutf_8): New.
11779 (syms_of_coding): Intern it.
11780
11781 * fns.c: Doc fixes.
11782
11783 2003-06-02 Kenichi Handa <handa@m17n.org>
11784
11785 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11786
11787 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11788
11789 * lread.c (openp): Make sure STR is a string.
11790
11791 2003-06-01 David Ponce <david@dponce.com>
11792
11793 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11794 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11795
11796 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11797 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11798 (discard_mouse_events): Discard WHEEL_EVENT events too.
11799 (lispy_wheel_names, wheel_syms): New.
11800 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11801 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11802 (make_lispy_event): Add WHEEL_EVENT handler.
11803
11804 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11805 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11806 WHEEL_EVENT events.
11807
11808 2003-05-31 John Paul Wallington <jpw@gnu.org>
11809
11810 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11811 timer are in lisp/emacs-lisp.
11812
11813 2003-05-31 Kenichi Handa <handa@m17n.org>
11814
11815 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11816 region when a buffer is changed to unibyte.
11817
11818 * charset.h (VALID_LEADING_CODE_P): New macro.
11819 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11820
11821 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11822 is nonzero, accept multibyte form of eight-bit-control chars.
11823 (decode_composition_emacs_mule): Likewise.
11824 (decode_coding_emacs_mule): Likewise.
11825 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11826 multibyte form of eight-bit-control chars.
11827
11828 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11829 (Finsert_file_contents): If coding-system-for-read is bound to
11830 Qauto_save_coding, use the coding system emacs-mule with special
11831 setting for recovering a file.
11832 (choose_write_coding_system): On auto saving, use the coding
11833 system emacs-mule with special setting for auto saving.
11834 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11835
11836 2003-05-30 Kenichi Handa <handa@m17n.org>
11837
11838 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11839 properly before calling ccl_driver.
11840
11841 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11842
11843 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11844 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11845 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11846
11847 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11848
11849 * xfaces.c (realize_default_face): Do not abort if lface is
11850 non-existent - reverts change from 2003-05-19.
11851
11852 2003-05-29 Kenichi Handa <handa@m17n.org>
11853
11854 * coding.c (decode_coding_iso2022): Pay attention to the byte
11855 sequence of CTEXT extended segment, and retain those bytes as is.
11856
11857 2003-05-28 Kenichi Handa <handa@m17n.org>
11858
11859 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11860 of CODING_REPLACEMENT_CHARACTER.
11861 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11862 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11863 check this flag on encoding.
11864 (encode_coding_sjis_big5):
11865 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11866 (Fset_terminal_coding_system_internal):
11867 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11868 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11869
11870 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11871 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11872 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11873
11874 2003-05-28 Richard M. Stallman <rms@gnu.org>
11875
11876 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11877
11878 * eval.c (unbind_to): Move init of this_binding to separate statement.
11879
11880 2003-05-28 Kim F. Storm <storm@cua.dk>
11881
11882 * xdisp.c (expose_window): Fix error in calculation of
11883 window relative coordinates of area to redisplay.
11884
11885 2003-05-27 Jason Rumney <jasonr@gnu.org>
11886
11887 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11888
11889 2003-05-27 David Ponce <david@dponce.com>
11890
11891 Handle W32 mouse wheel events as mouse click events, like in X.
11892
11893 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11894 MOUSE_WHEEL_EVENT anymore.
11895
11896 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11897 Scrolling down/up the mouse wheel is respectively mapped to mouse
11898 button 4 and 5.
11899 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11900 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11901 WM_MOUSEWHEEL events.
11902
11903 2003-05-27 Andreas Schwab <schwab@suse.de>
11904
11905 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11906
11907 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11908 partially visible line.
11909
11910 * alloc.c (Fgarbage_collect): Fix last change.
11911
11912 2003-05-26 John Paul Wallington <jpw@gnu.org>
11913
11914 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11915
11916 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11917
11918 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11919 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11920
11921 * window.h (window_box_text_cols): Declare.
11922
11923 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11924 (x_draw_vertical_border): Remove unused var `f'.
11925
11926 * xfaces.c (build_scalable_font_name): Remove `unused var
11927 pixel_size' warning.
11928
11929 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11930
11931 * unexelf.c (unexec): Remove `unused var n' warning.
11932
11933 * strftime.c (my_strftime_localtime_r): Remove `defined but
11934 unused' warning.
11935
11936 * process.c (allocate_pty): Remove `unused var stb' and
11937 `cp might be used uninitialized' warnings.
11938
11939 * dispnew.c (mode_line_string): Remove unused var `f'.
11940
11941 * coding.c (find_safe_codings): Remove unused var `i'.
11942
11943 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11944
11945 * buffer.c (Fkill_buffer): Remove unused var `list'.
11946
11947 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11948
11949 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11950
11951 * frame.c (make_frame): Condition want_fullscreen with
11952 HAVE_WINDOW_SYSTEM.
11953
11954 2003-05-25 Juanma Barranquero <lektu@terra.es>
11955
11956 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11957 (Fwindow_scroll_bars): Fix typo in docstring.
11958
11959 2003-05-24 Kim F. Storm <storm@cua.dk>
11960
11961 The following changes serve several purposes:
11962
11963 1) Swap the position of fringes and display margins in windows, i.e.
11964 the fringes are now displayed between the margins and the text area
11965 (by default).
11966
11967 2) Allow fringe and scroll bar parameters to be set per-buffer and
11968 per-window (like display margins). Such settings are now stored
11969 in window configurations, preserved when frames are resized, and
11970 copied when windows are split vertically or horizontally.
11971 Several bugs related to display margins have been fixed.
11972
11973 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11974
11975 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11976 rather than FRAME_WIDTH (FRAME_FONT (f)).
11977
11978 5) Introduce a consistent naming of variables, members and macros
11979 depending on whether their value is measured in pixels or in
11980 canonical columns/lines. Pixel dimensions are named *_width and
11981 *_height, while canonical columns/lines are named *_cols and
11982 *_lines. Pixel positions are named *_x and *_y, while column/line
11983 positions are named *_col and *_line.
11984
11985 6) Consolidate more of the X, W32, and MAC gui code by moving
11986 common data into struct frame, and generalize it for the non-gui
11987 case by using suitable defaults.
11988
11989 7) Cleanup and consolidate the macros controlling frame and window
11990 layout into frame.h and window.h, and generalize the use of the
11991 various window_box_* functions (enhanced to handle the new fringe
11992 position and the per-window fringe and scroll bar settings).
11993
11994 * frame.h (struct frame): Rename members height to text_lines,
11995 width to text_cols, window_height to total_lines, window_width to
11996 total_cols, new_height to new_text_lines, new_width to
11997 new_text_cols. All uses changed.
11998 (struct frame): New members which consolidate common members of
11999 x_output, w32_output, and mac_output structures: left_pos,
12000 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12001 win_gravity, size_hint_flags, border_width, internal_border_width,
12002 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12003 want_fullscreen. All uses changed.
12004 (struct frame): New member column_width contaning the canonical
12005 column width, analogue to line_height. All uses changed.
12006 (struct frame): Rename members scroll_bar_pixel_width to
12007 config_scroll_bar_width, and scroll_bar_cols to
12008 config_scroll_bar_cols. All uses changed.
12009 (struct frame): New member scroll_bar_actual_width which
12010 consolidates and renames the vertical_scroll_bar_extra member of
12011 x_output, w32_output, and mac_output structures. All uses changed.
12012 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12013 from x/w32/macterm.h files. All uses changed. Also change code
12014 which referred to f->output_data...->pixel_height.
12015 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12016 from x/w32/macterm.h files. All uses changed. Also change code
12017 which referred to f->output_data...->pixel_width.
12018 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12019 Also change code which referred to f->height.
12020 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12021 Also change code which referred to f->width.
12022 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12023 to update new_text_lines and new_text_cols members directly.
12024 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12025 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12026 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12027 FRAME_SCROLL_BAR_COLS. All uses changed.
12028 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12029 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12030 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12031 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12032 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12033 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12034 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12035 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12036 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12037 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12038 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12039 Unconditionally return line_height member (it now has proper value
12040 also for non-window frames).
12041 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12042 return new column_width member (rather than the default font width).
12043 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12044 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12045 from x/w32/macterm.h files. Unconditionally return corresponding
12046 member of frame structure (they now have proper values also for
12047 non-window frames).
12048 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12049 Calculate return value from left and right widths.
12050 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12051 internal_border_width member (has proper value for non-window frame).
12052 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12053 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12054 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12055 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12056 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12057 consolidated from xterm.h, macterm.h, and w32term.h.
12058 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12059 consolidated from xterm.h, macterm.h, and w32term.h.
12060 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12061 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12062 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12063 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12064 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12065 consolidated from x/mac/w32term.h.
12066 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12067 consolidated from x/mac/w32term.h.
12068 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12069 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12070 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12071 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12072
12073 * window.h (struct window): Rename members left to left_col,
12074 top to top_line, height to total_lines, width to total_cols,
12075 left_margin_width to left_margin_cols, right_margin_width to
12076 right_margin_cols, orig_height to orig_total_lines, orig_top to
12077 orig_top_line. All uses changed.
12078 (struct window): New members left_fringe_width, right_fringe_width,
12079 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12080 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12081 New macros primarily used to simplify other macros.
12082 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12083 referred to XINT (w->width).
12084 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12085 referred to XINT (w->height).
12086 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12087 referred to XINT (w->width) * canon_x_unit.
12088 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12089 referred to XINT (w->height) * canon_y_unit.
12090 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12091 referred to XINT (w->left).
12092 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12093 all uses and code that referred to XINT (w->left) + XINT (w->width).
12094 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12095 referred to XINT (w->top).
12096 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12097 referred to XINT (w->top) + XINT (w->height).
12098 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12099 referred to XINT (w->left) * canon_x_unit.
12100 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12101 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12102 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12103 referred to XINT (w->top) * canon_y_unit.
12104 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12105 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12106 (WINDOW_LEFTMOST_P): New macro.
12107 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12108 All uses changed.
12109 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12110 All uses changed.
12111 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12112 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12113 Do not exclude left fringe width.
12114 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12115 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12116 Do not exclude fringe widths.
12117 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12118 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12119 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12120 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12121 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12122 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12123 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12124 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12125 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12126 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12127 New macros. Change code which referenced corresponding
12128 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12129 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12130 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12131 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12132 allow per-window scroll-bar settings.
12133 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12134 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12135 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12136 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12137 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12138 FRAME_SCROLL_BAR_WIDTH.
12139 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12140 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12141 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12142 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12143 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12144 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12145 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12146 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12147 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12148 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12149 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12150 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12151 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12152 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12153 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12154 (window_from_coordinates): Update prototype.
12155 (Fset_window_buffer): Update EXFUN.
12156 (set_window_buffer): Update prototype.
12157
12158 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12159 to window_left_col, window_top_y to window_top_line. All uses
12160 changed.
12161 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12162 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12163 internal_border_width is now set to 0 for non-window frames.
12164 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12165 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12166 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12167 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12168 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12169 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12170 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12171 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12172 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12173 Move to window.h and renamed [see window.h changes].
12174 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12175 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12176 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12177 Use WINDOW_TOTAL_LINES.
12178 (frame_update_line_height): Remove prototype.
12179
12180 * buffer.h (struct buffer): Rename members measured in columns:
12181 left_margin_width to left_margin_cols, right_margin_width to
12182 right_margin_cols. All uses changed.
12183 New members left_fringe_width, right_fringe_width,
12184 fringes_outside_margins for per-buffer fringe settings.
12185 New members scroll_bar_width and vertical_scroll_bar_type for
12186 per-buffer scroll bar settings.
12187
12188 * buffer.c (init_buffer_once): Set buffer_defaults and
12189 buffer_local_flags for new buffer-local variables
12190 left_fringe_width, right_fringe_width, fringes_outside_margins,
12191 scroll_bar_width, and vertical_scroll_bar_type.
12192 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12193 default-* variables for them.
12194
12195 * dispnew.c: Make (many) trivial substitutions for renamed and
12196 new macros in dispextern.h, frame.h and window.h.
12197 (mode_line_string): No need to adjust width for mode lines, as it
12198 is already adjusted by the caller.
12199 (marginal_area_string): Handle fringes inside/outside margins.
12200
12201 * frame.c: Make (many) trivial substitutions for renamed and
12202 new macros in dispextern.h, frame.h and window.h.
12203 (make_frame): Initialize left_fringe_width, right_fringe_width,
12204 fringe_cols, scroll_bar_actual_width, border_width,
12205 internal_border_width, column_width, line_height, x_pixels_diff,
12206 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12207 members with values suitable for a non-window frames.
12208
12209 * gtkutil.c: Make (many) trivial substitutions for renamed and
12210 new macros in dispextern.h, frame.h and window.h.
12211
12212 * indent.c: Make (few) trivial substitutions for renamed and
12213 new macros in dispextern.h, frame.h and window.h.
12214
12215 * keyboard.c: Make (many) trivial substitutions for renamed and
12216 new macros in dispextern.h, frame.h and window.h.
12217 (make_lispy_event): Use window positions returned from
12218 window_from_coordinates when constructing the lisp event for
12219 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12220 (incorrect) values locally.
12221 (make_lispy_movement): Use window positions returned from
12222 window_from_coordinates when constructing the lisp event, rather
12223 than calculating (incorrect) values locally.
12224
12225 * scroll.c: Make (some) trivial substitutions for renamed and
12226 new macros in dispextern.h, frame.h and window.h.
12227
12228 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12229 scroll-bars.
12230
12231 * sysdep.c: Make (few) trivial substitutions for renamed and
12232 new macros in dispextern.h, frame.h and window.h.
12233
12234 * term.c: Make (some) trivial substitutions for renamed and
12235 new macros in dispextern.h, frame.h and window.h.
12236
12237 * widget.c: Make (few) trivial substitutions for renamed and
12238 new macros in dispextern.h, frame.h and window.h.
12239
12240 * window.c: Make (many) trivial substitutions for renamed and
12241 new macros in dispextern.h, frame.h and window.h.
12242 (make_window): Initialize new members
12243 left_margin_cols, right_margin_cols, left_fringe_width,
12244 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12245 and vertical_scroll_bar_type.
12246 (coordinates_in_window): Adapt to new fringe/margin positions
12247 and per-window fringes and scroll-bars.
12248 Fix bug related to incorrectly adjusting coordinates by
12249 frame's internal_border_width (the effect normally negible since
12250 the internal_border_width is typically 0 or 1 pixel, but very
12251 noticeable for an internal_border_width of e.g. 25 pixels).
12252 Upon successful return (other than ON_NOTHING), the coordinates
12253 are now always properly converted to window relative for the
12254 given display element.
12255 (window_from_coordinates): Add new parameters wx and wy to
12256 return the window relative x and y position in the returned
12257 window and part. A null arg means, don't return the position.
12258 All callers changed.
12259 (adjust_window_margins): New function which may reduce the width
12260 of the display margins if a window's text area is too small after
12261 resizing or splitting windows.
12262 (size_window): Fix bug that did not account for display margin
12263 widths when checking the minimum width of a window; use
12264 adjust_window_margins.
12265 (set_window_buffer): Call Fset_window_fringes and
12266 Fset_window_scroll_bars to setup per-window elements.
12267 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12268 existing display margin, fringe widths, and scroll bar settings
12269 (e.g. after splitting a window or resizing the frame).
12270 All callers changed.
12271 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12272 (Fsplit_window): Duplicate original window's display margin,
12273 fringe, and scroll-bar settings; then call Fset_window_buffer with
12274 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12275 window to only preserve the display margins in one of the windows.
12276 When splitting horizontally, call adjust_window_margins on both
12277 windows to ensure that the text area of the new windows is non too
12278 narrow. This fixes a bug which could cause Emacs to trap if the
12279 width of the split window was less than the width of the display
12280 margins.
12281 (window_box_text_cols): Rename from window_internal_width.
12282 All uses changed. Adapt to per-window fringes and scroll bars.
12283 Fix bug that caused vertical separator to be subtracted also on
12284 window frames. Fix another bug that did not reduce the returned
12285 value by the columns used for display margins.
12286 (window_scroll_line_based): Fix bug related to scrolling too much
12287 when display margins are present (implicitly fixed by the fix to
12288 window_box_text_cols).
12289 (scroll_left, scroll_right): Fix bug related to scrolling too far
12290 by default when display margins are present (implicitly fixed by
12291 the fix to window_box_text_cols).
12292 (struct saved_window): Rename members left to left_col, top to
12293 top_line, width to total_cols, height to total_lines, orig_top to
12294 orig_top_line, orig_height to orig_total_lines. All uses changed.
12295 New members left_margin_cols, right_margin_cols,
12296 left_fringe_width, right_fringe_width, fringes_outside_margins,
12297 scroll_bar_width, and vertical_scroll_bar_type for saving
12298 per-window display elements.
12299 (Fset_window_configuration): Restore display margins, fringes,
12300 and scroll bar settings. This fixes a bug which caused display
12301 margins to be discarded when saving and restoring a window
12302 configuration.
12303 (save_window_save): Save display margins, fringes, and scroll bar
12304 settings. This fixes a bug which caused display margins to be
12305 discarded when saving and restoring a window configuration.
12306 (Fset_window_margins): Do nothing if display margins are not
12307 really changed. Otherwise, call adjust_window_margins to ensure
12308 the text area doesn't get too narrow. This fixes a bug which
12309 could cause Emacs to trap if setting display margins wider than
12310 the width of the window.
12311 (Fset_window_fringes): New defun to allow user to specifically set
12312 this window's fringe widths and position vs. display margins.
12313 (Fwindow_fringes): New defun to return window's actual fringe settings.
12314 (Fset_window_scroll_bars): New defun to allow user to specifically
12315 set this window's scroll bar width and position.
12316 (Fwindow_scroll_bars): New defun to return window's actual scroll
12317 bar settings.
12318 (compare_window_configurations): Also compare display margins,
12319 fringes, and scroll bar settings.
12320 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12321
12322 * xdisp.c: Make (many) trivial substitutions for renamed and
12323 new macros in dispextern.h, frame.h and window.h.
12324 (window_box_width): Adapt to per-window fringes and scroll bars,
12325 and new fringe vs. display margin position. Note that returned
12326 value is no longer guaranteed to be a whole multiple of the frame
12327 column width, since per-window fringes may now be any width.
12328 (window_box_left_offset): New function like window_box_left, but
12329 value is relative to left border of window (rather than frame).
12330 (window_box_right_offset): New function like window_box_right,
12331 but value is relative to left border of window.
12332 (window_box_left): Adapt to per-window fringes and scroll bars,
12333 and new fringe vs. display margin position. Simplify by using
12334 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12335 (window_box): Allow null args for unnecessary return values;
12336 change/simplify relevant callers.
12337 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12338 and new fringe vs. display margin position.
12339 Use window_box_left_offset and window_box_right_offset
12340 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12341 scroll bars, and new fringe vs. display margin position.
12342 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12343 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12344 fringe vs. display margin position.
12345 (hscroll_window_tree): Use window_box_width instead of window_box.
12346 (redisplay_window): Adapt to per-window scroll bars.
12347 (draw_glyphs): Rework to handle per-window fringes and scroll
12348 bars, and new fringe vs. display margin position.
12349 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12350 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12351 bars, and new fringe vs. display margin position. Fix bug which
12352 increased total width of full_width rows by width of scroll bars
12353 although window's total width already includes that.
12354 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12355 (expose_area): Simplify using window_box_left_offset.
12356 (x_draw_vertical_border): Handle per-window scroll bar settings,
12357 mixing windows with left, right and no scroll bars.
12358
12359 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12360 where it's used in x_list_fonts (for clarity).
12361 (frame_update_line_height): Remove unused function; functionality
12362 is now done directly when setting the default font in x_set_font.
12363
12364 * xfns.c: Make (many) trivial substitutions for renamed and
12365 new macros in dispextern.h, frame.h and window.h.
12366
12367 * xmenu.c: Make (some) trivial substitutions for renamed and
12368 new macros in dispextern.h, frame.h and window.h.
12369
12370 * xterm.h (struct x_output): Move members left_pos, top_pos,
12371 border_width, pixel_height, pixel_width, line_height,
12372 internal_border_width, vertical_scroll_bar_extra,
12373 left_fringe_width, right_fringe_width, fringe_cols,
12374 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12375 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12376 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12377 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12378 (PIXEL_WIDTH, PIXEL_HEIGHT)
12379 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12380 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12381 frame.h and renamed [see frame.h changes].
12382 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12383 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12384 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12385 and renamed [see frame.h changes].
12386
12387 * xterm.c: Make (several) trivial substitutions for renamed and
12388 new macros in dispextern.h, frame.h and window.h.
12389 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12390 (scroll_run): Adapt to new fringe position.
12391 (glyph_rect): Use window coordinates returned from
12392 window_from_coordinates rather than frame_to_window_pixel_xy.
12393 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12394 scroll-bars.
12395 (handle_one_xevent): Simplify a USE_GTK conditional.
12396 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12397 (fringes are now inside margins, i.e. always in the clipping area).
12398 All callers changed.
12399 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12400 directly, then call compute_fringe_widths. Don't call
12401 frame_update_line_height.
12402
12403 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12404 border_width, pixel_height, pixel_width, line_height,
12405 internal_border_width, vertical_scroll_bar_extra,
12406 left_fringe_width, right_fringe_width, fringe_cols,
12407 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12408 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12409 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12410 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12411 (PIXEL_WIDTH, PIXEL_HEIGHT)
12412 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12413 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12414 frame.h and renamed [see frame.h changes].
12415 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12416 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12417 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12418 and renamed [see frame.h changes].
12419
12420 * w32term.c: Make (several) trivial substitutions for renamed and
12421 new macros in dispextern.h, frame.h and window.h.
12422 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12423 (glyph_rect): Use window coordinates returned from
12424 window_from_coordinates rather than frame_to_window_pixel_xy.
12425 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12426 scroll-bars.
12427 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12428 (fringes are now inside margins, i.e. always in the clipping area).
12429 All callers changed.
12430 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12431 directly, then call compute_fringe_widths. Don't call
12432 frame_update_line_height.
12433
12434 * w32console.c: Make (few) trivial substitutions for renamed and
12435 new macros in dispextern.h, frame.h and window.h.
12436
12437 * w32fns.c: Make (many) trivial substitutions for renamed and
12438 new macros in dispextern.h, frame.h and window.h.
12439
12440 * w32menu.c: Make (few) trivial substitutions for renamed and
12441 new macros in dispextern.h, frame.h and window.h.
12442
12443 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12444 border_width, pixel_height, pixel_width, line_height,
12445 internal_border_width, vertical_scroll_bar_extra,
12446 left_fringe_width, right_fringe_width, fringe_cols,
12447 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12448 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12449 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12450 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12451 (PIXEL_WIDTH, PIXEL_HEIGHT)
12452 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12453 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12454 frame.h and renamed [see frame.h changes].
12455 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12456 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12457 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12458 and renamed [see frame.h changes].
12459
12460 * macterm.c: Make (several) trivial substitutions for renamed and
12461 new macros in dispextern.h, frame.h and window.h.
12462 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12463 (glyph_rect): Use window coordinates returned from
12464 window_from_coordinates rather than frame_to_window_pixel_xy.
12465 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12466 scroll-bars.
12467 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12468 (fringes are now inside margins, i.e. always in the clipping area).
12469 All callers changed.
12470 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12471 directly, then call compute_fringe_widths. Don't call
12472 frame_update_line_height.
12473
12474 * macfns.c: Make (several) trivial substitutions for renamed and
12475 new macros in dispextern.h, frame.h and window.h.
12476 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12477
12478 * macmenu.c: Make (few) trivial substitutions for renamed and
12479 new macros in dispextern.h, frame.h and window.h.
12480
12481 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12482 and line_height, and use corresponding new members in struct
12483 frame. All uses changed.
12484 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12485 superseeded by corresponding macros in frame.h.
12486
12487 * msdos.c: Make (several) trivial substitutions for renamed and
12488 new macros in dispextern.h, frame.h and window.h.
12489 (IT_note_mouse_highlight): Use updated window coordinates returned
12490 by window_from_coordinates, rather than adjusting them locally.
12491 (internal_terminal_init): No need to initialize line_height here;
12492 it now defaults to 1.
12493
12494 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12495
12496 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12497 dropping `down' events.
12498
12499 2003-05-24 Andreas Schwab <schwab@suse.de>
12500
12501 * coding.c (find_safe_codings): Fix last change.
12502
12503 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12504
12505 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12506
12507 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12508
12509 * xdisp.c (display_mode_element): Increase max depth.
12510 Simplify the error handling code. Use a different error string
12511 for the case where we hit the depth limit.
12512
12513 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12514
12515 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12516
12517 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12518
12519 * intervals.c (get_local_map): Don't get char-property of previous
12520 point any more: get_pos_property already does it and better.
12521
12522 2003-05-21 Dave Love <fx@gnu.org>
12523
12524 [Merged from unicode branch.]
12525
12526 * xfns.c (x_window, x_window): Use use_xim.
12527
12528 * xterm.c (use_xim): Initialize.
12529 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12530 (x_term_init): Maybe set use_xim.
12531
12532 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12533
12534 2003-05-21 Jason Rumney <jasonr@gnu.org>
12535
12536 * unexw32.c (_start): Remove _fmode initialization.
12537
12538 * emacs.c (main) [WINDOWSNT]: Move it here.
12539
12540 2003-05-20 Dave Love <fx@gnu.org>
12541
12542 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12543
12544 2003-05-19 Richard M. Stallman <rms@gnu.org>
12545
12546 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12547 as value for QCfont attribute.
12548 (realize_default_face): lface should already exist; crash if not.
12549 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12550
12551 * frame.c (Fignore_event): Doc fix.
12552
12553 2003-05-19 Kenichi Handa <handa@m17n.org>
12554
12555 * coding.c (decode_coding_string): Handle post-read-conversion
12556 even if the coding doesn't require decoding.
12557
12558 2003-05-18 Richard M. Stallman <rms@gnu.org>
12559
12560 * callproc.c (Fcall_process_region): Doc fix.
12561
12562 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12563
12564 * lread.c (Fload): Print a message if package is obsolete.
12565
12566 * window.c (Fselect_window): Add optional `norecord' arg.
12567 (select_window_1): Fold into Fselect_window.
12568 (select_window_norecord): New function.
12569 (temp_output_buffer_show): Use it. Preserve current buffer.
12570
12571 * window.h (Fselect_window): Update declaration.
12572
12573 * window.c (delete_window, Fother_window, Fset_window_configuration):
12574 * minibuf.c (read_minibuf):
12575 * macterm.c (x_new_focus_frame):
12576 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12577 * callint.c (Fcall_interactively):
12578 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12579
12580 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12581
12582 2003-05-17 David Kastrup <dak@gnu.org>
12583
12584 * process.c (read_process_output): Back out change from 2003-03-09.
12585
12586 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12587
12588 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12589
12590 * textprop.c (text_property_stickiness): New arg `buffer'.
12591
12592 * intervals.h (text_property_stickiness): New arg `buffer'.
12593 (get_pos_property): Declare.
12594
12595 * intervals.c (get_local_map): Use get_pos_property, to obey
12596 stickiness and empty overlays.
12597 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12598 (merge_properties, intervals_equal, merge_properties_sticky):
12599 Use XCAR, XCDR.
12600 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12601
12602 2003-05-17 Richard M. Stallman <rms@gnu.org>
12603
12604 * minibuf.c (read_minibuf): If buffer is empty, record the default
12605 in the history.
12606 (Fminibuffer_complete_word): When deleting the overlap, take account
12607 of its real position.
12608
12609 * fns.c (map_char_table): Fix previous change.
12610
12611 * syntax.c (find_defun_start):
12612 When open_paren_in_column_0_is_defun_start,
12613 return beginning of buffer.
12614
12615 * lisp.h (map_char_table): Declare added arg.
12616
12617 * fns.c (map_char_table): New arg TABLE gets the master table.
12618 All calls changed.
12619 Process default and inheritance, resorting to Faref if necessary.
12620
12621 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12622 (Faccessible_keymaps): Pass new arg to map_char_table.
12623
12624 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12625
12626 * casetab.c (set_case_table): Pass new arg to map_char_table.
12627
12628 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12629
12630 * lisp.h (specbinding_func): New typedef.
12631 (struct specbinding): Use specbinding_func, to put the `volatile'
12632 in the right place.
12633
12634 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12635 to avoid GCC warning.
12636
12637 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12638
12639 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12640
12641 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12642
12643 * keyboard.c (apply_modifiers): Don't fill the other cache.
12644
12645 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12646
12647 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12648
12649 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12650 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12651 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12652 (Fset_window_configuration, Fcurrent_window_configuration)
12653 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12654 (Fpos_visible_in_window_p, mark_window_cursors_off)
12655 (window_internal_height, window_internal_width, Frecenter)
12656 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12657 (replace_buffer_in_all_windows, init_window_once, init_window)
12658 (syms_of_window, keys_of_window): Move from lisp.h.
12659 * lisp.h: Move window.c declarations to window.h.
12660
12661 * bytecode.c: Include window.h.
12662 * emacs.c: Include window.h.
12663
12664 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12665 (keyremap): Add `parent' field.
12666 (keyremap_step): Use it. Remove `parent' argument.
12667 (read_key_sequence): Setup and use the new `parent' field.
12668
12669 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12670
12671 * keyboard.c (adjust_point_for_property): Ensure termination.
12672
12673 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12674
12675 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12676 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12677 duplicated handling of function-key-map and key-translation-map
12678 in read_key_sequence.
12679 (read_key_sequence): Use them.
12680
12681 * keyboard.c (adjust_point_for_property): Try harder to move point
12682 to the non-sticky end of an invisible property.
12683
12684 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12685 property intangible as well.
12686
12687 2003-05-10 Andreas Schwab <schwab@suse.de>
12688
12689 * xmenu.c (single_menu_item): Change last parameter to void* to
12690 avoid warning.
12691
12692 2003-05-09 Richard M. Stallman <rms@gnu.org>
12693
12694 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12695 Bind Qinhibit_modification_hooks to t so there will be no GC.
12696 Rename local `tem' to `save_deactivate_mark'.
12697
12698 * eval.c (specpdl_ptr): Declare volatile.
12699 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12700 before doing the work of unbinding it.
12701
12702 * lisp.h (struct specbinding): Declare elements volatile.
12703 (specpdl_ptr): Declare volatile.
12704
12705 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12706
12707 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12708 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12709
12710 2003-05-08 Dave Love <fx@gnu.org>
12711
12712 * coding.c (Vlast_coding_system_used): Doc fix.
12713
12714 2003-05-07 Jason Rumney <jasonr@gnu.org>
12715
12716 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12717 when system does not support them.
12718
12719 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12720
12721 * fileio.c (Qwrite_region_annotate_functions): New var.
12722 (build_annotations): Use it to process the global part of the hook.
12723 (syms_of_fileio): Init and staticpro it.
12724
12725 * keyboard.c (safe_run_hooks_error): Display a message instead of
12726 silently ignoring the error.
12727
12728 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12729
12730 * keyboard.c (input_available_signal): Mark static.
12731 (menu_bar_items): Use map_keymap.
12732 (menu_bar_one_keymap): Remove.
12733 (menu_bar_item): Adjust arglist (for use in map_keymap).
12734 Properly hide a second binding when not both are keymaps.
12735
12736 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12737 (single_keymap_panes): Use it and map_keymap.
12738 (single_menu_item): Use skp as well.
12739
12740 * keymap.h (map_keymap_function_t): New type.
12741 (map_keymap): Declare.
12742
12743 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12744 (map_keymap_call, Fmap_keymap): New functions.
12745 (syms_of_keymap): Defsubr map-keymap.
12746
12747 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12748
12749 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12750 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12751 ..._with_mnemonic functions for menu items.
12752
12753 2003-05-01 Kenichi Handa <handa@m17n.org>
12754
12755 * coding.c (coding_system_accept_latin_extra_p): Delete this
12756 function.
12757 (find_safe_codings): Pay attention to
12758 the property tranlsation-table-for-encode of each codings.
12759 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12760
12761 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12762
12763 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12764
12765 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12766
12767 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12768
12769 * lisp.h (CHECK): Wrap args in parenthesis.
12770 (specbind): Fix doc: symbol = Qnil is not supported any more.
12771
12772 * bytecode.c (Fbyte_code) <unwind-protect>:
12773 Use Fprogn rather than 0 and Qnil.
12774
12775 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12776 `double', and `triple' modifiers as well.
12777
12778 2003-04-30 Richard M. Stallman <rms@gnu.org>
12779
12780 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12781
12782 * alloc.c (abort_on_gc): New variable.
12783 (Fgarbage_collect): Abort if abort_on_gc is set.
12784
12785 * lisp.h (abort_on_gc): Add decl.
12786
12787 * eval.c (Fsignal): Clear abort_on_gc.
12788
12789 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12790 Reinit FORMAT_START and END before second scan.
12791
12792 * xdisp.c (move_it_vertically_backward): Do the final big else
12793 even if nlines is 0.
12794
12795 * xdisp.c (redisplay_internal): Finish the per-frame loop
12796 even if redisplay is suspended by input.
12797
12798 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12799
12800 * macterm.c (x_list_fonts): Return all fonts that match if
12801 maxnames = -1.
12802
12803 2003-04-25 Kenichi Handa <handa@m17n.org>
12804
12805 * syntax.c (skip_chars): Fix previous change.
12806
12807 2003-04-24 Kenichi Handa <handa@m17n.org>
12808
12809 * syntax.c (skip_chars): Make the code faster by using the common
12810 technique of *p, *stop, and *endp.
12811
12812 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12813
12814 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12815 tool_bar_items so GTK tool bar expose callback does not access items
12816 being updated.
12817
12818 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12819
12820 * eval.c (Fapply): Undo last change and add a comment about why.
12821
12822 2003-04-18 Miles Bader <miles@gnu.org>
12823
12824 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12825 pickier PARSE_MULTIBYTE_SEQ.
12826
12827 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12828
12829 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12830 Use XCDR, XCAR, CONSP.
12831 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12832 (Fapply): Remove unnecessary GCPRO.
12833
12834 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12835
12836 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12837
12838 * buffer.h: Don't hardcode BEG==1.
12839
12840 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12841
12842 2003-04-16 Richard M. Stallman <rms@gnu.org>
12843
12844 * xdisp.c (try_window, try_window_reusing_current_matrix):
12845 When at end of window, set window_end_pos to Z-ZV.
12846
12847 * buffer.c (Foverlay_recenter): Doc fix.
12848
12849 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12850
12851 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12852
12853 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12854
12855 * macterm.c (mac_check_for_quit_char): Don't check more often than
12856 once a second.
12857
12858 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12859
12860 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12861 specially, so that they can't hide an implicit switch-frame event.
12862 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12863 (head_table): Use switch-frame as event_kind for select-window.
12864 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12865
12866 * editfns.c (Fformat): Lisp_Object/int mixup.
12867 (format2): Remove unused var numargs.
12868
12869 2003-04-11 Kenichi Handa <handa@m17n.org>
12870
12871 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12872 (Qafter_insert_file_set_coding): New variable.
12873 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12874 for after-insert-file-adjust-coding-function.
12875 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12876 instead of Vafter_insert_file_adjust_coding_function.
12877
12878 2003-04-11 Kenichi Handa <handa@m17n.org>
12879
12880 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12881
12882 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12883 string. Callers changed.
12884
12885 2003-04-10 Kenichi Handa <handa@m17n.org>
12886
12887 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12888 (syms_of_fileio): Declare it as a lisp variable.
12889 (Finsert_file_contents):
12890 Call Vafter_insert_file_adjust_coding_function before calling
12891 decode-format.
12892
12893 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12894
12895 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12896 get GtkAdjustment as widget now is a GtkRange.
12897
12898 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12899 GtkRange to avoid memory leak.
12900
12901 2003-04-09 Kenichi Handa <handa@m17n.org>
12902
12903 * xfaces.c (Vface_font_rescale_alist): New variable.
12904 (struct font_name): New member rescale_ratio.
12905 (font_rescale_ratio): New function.
12906 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12907 (better_font_p): On comparing point sized, pay attention to
12908 recale_ratio member of fonts.
12909 (build_scalable_font_name): Reflect font->rescale_ratio in the
12910 font name.
12911 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12912
12913 * lread.c (read1): Before calling index, check if the 2nd
12914 arguemnt is in ASCII range.
12915
12916 2003-04-08 Richard M. Stallman <rms@gnu.org>
12917
12918 * fileio.c (Ffile_symlink_p): Doc fix.
12919
12920 * editfns.c (Fformat): Translate positions of text properties
12921 in the format string to apply them to the result.
12922
12923 * fileio.c (Finsert_file_contents): Doc fix.
12924 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12925
12926 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12927
12928 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12929
12930 2003-04-08 Steven Tamm <steventamm@mac.com>
12931
12932 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12933 that self-contained application finds libexec files.
12934
12935 2003-04-08 Kenichi Handa <handa@m17n.org>
12936
12937 * coding.c (code_convert_region_unwind):
12938 Set Vlast_coding_system_used to the argument.
12939 (code_convert_region): If post-read-conversion function changed
12940 the value of last-coding-sytem, keep the new value in
12941 coding->symbol so that it won't be overridden.
12942 (run_pre_post_conversion_on_str): Likewise.
12943 (coding_system_accept_latin_extra_p): New function.
12944 (find_safe_codings): Pay attention to characters registered in
12945 latin-extra-code-table.
12946
12947 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12948
12949 * Makefile.in (md5.o): Add missing dependency info.
12950
12951 2003-04-06 Richard M. Stallman <rms@gnu.org>
12952
12953 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12954
12955 * marker.c (verify_bytepos): New function.
12956
12957 * intervals.c (set_intervals_multibyte_1): When becoming
12958 multibyte, adjust right and left child sizes to a whole set of
12959 characters. If an interval gets zero total-length, delete it.
12960 If an interval consists of just its children, delete one of them.
12961
12962 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12963 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12964
12965 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12966 All calls deleted.
12967 (lisp_malloc): Do the work here directly.
12968
12969 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12970
12971 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12972 char tables.
12973
12974 2003-04-04 Kenichi Handa <handa@m17n.org>
12975
12976 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12977 destructively change "%S" to "%s".
12978
12979 2003-04-03 Miles Bader <miles@gnu.org>
12980
12981 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12982 always set.
12983
12984 2003-04-01 Dave Love <fx@gnu.org>
12985
12986 * xfns.c (xpm_lookup_color): Grok "opaque".
12987
12988 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12989
12990 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12991 parent window ID.
12992
12993 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12994
12995 * macterm.h (struct mac_output): Define x_pixels_diff and
12996 y_pixels_diff.
12997
12998 2003-03-31 Juanma Barranquero <lektu@terra.es>
12999
13000 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13001 blockinput.h and files included from it.
13002
13003 2003-03-31 Kim F. Storm <storm@cua.dk>
13004
13005 The following changes consolidates the common code related to
13006 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13007 files into frame.c.
13008
13009 * frame.c: Include blockinput.h.
13010 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13011 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13012 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13013 related vars here.
13014 (struct frame_parm_table, frame_parms): New table for describing
13015 frame parameters and their associated Q-variable.
13016 The order of the parameters corresponds to the sequence of the
13017 frame_parm_handlers table in redisplay_interface.
13018 (x_fullscreen_move, x_set_frame_parameters)
13019 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13020 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13021 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13022 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13023 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13024 Generic functions for processing of frame parameters.
13025 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13026 (display_x_get_resource, x_get_resource_string): Functions for
13027 generic access to X resources.
13028 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13029 (x_default_parameter, Fx_parse_geometry): Functions for generic
13030 access to frame parameters.
13031 (x_figure_window_size): Generic calculation of frame size.
13032 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13033 (syms_of_frame): Intern and staticpro frame parameter variables.
13034 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13035 Defsubr Sx_get_resource and Sx_parse_geometry.
13036
13037 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13038 parameter related vars defined in frame.c.
13039 (EMACS_CLASS): Define here.
13040 (enum FULLSCREEN_*): Define here.
13041 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13042 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13043 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13044 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13045 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13046 (x_set_visibility, x_set_autoraise, x_set_autolower)
13047 (x_set_unsplittable, x_set_vertical_scroll_bars)
13048 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13049 (x_figure_window_size): Add prototypes.
13050
13051 * dispextern.h (frame_parm_handler): New typedef.
13052 (struct redisplay_interface): New member frame_parm_handlers.
13053 (enum resource_types): Move declaration here.
13054 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13055 (x_default_parameter): Add prototypes.
13056
13057 * window.c: Remove extern decl for frame parameter vars.
13058 (change_window_heights): New generic function;
13059 replaces x_change_window_heights. All users changed.
13060
13061 * window.h (change_window_heights): Add prototype.
13062
13063 * xfaces.c: Remove extern decl for frame parameter vars.
13064
13065 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13066 (struct w32_display_info): Fix type of xrdb member.
13067 (enum FULLSCREEN_*): Remove.
13068 Remove prototypes for generic functions (in frame.h).
13069
13070 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13071 parameters now defined in frame.h and frame.c.
13072 (Vx_resource_name): Remove. Use generic var.
13073 (enum x_frame_parms): Remove (bogus, unused enum).
13074 (check_x_display_info): Make non-static (for frame.c).
13075 (struct x_frame_parm_table, x_frame_parms): Remove.
13076 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13077 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13078 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13079 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13080 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13081 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13082 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13083 Remove. Use generic functions instead.
13084 (enum resource_types): Remove.
13085 (x_set_scroll_bar_default_width): New global function (for frame.c).
13086 (Fx_create_frame): Depend on x_figure_window_size to add space for
13087 toolbar and setup size_hint_flags.
13088 (x_frame_parm_handlers): New table for redisplay_interface.
13089 (syms_of_xfns): Don't intern/staticpro removed vars.
13090
13091 * xterm.c: Remove unnecessary extern declarations.
13092 (x_fullscreen_adjust): Remove. Use generic instead.
13093 (x_redisplay_interface): Add x_frame_parm_handlers member.
13094
13095 * w32gui.h (XrmDatabase): New (dummy) typedef.
13096
13097 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13098 (struct w32_display_info): Fix type of xrdb member.
13099 (enum FULLSCREEN_*): Remove.
13100 (x_fullscreen_adjust): Remove prototype.
13101
13102 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13103 parameters now defined in frame.h and frame.c.
13104 (Vx_resource_name): Remove. Use generic var.
13105 (enum x_frame_parms): Remove (bogus, unused enum).
13106 (check_x_display_info): Make non-static (for frame.c).
13107 (struct x_frame_parm_table, x_frame_parms): Remove.
13108 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13109 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13110 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13111 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13112 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13113 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13114 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13115 Remove. Use generic functions instead.
13116 (enum resource_types): Remove.
13117 (x_set_scroll_bar_default_width): New global function (for frame.c).
13118 (Fx_create_frame): Depend on x_figure_window_size to add space for
13119 toolbar and setup size_hint_flags.
13120 (w32_frame_parm_handlers): New table for redisplay_interface.
13121 (syms_of_w32fns): Don't intern/staticpro removed vars.
13122
13123 * w32term.c: Remove unnecessary extern declarations.
13124 (x_fullscreen_adjust): Remove. Use generic instead.
13125 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13126
13127 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13128
13129 * macgui.h (XrmDatabase): New (dummy) typedef.
13130
13131 * macterm.h (EMACS_CLASS): Remove.
13132 (struct mac_display_info): Add xrdb member.
13133 (struct mac_output): Add want_fullscreen member.
13134
13135 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13136 parameters now defined in frame.h and frame.c.
13137 (Vx_resource_name): Remove. Use generic var.
13138 (check_x_display_info): Make non-static (for frame.c).
13139 (struct x_frame_parm_table, x_frame_parms): Remove.
13140 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13141 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13142 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13143 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13144 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13145 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13146 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13147 Remove. Use generic functions instead.
13148 (enum resource_types): Remove.
13149 (x_set_scroll_bar_default_width): New global function (for frame.c).
13150 (mac_frame_parm_handlers): New table for redisplay_interface.
13151 (syms_of_macfns): Don't intern/staticpro removed vars.
13152
13153 * macterm.c: Remove unnecessary extern declarations.
13154 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13155
13156 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13157 included from it (atimer.h and systime.h).
13158
13159 2003-03-30 Andreas Schwab <schwab@suse.de>
13160
13161 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13162 parameters for shift_glyphs_for_insert.
13163
13164 * macterm.c (x_redisplay_interface): Add missing entry for
13165 draw_vertical_window_border.
13166
13167 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13168
13169 * fileio.c (Fexpand_file_name): In the no-handler case, after
13170 expanding, look again for a handler and invoke it. This is needed
13171 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13172 expansion produces "/user@host:/bar/../baz" which needs to be
13173 expanded again for the finame result "/user@host:/baz".
13174
13175 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13176
13177 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13178 of area to be redrawn for better performance.
13179
13180 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13181
13182 * xterm.c (take_vertical_position_into_account): Remove.
13183 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13184 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13185 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13186 (x_set_toolkit_scroll_bar_thumb): Simplify.
13187 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13188 (XTread_socket): Remove unused var.
13189 (x_make_frame_invisible): Replace goto with else.
13190
13191 * xdisp.c (set_vertical_scroll_bar): New fun.
13192 (redisplay_window): Use it.
13193
13194 2003-03-26 Richard M. Stallman <rms@gnu.org>
13195
13196 * xdisp.c (update_tool_bar): Recompute tool bar if
13197 update_mode_lines is set. Set w->update_mode_line
13198 only if the tool bar contents actually change.
13199 (update_menu_bar): Undo previous change.
13200
13201 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13202
13203 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13204 (xg_frame_set_char_size): Calculate scroll bar width before frame
13205 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13206 (xg_separator_p): Check for all documented separator types.
13207 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13208 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13209
13210 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13211 so tool bar gets updated.
13212
13213 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13214
13215 * data.c (store_symval_forwarding): Re-instate part of the code
13216 that was deleted with too much enthusiasm.
13217
13218 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13219
13220 * data.c (store_symval_forwarding): Delete special read-only
13221 hack for type == -1, since we now use ->constant instead.
13222 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13223
13224 * buffer.c (overlays_in): Declare static.
13225 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13226 `constant' field rather than the variable's `type' field.
13227
13228 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13229
13230 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13231
13232 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13233
13234 * fns.c [MAC_OSX]: Do not redefine vector.
13235
13236 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13237
13238 * macgui.h: Remove definition of No_Cursor.
13239
13240 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13241
13242 * xdisp.c: Define No_Cursor.
13243 (x_write_glyphs, notice_overwritten_cursor)
13244 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13245 (note_mouse_highlight): Remove Mac-specific code.
13246 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13247
13248 2003-03-24 John Paul Wallington <jpw@gnu.org>
13249
13250 * xdisp.c (redisplay_window): If mini window's buffer is not
13251 empty, then redisplay it like other windows.
13252
13253 2003-03-23 Kim F. Storm <storm@cua.dk>
13254
13255 * w32term.c (w32_draw_window_cursor): Fix last change.
13256
13257 2003-03-23 Kenichi Handa <handa@m17n.org>
13258
13259 * alloc.c (make_string_from_bytes, make_specified_string):
13260 Add `const' for the arg CONTENTS.
13261
13262 * lisp.h (make_string_from_bytes, make_specified_string):
13263 Prototypes adjusted.
13264
13265 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13266
13267 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13268
13269 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13270 (XG_SB_RANGE): New define.
13271
13272 * gtkutil.c (xg_fixed_handle_expose): New function.
13273 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13274 expose events.
13275 (xg_update_scrollbar_pos): Take two more arguments, left and width
13276 of scroll bar including borders.
13277 Clear left and right part outside scroll bar separately as some
13278 themes have bars that are not an even number of pixels.
13279 Don't set reallocate_redraws, don't call
13280 gdk_window_process_all_updates.
13281 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13282 so no need to change it. Calculate size and value with XG_SB_RANGE.
13283
13284 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13285 Pass left and width of scroll bar including borders to
13286 xg_update_scrollbar_pos.
13287
13288 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13289
13290 * Makefile.in: Make sure space precedes end-of-line backslashes.
13291
13292 2003-03-22 Kim F. Storm <storm@cua.dk>
13293
13294 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13295 Add generic versions here. Remove system specific versions
13296 defined elsewhere.
13297
13298 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13299 Add prototypes.
13300
13301 * xterm.h (STORE_NATIVE_RECT): New macro.
13302
13303 2003-03-21 Kim F. Storm <storm@cua.dk>
13304
13305 * xdisp.c (get_glyph_string_clip_rect):
13306 Use FRAME_INTERNAL_BORDER_WIDTH.
13307
13308 * dispextern.h (struct redisplay_interface): Add active_p
13309 argument to draw_window_cursor member. All uses changed.
13310
13311 2003-03-21 Kim F. Storm <storm@cua.dk>
13312
13313 The following changes consolidate code related to writing and
13314 inserting glyphs, exposing frame, the tool bar, the mouse face,
13315 the output cursor, and help echo from xterm.c, w32term.c and
13316 macterm.c into xdisp.c. It also generalizes the use of the
13317 window_part enum instead of using numeric values throughout.
13318
13319 * xdisp.c: Consolidate gui-independent code here.
13320 Include keymap.h.
13321 (Qhelp_echo): Import.
13322 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13323 (help_echo_string, help_echo_window, help_echo_object)
13324 (previous_help_echo_string, help_echo_pos): Declare here.
13325 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13326 (estimate_mode_line_height): Define here. Handle windowing
13327 systems directly (without using estimate_mode_line_height_hook).
13328 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13329 (update_window_cursor, update_cursor_in_window_tree)
13330 (fast_find_position, fast_find_string_pos)
13331 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13332 (expose_area, expose_line, expose_overlaps, expose_window)
13333 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13334 declared static as they are only used locally in xdisp.c.
13335 (draw_glyphs): Rename from x_draw_glyphs and make static.
13336 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13337 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13338 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13339 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13340 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13341 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13342 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13343 (note_mouse_highlight, x_clear_window_mouse_face)
13344 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13345 (x_intersect_rectangles): New generic functions for use by xdisp.c
13346 and GUI front-ends.
13347 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13348 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13349
13350 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13351 (NativeRectangle): Generic typedef for rectangle type.
13352 (enum window_part): Move here from window.c.
13353 (struct redisplay_interface): New members flush_display_optional,
13354 define_frame_cursor, clear_frame_area, draw_window_cursor,
13355 draw_vertical_window_border, shift_glyphs_for_insert.
13356 Rename member clear_mouse_face to clear_window_mouse_face.
13357 (estimate_mode_line_height_hook): Remove hook.
13358 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13359 (tool_bar_item_info): Remove prototype.
13360 (help_echo_string, help_echo_window, help_echo_object)
13361 (previous_help_echo_string, help_echo_pos)
13362 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13363 (x_stretch_cursor_p, output_cursor): Declare extern.
13364 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13365 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13366 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13367 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13368 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13369 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13370 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13371 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13372 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13373 Add prototypes.
13374 (mode_line_string, marginal_area_string): Fix prototypes.
13375
13376 * window.c (enum window_part): Move to dispextern.h.
13377 (coordinates_in_window): Use enum window_part member names
13378 instead of numbers to describe return value.
13379 (struct check_window_data): Change part member to window_part.
13380 (check_window_containing): Return window_part unaltered.
13381 (window_from_coordinates): Change part arg from int to enum
13382 window_part. Allow part arg to be null. All users changed.
13383
13384 * window.h (window_from_coordinates): Fix prototype.
13385
13386 * term.c (estimate_mode_line_height): Move to xdisp.c.
13387
13388 * keyboard.c (make_lispy_event): Use enum window_part.
13389
13390 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13391 window_part instead of int in arg list. Users changed.
13392
13393 * xterm.h (No_Cursor): Declare as None for X.
13394 (struct mac_output): Replace member cross_cursor by hand_cursor.
13395
13396 * xterm.c: Remove consolidated defines and code.
13397 (BETWEEN): Remove unused macro.
13398 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13399 (x_define_frame_cursor, x_clear_frame_area)
13400 (x_draw_window_cursor): New X-specific functions for RIF.
13401 (x_redisplay_interface): Add new members.
13402
13403 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13404
13405 * w32term.h (struct w32_output): Remove cross_cursor member.
13406
13407 * w32term.c: Remove consolidated defines and code.
13408 (BETWEEN): Remove unused macro.
13409 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13410 (w32_define_frame_cursor, w32_clear_frame_area)
13411 (w32_draw_window_cursor): New W32-specific functions for RIF.
13412 (w32_redisplay_interface): Add new members.
13413
13414 * w32gui.h (No_Cursor): Define as 0 for W32.
13415 (XRectangle): Add X compatible rectangle type.
13416 (NativeRectangle): Declare as RECT for W32.
13417 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13418
13419 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13420
13421 * w32console.c: Remove consolidated defines and code.
13422
13423 * msdos.h (Display_Info): Add generic typedef.
13424
13425 * msdos.c: Remove consolidated defines and code.
13426 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13427
13428 * macterm.h (struct mac_output): Replace member cross_cursor by
13429 hand_cursor.
13430 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13431
13432 * macterm.c: Remove consolidated defines and code.
13433 (BETWEEN): Remove unused macro.
13434 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13435 (mac_define_frame_cursor, mac_clear_frame_area)
13436 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13437 (x_redisplay_interface): Add new members.
13438
13439 * macgui.h (No_Cursor): Define as 0 for Mac.
13440 (XRectangle): Add X compatible rectangle type.
13441 (NativeRectangle): Declare as Rect for Mac.
13442 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13443
13444 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13445 (x_set_cursor_color): Use x_display_and_set_cursor.
13446
13447 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13448 included from it. Add dependency on keymap.h.
13449
13450 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13451
13452 2003-03-21 Kenichi Handa <handa@m17n.org>
13453
13454 * fileio.c (Fexpand_file_name): Fix previous change.
13455
13456 2003-03-19 Kenichi Handa <handa@m17n.org>
13457
13458 * fileio.c (Ffile_name_directory): Reconstruct file name by
13459 make_specified_string.
13460 (Ffile_name_nondirectory, Ffile_name_as_directory)
13461 (Fdirectory_file_name, Fexpand_file_name)
13462 (Fsubstitute_in_file_name): Likewise.
13463 (Fread_file_name): Compare decoded homedir with DIR and
13464 DEFAULT_FILENAME.
13465
13466 * alloc.c (make_specified_string): If NCHARS is negative, count
13467 the number of characters.
13468
13469 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13470
13471 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13472 all widgets.
13473
13474 * gtkutil.h: Removed xg_ignore_next_thumb.
13475
13476 2003-03-18 Kenichi Handa <handa@m17n.org>
13477
13478 * coding.c (Vchar_coding_system_table): Remove this variable.
13479 (Vcoding_system_safe_chars): New variable.
13480 (intersection): Remove this function.
13481 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13482 all codings in SAFE_CODINGS.
13483 (Ffind_coding_systems_region_internal): Adjust for the change of
13484 find_safe_codings. Get generic coding systems from
13485 Vcoding_system_safe_chars.
13486 (Fdefine_coding_system_internal): New function.
13487 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13488 Initialize and staticpro Vcoding_system_safe_chars.
13489
13490 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13491
13492 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13493 equal old values before updating.
13494
13495 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13496
13497 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13498
13499 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13500
13501 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13502 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13503 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13504 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13505 (xg_create_scroll_bar): Pass bar to button event callback.
13506 (xg_find_top_left_in_fixed): New function.
13507 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13508 whole scroll bar area. Get old position with
13509 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13510 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13511 dragging is in progress. Calculate whole as for Motif.
13512 Remove code that saved last values. Call gtk_range functions to
13513 set scroll bar sizes.
13514
13515 * gtkutil.h: Removed xg_ignore_next_thumb.
13516
13517 2003-03-17 Juanma Barranquero <lektu@terra.es>
13518
13519 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13520 and files included from it.
13521
13522 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13523
13524 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13525 multiple occurrences of the same keymap under different prefixes.
13526 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13527
13528 2003-03-16 Jason Rumney <jasonr@gnu.org>
13529
13530 * w32gui.h: Use HDC for Display.
13531
13532 * w32term.c (w32_encode_char): Prevent double-byte chars from
13533 crashing Emacs.
13534
13535 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13536 as binary.
13537
13538 2003-03-16 Juanma Barranquero <lektu@terra.es>
13539
13540 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13541
13542 2003-03-16 Kim F. Storm <storm@cua.dk>
13543
13544 The following changes consolidate some of the gui-independent
13545 parts of the processing and drawing of "glyph strings" from
13546 xterm.c, w32term.c, and macterm.c into xdisp.c.
13547
13548 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13549 21 bits (this reduces number of faces from 4M to 2M).
13550 Replace W32 specific w32_font_type member (2 bits) by generic
13551 font_type member (3 bits) for portability.
13552 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13553 (enum draw_glyphs_face): Define here.
13554 (struct glyph_string): Define here. Merge W32 and X versions.
13555 (struct redisplay_interface): New members per_char_metric,
13556 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13557 (VCENTER_BASELINE_OFFSET): Define here.
13558 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13559 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13560
13561 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13562 (dump_glyph_string): Moved here.
13563 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13564 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13565 (fill_composite_glyph_string, fill_glyph_string)
13566 (fill_image_glyph_string, fill_stretch_glyph_string)
13567 (left_overwritten, left_overwriting, right_overwritten)
13568 (right_overwriting, get_char_face_and_encoding)
13569 (set_glyph_string_background_width, compute_overhangs_and_x)
13570 (append_glyph, append_composite_glyph, produce_image_glyph)
13571 (take_vertical_position_into_account, append_stretch_glyph)
13572 (produce_stretch_glyph): New generic functions (based on X version).
13573 Call platform specific functions through rif.
13574 (INIT_GLYPH_STRING): New macro, hides W32 details.
13575 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13576 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13577 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13578 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13579 (notice_overwritten_cursor):
13580 Generic functions exported to platform modules. Users changed.
13581
13582 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13583 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13584 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13585 New macros for consolidated code.
13586
13587 * xterm.c: Remove consolidated defines and code.
13588 (x_per_char_metric, x_encode_char)
13589 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13590 (x_redisplay_interface): Add new members.
13591
13592 * w32gui.h (Display): Add dummy typedef for consolidation.
13593 (XChar2b): Define alias for wchar_t for consolidation.
13594 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13595
13596 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13597 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13598 New macros for consolidation.
13599
13600 * w32term.c: Remove consolidated defines and code.
13601 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13602 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13603 (w32_per_char_metric): Change font_type arg to int for RIF.
13604 (w32_encode_char): Return int according to RIF requirements.
13605 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13606 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13607 x_get_glyph_overhangs.
13608 (w32_redisplay_interface): Add new members.
13609
13610 * macgui.h (XChar2b): Move typedef here for consolidation.
13611 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13612
13613 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13614 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13615 consolidation.
13616
13617 * macterm.c: Remove consolidated defines and code.
13618 (mac_per_char_metric): New function for RIF.
13619 (mac_encode_char): Adapt to new RIF requirements.
13620 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13621 (x_redisplay_interface): Add new members.
13622
13623 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13624
13625 * keymap.c (Vmenu_events): New var.
13626 (syms_of_keymap): Initialize it.
13627 (where_is_internal): Check more carefully what is a menu event.
13628
13629 2003-03-14 Richard M. Stallman <rms@gnu.org>
13630
13631 * lread.c (read1): After #!, exit loop on eof.
13632
13633 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13634
13635 * gtkutil.h: Add declaration for xg_frame_cleared.
13636
13637 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13638
13639 * gtkutil.c (struct xg_last_sb_pos): New structure.
13640 (handle_fixed_child): New function.
13641 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13642 and force a redraw on them.
13643 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13644 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13645 so we can avoid unneeded redraws.
13646 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13647 and force a redraw on the scroll bar.
13648 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13649 if xg_last_sb_pos shows the positions are up to date.
13650 (xg_frame_cleared): New function.
13651
13652 2003-03-13 Kenichi Handa <handa@m17n.org>
13653
13654 * coding.c (Fdetect_coding_region): Fix docstring.
13655 (Fdetect_coding_string): Fix docstring.
13656
13657 2003-03-13 Andreas Schwab <schwab@suse.de>
13658
13659 * gtkutil.c: Add prototype for create_menus.
13660
13661 * data.c (long_to_cons): Fix type of top.
13662
13663 * xselect.c (selection_data_to_lisp_data): Use int instead of
13664 long for an integer of size 4.
13665
13666 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13667 (xg_tool_bar_help_callback): Likewise.
13668
13669 2003-03-12 Andreas Schwab <schwab@suse.de>
13670
13671 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13672
13673 2003-03-12 Kim F. Storm <storm@cua.dk>
13674
13675 The following changes consolidate the fringe handling from
13676 xterm.c, w32term.c, and macterm.c into xdisp.c.
13677
13678 * xdisp.c: Consolidate fringe handling code here.
13679 (left_bits, right_bits, continued_bits, continuation_bits)
13680 (ov_bits, zv_bits): Define fringe bitmaps.
13681 (fringe_bitmaps): New array holding fringe bitmaps.
13682 (draw_fringe_bitmap): Draw a specific bitmap; call display
13683 specific drawing routine via rif->draw_fringe_bitmap.
13684 (draw_row_fringe_bitmaps): Generic replacement for
13685 x_draw_row_fringe_bitmaps; all callers changed.
13686 (compute_fringe_widths): Generic replacement for
13687 x_compute_fringe_widths; all callers changed.
13688
13689 * dispextern.h (enum fringe_bitmap_type): Define here.
13690 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13691 (fringe_bitmaps): Declare extern.
13692 (struct redisplay_interface): New member draw_fringe_bitmap.
13693 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13694
13695 * xterm.c: Remove generic fringe code.
13696 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13697 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13698
13699 * w32term.c: Remove generic fringe code.
13700 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13701 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13702
13703 * macterm.c: Remove generic fringe code.
13704 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13705 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13706
13707 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13708
13709 * print.c (Fprin1_to_string): Return unibyte string if possible.
13710
13711 2003-03-09 David Kastrup <dak@gnu.org>
13712
13713 * process.c (read_process_output): We have allocated enough space
13714 for readmax and carryover, so actually use the alloted space.
13715
13716 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13717
13718 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13719 toolkit scrollbar click.
13720
13721 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13722 for USE_GTK.
13723 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13724 also.
13725 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13726 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13727
13728 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13729
13730 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13731 (xg_tool_bar_item_expose_callback): New function.
13732 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13733 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13734 on the tool bar widget.
13735 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13736 to expose on the tool bar item widgets.
13737
13738 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13739
13740 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13741 struct image* when deciding to update (struct image* may have been
13742 deleted from the image cache).
13743
13744 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13745 the event isn't for a frame (i.e. for dialogs).
13746
13747 2003-03-07 Kenichi Handa <handa@m17n.org>
13748
13749 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13750 composition components reaches the limit, terminate composing.
13751 (COMPOSITION_OK): New macro.
13752 (detect_coding_iso2022): Use it if an escape sequence for
13753 composition is found.
13754 (coding_restore_composition): Adjust the number of composition
13755 components if it is not sane.
13756
13757 2003-03-06 Juanma Barranquero <lektu@terra.es>
13758
13759 * w32term.h (struct w32_display_info): Add xrdb member to support
13760 passing resources via -xrm on Windows.
13761
13762 * w32term.c (w32_make_rdb): New function.
13763 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13764 struct. Delete leftover code.
13765
13766 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13767 for resources passed on the command line.
13768
13769 * w32reg.c (w32_get_rdb_resource): New function.
13770 (x_get_string_resource): Use it, so resources passed with -xrm
13771 supercede the ones in the registry.
13772
13773 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13774
13775 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13776 instead of x_top_window_to_frame.
13777
13778 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13779
13780 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13781 when restarting Emacs.
13782
13783 2003-03-03 Richard M. Stallman <rms@gnu.org>
13784
13785 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13786 to run kill-buffer-query-functions.
13787 (Qkill_buffer_query_functions): New var.
13788 (syms_of_buffer): Init and staticpro it.
13789
13790 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13791
13792 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13793
13794 2003-02-25 Kim F. Storm <storm@cua.dk>
13795
13796 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13797 If centering point failed to make whole line visible and vscroll
13798 is non-zero, disable vscroll and try centering point again.
13799
13800 * lread.c (read1): Accept `single space' syntax like (? x).
13801
13802 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13803
13804 * keyboard.c (cancel_hourglass_unwind): Surround with
13805 #ifdef HAVE_X_WINDOWS
13806
13807 2003-02-25 Kenichi Handa <handa@m17n.org>
13808
13809 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13810 process only when "subprocesses" is defined.
13811
13812 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13813
13814 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13815
13816 2003-02-24 Juanma Barranquero <lektu@terra.es>
13817
13818 * callint.c (fix_command): Declare as static void and move before
13819 Fcall_interactively.
13820
13821 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13822 (syms_of_xdisp): Don't initialize Qwhen.
13823
13824 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13825
13826 * keyboard.c (cancel_hourglass_unwind): New function.
13827 (command_loop_1): Cancel hourglass with unwind-protect.
13828
13829 2003-02-23 Richard M. Stallman <rms@gnu.org>
13830
13831 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13832 Detect (when ... (region-beginning)) etc.
13833 (Fcall_interactively): Call fix_command.
13834 (Qif, Qwhen): New variables.
13835 (syms_of_callint): Init and staticpro them.
13836
13837 * regex.c (print_partial_compiled_pattern): Output to stderr.
13838
13839 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13840
13841 * dired.c (directory_files_internal): Don't expand directory.
13842 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13843 instead. From Lars Hansen <larsh@math.ku.dk>.
13844
13845 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13846
13847 * fns.c (string_to_multibyte): Remove unused var i.
13848 (Flanginfo): Fix int/Lisp_Object mixup.
13849 (void_call2): New fun.
13850 (Fmap_char_table): Use it in place of call2.
13851
13852 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13853
13854 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13855
13856 * keymap.c (copy_keymap_1): Make it static.
13857
13858 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13859
13860 2003-02-22 David Ponce <david@dponce.com>
13861
13862 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13863
13864 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13865
13866 * process.h: Removed subtty field from struct Lisp_Process.
13867
13868 * process.c (create_process): Remove setting of subtty.
13869 (emacs_get_tty_pgrp): New function.
13870 (Fprocess_running_child_p, process_send_signal):
13871 Call emacs_get_tty_pgrp instead of ioctl.
13872 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13873
13874 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13875
13876 * keymap.c (Fdefine_key): Doc fix.
13877
13878 2003-02-21 Juanma Barranquero <lektu@terra.es>
13879
13880 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13881
13882 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13883 POLLING_PROBLEM_IN_SELECT.
13884
13885 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13886 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13887
13888 * s/hpux10-20.h: New file.
13889
13890 * process.c (wait_reading_process_input):
13891 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13892
13893 2003-02-20 Kenichi Handa <handa@m17n.org>
13894
13895 * fontset.c (check_fontset_name): If NAME is nil, return the
13896 default fontset.
13897 (override_font_info): New function.
13898 (Fset_fontset_font): Document that NAME nil means the default fontset.
13899 (Ffontset_info): If FONTSET is not the default fontset, merge
13900 FONTSET onto the copy of the default fontset, and work on that
13901 copy. Document that NAME nil means the default fontset.
13902 (Ffontset_font): Document that NAME nil means the default fontset.
13903
13904 * process.c (setup_process_coding_systems): If the process's
13905 in/out descriptor is -1, do nothing.
13906
13907 2003-02-19 Andreas Schwab <schwab@suse.de>
13908
13909 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13910 Add prototypes.
13911
13912 2003-02-19 Kenichi Handa <handa@m17n.org>
13913
13914 * xfaces.c (try_alternative_families): Try all scalable fonts if
13915 Vscalable_fonts_allowed is not Qt.
13916
13917 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13918
13919 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13920
13921 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13922
13923 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13924 names.
13925
13926 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13927 (sorted_font_list): Move allocation of struct font_name to
13928 x_face_list_fonts.
13929 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13930 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13931
13932 2003-02-18 Kim F. Storm <storm@cua.dk>
13933
13934 * lread.c (read1): Fix last change.
13935 "`" is not always special. Allow "?" after a character constant.
13936
13937 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13938
13939 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13940
13941 2003-02-18 Andreas Schwab <schwab@suse.de>
13942
13943 * window.c (window_scroll_pixel_based): Move outside a
13944 multi-glyph character before setting new window start.
13945
13946 * xdisp.c (in_display_vector_p): New function.
13947 * dispextern.h (in_display_vector_p): Declare.
13948
13949 2003-02-18 Kim F. Storm <storm@cua.dk>
13950
13951 * lread.c (read1): Fix and relax read syntax.
13952 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13953 Only recognize "," after dotted-pair dot if inside backquote.
13954 Never include "`" or "," (inside backquote) in a symbol.
13955 Allow dotted-pair dot after a character constant.
13956 Allow "`" and "," (inside backquote) after a character constant.
13957
13958 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13959
13960 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13961 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13962 icons. Set name of tool bar to emacs-toolbar.
13963 (update_frame_tool_bar): Connect expose event to
13964 xg_tool_bar_expose_callback.
13965
13966 2003-02-17 Richard M. Stallman <rms@gnu.org>
13967
13968 * keyboard.c (this_command_key_count_reset): New variable.
13969 Initiatize to 0 where this_command_key_count is set.
13970 (read_char): Save and restore this_command_key_count_reset
13971 around input method code.
13972 (read_char): If this_command_key_count_reset, echo reread commands.
13973 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13974
13975 2003-02-17 Kenichi Handa <handa@m17n.org>
13976
13977 * fns.c (string_to_multibyte): Always return a multibyte string.
13978
13979 2003-02-16 Jason Rumney <jasonr@gnu.org>
13980
13981 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13982 Negative max_fonts parameter means list all.
13983
13984 2003-02-14 Dave Love <fx@gnu.org>
13985
13986 * fns.c (Flanginfo): Doc fix.
13987
13988 2003-02-13 Kim F. Storm <storm@cua.dk>
13989
13990 * lread.c (read_escape): Interpret \s as a SPACE character, except
13991 for \s-X in a character constant which still is the super modifier.
13992 (read1): Signal an `invalid read syntax' error if a character
13993 constant is immediately followed by a digit or symbol character.
13994
13995 * search.c (Fmatch_data): Doc fix. Explicitly state that
13996 match-data is undefined if last search failed.
13997
13998 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13999 All uses changed.
14000
14001 2003-02-12 Juanma Barranquero <lektu@terra.es>
14002
14003 * eval.c (Fdefmacro): Fix typo.
14004
14005 2003-02-12 Kim F. Storm <storm@cua.dk>
14006
14007 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14008 macro is a string, convert meta modifiers in string when copying
14009 the string into a vector.
14010
14011 2003-02-11 Kim F. Storm <storm@cua.dk>
14012
14013 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14014
14015 2003-02-11 Kenichi Handa <handa@m17n.org>
14016
14017 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14018
14019 2003-02-10 Kim F. Storm <storm@cua.dk>
14020
14021 * process.c: Doc fixes.
14022 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14023
14024 2003-02-10 Kenichi Handa <handa@m17n.org>
14025
14026 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14027
14028 * process.c (QCfilter_multibyte): New variable.
14029 (setup_process_coding_systems): New function.
14030 (Fset_process_buffer, Fset_process_filter):
14031 Call setup_process_coding_systems.
14032 (Fstart_process): Initialize the member `filter_multibyte' of
14033 struct Lisp_Process.
14034 (create_process): Call setup_process_coding_systems.
14035 (Fmake_network_process): New keyward `:filter-multibyte'.
14036 Initialize the member `filter_multibyte' of struct Lisp_Process.
14037 Call setup_process_coding_systems.
14038 (server_accept_connection): Call setup_process_coding_systems.
14039 (read_process_output): If the process has a filter, decide the
14040 multibyteness of a string to given to the filter by
14041 `filter_multibyte' member of the process. If the process doesn't
14042 have a filter and the result of conversion is unibyte, use
14043 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14044 multibyte form.
14045 (Fset_process_coding_system): Call setup_process_coding_systems.
14046 (Fset_process_filter_multibyte): New function.
14047 (Fprocess_filter_multibyte_p): New function.
14048 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14049 Defsubr Sset_process_filter_multibyte and
14050 Sprocess_filter_multibyte_p.
14051
14052 * process.h (struct Lisp_Process): New member filter_multibyte.
14053
14054 * lisp.h (setup_process_coding_systems): Add prototype.
14055
14056 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14057 process, update coding systems for the process.
14058
14059 2003-02-09 Kenichi Handa <handa@m17n.org>
14060
14061 * fns.c (string_to_multibyte): New function.
14062 (Fstring_to_multibyte): New function.
14063 (syms_of_fns): Defsubr it.
14064
14065 2003-02-08 Andreas Schwab <schwab@suse.de>
14066
14067 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14068 instead of the substitution.
14069
14070 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14071
14072 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14073
14074 * xmenu.c (menu_position_func): Adjust menu popup position so that
14075 the menu is fully visible.
14076
14077 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14078
14079 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14080 (x_make_frame_invisible, x_wm_set_icon_position):
14081 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14082
14083 * xfns.c (x_set_name, x_set_title): Ditto.
14084
14085 2003-02-04 Richard M. Stallman <rms@gnu.org>
14086
14087 * keyboard.c (echo_now): Update before_command_echo_length.
14088 (Freset_this_command_lengths): Reset this_command_key_count etc.
14089 immediately rather than arranging to do it later.
14090 (before_command_key_count_1, before_command_echo_length_1)
14091 (before_command_restore_flag): Vars deleted.
14092 (add_command_key): Don't handle before_command_restore_flag.
14093 (read_char, record_menu_key): Don't update before_command_key_count or
14094 before_command_echo_length.
14095 (read_char): Don't handle before_command_restore_flag.
14096
14097 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14098 in direct-output clauses if it wouldn't be called in the ordinary case.
14099
14100 2003-02-04 Kim F. Storm <storm@cua.dk>
14101
14102 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14103
14104 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14105
14106 * gtkutil.c (remove_from_container): Copying list is not needed.
14107 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14108 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14109 on list returned from gtk_container_get_children to avoid memory leak.
14110
14111 2003-02-01 Jason Rumney <jasonr@gnu.org>
14112
14113 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14114 local malloc.
14115 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14116 definitions in xpm.h.
14117 (init_xpm_functions): New function.
14118 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14119 (init_external_image_libraries): Try to load libXpm.dll.
14120
14121 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14122 timestamp.
14123
14124 2003-01-31 Dave Love <fx@gnu.org>
14125
14126 * syntax.c (Fskip_chars_forward)
14127 (open-paren-in-column-0-is-defun-start): Doc fix.
14128
14129 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14130
14131 * fileio.c: Support // at start of name for Cygwin (just added proper
14132 preprocessor tests).
14133
14134 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14135
14136 * Makefile.in: Use @EXEEXT@ for Cygwin.
14137
14138 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14139
14140 * s/cygwin.h: Added for Cygwin port.
14141
14142 2003-01-31 Juanma Barranquero <lektu@terra.es>
14143
14144 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14145 when including gif_lib.h.
14146 (init_gif_functions, init_tiff_functions): New functions.
14147 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14148 Windows. Disable color table lookups. Call library functions
14149 through pointers determined at runtime.
14150 (init_external_image_libraries): Try to load libungif.dll and
14151 libtiff.dll.
14152
14153 2003-01-31 Kenichi Handa <handa@m17n.org>
14154
14155 * xdisp.c (SKIP_GLYPHS): New macro.
14156 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14157
14158 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14159
14160 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14161
14162 2003-01-30 Dave Love <fx@gnu.org>
14163
14164 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14165 (Fgarbage_collect): Use them.
14166 (init_alloc, syms_of_alloc): Set them up.
14167
14168 2003-01-30 Juanma Barranquero <lektu@terra.es>
14169
14170 * w32fns.c (init_external_image_libraries): Add missing operator.
14171
14172 2003-01-29 Jason Rumney <jasonr@gnu.org>
14173
14174 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14175 an alternative name for jpeg.dll.
14176
14177 2003-01-29 Kenichi Handa <handa@m17n.org>
14178
14179 * xdisp.c (set_cursor_from_row): Pay attention to string display
14180 properties.
14181
14182 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14183
14184 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14185 <escape>.
14186 (keycode_to_xkeysym_table): Reformat and add more comments.
14187 (XTread_socket): Drop special case for backspace.
14188
14189 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14190
14191 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14192 values in old-style RGB specs.
14193
14194 2003-01-27 Juanma Barranquero <lektu@terra.es>
14195
14196 * w32fns.c (init_external_image_libraries): Try alternate names for the
14197 jpeg dll.
14198
14199 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14200
14201 * gtkutil.c (create_dialog, xg_separator_p)
14202 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14203 before calling strcmp or strlen.
14204
14205 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14206
14207 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14208 and handle image load failure.
14209
14210 2003-01-26 Jason Rumney <jasonr@gnu.org>
14211
14212 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14213 New functions.
14214 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14215 Disable color table lookups. Call jpeg library functions
14216 through pointers determined at runtime.
14217 (init_external_image_libraries): Try to load jpeg.dll.
14218
14219 2003-01-25 Richard M. Stallman <rms@gnu.org>
14220
14221 * lisp.h: Declare format2 instead of format1.
14222
14223 * fileio.c (barf_or_query_if_file_exists):
14224 Call format2 instead of format1.
14225
14226 * editfns.c (format2): New function, replaces format1
14227 but takes exactly two Lisp Objects as format args.
14228
14229 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14230
14231 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14232
14233 * xterm.h: Change to return value of x_dispatch_event to int.
14234
14235 * xterm.c (x_filter_event): New function.
14236 (event_handler_gdk, XTread_socket): Call x_filter_event.
14237 (x_dispatch_event): Change to return value of finish.
14238 (event_handler_gdk): Use return value from x_dispatch_event.
14239
14240 * xfns.c (x_window): Call create_frame_xic for GTK version to
14241 initialize input methods.
14242
14243 * gtkutil.h: Add (void) prototypes.
14244
14245 * gtkutil.c (create_menus): Remove code that puts the help menu to
14246 the right.
14247
14248 2003-01-25 Jason Rumney <jasonr@gnu.org>
14249
14250 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14251 [HAVE_PNG]: Sync with xfns.c version.
14252 (png_load): Adjust colors for Windows. Use Windows
14253 bitmaps. Disable color table lookups.
14254 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14255 (init_png_functions): New function.
14256 (png_read_from_memory, png_load): Call png library functions
14257 through pointers determined at runtime.
14258 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14259 (init_external_image_libraries): New function.
14260 (init_xfns): Call it.
14261
14262 2003-01-24 Andreas Schwab <schwab@suse.de>
14263
14264 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14265
14266 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14267
14268 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14269 of static initializer.
14270
14271 2003-01-24 Dave Love <fx@gnu.org>
14272
14273 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14274 architectures.
14275
14276 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14277 Use __alignof__.
14278
14279 2003-01-24 Kenichi Handa <handa@m17n.org>
14280
14281 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14282 It it is nonzero, don't pretend that an invisible area doesn't exist.
14283 (command_loop_1): Call adjust_point_for_property with proper
14284 second arg.
14285
14286 2003-01-22 Jason Rumney <jasonr@gnu.org>
14287
14288 Sync changes with xterm.c and xfns.c.
14289
14290 * w32term.c (x_draw_glyph_string_foreground)
14291 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14292
14293 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14294 phys_cursor's hpos is overwritten. This is still not completely
14295 correct, as it doesn't really make sense to use hpos at all to
14296 get the cursor glyph (as that is relative to the width of the
14297 characters on the line, which may have changed during the update).
14298
14299 * w32term.c (notice_overwritten_cursor): Handle the special case
14300 of the cursor being in the first blank non-text line at the
14301 end of a window.
14302
14303 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14304 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14305 Compute from the x position returned by x_draw_glyphs.
14306
14307 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14308 except for NO_CURSOR and system caret, to make phys_cursor_width
14309 contain what its name suggests.
14310 (notice_overwritten_cursor): Consider the cursor image erased if
14311 the output area intersects the cursor image in y-direction.
14312
14313 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14314 note_mode_line_highlight and extend.
14315
14316 * w32term.c (last_window): New variable.
14317 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14318 (note_mouse_movement): Remove reimplemented code in #if 0.
14319
14320 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14321 not update_mode_lines, and always set it to 1.
14322
14323 2003-01-21 Jason Rumney <jasonr@gnu.org>
14324
14325 * w32fns.c (IDC_HAND): Define it if system headers don't.
14326
14327 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14328
14329 * w32term.h (struct w32_output): New member hand_cursor.
14330 (WM_EMACS_SETCURSOR): New message definition.
14331
14332 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14333 function w32_define_cursor.
14334 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14335 position, change member name output_data.x to output_data.w32 and
14336 add function w32_define_cursor.
14337 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14338 and change member name output_data.x to output_data.w32.
14339 (w32_initialize_display_info):
14340 Setup dpyinfo->vertical_scroll_bar_cursor.
14341
14342 * w32fns.c (Vx_hand_shape): New variable.
14343 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14344 WM_EMACS_SETCURSOR.
14345 (x-create-frame): Setup Cursor types.
14346
14347 2003-01-21 David Ponce <david@dponce.com>
14348
14349 * w32term.c (w32_encode_char): For DIM=1 charset, set
14350 ccl->reg[2] to -1 before calling ccl_driver.
14351 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14352 <handa@m17n.org> on 2002-09-30.)
14353 (w32_draw_relief_rect): Declare all args.
14354 (w32_define_cursor): New.
14355
14356 * w32fns.c (w32_load_cursor): New function.
14357 (w32_init_class): Use it.
14358 (x_put_x_image): Declare all args.
14359
14360 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14361
14362 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14363
14364 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14365
14366 * gtkutil.c: Must include stdio.h before termhooks.h
14367
14368 2003-01-21 Dave Love <fx@gnu.org>
14369
14370 * alloc.c (Fgc_status): Print zombie list.
14371 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14372 Fix assignment of zombies.
14373 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14374 Don't take car of non-cons.
14375
14376 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14377
14378 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14379
14380 2003-01-20 David Ponce <david@dponce.com>
14381
14382 * w32menu.c (digest_single_submenu): Declare all args.
14383
14384 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14385 changes in xmenu.c:
14386
14387 (parse_single_submenu): Use individual keymap's prompt
14388 string as pane name, if there is one.
14389 (set_frame_menubar): Save menu_items_n_panes from each call to
14390 parse_single_submenu and use it when calling digest_single_submenu.
14391
14392 2003-01-20 Steven Tamm <steventamm@mac.com>
14393
14394 * macterm.c (XTread_socket): Check for valid, visible window
14395 before sending a scroll-wheel event.
14396
14397 2003-01-20 Richard M. Stallman <rms@gnu.org>
14398
14399 * xdisp.c (redisplay_window): If mini window's buffer is not
14400 a minibuffer, then redisplay it like other windows.
14401
14402 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14403
14404 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14405 external tool bar before setting tool bar height.
14406
14407 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14408
14409 * xterm.c (handle_one_xevent): Surround popup_activated
14410 with #ifdef:s for non-toolkit version.
14411
14412 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14413 (gtkutil.o): New file.
14414 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14415 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14416
14417 * gtkutil.c: New file for GTK version.
14418
14419 * gtkutil.h: New file for GTK version.
14420
14421 * xterm.h: Add xt_or_gtk_widget.
14422 Include gtk files for USE_GTK.
14423 (struct x_output): Add toolbar_height.
14424 (struct x_output): Add GTK widgets and Gdk size_hints.
14425 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14426 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14427 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14428
14429 * xterm.c: Include gtkutil.h for USE_GTK.
14430 (free_frame_menubar): Declare extern void for USE_GTK.
14431 (note_mouse_highlight): Check popup_activated for USE_GTK.
14432 (xt_action_hook): Don't compile if USE_GTK.
14433 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14434 (xg_scroll_callback): New function.
14435 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14436 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14437 for USE_GTK.
14438 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14439 xg_show_scroll_bar for USE_GTK.
14440 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14441 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14442 (event_handler_gdk): New function for USE_GTK.
14443 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14444 (handle_one_xevent): Make sure widget is mapped before
14445 calling x_real_positions for USE_GTK.
14446 (XTread_socket): Add GTK event loop for USE_GTK.
14447 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14448 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14449 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14450 (x_iconify_frame): Add code for USE_GTK.
14451 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14452 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14453 is in gtkutil.c.
14454 (x_term_init): Add initialization for GTK.
14455 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14456
14457 * xmenu.c: Include gtkutil.h for USE_GTK.
14458 (Fx_popup_menu): Use current position if x and y is NIL.
14459 (single_menu_item, single_menu_item, Fx_popup_dialog):
14460 Check for USE_GTK.
14461 (popup_widget_loop): New function for USE_GTK.
14462 (x_activate_menubar): Add code for USE_GTK.
14463 (popup_activate_callback, popup_deactivate_callback)
14464 (menu_highlight_callback, menubar_selection_callback):
14465 Add USE_GTK versions.
14466 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14467 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14468 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14469 is in gtkutil.c.
14470 (popup_selection_callback): New version for USE_GTK.
14471 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14472 one USE_X_TOOLKIT version.
14473 (xmenu_show): Call create_and_show_popup_menu.
14474 (dialog_selection_callback): New version for USE_GTK.
14475 (create_and_show_dialog): New fuction, one USE_GTK version and
14476 one USE_X_TOOLKIT version.
14477 (xdialog_show): Call create_and_show_dialog.
14478
14479 * xfns.c: Include gtkutil for USE_GTK.
14480 (x_window_to_frame, x_any_window_to_frame)
14481 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14482 (x_top_window_to_frame): Add code for USE_GTK.
14483 (x_set_background_color): Call xg_set_background_color for GTK.
14484 (x_set_menu_bar_lines): Check for USE_GTK.
14485 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14486 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14487 (x_window): Call xg_create_frame_widgets for USE_GTK.
14488 (Fx_create_frame): Check for USE_GTK
14489 (Fx_file_dialog): New implementation for USE_GTK.
14490
14491 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14492 (update_menu_bar): Add check for USE_GTK.
14493 (update_tool_bar): Add check for USE_GTK and external tool bar.
14494 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14495 (redisplay_internal): Add check for USE_GTK and popup_activated.
14496 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14497 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14498 (display_menu_bar): Add check for USE_GTK
14499
14500 * lisp.h (Vx_resource_name): Declare extern.
14501
14502 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14503 for USE_GTK.
14504 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14505
14506 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14507 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14508 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14509
14510 * fileio.c (Fread_file_name): Add check for USE_GTK.
14511
14512 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14513 Add check for USE_GTK.
14514
14515 * config.in: Added HAVE_GTK
14516
14517 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14518
14519 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14520
14521 * charset.h (Funibyte_char_to_multibyte): Export.
14522
14523 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14524
14525 * xmenu.c (mouse_position_for_popup): New function.
14526 (Fx_popup_menu): Call mouse_position_for_popup for X and
14527 mouse_position_hook for others.
14528
14529 2003-01-17 Kim F. Storm <storm@cua.dk>
14530
14531 * editfns.c (Finsert): Mention `string-make-multibyte' and
14532 `string-as-multibyte' in doc string.
14533
14534 2003-01-17 Kenichi Handa <handa@m17n.org>
14535
14536 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14537
14538 * editfns.c (Fformat): Convert an unibyte char argument that is
14539 formatted by "%c" to multibyte if the total result must be a
14540 multibyte string.
14541
14542 2003-01-16 Kim F. Storm <storm@cua.dk>
14543
14544 * process.c (set-process-filter): Document unibyte/multibyte-ness
14545 of string argument.
14546
14547 2003-01-16 Kenichi Handa <handa@m17n.org>
14548
14549 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14550
14551 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14552 (re_search_2): Likewise.
14553
14554 2003-01-15 Kenichi Handa <handa@m17n.org>
14555
14556 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14557 buffer is unibyte.
14558
14559 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14560
14561 * fns.c (Fsubstring): Clarify doc string.
14562
14563 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14564 (Fprevious_char_property_change)
14565 (Fnext_single_char_property_change)
14566 (Fprevious_single_char_property_change, Fnext_property_change)
14567 (Fnext_single_property_change, Fprevious_property_change)
14568 (Fprevious_single_property_change, Fadd_text_properties)
14569 (Fput_text_property, Fset_text_properties)
14570 (Fremove_text_properties, Fremove_list_of_text_properties)
14571 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14572
14573 2003-01-14 Kim F. Storm <storm@cua.dk>
14574
14575 * process.h (struct Lisp_Process): New member plist replaces old
14576 member private_vars. All uses changed.
14577
14578 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14579 (QCplist): Rename from QCvars. Change all uses.
14580 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14581 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14582 (syms_of_process): Intern, staticpro, defsubr these.
14583 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14584
14585 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14586
14587 * m/delta.h: Remove (obsolete).
14588
14589 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14590
14591 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14592 behaviour in front of symlinks.
14593 (Fdelete_file): Raise an error on directories.
14594
14595 2003-01-13 Dave Love <fx@gnu.org>
14596
14597 * fns.c (Freverse): Use QUIT.
14598
14599 2003-01-13 Richard M. Stallman <rms@gnu.org>
14600
14601 * minibuf.c (minibuffer_completion_contents):
14602 Error if point is inside prompt.
14603
14604 * keyboard.c (command_loop_1): Don't redisplay directly
14605 if there's a post-command-hook.
14606
14607 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14608 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14609
14610 2003-01-12 Kim F. Storm <storm@cua.dk>
14611
14612 * process.h (struct Lisp_Process): New member private_vars.
14613
14614 * process.c (QCvars): New variable.
14615 (syms_of_process): Intern and staticpro it.
14616 (Fset_process_contact): Removed function.
14617 (Fprocess_variable, Fset_process_variable): New functions.
14618 (syms_of_process): Defsubr them.
14619 (Fstart_process): Initialize private_vars plist to nil.
14620 (Fmake_network_process): New arg :vars to setup the private
14621 variables for new network process.
14622 (server_accept_connection): Copy server's private variables to
14623 client process.
14624
14625 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14626 crashes). Code rewritten and simplified. Now directly aligns the
14627 pointer and recalculates pure_bytes_used, rather than aligning the
14628 size and adjusting the pointer.
14629
14630 2003-01-11 Kim F. Storm <storm@cua.dk>
14631
14632 * process.c (Fset_process_contact): New function.
14633 (syms_of_process): defsubr it.
14634 (make-network-process): Update doc.
14635
14636 2003-01-10 Andreas Schwab <schwab@suse.de>
14637
14638 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14639 Reported by Berthold Gunreben <b.gunreben@web.de>.
14640
14641 2003-01-10 Dave Love <fx@gnu.org>
14642
14643 * composite.c (syms_of_composite): Make composition_hash_table weak.
14644
14645 2003-01-09 Kim F. Storm <storm@cua.dk>
14646
14647 * process.c (Fmake_network_process): Convert new port number
14648 to host byte order for `:service t' case. From Mario Lang.
14649
14650 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14651
14652 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14653 instead of XtAppProcessEvent.
14654
14655 * xterm.c (handle_one_xevent): New function.
14656 (x_dispatch_event): New function.
14657 (XTread_socket): Call handle_one_xevent.
14658
14659 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14660
14661 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14662 call XQueryPointer to get coordinates.
14663 (popup_get_selection): Do not set popup_activated_flag to zero,
14664 let popup_deactivate_callback do that. Needed for Motif.
14665 Call x_dispatch_event instead of XtDispatchEvent.
14666 (xmenu_show): Calculate root coordinate from frame top/left position.
14667
14668 2003-01-08 Kim F. Storm <storm@cua.dk>
14669
14670 * process.c (server_accept_connection): Fix recording of new
14671 connection's local address in :local property of contact info.
14672 (Fmake_network_process): Record local network address for new
14673 client processes in :local property of contact info.
14674 (format-network-address): Add arg OMIT-PORT. Change callers.
14675
14676 2003-01-07 Dave Love <fx@gnu.org>
14677
14678 * Makefile.in (fns.o): Depend on coding.h.
14679
14680 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14681
14682 * minibuf.c (Fread_variable): Doc fix.
14683
14684 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14685 use the same test as for custom-variable-p.
14686
14687 2003-01-05 Richard M. Stallman <rms@gnu.org>
14688
14689 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14690 Count LAST_LINE_MISFIT in scroll margin for end of window.
14691 Move label too_near_end before setting SCROLL_MARGIN_POS.
14692 Set LAST_LINE_MISFIT before jumping there.
14693
14694 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14695 scroll_conservatively case. If scrolling that much doesn't change
14696 STARTP, move it down one line.
14697
14698 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14699 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14700
14701 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14702 selected frame.
14703
14704 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14705 (syms_of_keymap): Staticpro them.
14706 (Fapropos_internal): Initialize them and clear them out.
14707 Don't GCPRO them.
14708
14709 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14710 Doc fixes.
14711
14712 * lisp.h: New misc type Lisp_Save_Value.
14713 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14714 (XSAVE_VALUE): New macro.
14715 (struct Lisp_Save_Value): New data type.
14716 (union Lisp_Misc): Add u_save_value alternative.
14717 (make_save_value): Declare.
14718
14719 * alloc.c (make_save_value): New function.
14720
14721 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14722 (x_catch_errors_unwind): Call XSync.
14723
14724 2003-01-01 Richard M. Stallman <rms@gnu.org>
14725
14726 * window.c (window_scroll_pixel_based): Partially undo last change.
14727
14728 * keyboard.c (command_loop_1): Call adjust_point_for_property
14729 in direct action cases for Qforward_char and Qbackward_char.
14730 Set already_adjusted so it won't be done twice.
14731
14732 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14733
14734 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14735 type definition of size_t.
14736
14737 2003-01-02 Steven Tamm <steventamm@mac.com>
14738
14739 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14740 distinguish Carbon GUI builds from X11 builds on darwin.
14741
14742 2002-12-30 Steven Tamm <steventamm@mac.com>
14743
14744 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14745 to default to t.
14746
14747 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14748
14749 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14750
14751 2002-12-28 Steven Tamm <steventamm@mac.com>
14752
14753 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14754 allow building in a different directory than source. Uses some
14755 GNU Make extensions, but there is no other make on Mac OS X.
14756
14757 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14758
14759 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14760 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14761 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14762 (Fstring_to_number): Mention the returned value in the doc strings.
14763
14764 2002-12-23 Richard M. Stallman <rms@gnu.org>
14765
14766 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14767 <scroll-down-aggressively>: Doc fix.
14768
14769 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14770 string as pane name, if there is one.
14771 (set_frame_menubar): Save menu_items_n_panes from each call to
14772 parse_single_submenu and use it when calling digest_single_submenu.
14773
14774 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14775 Don't try to make last line fully visible if it is past end of window.
14776
14777 2002-12-22 Steven Tamm <steventamm@mac.com>
14778
14779 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14780 (mac_menu_show): Add support for hierarchical popup menus.
14781 (add_menu_item): Remove indentation support.
14782 (fill_submenu, fill_menu): Create hierarchical menus
14783 instead of using indentation.
14784
14785 2002-12-22 Richard M. Stallman <rms@gnu.org>
14786
14787 * xdisp.c (try_cursor_movement): Don't call try_window here.
14788 (redisplay_window): Never redisplay minibuffer when inactive.
14789
14790 * window.c (select_window_1): Undo 9/21 change.
14791
14792 2002-12-22 Steven Tamm <steventamm@mac.com>
14793
14794 * macterm.c (XTread_socket): Call KeyTranslate for control and
14795 meta to deal correctly shifted non-alpha characters, like C-S-5
14796 being treated like C-%. Do not look for shift key to deal
14797 with masking off control-key with mac-reverse-ctrl-meta.
14798
14799 2002-12-21 Richard M. Stallman <rms@gnu.org>
14800
14801 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14802 If it is non-nil, run timers. Use an unwind-protect to requeue
14803 the events that were read ahead.
14804 (popup_get_selection_unwind): New subroutine.
14805 (popup_get_selection_queue): File-scope variable now holds that queue.
14806 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14807 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14808 Use an unwind-protect to pop down the dialog box.
14809 (xdialog_show_unwind): New subroutine implements that.
14810
14811 * xdisp.c (row_containing_pos): Change exit test using last_y.
14812 (try_window_id): Abort if row_containing_pos returns null.
14813
14814 * lread.c (load_error_handler): New function.
14815 (Fload): Handle errors in Fsubstitute_in_file_name.
14816 Don't expect Fsignal to return.
14817
14818 * eval.c: Errors and throws work right with interrupt blocking.
14819 (struct catchtag): New elt interrupt_input_blocked.
14820 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14821 (internal_catch, Fcondition_case, internal_condition_case)
14822 (internal_condition_case_1, internal_condition_case_2): Save it.
14823 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14824
14825 * editfns.c (Fformat): Add parens.
14826
14827 * dired.c (file_name_completion): Fix that change.
14828 Delete special quit-handling code; just use QUIT.
14829
14830 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14831
14832 * dired.c (file_name_completion): Close directory on error
14833 just as in directory_files_internal.
14834
14835 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14836
14837 * window.c (Fset_window_configuration): Set old_point to correct
14838 value when new_current_buffer == current_buffer.
14839
14840 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14841
14842 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14843 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14844 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14845
14846 These changes were in part based upon suggestions made by Peter
14847 'Luna' Runestig [peter@runestig.com].
14848
14849 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14850 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14851 (g_b_init_get_sid_identifier_authority ): Add several static
14852 global variables.
14853
14854 * w32.c (globals_of_w32): New function. Used to initialize those
14855 global variables that must always be initialized on startup even
14856 when the global variable initialized is non zero. Its primary
14857 purpose at this time is to set the global variables
14858 g_b_init_is_windows_9x, g_b_init_open_process_token,
14859 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14860 g_b_init_get_sid_identifier_authority to 0 on startup.
14861 Called from main.
14862
14863 * w32.c (is_windows_9x): Perform initialization only if
14864 g_b_init_is_windows_9x is equal to 0. On initialization set
14865 g_b_init_is_windows_9x equal to 1.
14866
14867 * w32.c (open_process_token): Perform initialization only if
14868 g_b_init_open_process_token is equal to 0. On initialization set
14869 g_b_init_open_process_token equal to 1.
14870
14871 * w32.c (get_token_information): Perform initialization only if
14872 g_b_init_get_token_information is equal to 0. On initialization
14873 set g_b_init_get_token_information equal to 1.
14874
14875 * w32.c (lookup_account_sid): Perform initialization only if
14876 g_b_init_lookup_account_sid is equal to 0. On initialization
14877 set g_b_init_lookup_account_sid equal to 1.
14878
14879 * w32.c (get_sid_identifier_authority): Perform initialization
14880 only if g_b_init_get_sid_identifier_authority is equal to 0.
14881 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14882
14883 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14884 those global variables that must always be initialized on startup
14885 even when the global variable initialized is non zero.
14886 Its primary purpose at this time is to initialize the global variable
14887 track_mouse_event_fn.
14888
14889 * w32fns.c (w32_wnd_proc): Remove initialization of
14890 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14891
14892 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14893
14894 * w32menu.c (globals_of_w32menu): New function. Used to
14895 initialize those global variables that must always be initialized
14896 on startup even when the global variable initialized is non zero.
14897 Its primary purpose at this time is to initialize the global
14898 variables get_menu_item_info and set_menu_item_info.
14899
14900 * w32menu.c (initialize_frame_menubar): Remove initialization of
14901 get_menu_item_info and set_menu_item_info.
14902
14903 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14904
14905 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14906 Declare them.
14907
14908 * emacs.c (main): Call globals_of_w32 prior to calling
14909 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14910 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14911 is defined.
14912
14913 * w32term.c (x_update_window_begin): Fix Windows API error
14914 detected by BoundsChecker. Test to determine if
14915 w32_system_caret_hwnd is NULL prior to attempting to use
14916 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14917
14918 * w32term.c (x_update_window_end): Fix Windows API error
14919 detected by BoundsChecker. Test to determine if
14920 w32_system_caret_hwnd is NULL prior to attempting to use
14921 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14922
14923 2002-12-17 Kenichi Handa <handa@m17n.org>
14924
14925 * coding.c (coding_system_require_warning): New variable.
14926 (syms_of_coding): DEFVAR it.
14927
14928 * coding.h (coding_system_require_warning): Extern it.
14929
14930 * fileio.c (choose_write_coding_system): Even if
14931 Vcoding_system_for_write is non-nil, if
14932 coding_system_require_warning is nonzero, call
14933 Vselect_safe_coding_system_function.
14934
14935 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14936
14937 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14938 (lisp): Add font-core.
14939
14940 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14941
14942 * textprop.c (text_read_only): New arg `propval'.
14943 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14944 (verify_interval_modification): Use text_read_only's new arg.
14945
14946 2002-12-13 Kenichi Handa <handa@m17n.org>
14947
14948 * coding.c (Funencodable_char_position): Set pend correctly.
14949
14950 2002-12-12 Jason Rumney <jasonr@gnu.org>
14951
14952 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14953 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14954 Be more careful about when help_events are generated.
14955
14956 2002-12-12 Steven Tamm <steventamm@mac.com>
14957
14958 * macterm.c (mac_check_for_quit_char): Correctly set the
14959 modifiers of the event to 0.
14960 * mac.c (sys_select): Duplicate rfds before calling select to
14961 ensure that rfds survive the while loop.
14962
14963 2002-12-11 Kim F. Storm <storm@cua.dk>
14964
14965 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14966 row_containing_pos returned NULL.
14967
14968 2002-12-10 Steven Tamm <steventamm@mac.com>
14969
14970 * mac.c (sys_read): Fix sys_read to not call select if IO is
14971 non-blocking.
14972 (sys_select): Fix sys_select to not use a timeout larger than
14973 the one given.
14974
14975 2002-12-10 Juanma Barranquero <lektu@terra.es>
14976
14977 * editfns.c (Fformat): Use alloca, not _alloca.
14978
14979 2002-12-09 Richard M. Stallman <rms@gnu.org>
14980
14981 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14982 as the last thing.
14983
14984 2002-12-09 Dave Love <fx@gnu.org>
14985
14986 * s/sol2-8.h: Removed. (Not necessary.)
14987
14988 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14989
14990 * editfns.c (Fformat): Handle precision in string conversion
14991 specifiers like libc functions do (ie, print at most that many
14992 characters).
14993
14994 2002-12-08 Richard M. Stallman <rms@gnu.org>
14995
14996 * xdisp.c (row_containing_pos): Check more carefully
14997 whether charpos is really in the row before returning it.
14998
14999 2002-12-07 Steven Tamm <steventamm@mac.com>
15000
15001 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15002
15003 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15004 each stack frame. This may change as it could be time consuming.
15005
15006 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15007 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15008 (mac_initialize): Add code to check for pressing of quit_char
15009 in the OS event queue.
15010
15011 * mac.c (sys_select): Call mac_check_for_quit_char every second
15012 while blocking on select.
15013
15014 * mac.c (sys_read): Use sys_select to test for input first
15015 before calling read, to allow C-g to break.
15016
15017 2002-12-07 Richard M. Stallman <rms@gnu.org>
15018
15019 * minibuf.c (Fcompleting_read): Doc fix.
15020
15021 * lread.c (syms_of_lread) <load-history>: Doc fix.
15022
15023 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15024
15025 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15026 autoload.
15027
15028 * data.c (Fdefalias): Record in load-history redefining an autoload.
15029
15030 * alloca.c: Undo ifdef change accidentally made on 12-04.
15031
15032 2002-12-06 Francesco Potorti` <pot@gnu.org>
15033
15034 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15035
15036 2002-12-04 Richard M. Stallman <rms@gnu.org>
15037
15038 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15039
15040 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15041
15042 * alloca.c: Don't use #error.
15043
15044 2002-12-03 Dave Love <fx@gnu.org>
15045
15046 * buffer.c (Qucs_set_table_for_input): New.
15047 (Fget_buffer_create): Use it.
15048 (Qset_buffer_major_mode_hook): Deleted.
15049 (Fset_buffer_major_mode): Revert previous change.
15050 (init_buffer_once): Intern ucs-set-table-for-input.
15051 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15052 Add &Qucs_set_table_for_input.
15053
15054 2002-12-03 Andreas Schwab <schwab@suse.de>
15055
15056 * callint.c (Fcall_interactively): Use next_event only if less
15057 than key_count.
15058
15059 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15060
15061 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15062 names to 255 characters.
15063
15064 * macterm.c (XTread_socket): If all frames have been collapsed,
15065 expand the first one before handling drag-and-drop events.
15066
15067 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15068 which is detected by autoconf.
15069
15070 2002-12-01 Steven Tamm <steventamm@mac.com>
15071
15072 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15073 offset in two hints table to allow prebinding to be redone and
15074 allow the executable to be stripped.
15075
15076 2002-11-29 Dave Love <fx@gnu.org>
15077
15078 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15079 already provided.
15080
15081 2002-11-29 Richard M. Stallman <rms@gnu.org>
15082
15083 * xdisp.c (start_display): Check more intelligently for
15084 whether the line is continued.
15085 (move_it_vertically_backward): Clear it->continuation_lines_width.
15086
15087 2002-11-28 Dave Love <fx@gnu.org>
15088
15089 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15090 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15091
15092 2002-11-27 Steven Tamm <steventamm@mac.com>
15093
15094 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15095 more descriptive error output from lread.c:Fload upon most require
15096 cycles during boostrapping.
15097
15098 2002-11-27 Jason Rumney <jasonr@gnu.org>
15099
15100 * fileio.c (Finsert_file_contents): Give a more appropriate error
15101 for files bigger than 2Gb when off_t is 32 bit.
15102
15103 * dired.c (Ffile_attributes): Don't return negative file sizes for
15104 files bigger than 2Gb when off_t is 32 bit.
15105
15106 2002-11-27 Dave Love <fx@gnu.org>
15107
15108 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15109
15110 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15111 Test GETPGRP_VOID instead.
15112 [BSD_TERMIOS]: Remove definitions (never used).
15113
15114 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15115 Don't define.
15116 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15117
15118 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15119
15120 2002-11-25 Jason Rumney <jasonr@gnu.org>
15121
15122 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15123 supported.
15124
15125 2002-11-25 Dave Love <fx@gnu.org>
15126
15127 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15128
15129 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15130
15131 2002-11-25 Andreas Schwab <schwab@suse.de>
15132
15133 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15134
15135 2002-11-24 Steven Tamm <steventamm@mac.com>
15136
15137 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15138 determine the size of pointers alloced in unexed space instead
15139 of using possibly invalid emacs_zone pointers. This fixes the
15140 binary incompatibility problems caused by updates to libSystem.B.
15141
15142 2002-11-24 Richard M. Stallman <rms@gnu.org>
15143
15144 * search.c (Fstring_match): Doc fix.
15145
15146 * callint.c (Fcall_interactively): If a command fails because
15147 `*' detects a read-only buffer, but RECORD_FLAG is set,
15148 record it anyway if the args don't actually do tty input.
15149
15150 2002-11-22 Dave Love <fx@gnu.org>
15151
15152 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15153
15154 * keyboard.c (interrupt_signal): Provide forward declaration.
15155 (kbd_buffer_store_event): Don't declare interrupt_signal.
15156
15157 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15158
15159 2002-11-21 Richard M. Stallman <rms@gnu.org>
15160
15161 * eval.c (interactive_p): Skip any number of bytecode
15162 and special form frames, in any order.
15163
15164 2002-11-20 Jason Rumney <jasonr@gnu.org>
15165
15166 * w32fns.c (convert_mono_to_color_image): New function.
15167 (xbm_load, xbm_load_image): Use it when foreground or background
15168 is explicitly set.
15169
15170 2002-11-19 Dave Love <fx@gnu.org>
15171
15172 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15173
15174 2002-11-18 Jason Rumney <jasonr@gnu.org>
15175
15176 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15177 (XPutPixel): Swap blue and red.
15178 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15179 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15180 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15181 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15182
15183 2002-11-18 Dave Love <fx@gnu.org>
15184
15185 * m/orion105.h (HAVE_ALLOCA): Don't define.
15186
15187 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15188
15189 * m/intel386.h: Don't include alloca.h or define alloca.
15190
15191 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15192 malloc, realloc, calloc.
15193
15194 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15195 (bcmp): Don't define.
15196
15197 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15198
15199 * m/amdahl.h: Don't define LIB_STANDARD.
15200
15201 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15202
15203 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15204
15205 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15206 Don't include alloca.h.
15207
15208 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15209
15210 * regex.c (_GNU_SOURCE): Don't define.
15211
15212 * process.c (_GNU_SOURCE): Don't define.
15213
15214 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15215
15216 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15217
15218 * s/sol2-8.h: Include sol2-6.h.
15219
15220 2002-11-18 Miles Bader <miles@gnu.org>
15221
15222 * dispextern.h (struct face): Add `overstrike' field.
15223 * xterm.c (x_draw_glyph_string_foreground)
15224 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15225 * xfaces.c (load_face_font): Set `face->overstrike' based on
15226 result from choose_face_font.
15227 (best_matching_font, choose_face_font): Add `needs_overstrike'
15228 argument, and use it to return whether overstriking is desirable
15229 for this face/font combo.
15230 (set_font_frame_param: Pass new argument to choose_face_font.
15231
15232 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15233
15234 This change is my fix for the following entry in etc/PROBLEMS:
15235 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15236 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15237
15238 * w32.c: Added wrapper functions around the win32 API functions
15239 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15240 GetSidIdentifierAuthority. These wrapper functions serve two
15241 purposes:
15242 1. They ensure that the wrapped function can never be called
15243 when Emacs is running on an operating system on which they are
15244 not supported (Microsoft Windows 95 / 98 / ME).
15245 2. They call the wrapped functions via function pointers rather
15246 than calling them directly. This avoids taking advantage of the
15247 undocumented fact that although these functions are not supported
15248 in the 9x branch of Microsoft Windows, the functions do exist in
15249 the version of advapi32.dll that is found in the 9x branch of
15250 Microsoft Windows.
15251
15252 * w32.c (init_user_info): Replace the calls to the win32 API
15253 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15254 and GetSidIdentifierAuthority with calls to the newly added
15255 wrapper functions.
15256
15257 * w32.h: Added extern declarations for the following functions:
15258 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15259 syms_of_w32menu, and void syms_of_fontset.
15260
15261 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15262 function pointer track_mouse_event_fn in the handler for the
15263 WM_SETFOCUS message.
15264
15265 * w32menu.c (initialize_frame_menubar): Add code to
15266 reinitialize the function pointers set_menu_item_info and
15267 get_menu_item_info.
15268
15269 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15270
15271 * sound.c: Added a partial implementation of play-sound-internal
15272 for Microsoft Windows. Added various #ifdef / #else / #endif
15273 code blocks to separate the code that will compile under
15274 Microsoft Windows from the code that is specific to GNU/Linux.
15275 Moved several blocks of code around to make this separation of code
15276 into Windows compatible and GNU/Linux compatible code blocks easier.
15277
15278 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15279
15280 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15281 added support for play-sound-internal under Windows would be
15282 included in the build of Emacs.
15283
15284 2002-11-16 Jason Rumney <jasonr@gnu.org>
15285
15286 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15287
15288 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15289
15290 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15291
15292 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15293 (adjust_point_for_property): Move out of display and invisible even if
15294 we were already inside before (in case a property was added while
15295 we weren't looking). Be more careful when handling invisible props.
15296 Skip invisible text as if it really wasn't there at all.
15297
15298 2002-11-15 Jason Rumney <jasonr@gnu.org>
15299
15300 * w32term.c (x_draw_image_foreground)
15301 (w32_draw_image_foreground_1): Use standard copy and invert
15302 operations to draw images.
15303
15304 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15305 depth of 1.
15306 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15307 (XPutPixel): Don't invert bits here.
15308
15309 2002-11-15 Jason Rumney <jasonr@gnu.org>
15310
15311 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15312 (w32_draw_image_foreground_1): Handle image masks.
15313 (x_draw_image_glyph_string): Don't BitBlt transparently.
15314
15315 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15316 (x_from_xcolors): Adjust RGB values for W32.
15317 (image_background, image_background_transparent)
15318 (postprocess_image, x_to_xcolors, x_disable_image)
15319 (x_build_heuristic_mask): Adapt for W32 and enable.
15320 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15321 (xbm_load): Remove unused variable.
15322
15323 2002-11-14 Richard M. Stallman <rms@gnu.org>
15324
15325 * buffer.c (syms_of_buffer): Doc fix.
15326
15327 2002-11-14 Dave Love <fx@gnu.org>
15328
15329 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15330
15331 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15332 * xmenu.c (unuse_menu_items, digest_single_submenu):
15333 * xfns.c (x_put_x_image):
15334 * xdisp.c (message2_nolog, set_message):
15335 * undo.c (record_point):
15336 * terminfo.c (tparam):
15337 * syntax.c (scan_sexps_forward):
15338 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15339 * composite.c (update_compositions):
15340 * cm.c (calccost, cmgoto):
15341 * charset.c (c_string_width): Declare all args (per C99).
15342
15343 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15344
15345 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15346 Don't declare.
15347
15348 * emacs.c (main) [!VMS]: Avoid third arg.
15349
15350 * fns.c (Fcopy_sequence): Doc fix.
15351 (Fmap_char_table): Cast `call2'.
15352
15353 2002-11-14 Francesco Potorti` <pot@gnu.org>
15354
15355 * s/sol2-8.h: New file.
15356
15357 2002-11-14 Kim F. Storm <storm@cua.dk>
15358
15359 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15360 dependency on `risky-local-variable' and the :propertize form.
15361
15362 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15363
15364 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15365
15366 * syntax.c (scan_sexps_forward): Undo last patch.
15367 Use a more obvious fix: check eob before updating the syntax table.
15368
15369 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15370
15371 * syntax.c (scan_sexps_forward): Update syntax table before reading
15372 a char rather than after so we don't update the table past eob.
15373
15374 2002-11-09 Dave Love <fx@gnu.org>
15375
15376 * buffer.c (Fset_buffer_major_mode): Fix last change.
15377
15378 * regex.c (regexec): Fix pmatch declaration.
15379
15380 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15381
15382 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15383 to self-inserting characters.
15384 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15385
15386 * coding.c (Vtranslation_table_for_input): New.
15387 (syms_of_coding): DEFVAR it.
15388
15389 2002-11-08 Juanma Barranquero <lektu@terra.es>
15390
15391 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15392 window.
15393
15394 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15395
15396 * process.c (Fformat_network_address): Remove unused locals p,
15397 cp, and i.
15398
15399 2002-11-06 Dave Love <fx@gnu.org>
15400
15401 * buffer.c (Qset_buffer_major_mode_hook): New.
15402 (Fset_buffer_major_mode): Use it.
15403
15404 2002-11-06 Richard M. Stallman <rms@gnu.org>
15405
15406 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15407 and stop_polling.
15408
15409 * process.c (wait_reading_process_input):
15410 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15411 Avoid initialization for auto Lisp_Object var.
15412
15413 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15414
15415 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15416
15417 2002-11-05 Richard M. Stallman <rms@gnu.org>
15418
15419 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15420
15421 * callint.c (Fcall_interactively): New local filter_specs.
15422 (Fcall_interactively): Check for progn as well as let.
15423 Add a gcpro.
15424 (Qprogn): New variable.
15425 (syms_of_callint): Staticpro and init Qprogn.
15426
15427 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15428
15429 * lread.c (Feval_buffer): Doc fix.
15430
15431 2002-11-04 Dave Love <fx@gnu.org>
15432
15433 * keyboard.c (read_char): Always translate iff
15434 Vkeyboard_translate_table is a char table and c is valid.
15435
15436 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15437 and fix C types.
15438
15439 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15440
15441 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15442
15443 * editfns.c (get_pos_property): Don't hardcode Qfield.
15444
15445 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15446 overlays. Also handle `invisible' prop.
15447
15448 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15449
15450 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15451 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15452
15453 2002-11-01 Andreas Schwab <schwab@suse.de>
15454
15455 * editfns.c (Fmessage): Revert last change to properly handle %%.
15456
15457 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15458
15459 * xmenu.c (unuse_menu_items): New fun.
15460 (menu_items_inuse): New var.
15461 (syms_of_xmenu): Initialize it.
15462 (init_menu_items): Use it to detect re-entrance.
15463 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15464 (Fx_popup_menu): Remove spurious XSETFRAME.
15465
15466 * editfns.c (find_field): Make an exception for nil fields.
15467
15468 2002-11-01 Dave Love <fx@gnu.org>
15469
15470 * m/gec63.h: Deleted.
15471
15472 2002-10-31 Dave Love <fx@gnu.org>
15473
15474 * xterm.c (XTread_socket): Fix last change.
15475 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15476
15477 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15478
15479 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15480
15481 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15482
15483 * editfns.c (overlays_around, get_pos_property): New funs.
15484 (find_field): Use them.
15485 Also be careful not to modify POS before its last use.
15486 (Fmessage): Don't Fformat if there's nothing to format.
15487
15488 2002-10-30 Dave Love <fx@gnu.org>
15489
15490 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15491 [HAVE_PTY_H]; Include pty.h.
15492
15493 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15494
15495 * xterm.c (Qeql): Declare.
15496 (Vx_keysym_table): New.
15497 (syms_of_xterm): Initialize it.
15498 (XTread_socket): Use it. Deal with ASCII keysyms.
15499 (XSetIMValues) [HAVE_X11R6]: Prototype.
15500
15501 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15502 (lispy_kana_keys): Comment out.
15503 (make_lispy_event) [XK_kana_A]: Comment out.
15504 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15505 Fix sprintf call.
15506
15507 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15508 regexp.h change).
15509 (TERMINFO, LIBS_TERMCAP): Define.
15510
15511 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15512 (bcmp): Define conditional on HAVE_BCMP.
15513 (NO_SIOCTL_H): Don't define.
15514 (TIOCSIGSEND): Don't make conditional on IRIX6.
15515
15516 * s/sol2-5.h: Don't include strings.h.
15517 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15518
15519 * s/irix6-0.h (IRIX6): Don't define.
15520 (bcopy, bcmp, bzero): Don't undef.
15521
15522 * s/irix6-5.h: Don't include strings.h.
15523 (IRIX6): Don't define.
15524 (bcopy, bcmp, bzero): Don't undef.
15525
15526 * syntax.c (Fforward_comment): Doc fix.
15527
15528 2002-10-29 Kim F. Storm <storm@cua.dk>
15529
15530 * process.c (Fsignal_process): Allow PROCESS to be specified by
15531 name in addition to pid (as integer or string).
15532
15533 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15534
15535 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15536 environments.
15537
15538 2002-10-27 Kim F. Storm <storm@cua.dk>
15539
15540 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15541
15542 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15543
15544 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15545
15546 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15547
15548 2002-10-26 Richard M. Stallman <rms@gnu.org>
15549
15550 * editfns.c (Fformat): Detect invalid format letters for floats.
15551
15552 2002-10-25 Kenichi Handa <handa@m17n.org>
15553
15554 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15555 (x_set_title): Likewise.
15556
15557 2002-10-25 Juanma Barranquero <lektu@terra.es>
15558
15559 * macgui.h:
15560 * w32gui.h: Remove definition of XColor.
15561
15562 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15563
15564 2002-10-24 Kim F. Storm <storm@cua.dk>
15565
15566 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15567 Callers changed (supply dummy arg).
15568
15569 * lisp.h (get_window_cursor_type): Update prototype.
15570
15571 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15572 get_window_cursor_type to track system caret.
15573
15574 2002-10-24 Kim F. Storm <storm@cua.dk>
15575
15576 * process.c (Fformat_network_address): New function.
15577 (syms_of_process): Defsubr it.
15578 (list_processes_1): Use it to format :local/:remote address if
15579 service/host is not set; before Emacs would crash in that case.
15580 (Fmake_network_process): Don't use Ffind_operation_coding_system
15581 to setup coding system if host or service is not set.
15582
15583 2002-10-23 Juanma Barranquero <lektu@terra.es>
15584
15585 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15586
15587 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15588 COLORREF.
15589
15590 * macgui.h:
15591 * w32gui.h: Add definition of XColor.
15592
15593 * macfns.c:
15594 * w32fns.c:
15595 * xfaces.c: Remove definition of XColor.
15596
15597 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15598
15599 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15600
15601 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15602 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15603 window if it is dedicated.
15604 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15605 (Vspecial_display_function): Update docstring.
15606
15607 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15608 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15609 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15610
15611 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15612
15613 * casefiddle.c (casify_region): Don't treat a prefix char as part
15614 of a word when at the beginning.
15615
15616 2002-10-17 Juanma Barranquero <lektu@terra.es>
15617
15618 * lread.c (syms_of_lread): Fix typos.
15619
15620 2002-10-17 Dave Love <fx@gnu.org>
15621
15622 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15623
15624 2002-10-16 Richard M. Stallman <rms@gnu.org>
15625
15626 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15627
15628 2002-10-14 Juanma Barranquero <lektu@terra.es>
15629
15630 * w16select.c (syms_of_win16select): Fix docstring for
15631 `selection-coding-system'.
15632
15633 * w32select.c (syms_of_w32select): Likewise.
15634
15635 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15636
15637 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15638 a backslash-quoted char.
15639 (scan_lists, scan_sexps_forward): Pacify the compiler.
15640
15641 2002-10-13 Richard M. Stallman <rms@gnu.org>
15642
15643 * window.c (window_scroll): Set immediate_quit.
15644
15645 * print.c (print): When backquote form is the car of a list,
15646 output in old style. Use old_backquote_output to output all
15647 comma forms inside it in old style too.
15648
15649 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15650
15651 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15652
15653 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15654 batch mode).
15655
15656 * lread.c (Fload): Doc fix (load-suffixes).
15657
15658 2002-10-10 Steven Tamm <steventamm@mac.com>
15659
15660 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15661 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15662 Also switch the default to Qnil from Qt.
15663
15664 2002-10-08 Kenichi Handa <handa@m17n.org>
15665
15666 * coding.c (code_convert_region): When we need more GAP for
15667 conversion, pay attention to the case that coding->produced is not
15668 greater than coding->consumed.
15669
15670 2002-10-07 Richard M. Stallman <rms@gnu.org>
15671
15672 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15673
15674 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15675
15676 * macmenu.c (mac_menu_show): Add j to count menu items; match
15677 menu_item_selection to it to find selected item.
15678
15679 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15680
15681 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15682 cases. The correct fix is to pass ReparentNotify to Xt.
15683 The shell widget interprets ConfigureNotify differently depending
15684 on if it has been reparented or not.
15685
15686 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15687
15688 * editfns.c (Fformat_time_string): Doc fix.
15689
15690 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15691
15692 * fns.c (Flength): Doc fix.
15693
15694 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15695
15696 * keyboard.c (keyremap): New struct.
15697 (read_key_sequence): Use it: globally replace keytran_foo with
15698 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15699 keytran_next and fkey_next to just `next'.
15700
15701 2002-10-04 Steven Tamm <steventamm@mac.com>
15702
15703 * macterm.c (keycode_to_xkeysym_table): Change return to be
15704 treated like an X keysym.
15705
15706 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15707
15708 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15709 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15710 This is to also handle x/y changes that occur because of a resize.
15711
15712 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15713
15714 * frame.c (Vdelete_frame_functions): New variable.
15715 (syms_of_frame): Initialize and defvar it.
15716 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15717 it when frame's `tooltip' parameter is non-nil.
15718
15719 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15720
15721 * w32fns.c (x_create_tip_frame): Likewise.
15722
15723 * macfns.c (x_create_tip_frame): Likewise.
15724
15725 2002-09-30 Kenichi Handa <handa@m17n.org>
15726
15727 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15728 -1 before calling ccl_driver.
15729
15730 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15731 Only when it is non-nil, handle composition sequence.
15732 (setup_coding_system) <0>: Don't force composition handling.
15733
15734 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15735
15736 2002-09-29 Richard M. Stallman <rms@gnu.org>
15737
15738 * search.c (Freplace_match): Adjust match data for the substitution
15739 just made in the buffer.
15740
15741 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15742 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15743
15744 2002-09-27 Richard M. Stallman <rms@gnu.org>
15745
15746 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15747 (read_char): Use them. Do all exits thru the end of the function.
15748
15749 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15750
15751 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15752 is nil.
15753
15754 2002-09-26 Richard M. Stallman <rms@gnu.org>
15755
15756 * regex.h (__restrict_arr): Don't define if already defined.
15757
15758 * coding.c (run_pre_post_conversion_on_str):
15759 Save and restore Vdeactivate_mark.
15760
15761 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15762
15763 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15764
15765 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15766
15767 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15768 nonzero, try face's family at first. Otherwise try FAMILY at first.
15769 (choose_face_font): If C is a single byte char or latin-1, call
15770 try_font_list with PREFER_FACE_FAMILY 1.
15771
15772 2002-09-21 Richard M. Stallman <rms@gnu.org>
15773
15774 * window.c (select_window_1): Don't select frame.
15775 Set frame's selected window only when frame itself is selected.
15776 (Fselect_window): Doc fix.
15777
15778 2002-09-18 Kim F. Storm <storm@cua.dk>
15779
15780 * process.c (make-network-process): Doc fix (there is no
15781 network-server-log-function hook).
15782
15783 2002-09-18 Richard M. Stallman <rms@gnu.org>
15784
15785 * print.c (print): Clear out the unused parts of Vprint_number_table.
15786 (syms_of_print): Doc fix for `print-number-table'.
15787
15788 * unexelf.c (unexec): Undo previous change.
15789
15790 2002-09-17 Andreas Schwab <schwab@suse.de>
15791
15792 * m/alpha.h [LINUX]: Don't define DATA_START.
15793
15794 2002-09-16 Dave Love <fx@gnu.org>
15795
15796 * unexelf.c (unexec): Deal with .got, reinstating change from
15797 25-08-1999.
15798
15799 2002-09-13 Richard M. Stallman <rms@gnu.org>
15800
15801 * s/sol2-6.h (UNEXEC): Comment out definition.
15802
15803 * unexsol.c (unexec): Don't downcase first letter of error msg.
15804
15805 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15806
15807 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15808
15809 * unexsol.c: Include buffer.h, charset.h, coding.h.
15810
15811 2002-09-11 Richard M. Stallman <rms@gnu.org>
15812
15813 * unexsol.c: Don't use report_file_error; do it by hand
15814 using dlerror.
15815
15816 * process.c (wait_reading_process_input, both versions):
15817 Before calling turn_on_atimers, call stop_polling.
15818
15819 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15820
15821 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15822 we go to too_near_end, call clear_glyph_matrix.
15823 (redisplay_window): After make_cursor_line_fully_visible,
15824 call clear_glyph_matrix and bypass `goto done'.
15825
15826 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15827 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15828
15829 2002-09-10 Richard M. Stallman <rms@gnu.org>
15830
15831 * fileio.c (Fdo_auto_save): Catch error making directory.
15832 Only call push_message if we need to.
15833 At the same time, make an unwind-protect to pop it.
15834 Rename local message_p to old_message_p.
15835 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15836 (do_auto_save_unwind): Don't call pop_message.
15837
15838 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15839
15840 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15841
15842 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15843
15844 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15845
15846 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15847
15848 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15849 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15850 (re_match_2_internal): Be more careful with infinite loops.
15851
15852 2002-09-10 Kim F. Storm <storm@cua.dk>
15853
15854 * macros.c (end_kbd_macro): New function.
15855 (Fend_kbd_macro): Use it.
15856
15857 * macros.h (end_kbd_macro): Declare extern.
15858
15859 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15860 end and save it instead of discarding it.
15861
15862 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15863
15864 * s/sol2-6.h: Fix typo. Add comment.
15865
15866 2002-09-09 Richard M. Stallman <rms@gnu.org>
15867
15868 * regex.c (regnum_t): Use signed int, not unsigned int.
15869
15870 * s/sol2-6.h: New file.
15871
15872 * s/sol2-5.h (UNEXEC): Definition deleted.
15873
15874 2002-09-08 Kim F. Storm <storm@cua.dk>
15875
15876 * macros.c (executing_macro_index): Change type to EMACS_INT.
15877 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15878
15879 * macros.h (executing_macro_index): Change type to EMACS_INT.
15880
15881 2002-09-06 Richard M. Stallman <rms@gnu.org>
15882
15883 * casetab.c (set_case_table): Make canon table point to eqv table.
15884
15885 2002-09-06 Juanma Barranquero <lektu@terra.es>
15886
15887 * coding.c (syms_of_coding): Fix spacing.
15888
15889 * composite.c (Fcompose_region_internal)
15890 (Fcompose_string_internal): Likewise.
15891
15892 * data.c (Flsh): Likewise.
15893
15894 * fontset.c (Fset_fontset_font): Likewise.
15895
15896 * macfns.c (Fx_server_max_request_size): Likewise.
15897
15898 * w16select.c (syms_of_win16select): Likewise.
15899
15900 * w32select.c (syms_of_w32select): Likewise.
15901
15902 * xselect.c (syms_of_xselect): Likewise.
15903
15904 2002-09-05 Richard M. Stallman <rms@gnu.org>
15905
15906 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15907 call EXTEND_RANGE_TABLE and return a proper value.
15908 (set_image_of_range): Don't call set_image_of_range_1
15909 if no TRANSLATE or if range includes all of Latin-1.
15910 Only call it for the Latin-1 part of the range.
15911 For other cases, make two separate ranges,
15912 one for the original specified characters and one for
15913 their case-conversions.
15914
15915 2002-09-04 Richard M. Stallman <rms@gnu.org>
15916
15917 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15918
15919 * window.c (displayed_window_lines): Correct for one-off bug
15920 in HEIGHT on non-window displays.
15921
15922 * regex.c (set_image_of_range_1): New function.
15923 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15924 Return a value to indicate running out of memory.
15925 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15926 (extend_range_table_work_area): New subroutine.
15927 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15928 Different calling conventions, and used from set_image_of_range{,_1}.
15929 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15930
15931 2002-09-04 Juanma Barranquero <lektu@terra.es>
15932
15933 * makefile.w32-in: All dependencies updated.
15934
15935 2002-09-01 Richard M. Stallman <rms@gnu.org>
15936
15937 * unexsol.c: New file.
15938
15939 * xfns.c (Qbox): Declare external, don't define.
15940
15941 * xdisp.c (redisplay_window) <force-start case>:
15942 If point is on semi-visible last line, reposition
15943 it at previous line.
15944
15945 * alloc.c (display_malloc_warning): Use display-warning.
15946 (malloc_warning_1): Function deleted.
15947
15948 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15949
15950 * lread.c (read1): Handle #! by skipping the line.
15951
15952 2002-08-31 Richard M. Stallman <rms@gnu.org>
15953
15954 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15955 Don't include LDFLAGS.
15956 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15957
15958 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15959
15960 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15961 member of x_display_info unless we compile for some window system.
15962
15963 2002-08-31 Kim F. Storm <storm@cua.dk>
15964
15965 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15966 (get_window_cursor_type): Don't use them.
15967 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15968
15969 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15970
15971 * xdisp.c (get_next_display_element): Fix previous change.
15972
15973 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15974
15975 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15976 (expose_window): Use it to fix the display of overlapping
15977 rows (merge code from xterm.c).
15978
15979 * macfns.c (Qbox): Add extern declaration.
15980
15981 2002-08-30 Juanma Barranquero <lektu@terra.es>
15982
15983 * w32fns.c (Qbox): Make extern.
15984 (syms_of_w32fns): Remove initialization of Qbox.
15985
15986 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15987
15988 * xfns.c (Fx_open_connection): Fix error message.
15989
15990 2002-08-30 Kim F. Storm <storm@cua.dk>
15991
15992 The following changes consolidates the handling of the cursor
15993 type in xdisp.c, moving duplicate code and functionality from
15994 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15995
15996 * frame.h (enum text_cursor_kinds): Consolidated here.
15997 Added DEFAULT_CURSOR value.
15998 (struct frame) <desired_cursor, cursor_width>
15999 <blink_off_cursor, blink_off_cursor_width>: New fields.
16000 Consolidated from output_x, output_w32 and output_mac structs.
16001 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16002 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16003
16004 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16005 Variables consolidated here.
16006 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16007 (Vcursor_in_non_selected_windows): Renamed from
16008 cursor_in_non_selected_windows and changed to Lisp_Object.
16009 (syms_of_xdisp): Define and staticpro new and moved variables.
16010 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16011 consolidated here. Recognize Qhollow setting.
16012 (set_frame_cursor_types): New function to set frame cursor types
16013 based on the frame parameters.
16014 (get_window_cursor_type): New function to calculate new cursor
16015 type and width for the specified window. Based on duplicated
16016 code consolidated here.
16017 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16018 check buffer-local alternate-cursor-type and blink-cursor-alist
16019 before using built-in blink off methods.
16020
16021 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16022
16023 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16024 (get_specified_cursor_type, get_window_cursor_type)
16025 (set_frame_cursor_types): Added prototypes.
16026
16027 * macfns.c (x_specified_cursor_type): Removed.
16028 (x_set_cursor_type): Use set_frame_cursor_types.
16029 (Qbar, Qbox): Removed.
16030 (syms_of_macfns): Don't intern or staticpro them.
16031
16032 * macterm.c (x_specified_cursor_type): Remove prototype.
16033 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16034 (x_display_and_set_cursor): Use get_window_cursor_type.
16035 Remove unused local variables cursor_non_selected, active_cursor.
16036 Redraw cursor if hbar cursor width changes.
16037 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16038
16039 * macterm.h (enum text_cursor_kinds): Removed.
16040 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16041 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16042 (FRAME_DESIRED_CURSOR): Macro removed.
16043
16044 * w32fns.c (Vblink_cursor_alist): Removed.
16045 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16046 (syms_of_w32fns): Don't intern, staticpro, or define them.
16047 (x_specified_cursor_type): Removed.
16048 (x_set_cursor_type): Use set_frame_cursor_types.
16049
16050 * w32term.c (x_specified_cursor_type): Remove prototype.
16051 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16052 (x_display_and_set_cursor): Use get_window_cursor_type.
16053 Remove unused local variables cursor_off_state.
16054 Redraw cursor if hbar cursor width changes.
16055 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16056
16057 * w32term.h (enum text_cursor_kinds): Removed.
16058 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16059 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16060 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16061 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16062 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16063 w32_highlight_frame.
16064
16065 * xfns.c (Vblink_cursor_alist): Removed.
16066 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16067 (syms_of_xfns): Don't intern, staticpro, or define them.
16068 (x_specified_cursor_type): Removed.
16069 (x_set_cursor_type): Use set_frame_cursor_types.
16070
16071 * xterm.c (x_specified_cursor_type): Remove prototype.
16072 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16073 (x_display_and_set_cursor): Use get_window_cursor_type.
16074 Remove unused local variables cursor_off_state.
16075 Redraw cursor if hbar cursor width changes.
16076
16077 * xterm.h (enum text_cursor_kinds): Removed.
16078 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16079 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16080 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16081 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16082 (x_specified_cursor_type): Remove prototype.
16083
16084 2002-08-28 Richard M. Stallman <rms@gnu.org>
16085
16086 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16087 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16088 (Vblink_cursor_alist): New variable.
16089 (syms_of_w32fns): Initialize and defvar it.
16090 (x_specified_cursor_type): Recognize Qbox for filled box.
16091 Exceptions are hollow boxes.
16092 (Qbox, Qhollow): New variables.
16093 (syms_of_w32fns): Initialize and staticpro them.
16094
16095 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16096 New macros.
16097 (struct w32_output): New fields blink_off_cursor,
16098 blink_off_cursor_width.
16099 (FRAME_CURSOR_WIDTH): New macro.
16100
16101 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16102 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16103
16104 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16105 for bar cursor.
16106
16107 * w32term.c (expose_overlaps): New function.
16108 (expose_window): Use it to fix the display of overlapping rows.
16109
16110 2002-08-28 Simon Josefsson <jas@extundo.com>
16111
16112 * xfns.c (Fx_open_connection): Improve help when X connection
16113 fails, xhost is insecure and xauth is better.
16114
16115 2002-08-28 Juanma Barranquero <lektu@terra.es>
16116
16117 * makefile.w32-in: Add missing dependencies on w32term.h and
16118 composite.h.
16119
16120 * emacs.c (USAGE1): Add missing newline.
16121
16122 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16123
16124 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16125
16126 2002-08-27 Richard M. Stallman <rms@gnu.org>
16127
16128 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16129 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16130 (Vblink_cursor_alist): New variable.
16131 (syms_of_xfns): Initialize and defvar it.
16132 (x_specified_cursor_type): Recognize Qbox for filled box.
16133 Exceptions are hollow boxes.
16134 (Qbox, Qhollow): New variables.
16135 (syms_of_xfns): Initialize and staticpro them.
16136
16137 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16138 New macros.
16139 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16140
16141 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16142 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16143
16144 * emacs.c (main): Handle --script.
16145 (USAGE1): Mention --script.
16146 (standard_args): Define sort order for --script.
16147
16148 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16149
16150 * xdisp.c (redisplay_updating_p): Variable removed.
16151 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16152 New variables.
16153 (init_iterator): Don't free realized faces if
16154 inhibit_free_realized_faces is set.
16155 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16156 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16157 initialize Qinhibit_free_realized_faces.
16158
16159 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16160 when iterator is adding glyphs to a glyph matrix.
16161
16162 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16163
16164 * xdisp.c (get_next_display_element): In unibyte case, don't use
16165 octal form for such eight-bit characters that can be converted to
16166 multibyte char.
16167
16168 2002-08-26 Kim F. Storm <storm@cua.dk>
16169
16170 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16171 foreground and background colors. From Joe Buehler.
16172
16173 2002-08-26 Miles Bader <miles@gnu.org>
16174
16175 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16176
16177 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16178
16179 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16180 defined instead of MAC_OSX.
16181
16182 * s/darwin.h (select): Define select to sys_select only if
16183 HAVE_CARBON is defined.
16184 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16185 (DONT_REOPEN_PTY): #def it.
16186
16187 * macterm.c (XTread_socket): Remove code to call
16188 SendEventToEventTarget for keys with command modifiers when
16189 mac_command_key_is_meta is nil.
16190
16191 2002-08-24 Andreas Schwab <schwab@suse.de>
16192
16193 * eval.c (Fdefvar): Fix last change.
16194
16195 2002-08-23 Richard M. Stallman <rms@gnu.org>
16196
16197 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16198 Record variables in load history as (defvar . VAR).
16199 (Fdefvar): Don't record in load history if no initial value.
16200 (Qdefvar): New variable.
16201 (syms_of_eval): Init and staticpro it.
16202
16203 * lread.c (syms_of_lread): Doc fix.
16204 (build_load_history): Use Fmember to see if a definition
16205 is already in the Vload_history element.
16206
16207 * process.c (Fstart_process): Remove /: from program name.
16208
16209 * emacs.c (decode_env_path): Don't add /: if file name handler
16210 has a `safe-magic' property.
16211
16212 * callproc.c (Fcall_process): Remove /: from program name.
16213
16214 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16215
16216 * regex.c (PATFETCH): Remove the translating fetch.
16217 (PATFETCH_RAW): Rename to PATFETCH.
16218 (set_image_of_range): New fun.
16219 (SET_RANGE_TABLE_WORK_AREA): Use it.
16220 (regex_compile): Don't translate the pattern chars so eagerly.
16221 Only do it when inserting an `exactn' bytecode or when handling
16222 a char-range.
16223 (mutually_exclusive_p): Avoid empty statement.
16224
16225 2002-08-22 Kim F. Storm <storm@cua.dk>
16226
16227 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16228 end up on a partially visible line; this reverts a specific part
16229 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16230 display error which has been reported several times now.
16231 However it introduces the problem that changes was supposed to fix.
16232 See my comments in the source if you want to debug this further.
16233
16234 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16235
16236 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16237
16238 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16239
16240 * msdos.c (croak): Add `void' to definition.
16241
16242 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16243 Don't define them, they are defined in msdos.c.
16244
16245 * mem-limits.h [MSDOS]: Declare etext.
16246
16247 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16248 `const' since CORRECT_DIR_SEPS modifies its target.
16249
16250 2002-08-19 Kim F. Storm <storm@cua.dk>
16251
16252 * keyboard.c (Fclear_this_command_keys): Add optional arg
16253 KEEP-RECORD to avoid clearing lossage when we just want to clear
16254 the current key sequence (kmacro needs this).
16255
16256 2002-08-19 Kenichi Handa <handa@localhost>
16257
16258 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16259
16260 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16261 cons, return Qnil.
16262
16263 2002-08-17 Richard M. Stallman <rms@gnu.org>
16264
16265 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16266
16267 * sysdep.c [!VMS]: Include sys/files.h.
16268
16269 * editfns.c (save_restriction_restore): Defend from unchained marker.
16270
16271 * buffer.c (overlays_at): Handle extending vec uniformly.
16272 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16273
16274 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16275
16276 * mac.c (init_mac_osx_environment): New function.
16277
16278 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16279
16280 2002-08-14 Kim F. Storm <storm@cua.dk>
16281
16282 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16283 executing macro before appending to it (when used from Lisp).
16284 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16285 which is called prior to each iteration of macro (for kmacro.el).
16286 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16287
16288 * lisp.h (Fexecute_kbd_macro): Update prototype.
16289
16290 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16291
16292 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16293
16294 * xselect.c (QUTF8_STRING): New variable.
16295 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16296 (x_atom_to_symbol): Likewise.
16297 (x_get_local_selection): New argument local_request. If it is
16298 nonzero, call handler_fn with the second arg nil.
16299 (x_handle_selection_request): Call x_get_local_selection with
16300 local_request 0.
16301 (lisp_data_to_selection_data): Don't encode the string here.
16302 (Fx_get_selection_internal): Call x_get_local_selection with
16303 local_request 1.
16304 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16305
16306 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16307
16308 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16309
16310 2002-08-13 Richard M. Stallman <rms@gnu.org>
16311
16312 * minibuf.c (Fminibufferp): New function.
16313 (syms_of_minibuf): Defsubr it.
16314 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16315
16316 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16317
16318 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16319
16320 2002-08-12 Richard M. Stallman <rms@gnu.org>
16321
16322 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16323 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16324 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16325 already.
16326
16327 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16328
16329 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16330
16331 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16332 (Vmac_pass_command_to_system): New variable.
16333 (Vmac_pass_control_to_system): New variable.
16334 (do_mouse_moved): Check wp with is_emacs_window.
16335 (XTread_socket): Check window_ptr with is_emacs_window.
16336 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16337 events back to Mac Toolbox for processing, depending on values of
16338 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16339 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16340 Vmac_pass_control_to_system.
16341
16342 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16343
16344 * coding.c (unencodable_char_position): New function.
16345 (Funencodable_char_position): New function.
16346 (syms_of_coding): Defsubr Funencodable_char_position.
16347
16348 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16349
16350 * mac.c (sys_select) [MAC_OSX]: New function.
16351
16352 * macterm.c (MakeMeTheFrontProcess): New function.
16353 (mac_initialize): Call MakeMeTheFrontProcess.
16354
16355 * s/darwin.h: Define select to sys_select.
16356
16357 2002-08-09 Richard M. Stallman <rms@gnu.org>
16358
16359 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16360
16361 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16362
16363 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16364 end of the buffer.
16365
16366 2002-08-08 Ken Raeburn <raeburn@gnu.org>
16367
16368 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16369
16370 * puresize.h (BASE_PURESIZE): Increase to 910000.
16371
16372 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16373
16374 * coding.c (Ffind_operation_coding_system): For write-region, if
16375 VISIT is a filename, make it the target.
16376
16377 2002-08-07 Richard M. Stallman <rms@gnu.org>
16378
16379 * alloc.c (mark_object): Detect long lists for debugging.
16380 (mark_object_loop_halt): New variable.
16381
16382 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16383
16384 * data.c (Fmake_variable_frame_local): Doc fix.
16385
16386 2002-08-01 David Ponce <david@dponce.com>
16387
16388 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16389 (malloc_widget_value, free_widget_value)
16390 (w32_free_submenu_strings): Use them.
16391
16392 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16393 (push_menu_pane, push_menu_item, single_keymap_panes)
16394 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16395 (single_submenu, set_frame_menubar)
16396 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16397
16398 (Fx_popup_menu): Don't show pop up menu until preceding one is
16399 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16400
16401 * w32menu.c: Changes adapted from xmenu.c
16402 (set_frame_menubar): First parse all submenus,
16403 then make widget_value trees from them.
16404 Don't allocate any widget_value objects
16405 until we are done with the parsing.
16406 (parse_single_submenu): New function.
16407 (digest_single_submenu): New function.
16408 (single_submenu): Function deleted, replaced by those two.
16409
16410 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16411
16412 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16413 returns a valid window pointer before proceeding for keyDown and
16414 autoKey events.
16415
16416 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16417
16418 * macterm.c (USE_CARBON_EVENTS): New macro.
16419 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16420 (x_iconify_frame): Call CollapseWindow.
16421 (Vmac_reverse_ctrl_meta): New variable.
16422 (Vmac_wheel_button_is_mouse_2): New variable.
16423 (init_mac_drag_n_drop): New function.
16424 (mac_do_receive_drag): New function.
16425 (mac_handle_service_event): New function.
16426 (init_service_handler): New function.
16427 (mac_to_emacs_modifiers): New function.
16428 (mac_event_to_emacs_modifiers): New function.
16429 (mac_get_mouse_btn): New function.
16430 (mac_convert_event_ref): New function.
16431 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16432 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16433 mac_get_mouse_btn.
16434 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16435
16436 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16437 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16438 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16439 TOOL_BAR_EVENT for MAC_OS as well.
16440 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16441 as for WINDOWS_NT.
16442 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16443
16444 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16445
16446 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16447
16448 * xdisp.c (forward_to_next_line_start): Fix a condition that
16449 lead to a newline being skipped.
16450
16451 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16452
16453 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16454
16455 2002-08-01 Richard M. Stallman <rms@gnu.org>
16456
16457 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16458
16459 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16460
16461 * macfns.c: #undef init_process before #define-ing it.
16462
16463 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16464 HAVE_CARBON is defined.
16465
16466 2002-07-31 Richard M. Stallman <rms@gnu.org>
16467
16468 * xmenu.c (set_frame_menubar): First parse all submenus,
16469 then make widget_value trees from them.
16470 Don't allocate any widget_value objects
16471 until we are done with the parsing.
16472 (parse_single_submenu): New function.
16473 (digest_single_submenu): New function.
16474 (single_submenu): Function deleted, replaced by those two.
16475
16476 2002-07-30 Juanma Barranquero <lektu@terra.es>
16477
16478 * w32proc.c (syms_of_ntproc): Fix docstring of
16479 `w32-get-true-file-attributes'.
16480
16481 2002-07-28 Richard M. Stallman <rms@gnu.org>
16482
16483 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16484 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16485
16486 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16487
16488 * keyboard.c (make_lispy_event):
16489 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16490 Explicitly clear up_modifier in event->modifiers.
16491
16492 2002-07-27 Richard M. Stallman <rms@gnu.org>
16493
16494 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16495
16496 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16497 for bar cursor.
16498
16499 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16500
16501 * coding.c (detect_coding_iso2022): While checking a byte sequence
16502 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16503 it in the normal loop.
16504
16505 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16506
16507 * xterm.c (expose_overlaps): New function.
16508 (expose_window): Use it to fix the display of overlapping rows.
16509
16510 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16511
16512 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16513
16514 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16515 since it only depends on XUINT.
16516
16517 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16518 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16519 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16520 Macros deleted.
16521
16522 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16523 its value over other approaches.
16524 * sysdep.c (start_of_data): Don't define the function if a macro
16525 form has been defined.
16526
16527 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16528
16529 * xdisp.c (redisplay_updating_p): New variable.
16530 (init_iterator): Don't free realized faces when
16531 redisplay_updating_p is set.
16532 (redisplay_internal): Set redisplay_updating_p while updating
16533 the display.
16534
16535 2002-07-23 Richard M. Stallman <rms@gnu.org>
16536
16537 * editfns.c (Fmessage): Treat "" like nil.
16538
16539 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16540
16541 * xdisp.c (face_before_or_after_it_pos):
16542 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16543
16544 2002-07-22 Juanma Barranquero <lektu@terra.es>
16545
16546 * callproc.c (init_callproc) [DOS_NT]:
16547 Initialize Vshared_game_score_directory to nil.
16548 (syms_of_callproc) [DOS_NT]: Likewise.
16549
16550 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16551
16552 * xdisp.c (display_line): Replace an abort with xassert.
16553
16554 2002-07-21 Richard M. Stallman <rms@gnu.org>
16555
16556 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16557 and END_UNCHANGED when setting buffer_unchanged_p.
16558 Use current_matrix_up_to_date_p to decide whether to use
16559 try_cursor_movement.
16560
16561 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16562
16563 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16564
16565 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16566 Set to nil if dir does not exist.
16567 (syms_of_callproc): Init unconditionally and simply.
16568
16569 * buffer.c (Fbuffer_list): Doc fix.
16570
16571 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16572
16573 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16574
16575 * buffer.c (mmap_realloc): When shrinking, make sure number of
16576 pages to unmap is rounded towards zero.
16577
16578 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16579 (XSETINT): Deleted.
16580
16581 * m/att3b.h (XINT): Don't define.
16582 (VALBITS, VALMASK, XTYPE): Deleted.
16583 (DATA_SEG_BITS): Define.
16584 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16585 ARRAY_MARK_FLAG): Deleted.
16586 (DATA_SEG_BITS): Define.
16587 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16588 (DATA_SEG_BITS): Define.
16589
16590 2002-07-20 Richard M. Stallman <rms@gnu.org>
16591
16592 * print.c (print_error_message): New args CONTEXT and CALLER.
16593 Calls changed.
16594
16595 * lisp.h (print_error_message): Declare new args.
16596
16597 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16598 and CONTEXT to print_error_message, don't print them here.
16599 For a Quit, don't use Vsignaling_function.
16600 Call message_log_maybe_newline.
16601
16602 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16603
16604 2002-07-20 Kim F. Storm <storm@cua.dk>
16605
16606 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16607
16608 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16609
16610 * bytecode.c (struct byte_stack): Pointers into byte string now
16611 point to const.
16612 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16613 const.
16614 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16615 * coding.c (encode_eol, detect_coding, detect_eol):
16616 (decode_coding, encode_coding, detect_coding_system):
16617 Source strings now treated as const.
16618 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16619 modify Lisp string contents.
16620 * coding.h (decode_coding, encode_coding, detect_coding,
16621 detect_eol): Declarations updated.
16622 * composite.c (compose_chars_in_text): Treat Lisp string contents
16623 as const.
16624 * dispnew.c (safe_bcopy): Source pointer now points to const.
16625 * lisp.h (STRING_COPYIN): New macro.
16626 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16627 (internal_with_output_to_temp_buffer): Declarations updated.
16628 * print.c (temp_output_buffer_setup):
16629 (internal_with_output_to_temp_buffer): Buffer name argument is now
16630 pointer to const.
16631 * sound.c (struct sound_device): Function pointer field "write"
16632 buffer argument now points to const.
16633 (vox_write): Buffer argument points to const.
16634 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16635 contents as const.
16636 * sysdep.c (emacs_write): Buffer pointer now const.
16637 * term.c (encode_terminal_code): Buffer pointer now const.
16638 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16639 (x_face_list_fonts, x_update_menu_appearance):
16640 (hash_string_case_insensitive): Treat Lisp string contents as const.
16641
16642 2002-07-19 Juanma Barranquero <lektu@terra.es>
16643
16644 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16645
16646 * fileio.c (syms_of_fileio): Likewise.
16647 (Ffile_name_as_directory): Fix argument name in docstring.
16648 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16649
16650 2002-07-18 Richard M. Stallman <rms@gnu.org>
16651
16652 * data.c (Fdefalias): Doc fix.
16653
16654 2002-07-17 Dave Love <fx@gnu.org>
16655
16656 * intervals.h (text_property_stickiness): Use P_.
16657
16658 * ccl.c: Remove `emacs' conditionals.
16659 (ccl_backtrace_table): Fix size spec.
16660 (ccl_driver): Fix type errors.
16661
16662 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16663
16664 * alloc.c (xstrdup, make_string, make_unibyte_string)
16665 (make_multibyte_string, build_string): String pointer args now
16666 point to const.
16667 * charset.c (find_charset_in_text, c_string_width):
16668 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16669 * fileio.c (report_file_error):
16670 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16671 (count_combining_before, count_combining_after, insert_1_both):
16672 (insert, insert_and_inherit, insert_string):
16673 (insert_before_markers, insert_before_markers_and_inherit):
16674 * lread.c (intern, oblookup, hash_string):
16675 * minibuf.c (temp_echo_area_glyphs):
16676 * search.c (fast_c_string_match_ignore_case):
16677 * sysdep.c (emacs_open, set_file_times):
16678 * xfaces.c (xstricmp):
16679 * xdisp.c (store_frame_title, string_char_and_length):
16680 (message_dolog, message2, message2_nolog, set_message): Likewise.
16681 (set_message_1): Cast message string argument to const pointer.
16682 * editfns.c (general_insert_function): Insertion function now
16683 takes pointer to const for input data.
16684 * charset.h (find_charset_in_text, c_string_width):
16685 (parse_str_as_multibyte): Declarations updated.
16686 * dispextern.h (xstricmp): Declaration updated.
16687 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16688 (count_size_as_multibyte, count_combining_before):
16689 (count_combining_after, insert_1, insert_1_both, message_dolog):
16690 (insert, insert_and_inherit, insert_before_markers)
16691 (insert_before_markers_and_inherit, set_message, message2):
16692 (message2_dolog, build_string, make_string, make_unibyte_string):
16693 (make_multibyte_string, intern, oblookup, report_file_error):
16694 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16695 (emacs_open, xstrdup): Declarations updated.
16696 * systime.h (set_file_times): Declaration updated.
16697
16698 * charset.c (find_charset_in_text, lisp_string_width): Use const
16699 for pointer to lisp string data.
16700 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16701 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16702 * coding.c (Ffind_coding_systems_region_interval):
16703 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16704 (Fmake_directory_internal, Fdelete_directory):
16705 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16706 * fontset.c (font_family_registry, fs_query_fontset):
16707 (list_fontsets):
16708 * frame.c (Fframe_parameter):
16709 * keyboard.c (cmd_error_internal):
16710 * keymap.c (Fdescribe_buffer_bindings):
16711 * lread.c (complete_filename_p, openp):
16712 * minibuf.c (Fminibuffer_complete_word):
16713 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16714 (face_before_or_after_it_pos, next_element_from_string):
16715 (get_overlay_arrow_glyph_row, display_mode_element):
16716 (decode_mode_spec_coding):
16717 * xterm.c (same_x_server): Likewise.
16718
16719 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16720 settings of non-existent fields.
16721
16722 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16723 copy a lisp value.
16724
16725 * lread.c (Fintern_soft): Use string macros instead of
16726 Lisp_String fields.
16727 * keyboard.c (echo_char, parse_modifiers_uncached):
16728 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16729 * textprop.c (validate_interval_range, interval_of): Likewise.
16730
16731 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16732
16733 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16734 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16735 XSTRING()->size_byte.
16736
16737 * lisp.h (SDATA, SREF): Produce rvalue.
16738 (SSET): New macro.
16739 * alloc.c (make_event_array): Use SSET for storing into a string.
16740 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16741 a string.
16742 * casefiddle.c (casify_object): Use SSET.
16743 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16744 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16745 address of string contents.
16746 * data.c (Faref): Use SDATA.
16747 (Faset): Use SDATA, SSET.
16748 * dired.c (directory_files_internal): Use SSET.
16749 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16750 (Fread_file_name): Use SREF, SSET.
16751 * fns.c (concat): Use SSET.
16752 (concat, Fdelete): Use SDATA.
16753 * insdel.c (insert_from_string_1): Use SDATA.
16754 * keyboard.c (Fevent_convert_list): Use SREF.
16755 * lread.c (Fload): Use SDATA, SSET.
16756 * macfns.c (validate_x_resource_name): Use SSET.
16757 * process.c (status_message): Use SSET.
16758 * search.c (wordify): Use SDATA.
16759 (Freplace_match): Use SREF.
16760 * w32fns.c (validate_x_resource_name): Use SSET.
16761 * xfns.c (validate_x_resource_name): Use SSET.
16762 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16763
16764 2002-07-16 Richard M. Stallman <rms@gnu.org>
16765
16766 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16767
16768 * xdisp.c (reconsider_clip_changes):
16769 Don't test prevent_redisplay_optimizations_p.
16770 (redisplay_internal): Test prevent_redisplay_optimizations_p
16771 along with clip_changed in some cases.
16772 (try_window_id): Likewise.
16773 (redisplay_window): New local var buffer_unchanged_p.
16774
16775 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16776
16777 * process.c (create_process): Test USG_SUBTTY_WORKS.
16778 (process_send_signal): Clean up handling of GID.
16779 Detect errors in ioctls meant to set GID.
16780
16781 * window.c (temp_output_buffer_show):
16782 Don't set prevent_redisplay_optimizations_p.
16783
16784 2002-07-15 Juanma Barranquero <lektu@terra.es>
16785
16786 * eval.c (Fdefvaralias): Add docstring argument.
16787
16788 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16789
16790 * lisp.h (STRING_INTERVALS): Produce rvalue.
16791 (STRING_SET_INTERVALS): New macro.
16792 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16793 * fns.c (Fstring_as_multibyte): Likewise.
16794 * intervals.c (balance_possible_root_interval, delete_interval)
16795 (create_root_interval, copy_intervals_to_string): Likewise.
16796 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16797 instead of 0.
16798
16799 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16800
16801 * lisp.h (STRING_SET_CHARS): New macro.
16802 (SCHARS, SBYTES): Produce rvalues.
16803 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16804 * fns.c (concat): Likewise.
16805 * lread.c (read_vector): Likewise.
16806
16807 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16808 (STRING_SET_UNIBYTE): New macro.
16809 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16810 length of -1) changed to use STRING_SET_UNIBYTE.
16811 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16812 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16813 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16814 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16815 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16816 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16817 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16818 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16819 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16820 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16821 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16822 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16823 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16824 unchanged for now.
16825
16826 2002-07-13 Kim F. Storm <storm@cua.dk>
16827
16828 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16829
16830 2002-07-12 Richard M. Stallman <rms@gnu.org>
16831
16832 * fileio.c (Fwrite_region): Doc fix.
16833
16834 * print.c (print_error_message): Don't handle Vsignaling_function here.
16835
16836 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16837 (command_loop_1): Avoid certain actions after memory-full error.
16838
16839 * eval.c (Fsignal): Don't call cancel_hourglass.
16840 For a memory-full error, don't call Vsignal_hook_function
16841 and don't set Vsignaling_function.
16842
16843 * process.c (process_send_signal): Add abort call.
16844
16845 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16846
16847 * keymap.c (Fkey_binding): Fix typo.
16848
16849 2002-07-11 Richard M. Stallman <rms@gnu.org>
16850
16851 * alloc.c (Vmemory_full): New variable.
16852 (Vmemory_signal_data): Rename from memory_signal_data.
16853 Uses changed.
16854 (syms_of_alloc): Defvar them.
16855 (memory_full, buffer_memory_full): Set Vmemory_full.
16856
16857 * lisp.h (Vmemory_full): Add declaration.
16858 (current_column, indented_beyond_p): Change declaration.
16859
16860 * indent.c (last_known_column): Declare as double, not float.
16861 (current_column, current_column_1, string_display_width)
16862 (position_indentation): Return `double'.
16863 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16864
16865 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16866 (back_to_previous_visible_line_start)
16867 (reseat_at_next_visible_line_start, next_element_from_buffer):
16868 Use `double', not `float', when calling indented_beyond_p.
16869
16870 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16871
16872 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16873
16874 2002-07-11 Juanma Barranquero <lektu@terra.es>
16875
16876 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16877 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16878 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16879 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16880 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16881 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16882
16883 2002-07-10 Juanma Barranquero <lektu@terra.es>
16884
16885 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16886 All callers changed.
16887
16888 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16889
16890 * data.c (Fdefalias): Add an optional `docstring' argument.
16891 (set_internal, Fsetq_default): Use XCAR/XCDR.
16892
16893 * composite.c (HASH_VALUE, HASH_KEY):
16894 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16895
16896 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16897
16898 * callproc.c (Fcall_process): Fix previous change.
16899
16900 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16901
16902 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16903 Add support for hash-tables.
16904 (Ftry_completion): Return t even if the string appears multiple times.
16905
16906 * fns.c (Fnconc): Use XCDR.
16907 (Fprovide): Use CONSP and XCDR.
16908 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16909 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16910 (Fmake_hash_table): Accept `:size nil'.
16911 (Fmakehash): Delete: moved to subr.el.
16912 (syms_of_fns): Don't defsubr makehash.
16913
16914 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16915 (HASH_TABLE_SIZE): Move from fns.c.
16916
16917 2002-07-07 Richard M. Stallman <rms@gnu.org>
16918
16919 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16920 Instead just return 0 when there is something to be done.
16921 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16922 retry scrolling as if cursor were off the bottom.
16923 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16924 return CURSOR_MOVEMENT_MUST_SCROLL.
16925 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16926 go to try_to_scroll.
16927
16928 * buffer.c (Fbuffer_local_value): Store current value into its binding
16929 so we get the up-to-date value for the binding that is loaded.
16930
16931 * eval.c (Fdefmacro): Doc fix.
16932
16933 2002-07-05 Dave Love <fx@gnu.org>
16934
16935 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16936 correctly.
16937
16938 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16939 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16940 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16941 CCL_LookupCharConstTbl.
16942 (syms_of_ccl): Defvar translation-hash-table-vector.
16943
16944 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16945
16946 * xdisp.c: Remove unused variable `face'.
16947
16948 2002-07-04 Juanma Barranquero <lektu@terra.es>
16949
16950 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16951 obsolescence information.
16952
16953 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16954
16955 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16956 pattern. Search cache first.
16957 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16958 for Japanese font.
16959 (XLoadQueryFont): Use it.
16960
16961 2002-07-02 Richard M. Stallman <rms@gnu.org>
16962
16963 * keymap.c (Fdefine_key): Doc fix.
16964
16965 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16966
16967 2002-07-02 Juanma Barranquero <lektu@terra.es>
16968
16969 * keymap.c (syms_of_keymap): Fix typo.
16970
16971 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16972
16973 * s/darwin.h: Define POSIX_SIGNALS.
16974
16975 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16976 and FSRefMakePath to convert FSSpec returned with Apple Event to
16977 Posix pathname.
16978 (mac_initialize) [TARGET_API_MAC_CARBON]:
16979 Call init_required_apple_events and disable the `Quit' menu item
16980 provided automatically by the Carbon Toolbox.
16981
16982 2002-07-01 Dave Love <fx@gnu.org>
16983
16984 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16985 for K&R.
16986
16987 * xterm.c: Fix prototype for K&R.
16988
16989 * term.c (costs_set): Declare static, non-initialized for pcc.
16990
16991 2002-07-01 Richard M. Stallman <rms@gnu.org>
16992
16993 * keyboard.c (timer_last_idleness_start_time): New variable.
16994 (timer_start_idle): Set that.
16995 (read_key_sequence): Use that to reset timer_idleness_start_time
16996 to previous value.
16997
16998 * window.c (Frecenter): With arg, set optional_new_start.
16999
17000 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17001
17002 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17003 buffer for completion.
17004
17005 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17006
17007 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17008
17009 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17010
17011 * keyboard.c (readable_filtered_events): New function that filters
17012 FOCUS_IN_EVENT depending on parameter.
17013 (readable_events): Calls readable_filtered_events, not filtering
17014 FOCUS_IN_EVENT.
17015 (get_filtered_input_pending): New function, filtering parameter passed
17016 to readable_filtered_events.
17017 (get_input_pending): Calls get_filtered_input_pending, not filtering
17018 FOCUS_IN_EVENT.
17019 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17020 FOCUS_IN_EVENT.
17021
17022 * xterm.h (struct x_output): Add focus_state.
17023
17024 * xterm.c (x_focus_changed): New function.
17025 (x_detect_focus_change): New function.
17026 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17027 EnterNotify and LeaveNotify to track X focus changes.
17028
17029 2002-06-28 Andreas Schwab <schwab@suse.de>
17030
17031 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17032
17033 2002-06-27 Kim F. Storm <storm@cua.dk>
17034
17035 * xdisp.c (mode_line_string_list, mode_line_string_face)
17036 (mode_line_string_face_prop): New variables.
17037 (store_mode_line_string): New function.
17038 (display_mode_element): Use store_mode_line_string to
17039 add mode-line string elements to mode_line_string_list
17040 when mode_line_string_list is non-nil.
17041 (Fformat_mode_line): Now returns propertized string by
17042 default. New arg NO-PROPS to ignore properties.
17043 (decode_mode_spec): Only add two dashes for %- in propertized
17044 mode-line string.
17045 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17046
17047 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17048
17049 * minibuf.c (minibuffer_completion_contents): Add return type.
17050
17051 2002-06-27 Juanma Barranquero <lektu@terra.es>
17052
17053 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17054
17055 2002-06-26 Juanma Barranquero <lektu@terra.es>
17056
17057 * fileio.c (read_file_name_cleanup): Add missing return.
17058
17059 2002-06-26 Richard M. Stallman <rms@gnu.org>
17060
17061 * window.c (Frecenter): Don't set force_start flag.
17062
17063 * minibuf.c (do_completion, Fminibuffer_complete_word)
17064 (Fminibuffer_completion_help): Complete just the text before point.
17065 (minibuffer_completion_contents): New function.
17066
17067 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17068
17069 * frame.c (frames_bury_buffer): Function deleted.
17070
17071 2002-06-25 Miles Bader <miles@gnu.org>
17072
17073 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17074 the end of callint_message, allow for a terminating '\0'.
17075
17076 2002-06-24 Juanma Barranquero <lektu@terra.es>
17077
17078 * w32select.c: Include composite.h.
17079
17080 * w16select.c: Likewise.
17081
17082 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17083
17084 * callproc.c (Fcall_process): If code detection is necessary,
17085 call detect_coding directly here.
17086
17087 * coding.c (detect_eol): Preserve coding->cmp_data.
17088
17089 * w16select.c (Fw16_get_clipboard_data):
17090 * w32fns.c (w32_to_x_font):
17091 * w32select.c (Fw32_get_clipboard_data):
17092 * xselect.c (selection_data_to_lisp_data):
17093 * xterm.c (XTread_socket): Disable composition handling.
17094
17095 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17096
17097 * print.c (temp_output_buffer_setup): Kill all local variables.
17098
17099 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17100
17101 * lread.c (Fread): Remove redundant and imprecise declaration.
17102
17103 * xfns.c (check_x_display_info): Use check_x_frame.
17104
17105 * .gdbinit (xprintsym): Use the new `xname' field.
17106 (xsymbol): Use it.
17107
17108 2002-06-22 Jason Rumney <jasonr@gnu.org>
17109
17110 * w32fns.c (file_dialog_callback): New function.
17111 (Fx_file_dialog): Allow selecting directories as well as files.
17112
17113 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17114
17115 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17116 OpenBSD. Add support for mipseb-*-netbsd* machines.
17117
17118 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17119
17120 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17121 black and white before scrolling. Restore frame background and
17122 foreground color after scrolling.
17123 (do_window_update): Call XClearWindow before calling expose_frame.
17124 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17125 FRAME_FOREGROUND_PIXEL of frame.
17126
17127 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17128 test Mac command key as <ALT> key.
17129
17130 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17131
17132 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17133
17134 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17135 Lookup keys in function-key-map immediately so that key-translation-map
17136 can be applied earlier.
17137 Remove function_key_possible and key_translation_possible, replaced
17138 by checking `keytran_start < t'.
17139
17140 * .gdbinit (xsymbol): Use the new `xname' field.
17141
17142 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17143
17144 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17145 test Mac command key as <ALT> key.
17146
17147 * mac.c (do_applescript): Call initialize_applescript if necessary
17148 when first called. Dispose of result_desc only when there is no error.
17149 (Fdo_applescript): Use %d format specifier instead of %ld.
17150
17151 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17152
17153 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17154 of FrontWindow for cases keyDown and autoKey.
17155
17156 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17157 Vdefault_fontset to Monaco with mac-roman coding.
17158
17159 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17160 init_process before and after inclusion of Carbon/Carbon.h, resp.
17161
17162 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17163 cursor_gc.
17164 (add_font_name_table_entry): New function.
17165 (init_font_name_table): Use add_font_name_table_entry; add italic,
17166 bold, and bold-italic entries for truetype fonts.
17167
17168 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17169 for Mac too.
17170 (try_font_list) [MAC_OS]: If no font matches given registry, try
17171 fonts with any registry matching face_family.
17172 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17173
17174 * s/darwin.h: If autoconf detects the Ncurses library, define
17175 LIBS_TERMCAP to -lncurses to use it.
17176
17177 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17178
17179 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17180
17181 2002-06-15 Richard M. Stallman <rms@gnu.org>
17182
17183 * window.c (Fset_window_configuration): Explicitly preserve
17184 the point value that new_current_buffer had at the start.
17185
17186 2002-06-14 Juanma Barranquero <lektu@terra.es>
17187
17188 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17189 Fix typos.
17190
17191 2002-06-14 Kim F. Storm <storm@cua.dk>
17192
17193 * insdel.c (insert_1_both, insert_from_string_1)
17194 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17195 insert happened in the end_unchanged region. Otherwise, the
17196 redisplay may be confused and duplicate the last line in the
17197 buffer [seen after save-buffer when require-final-newline==t].
17198
17199 2002-06-13 Jason Rumney <jasonr@gnu.org>
17200
17201 * w32.c (init_environment): Remove EMACSLOCKDIR.
17202 (stat): Swap _S_IFDIR and _S_IFREG.
17203
17204 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17205
17206 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17207 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17208 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17209 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17210 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17211 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17212 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17213 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17214 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17215 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17216 SELECTION_REQUEST_EVENT, selection_clear_event to
17217 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17218 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17219 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17220 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17221 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17222 no_event to NO_EVENT.
17223
17224 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17225
17226 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17227
17228 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17229
17230 * intervals.c (textget): Don't forget to `return'.
17231 (lookup_char_property): Use XCAR/XCDR.
17232
17233 2002-06-12 Juanma Barranquero <lektu@terra.es>
17234
17235 * xdisp.c (Fformat_mode_line): Fix typo.
17236
17237 2002-06-12 Kim F. Storm <storm@cua.dk>
17238
17239 * xdisp.c (Fformat_mode_line): New function.
17240 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17241 (store_frame_title_char, store_frame_title): Use unconditionally.
17242 (init_xdisp): Defsubr Fformat_mode_line.
17243 Initialize frame_title_buf etc. unconditionally.
17244
17245 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17246
17247 * keyboard.c (read_key_sequence):
17248 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17249 things through those maps after downcasing events.
17250 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17251 applies after function-key-map.
17252 Make sure that keytran can be done in the middle in the sequence.
17253 Be careful not to throw away events past the one we downcase.
17254
17255 * lread.c (read_integer): Remove unused var `tem'.
17256 (read1): Fix int/Lisp_Object mixup.
17257
17258 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17259
17260 2002-06-11 Richard M. Stallman <rms@gnu.org>
17261
17262 * keyboard.c (readable_events): Ignore any number of
17263 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17264
17265 2002-06-09 Miles Bader <miles@gnu.org>
17266
17267 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17268 (parse_rgb_list, tty_lookup_color): New functions.
17269 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17270 (color_distance, Fcolor_distance): New functions.
17271 (TTY_SAME_COLOR_THRESHOLD): New macro.
17272 (Qtty_color_standard_values): New variable.
17273 (syms_of_xfaces): Initialize new vars & functions.
17274
17275 2002-06-08 Colin Walters <walters@verbum.org>
17276
17277 * textprop.c (Vchar_property_alias_alist): New variable.
17278 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17279
17280 * intervals.c (lookup_char_property): New function for looking up
17281 overlay and text properties, created from textget.
17282 (textget): Use it.
17283
17284 * intervals.h (lookup_char_property): Declare.
17285 (Vchar_property_alias_alist): Declare.
17286
17287 * buffer.c (Foverlay_get): Use lookup_char_property.
17288
17289 2002-06-07 Sam Steingold <sds@gnu.org>
17290
17291 * xselect.c (lisp_data_to_selection_data): Fix last change:
17292 *data_ret is not a Lisp string, while unibyte_string is.
17293
17294 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17295
17296 * xselect.c (lisp_data_to_selection_data): Fix last change:
17297 set size_ret.
17298
17299 2002-06-07 Andreas Schwab <schwab@suse.de>
17300
17301 * m/amdx86-64.h: New file.
17302
17303 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17304
17305 * fns.c (Fstring_make_unibyte): Doc fix.
17306
17307 * xselect.c (lisp_data_to_selection_data): If the requested type
17308 is STRING, call string_make_unibyte to encode the selected text
17309 as a string.
17310
17311 * window.c (Fset_window_hscroll): Doc fix.
17312
17313 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17314
17315 * fileio.c (choose_write_coding_system):
17316 Call select-safe-coding-system properly.
17317
17318 2002-06-03 Richard M. Stallman <rms@gnu.org>
17319
17320 * xdisp.c (message_with_string): Error if STRING is not a string.
17321
17322 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17323
17324 * fileio.c (choose_write_coding_system): Pass FILE arg to
17325 Vselect_safe_coding_system_function.
17326
17327 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17328
17329 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17330
17331 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17332
17333 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17334 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17335 * keymap.c (describe_command): Likewise.
17336 * minibuf.c (read_minibuf): Likewise.
17337
17338 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17339 Cast `current_column' return value to int.
17340 (back_to_previous_visible_line_start)
17341 (reseat_at_next_visible_line_start, next_element_from_buffer):
17342 Cast `indented_beyond_p' 3rd arg to float.
17343
17344 * indent.c (last_known_column): Now a float.
17345 (current_column_1, position_indentation, current_column)
17346 (string_display_width): Return float.
17347 (Fcurrent_column): Cast `current_column' return value to int.
17348 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17349 (indented_beyond_p): Third arg now a float.
17350 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17351
17352 * lisp.h (current_column): Now returns float.
17353 (indented_beyond_p): 3rd arg now a float.
17354
17355 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17356
17357 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17358 is Qcompound_text_with_extensions.
17359
17360 * xselect.c (lisp_data_to_selection_data): Always set selection
17361 type as string if x_encode_text returns streingp non-NULL.
17362
17363 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17364
17365 2002-05-30 Richard M. Stallman <rms@gnu.org>
17366
17367 * window.c (Fset_window_configuration): Correct the handling
17368 of point in current buffer, to work with multiple windows.
17369
17370 2002-05-29 Colin Walters <walters@verbum.org>
17371
17372 * lread.c (Fread_from_string): Don't depend on order of evaluation
17373 for C function parameters.
17374
17375 2002-05-28 Richard M. Stallman <rms@gnu.org>
17376
17377 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17378 way for blinked-off state and for a nonselected window.
17379
17380 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17381 instead, see if the new start pos is at beginning of line.
17382
17383 * fileio.c (Fwrite_region): If START is a string, don't
17384 make any annotations.
17385
17386 * eval.c (syms_of_eval): Doc fix.
17387
17388 2002-05-28 Colin Walters <walters@debian.org>
17389
17390 * emacs.c (USAGE1): Add --no-splash.
17391 (standard_args): Ditto.
17392
17393 2002-05-28 Colin Walters <walters@gnu.org>
17394
17395 * lread.c (readchar_count): New variable.
17396 (readchar): Increment it.
17397 (unreadchar): Decrement it.
17398 (read_multibyte): Decrement it.
17399 (Vread_with_symbol_positions): New variable.
17400 (Vread_symbol_positions_list): New variable.
17401 (read_internal_start): New function, created from Fread and
17402 Fread_from_string. Handle Vread_symbol_positions_list and
17403 Vread_with_symbol_positions.
17404 (readevalloop, Fread, Fread_from_string): Use it.
17405 (read1): Use readchar_count to add symbol positions to
17406 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17407 (syms_of_lread): DEFVAR_LISP and initialize them.
17408
17409 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17410 (substitute_object_recurse, substitute_object_in_subtree)
17411 (substitute_in_interval): Prototype.
17412 (read_multibyte): Return c if it's less than zero.
17413
17414 2002-05-28 Kim F. Storm <storm@cua.dk>
17415
17416 * fileio.c (Fread_file_name_internal): Added brute-force
17417 speed up for using predicate file-directory-p.
17418
17419 2002-05-28 Kim F. Storm <storm@cua.dk>
17420
17421 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17422 New variables.
17423 (syms_of_fileio): DEFVAR_LISP them.
17424 (read_file_name_cleanup): New unwind function.
17425 (Fread_file_name_internal): Only return completions satifying
17426 Vread_file_name_predicate. Temporarily unwind protect and rebind
17427 default-directory while checking completions against the predicate.
17428 (Fread_file_name): Added PREDICATE argument. Specbind it to
17429 Vread_file_name_predicate during completion.
17430 Call Vread_file_name_function to read the file name if non-nil.
17431
17432 * lisp.h (Fread_file_name): Now has 6 args.
17433
17434 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17435 predicate for Fread_file_name when reading directory name.
17436 Supply Qnil for predicate in other calls to Fread_file_name.
17437
17438 2002-05-26 Miles Bader <miles@gnu.org>
17439
17440 * term.c (tty_capable_p): New function.
17441 * dispextern.h (tty_capable_p): New function declaration.
17442 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17443 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17444
17445 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17446
17447 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17448 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17449 (Vwrite_region_annotate_functions): Docstring fix.
17450
17451 2002-05-23 Kim F. Storm <storm@cua.dk>
17452
17453 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17454 phys_cursor's hpos is overwritten. This is still not completely
17455 correct, as it doesn't really make sense to use hpos at all to
17456 get the cursor glyph (as that is relative to the width of the
17457 characters on the line, which may have changed during the update).
17458
17459 2002-05-22 Jason Rumney <jasonr@gnu.org>
17460
17461 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17462 Lisp_Object.
17463 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17464 Use modified enumfont_t struct.
17465
17466 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17467
17468 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17469 Handle the `hbar' cursor type.
17470 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17471
17472 * w32fns.c (Qhbar): New variable.
17473 (x_specified_cursor_type): Use it.
17474
17475 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17476
17477 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17478 now, when the address is needed.
17479
17480 2002-05-21 Colin Walters <walters@gnu.org>
17481
17482 * Makefile.in (shortlisp): Add font-core.el.
17483
17484 2002-05-20 Richard M. Stallman <rms@gnu.org>
17485
17486 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17487
17488 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17489 equivalent key bindings here.
17490
17491 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17492
17493 Change symbol structure to contain a lisp object for the symbol
17494 name:
17495 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17496 object field named "xname".
17497 (SYMBOL_NAME): New macro.
17498 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17499 name field.
17500 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17501 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17502 instead of name field.
17503 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17504 SYMBOL_NAME instead of XSYMBOL and name field.
17505 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17506 instead of XSYMBOL and name field.
17507 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17508 and SYMBOL_NAME instead of XSYMBOL and name field.
17509 * coding.c (Fread_coding_system, code_convert_region1)
17510 (code_convert_string1, code_convert_string_norecord)
17511 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17512 XSYMBOL and name field.
17513 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17514 (Fmake_variable_buffer_local, Fmake_local_variable)
17515 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17516 of XSYMBOL and name field.
17517 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17518 XSYMBOL and name field.
17519 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17520 instead of XSYMBOL and name field.
17521 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17522 XSYMBOL and name field.
17523 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17524 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17525 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17526 instead of XSYMBOL and name field.
17527 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17528 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17529 (parse_solitary_modifier, Fexecute_extended_command):
17530 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17531 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17532 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17533 of XSYMBOL and name field.
17534 (describe_command, describe_translation): Use SYMBOL_NAME and
17535 assignment instead of XSYMBOL and name field and XSETSTRING.
17536 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17537 instead of XSYMBOL and name field.
17538 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17539 name field and XSETSTRING.
17540 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17541 of XSYMBOL and name field.
17542 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17543 assignment instead of XSYMBOL and name field and XSETSTRING.
17544 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17545 XSTRING instead of XSYMBOL and name field.
17546 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17547 and XSTRING instead of XSYMBOL and name field.
17548 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17549 and XSTRING instead of XSYMBOL and name field.
17550 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17551 XSTRING instead of XSYMBOL and name field.
17552 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17553 of XSYMBOL and name field.
17554 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17555 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17556
17557 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17558
17559 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17560 and XCDR real rvalues in most configurations.
17561
17562 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17563 Don't take the address of the cdr part of a cons cell; instead, track
17564 the parent cell and call XSETCDR, or set the variable for the head
17565 of the list if we haven't started down the list yet.
17566
17567 2002-05-19 Richard M. Stallman <rms@gnu.org>
17568
17569 * doc.c (reread_doc_file): Don't ask for confirmation.
17570
17571 2002-05-18 Jason Rumney <jasonr@gnu.org>
17572
17573 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17574 (xbm_load_image): Use it.
17575 (xbm_load): Ditto.
17576 (xbm_read_bitmap_data): Reverted to xfns.c version.
17577 From David Ponce <david@dponce.com>.
17578
17579 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17580
17581 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17582 2.02 and later.
17583
17584 2002-05-16 Juanma Barranquero <lektu@terra.es>
17585
17586 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17587
17588 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17589
17590 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17591 meaningful test.
17592 (read_char_minibuf_menu_prompt): Fix typo.
17593
17594 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17595
17596 * eval.c (Fcommandp): Doc fix.
17597
17598 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17599
17600 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17601 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17602 (Fset_keymap_parent): Gcpro a bit more.
17603 (access_keymap): Gcpro around meta_map call and around the main loop.
17604 (get_keyelt): Gcpro when following indirect references.
17605 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17606 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17607 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17608 Remove useless ad-hoc remap code.
17609
17610 2002-05-13 Richard M. Stallman <rms@gnu.org>
17611
17612 * search.c (search_buffer): Give up boyer moore search if inverse
17613 translation change charset_base.
17614
17615 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17616
17617 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17618 characters is carried over from the previous block of text, adjust
17619 coding->produced to account for the extra character.
17620
17621 2002-05-11 Andreas Schwab <schwab@suse.de>
17622
17623 * coding.c (intersection): Keep the elements of the returned list
17624 in the same order as in the first list.
17625
17626 2002-05-11 Kim F. Storm <storm@cua.dk>
17627
17628 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17629 only update cmm_size if realloc actually succeeds.
17630 Testing with initial size of 2 elements revealed that using
17631 realloc on GNU/Linux would cause a random trap in xmalloc
17632 later on, so I rewrote the code to use malloc/bcopy/free instead
17633 of realloc.
17634
17635 2002-05-10 Jason Rumney <jasonr@gnu.org>
17636
17637 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17638
17639 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17640
17641 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17642 parens, to ensure correct evaluation order.
17643
17644 2002-05-10 Kim F. Storm <storm@cua.dk>
17645
17646 * keymap.c (Vemulation_mode_map_alists): New variable.
17647 (syms_of_keymap): DEFVAR_LISP it.
17648 (current_minor_maps): Process keymap alists in that list before
17649 minor-mode-overriding-map-alist and minor-mode-map-alist.
17650
17651 2002-05-09 Richard M. Stallman <rms@gnu.org>
17652
17653 * search.c (Freplace_match): Doc fix.
17654
17655 2002-05-09 Kim F. Storm <storm@cua.dk>
17656
17657 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17658 Enlarge cursor rectangle drawn around image with non-zero relief.
17659
17660 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17661 Enlarge cursor rectangle drawn around image with non-zero relief.
17662
17663 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17664 Enlarge cursor rectangle drawn around image with non-zero relief.
17665
17666 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17667
17668 * xselect.c (lisp_data_to_selection_data): Don't set selection
17669 type if comes from the Lisp object's car. If the selection
17670 contains a pure ASCII text, always return QSTRING as its type.
17671
17672 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17673
17674 * mac.c (mac-cut-function): Doc fix.
17675
17676 2002-05-05 Richard M. Stallman <rms@gnu.org>
17677
17678 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17679
17680 2002-05-04 Jason Rumney <jasonr@gnu.org>
17681
17682 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17683 for event-click-count.
17684
17685 * process.c (init_process): Only add server subfeature if we can
17686 use non-blocking I/O.
17687
17688 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17689
17690 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17691 repeatedly.
17692
17693 2002-05-03 Jason Rumney <jasonr@gnu.org>
17694
17695 * process.c (Fmake_network_process): Only support server sockets
17696 when we can make them non-blocking.
17697
17698 * s/ms-w32.h (HAVE_SELECT): Define.
17699
17700 * w32.h (FILE_NDELAY): New flag.
17701
17702 * w32.c (sys_getpeername, fcntl): New functions.
17703 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17704
17705 * w32proc.c: Include sys/file.h.
17706
17707 2002-05-03 Colin Walters <walters@verbum.org>
17708
17709 * callproc.c (Vgame_score_directory): Renamed to
17710 Vshared_game_score_directory.
17711
17712 2002-04-30 Richard M. Stallman <rms@gnu.org>
17713
17714 * s/gnu.h [emacs]: Include stdio.h.
17715 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17716
17717 * eval.c (do_autoload): Error if called while preparing to dump.
17718
17719 * fns.c (Frequire): Error if need to load while preparing to dump.
17720
17721 2002-04-28 Colin Walters <walters@verbum.org>
17722
17723 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17724 Default to "~/.emacs.d/games".
17725
17726 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17727
17728 * lread.c (openp): Change arg exec_only to predicate.
17729 (build_load_history): Use XCAR/XCDR.
17730 (Flocate_file_internal): New fun.
17731 (syms_of_lread): Defsubr it.
17732 (Fload): Update call to openp.
17733
17734 * lisp.h (openp): Update prototype.
17735
17736 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17737 * w32proc.c (sys_spawnve):
17738 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17739 * w32.c (check_windows_init_file):
17740 * sound.c (Fplay_sound_internal):
17741 * process.c (Fstart_process):
17742 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17743 * mac.c (run_mac_command):
17744 * emacs.c (init_cmdargs):
17745 * callproc.c (Fcall_process): Update call to openp.
17746
17747 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17748
17749 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17750
17751 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17752
17753 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17754 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17755
17756 2002-04-28 Richard M. Stallman <rms@gnu.org>
17757
17758 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17759
17760 * eval.c (Fcommandp): New arg for_call_interactively.
17761 * lisp.h (Fcommandp): Declare new arg.
17762
17763 2002-04-28 Jason Rumney <jasonr@gnu.org>
17764
17765 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17766
17767 * w32.c (stat, fstat): Use file index information to generate
17768 inodes for directories where available.
17769
17770 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17771
17772 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17773 [HAVE_CARBON]: Include Mac object files.
17774
17775 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17776 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17777 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17778 MAC_OSX, and MAC_OS instead of macintosh.
17779
17780 * editfns.c [MAC_OS8]: Include stdio.h.
17781
17782 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17783
17784 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17785 Apple Monaco.
17786
17787 * process.c (QCfamily, QCfilte): Declare extern.
17788 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17789 calling select.
17790
17791 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17792
17793 * tparam.c [MAC_OSX]: Don't define BC and UP.
17794
17795 * config.in [HAVE_CARBON]: Add.
17796
17797 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17798 Move here from mac/src and mac/inc.
17799
17800 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17801
17802 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17803
17804 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17805 Compute phys_cursor_width from the x position returned
17806 by x_draw_glyhs, which is cheaper.
17807 (x_display_and_set_cursor): Compute the buffer-local value
17808 of `cursor-in-non-selected-windows' only when needed.
17809
17810 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17811
17812 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17813 cursor on a stretch glyph has a width that depends on
17814 x_stretch_cursor_p.
17815
17816 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17817
17818 * abbrev.c (abbrev-start-location): Doc fix.
17819
17820 * indent.c (Fvertical_motion): Fix last change.
17821
17822 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17823
17824 * indent.c (Fvertical_motion): Move to the start of the line
17825 containing PT before moving up or down.
17826
17827 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17828
17829 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17830 case of writing a whole row, more or less analogous to the case of
17831 writing only parts of a row.
17832
17833 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17834 0 for NO_CURSOR.
17835
17836 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17837
17838 2002-04-23 Colin Walters <walters@verbum.org>
17839
17840 * buffer.c (syms_of_buffer): Doc fix.
17841
17842 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17843
17844 * xterm.c (notice_overwritten_cursor): Handle the special case
17845 of the cursor being in the first blank non-text line at the
17846 end of a window.
17847
17848 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17849 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17850 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17851 bar cursors only, to make phys_cursor_width contain what its name
17852 suggests.
17853 (notice_overwritten_cursor): Consider the cursor image erased if
17854 the output area intersects the cursor image in y-direction.
17855
17856 2002-04-23 Simon Marshall <simon@gnu.org>
17857
17858 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17859 to XC_hand2.
17860
17861 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17862
17863 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17864
17865 2002-04-22 Kim F. Storm <storm@cua.dk>
17866
17867 * textprop.c (remove_properties): Fixed trap for malformed plist.
17868
17869 2002-04-22 Richard M. Stallman <rms@gnu.org>
17870
17871 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17872
17873 * window.c (make_window): Initialize height_fixed_p,
17874 last_cursor_off_p, and p->cursor_off_p slots.
17875
17876 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17877
17878 * fns.c (use-dialog-box): Doc fix.
17879
17880 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17881
17882 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17883 variables `row', `i' and `area'.
17884 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17885 toolkit library.
17886
17887 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17888
17889 * xfaces.c (clear_font_table): Don't free the default font of
17890 a frame even if it's on another display.
17891 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17892 that could be Qt.
17893
17894 2002-04-19 Juanma Barranquero <lektu@terra.es>
17895
17896 * indent.c (Fmove_to_column): Remove unused local variable
17897 `next_boundary_byte'.
17898 (current_column_1): Likewise.
17899
17900 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17901
17902 * msdos.c (Qhbar): New variable.
17903 (syms_of_msdos): Intern and staticpro it.
17904 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17905 cursor type.
17906
17907 2002-04-19 Dave Lambert <dlambert@acm.org>
17908
17909 Theses change implement an underscore-like (`hbar') cursor.
17910
17911 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17912
17913 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17914 Handle the `hbar' cursor type.
17915 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17916
17917 * xfns.c (Qhbar): New variable.
17918 (syms_of_xfns): Intern and staticpro it.
17919 (x_specified_cursor_type): Handle `hbar' cursor.
17920
17921 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17922 not defined.
17923
17924 2002-04-18 Richard M. Stallman <rms@gnu.org>
17925
17926 * textprop.c (remove_properties): New arg LIST allows scanning
17927 either a list or a plist.
17928 (interval_has_some_properties_list): New function, like
17929 interval_has_some_properties using list instead of plist.
17930 All callers changed.
17931 (Fremove_list_of_text_properties): New function.
17932 (syms_of_textprop): Defsubr it.
17933
17934 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17935
17936 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17937
17938 2002-04-17 Juanma Barranquero <lektu@terra.es>
17939
17940 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17941
17942 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17943
17944 * window.c (coordinates_in_window): Don't report on margin area
17945 if its width is zero.
17946
17947 2002-04-16 Jason Rumney <jasonr@gnu.org>
17948
17949 * w32fns.c (Fx_file_dialog): Decode file name before using.
17950
17951 * w32term.c (construct_drag_n_drop): Likewise.
17952
17953 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17954
17955 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17956 store load-history in pure space.
17957
17958 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17959
17960 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17961
17962 * xterm.c (Qlatin_1, Qutf_8): New vars.
17963 (syms_of_xterm): Initialize them.
17964 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17965 decoding the output of X*LookupString.
17966 Always use latin-1 to decode the output of XLookupString.
17967 Try Xutf8LookupString if XmbLookupString failed.
17968
17969 * region-cache.c (new_region_cache): Use BEG.
17970
17971 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17972
17973 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17974 configuration files.
17975 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17976 returns 0.
17977
17978 2002-04-15 Andreas Schwab <schwab@suse.de>
17979
17980 * config.in: Regenerated using autoheader.
17981
17982 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17983 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17984 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17985 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17986 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17987 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17988 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17989 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17990 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17991 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17992 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17993 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17994 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17995 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17996 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17997 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17998 STACK_DIRECTION, now set by autoconf.
17999
18000 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18001
18002 * dispnew.c (marginal_area_string): Sort arguments.
18003
18004 * dispextern.h (marginal_area_string): Add prototype.
18005
18006 2002-04-13 Richard M. Stallman <rms@gnu.org>
18007
18008 * fileio.c (Finsert_file_contents):
18009 Don't call temp_output_buffer_setup--do just part, by hand.
18010
18011 * coding.c (run_pre_post_conversion_on_str):
18012 Don't call temp_output_buffer_setup--do just part, by hand.
18013
18014 * keyboard.c (command_loop_1): Don't call start_hourglass
18015 or cancel_hourglass when executing a macro.
18016
18017 * marker.c (count_markers): New function.
18018
18019 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18020 grow without limit. Move recently used elements to the front.
18021
18022 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18023
18024 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18025
18026 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18027
18028 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18029 rows marginal areas.
18030 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18031 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18032
18033 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18034
18035 2002-04-12 Dave Love <fx@gnu.org>
18036
18037 * dispnew.c (marginal_area_string): New.
18038
18039 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18040 (Qleft_margin, Qright_margin): Declare.
18041 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18042
18043 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18044 note_mode_line_highlight and extended.
18045
18046 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18047 (make_lispy_event): Deal with mouse events in margins.
18048
18049 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18050
18051 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18052
18053 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18054 than deactivating the mark if tmm is set to `lambda'.
18055 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18056 Use a single event for HELP_EVENT.
18057 (Fexecute_extended_command): Save last_point_position.
18058
18059 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18060
18061 * lisp.h (Fpropertize): Add prototype.
18062
18063 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18064
18065 2002-04-10 Colin Walters <walters@verbum.org>
18066
18067 * config.in: Add HAVE_SHARED_GAME_DIR.
18068
18069 * callproc.c (Vgame_score_directory): New variable.
18070 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18071
18072 2002-04-10 Richard M. Stallman <rms@gnu.org>
18073
18074 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18075
18076 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18077
18078 * minibuf.c (read_minibuf): Use empty_string.
18079 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18080 Short-circuit the search as soon as it "failed".
18081 (Fall_completions): Allow lambda forms and lists of strings for alist.
18082 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18083 when require_match is nil.
18084 (Ftest_completion): Rename from `test_completion' and export to elisp.
18085 Call the predicate also when alist is a list.
18086 Obey Vcompletion_regexp_list.
18087 (do_completion, Fminibuffer_complete_and_exit): Use it.
18088 (Fassoc_string): Rename from `assoc_for_completion'.
18089 Allow list of strings as well and export to elisp.
18090
18091 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18092
18093 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18094
18095 2002-04-08 Juanma Barranquero <lektu@terra.es>
18096
18097 * w32.c (sys_accept): Don't hide variable `s'.
18098
18099 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18100
18101 * callint.c (Fcall_interactively): Use INTEGERP instead of
18102 NUMBERP for checking Vhistory_length.
18103
18104 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18105
18106 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18107 Doc fix to reflect it.
18108
18109 2002-04-04 Richard M. Stallman <rms@gnu.org>
18110
18111 * xdisp.c (display_mode_element): New arg RISKY.
18112 Disregard text props found or specified within a variable
18113 that isn't marked risky-local-variable.
18114 (Qrisky_local_variable): New variable.
18115 (syms_of_xdisp): Init and staticpro it.
18116
18117 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18118
18119 * undo.c (record_point): New fun.
18120 (record_delete, record_insert): Use it.
18121
18122 2002-04-03 Juanma Barranquero <lektu@terra.es>
18123
18124 * doc.c (Fdocumentation): Add missing parentheses.
18125 (Fdocumentation_property): Likewise.
18126
18127 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18128
18129 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18130 data is 0, just return nil.
18131
18132 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18133
18134 * msdos.c (syms_of_msdos): Fix last change with
18135 mouse_autoselect_window.
18136
18137 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18138
18139 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18140 mouse_autoselect_window.
18141
18142 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18143
18144 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18145 with system-specific keysyms. Use it also for unknown function keys.
18146
18147 * doc.c (reread_doc_file): Return whether reload was attempted.
18148 (Fdocumentation, Fdocumentation_property): Don't try to reload
18149 if the doc is 0 and only ask once.
18150
18151 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18152
18153 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18154
18155 * keyboard.c (read_char): If the event was Qselect_window,
18156 restore timer_idleness_start_time to its previous value.
18157
18158 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18159
18160 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18161
18162 * region-cache.c (new_region_cache): Use BEG.
18163
18164 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18165 Use BEG and BEG_BYTE.
18166
18167 * doc.c (get_doc_string): Return nil if the location is wrong.
18168 (reread_doc_file): New fun.
18169 (Fdocumentation, Fdocumentation_property):
18170 Call it if get_doc_string fails.
18171 (Fsnarf_documentation): Make it work for a dumped Emacs.
18172
18173 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18174 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18175
18176 * charset.c (Fstring): Allow 0 arguments.
18177
18178 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18179
18180 * process.c (DATAGRAM_CONN_P, list_processes_1)
18181 (Fprocess_datagram_address, Fset_process_datagram_address)
18182 (Fset_network_process_options, server_accept_connection):
18183 Fix some int/Lisp_Object confusions (thank you union types).
18184
18185 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18186
18187 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18188
18189 * w32term.c: Likewise.
18190 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18191
18192 * keyboard.c (Qselect_window): New symbol.
18193 (head_table): Use it.
18194 (keys_of_keyboard): Bound select-window event to handle-select-window.
18195 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18196
18197 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18198 (last_window): New variable.
18199 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18200 (note_mouse_movement): Remove reimplemented code in #if 0.
18201 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18202 Emacs windows.
18203
18204 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18205
18206 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18207
18208 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18209 Callers changed.
18210
18211 2002-03-30 Richard M. Stallman <rms@gnu.org>
18212
18213 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18214 loop whenever it stops making progress.
18215
18216 * widget.c (set_frame_size): Don't call change_frame_size.
18217
18218 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18219
18220 * dispnew.c (direct_output_for_insert):
18221 Call mark_window_display_accurate.
18222
18223 2002-03-29 Jason Rumney <jasonr@gnu.org>
18224
18225 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18226
18227 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18228
18229 * Makefile.in (lread.o): Depend on coding.h.
18230
18231 * lread.c (openp, Fload): Encode the file name before passing it
18232 to `stat', `access', and `emacs_open'.
18233 (openp): GCPRO the encoded file name. Don't recompute Lisp
18234 strings unnecessarily.
18235
18236 2002-03-29 Kim F. Storm <storm@cua.dk>
18237
18238 * fns.c (Flax_plist_put): Doc fix.
18239
18240 2002-03-28 Miles Bader <miles@gnu.org>
18241
18242 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18243
18244 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18245
18246 * process.c (set-network-process-options): Add usage.
18247 (make-network-process): Doc fix.
18248
18249 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18250
18251 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18252
18253 2002-03-26 Richard M. Stallman <rms@gnu.org>
18254
18255 * fns.c (Fsubstring_no_properties): New function.
18256 (Flax_plist_get, Flax_plist_put): New functions.
18257 (syms_of_fns): defsubr them.
18258
18259 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18260 don't test or alter w->update_mode_line.
18261
18262 * window.c (Fdisplay_buffer): Doc fix.
18263
18264 2002-03-24 Richard M. Stallman <rms@gnu.org>
18265
18266 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18267
18268 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18269
18270 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18271 (Fdefmacro): Handle `(declare ...)'.
18272 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18273 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18274
18275 2002-03-24 Jason Rumney <jasonr@gnu.org>
18276
18277 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18278 (xbm_file_p): Add prototypes.
18279 (xbm_format, xbm_image_p): Sync with xfns.c.
18280 (reflect_byte): New function.
18281 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18282 (xbm_load_image): Create bitmaps with a depth of 1.
18283 (init_xfns): Enable XBM images.
18284
18285 2002-03-23 Jason Rumney <jasonr@gnu.org>
18286
18287 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18288 correctly. Do not pass up_modifier to keyboard buffer.
18289
18290 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18291
18292 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18293
18294 * Makefile.in (bootstrapclean): New target.
18295 (bootstrap-temacs, bootstrap-doc): Remove.
18296 (bootstrap-emacs): Use a bog-standard `temacs'.
18297 Don't bother to build a DOC file.
18298
18299 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18300
18301 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18302 in temacs even if !CANNOT_DUMP.
18303 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18304
18305 * alloc.c (check_pure_size): Only output a warning.
18306
18307 2002-03-22 Jason Rumney <jasonr@gnu.org>
18308
18309 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18310 supported.
18311
18312 * w32term.c (zv_bits): Declare as short, for word alignment.
18313 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18314 (syms_of_w32term): Define x-use-underline-position-properties.
18315
18316 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18317 (clear_image_cache): Block input, fix logic, clear matrices in
18318 all frames that share this cache.
18319
18320 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18321
18322 * emacs.c (main): Update the Copyright year in the blurb printed
18323 by "emacs --version".
18324
18325 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18326
18327 * xterm.c (XTread_socket): If XK_ISO_Lock and
18328 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18329 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18330
18331 2002-03-21 Kim F. Storm <storm@cua.dk>
18332
18333 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18334 menu-bar bindings in keymap and local-map properties _are_ used.
18335 But try keymap property first in accordance with 2002-01-03 patch.
18336 Added comment describing why this is not always reliable.
18337 (tool_bar_items): Ditto for tool-bar.
18338
18339 2002-03-21 Jason Rumney <jasonr@gnu.org>
18340
18341 * w32fns.c (x_clear_image_1): Disable color table code.
18342
18343 2002-03-21 Kim F. Storm <storm@cua.dk>
18344
18345 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18346 removed the wrong version of the DEFUN macro; fixed it.
18347
18348 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18349 Fmember rather than Fmemq).
18350 (Fprovide): Check that subfeatures is a list.
18351
18352 * process.c (QCfeature, QCdatagram): Removed variables.
18353 (QCtype, Qdatagram): New variables.
18354 (network_process_featurep): Removed function.
18355 (Fmake_network_process): Removed :feature check.
18356 Use :type 'datagram instead of :datagram t to create a datagram
18357 socket. This allows us to add other connection types (e.g. raw
18358 sockets) later in a consistent manner.
18359 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18360 supported subfeatures for feature make-network-process.
18361 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18362 Intern and staticpro QCtype and Qdatagram.
18363 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18364
18365 * xfns.c: (QCtype): Remove duplicate declaration and
18366 initialization (is now declared in process.c).
18367
18368 * w32fns.c: (QCtype): Remove duplicate declaration and
18369 initialization (is now declared in process.c).
18370
18371 2002-03-21 Richard M. Stallman <rms@gnu.org>
18372
18373 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18374 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18375 when jumping to `fail' to avoid undoing reg changes in the
18376 last iteration of the loop.
18377 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18378
18379 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18380 Depend on process.h.
18381
18382 2002-03-20 Jason Rumney <jasonr@gnu.org>
18383
18384 Most of the following changes are still conditional on HAVE_IMAGES
18385 which is not set by default on Windows.
18386
18387 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18388
18389 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18390 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18391 (four_corners_best, x_clear_image_1, x_clear_image)
18392 (x_alloc_image_color, postprocess_image)
18393 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18394 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18395 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18396
18397 * w32gui.h (struct XImage): Define.
18398
18399 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18400 extract mouse co-ordinates.
18401
18402 2002-03-20 Jason Rumney <jasonr@gnu.org>
18403
18404 * w32.c (init_winsock): Dynamically load new server and UDP
18405 socket functions.
18406 (socket_to_fd): New function.
18407 (sys_socket): Use it.
18408 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18409 (sys_recvfrom, sys_sendto): New wrapper functions.
18410
18411 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18412 and initialization.
18413
18414 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18415
18416 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18417
18418 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18419 Don't use "sun" as a variable, it's a predefined constant on Sun
18420 machines.
18421
18422 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18423
18424 * bytecode.c (Fbyte_code): Revert last change.
18425
18426 2002-03-19 Kim F. Storm <storm@cua.dk>
18427
18428 * makefile.w32-in (LIBS): Add $(WSOCK32).
18429 From David Ponce <dponce@voila.fr>.
18430
18431 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18432
18433 * process.c (wait_reading_process_input): Move variables `pname'
18434 and `pnamelen' down where they are used.
18435
18436 * bytecode.c (Fbyte_code): Discard unused computed value to
18437 prevent gcc warning.
18438
18439 * lisp.h (Fplist_member): Add prototype.
18440
18441 2002-03-18 Kim F. Storm <storm@cua.dk>
18442
18443 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18444 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18445
18446 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18447 Remove explicit GNU_LINUX settings for datagram support.
18448
18449 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18450
18451 * process.c (Fmake_network_process): Remove unused variable `sa'.
18452 Doc fix. Add usage:.
18453 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18454
18455 2002-03-17 Richard M. Stallman <rms@gnu.org>
18456
18457 * xdisp.c (cursor_type_changed): New variable.
18458 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18459 Clear it when clearing windows_or_buffers_changed.
18460 (try_cursor_movement, redisplay_window, try_window_id)
18461 (try_window_reusing_current_matrix): Test cursor_type_changed
18462 along with windows_or_buffers_changed.
18463
18464 * window.h (cursor_type_changed): New variable.
18465
18466 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18467 not update_mode_lines, and always set it to 1.
18468
18469 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18470 if no frames needed redrawing.
18471
18472 2002-03-17 Kim F. Storm <storm@cua.dk>
18473
18474 The following changes add support for network server processes,
18475 datagram connections, and local (unix) sockets.
18476
18477 * process.h (struct Lisp_Process): New member log.
18478 Doc fix: Member command used to indicate stopped network process.
18479 Doc fix: Member childp contains plist for network process.
18480 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18481
18482 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18483 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18484 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18485 New variables.
18486 (NETCONN1_P): New macro.
18487 (DATAGRAM_SOCKETS): New conditional symbol.
18488 (datagram_address): New array.
18489 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18490 (status_message): Use concat3.
18491 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18492 for a stopped network process.
18493 (Fset_process_buffer): Update contact plist for network process.
18494 (Fset_process_filter): Ditto. Don't enable input for stopped
18495 network processes. Server must listen, even if filter is t.
18496 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18497 New functions.
18498 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18499 (Fprocess_contact): Added KEY argument. Handle datagrams.
18500 (list_processes_1): Optionally show only processes with the query
18501 on exit flag set. Dynamically adjust column widths. Omit tty
18502 column if not needed. Report stopped network processes.
18503 Identify server and datagram network processes.
18504 (Flist_processes): New optional arg `query-only'.
18505 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18506 (conv_lisp_to_sockaddr, set_socket_options)
18507 (network_process_featurep, unwind_request_sigio): New helper functions.
18508 (Fprocess_datagram_address, Fset_process_datagram_address):
18509 (Fset_network_process_options): New lisp functions.
18510 (Fopen_network_stream): Removed. Now defined in simple.el.
18511 (Fmake_network_process): New lisp function. Code is based on previous
18512 Fopen_network_stream, but heavily reworked with new property list based
18513 argument list, support for datagrams, server processes, and local
18514 sockets in addition to old client-only functionality.
18515 (server_accept_connection): New function.
18516 (wait_reading_process_input): Use it to handle incoming connects.
18517 Do not enable input on a new connection if process is stopped.
18518 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18519 (send_process): Handle datagram sockets.
18520 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18521 network process is indicated by setting command field to t .
18522 (Fprocess_send_eof): No-op if datagram connection.
18523 (Fstatus_notify): Don't read input for a stream server socket or a
18524 stopped network process.
18525 (init_process): Initialize datagram_address array.
18526 (syms_of_process): Intern and staticpro new variables, defsubr new
18527 functions.
18528
18529 2002-03-16 Jason Rumney <jasonr@gnu.org>
18530
18531 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18532 startup case.
18533
18534 2002-03-16 Richard M. Stallman <rms@gnu.org>
18535
18536 * xdisp.c (redisplay_internal, redisplay_windows):
18537 Use list_of_error to call internal_condition_case_1.
18538 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18539 so as to catch all errors with no possibility of debugger redisplay.
18540 (list_of_error): New variable.
18541 (syms_of_xdisp): Init and staticpro it.
18542
18543 * print.c (print_object): Delete `\ ' from printed rep of frame.
18544
18545 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18546
18547 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18548 until its implementation is fixed.
18549
18550 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18551
18552 * xfns.c (png_load): Remove unused variable `gamma_str'.
18553
18554 2002-03-14 Richard M. Stallman <rms@gnu.org>
18555
18556 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18557
18558 2002-03-14 Miles Bader <miles@gnu.org>
18559
18560 * intervals.c (adjust_for_invis_intang): New function.
18561 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18562 work for dealing with invisible+intangible regions. Do so before
18563 and after both forward and backward movements, to handle both
18564 front-sticky and rear-sticky cases.
18565 * textprop.c (text_property_stickiness): Function moved here from
18566 `editfns.c'.
18567 * intervals.h (text_property_stickiness): New declaration.
18568 * editfns.c (char_property_eq): Function removed.
18569 (text_property_stickiness): Function moved to `textprop.c'.
18570
18571 2002-03-13 Jason Rumney <jasonr@gnu.org>
18572
18573 * config.in: Add STRFTIME_NO_POSIX2.
18574
18575 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18576 and %OX when underlying strftime does not.
18577
18578 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18579
18580 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18581 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18582 line) to avoid annoying flicker.
18583 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18584 (XTread_socket): Mark it static.
18585
18586 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18587
18588 2002-03-13 Kim F. Storm <storm@cua.dk>
18589
18590 * puresize.h (BASE_PURESIZE): Increase to 775000.
18591
18592 2002-03-12 Juanma Barranquero <lektu@terra.es>
18593
18594 * editfns.c (syms_of_editfns): Fix typo.
18595
18596 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18597
18598 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18599 Include termopt.h for interrupt_input.
18600
18601 2002-03-11 Andreas Schwab <schwab@suse.de>
18602
18603 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18604
18605 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18606
18607 * xterm.c (note_mouse_movement): Put code for
18608 x_autoselect_window_p in #if 0.
18609
18610 * lread.c (Fload): Don't assume that message_with_string uses the
18611 string it is given like a C string.
18612
18613 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18614
18615 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18616
18617 * xterm.c (XTread_socket): Add call to x_session_check_input and
18618 x_session_have_connection.
18619 (x_initialize): Add call to x_session_initialize.
18620
18621 * termhooks.h (enum event_kind): Add save_session_event.
18622
18623 * keyboard.c: Add Emacs event save_session_event.
18624
18625 * emacs.c (main): Add call to syms_of_xsmfns.
18626
18627 * lisp.h (syms_of_xsmfns): Declare extern.
18628
18629 * config.in: Add HAVE_X_SM.
18630
18631 * Makefile.in (LIBXT): Add -lSM -lICE
18632 if HAVE_X_SM and not USE_X_TOOLKIT.
18633 (XOBJ): New file xsmfns.c added.
18634
18635 * xsmfns.c: New file for X session management.
18636
18637 2002-03-09 Jason Rumney <jasonr@gnu.org>
18638
18639 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18640 read-only when setting modified time.
18641
18642 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18643
18644 * xdisp.c (move_it_vertically_backward): At the end of the function,
18645 when moving forward by lines, treat terminal frames specially.
18646
18647 * keyboard.c (echo_char): Make sure to add a separator between
18648 keys even if echo_dash hasn't been called.
18649
18650 * xdisp.c: Use new string macros.
18651 (update_echo_area): Pass number of bytes to message3 instead of
18652 number of chars.
18653 (set_message_1): Don't access a string's size_byte directly.
18654 (decode_mode_spec_coding): Use number of bytes of eoltype string
18655 instead number of chars.
18656
18657 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18658
18659 2002-03-08 Juanma Barranquero <lektu@terra.es>
18660
18661 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18662 24-bit.
18663
18664 2002-03-06 Jason Rumney <jasonr@gnu.org>
18665
18666 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18667
18668 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18669
18670 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18671 (cancel_echoing, echo_length, echo_truncate): Changed to
18672 work with new kboard definition.
18673 (echo_now): Use message3_nolog instead of message2_nolog.
18674
18675 * alloc.c (mark_kboards): Mark echo_string.
18676
18677 * keyboard.h (ECHOBUFSIZE): Removed.
18678 (struct kboard): Member echoptr removed, member echobuf renamed
18679 to echo_string.
18680
18681 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18682 message3 instead of message2 to display the message using STRING's
18683 text properties.
18684
18685 2002-03-05 Andreas Schwab <schwab@suse.de>
18686
18687 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18688
18689 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18690
18691 * frame.c (default-frame-alist): Explain that setting it doesn't
18692 affect existing frames.
18693
18694 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18695
18696 * indent.c (skip_invisible): Fix my brain fart.
18697
18698 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18699
18700 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18701
18702 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18703 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18704 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18705 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18706 and variables to use EMACS_INT instead of just int.
18707
18708 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18709
18710 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18711
18712 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18713 environment, pass it down with corrected value.
18714
18715 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18716
18717 * lread.c (read_filtered_event): Do not call start_hourglass
18718 before returning.
18719
18720 2002-03-04 Juanma Barranquero <lektu@terra.es>
18721
18722 * w32term.c (x_display_and_set_cursor): Fix typo.
18723
18724 2002-03-03 Richard M. Stallman <rms@gnu.org>
18725
18726 * fileio.c (Fmake_temp_name): Doc fix.
18727
18728 2002-03-03 Gary Wong <gtw@gnu.org>
18729
18730 * termcap.c [!emacs]: Replace ospeed for building standalone
18731 libtermcap, for binary compatibility.
18732
18733 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18734
18735 2002-03-03 Richard M. Stallman <rms@gnu.org>
18736
18737 * xrdb.c (file_p): Rename arg `path' to `filename'.
18738
18739 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18740 only if it is an integer.
18741
18742 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18743 If png_get_sRGB gives an answer, call png_set_gamma
18744 using the default image gamma value.
18745
18746 * lread.c (read1): When reading from a file, default string to
18747 multibyte only if it has some multibyte characters.
18748
18749 * print.c (print_object): Output multibyte chars 128...255
18750 using \x even if ! print_escape_multibyte.
18751
18752 * xdisp.c (display_mode_element): Move the places where
18753 bytepos, charpos, this, and lisp_string are set.
18754 Use lisp_string to set bytepos.
18755
18756 * xdisp.c (redisplay_internal):
18757 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18758
18759 * xdisp.c (display_mode_element): Merge properties specified with
18760 :propertize onto those that come with the string.
18761
18762 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18763
18764 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18765 automatic-hscrolling. Users changed.
18766 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18767 Users changed.
18768 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18769
18770 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18771
18772 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18773
18774 2002-03-02 Kim F. Storm <storm@cua.dk>
18775
18776 * window.c (Fminibuffer_selected_window): New function.
18777 (syms_of_window): Defsubr it.
18778
18779 2002-03-01 Kim F. Storm <storm@cua.dk>
18780
18781 * window.h (struct window): New member phys_cursor_width.
18782
18783 * window.c (make_window, replace_window): Init phys_cursor_width.
18784
18785 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18786 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18787
18788 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18789 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18790
18791 * lisp.h (GCPRO6): New macro.
18792
18793 * process.c (Fopen_network_stream): Use GCPRO6.
18794
18795 2002-03-01 Kim F. Storm <storm@cua.dk>
18796
18797 * process.c (Qconnect, Qfailed): New variables.
18798 (syms_of_process): Intern and staticpro them.
18799 (Fprocess_status): Document connect and failed return values.
18800 [NON_BLOCKING_CONNECT]: New conditional.
18801 (connect_wait_mask, num_pending_connects): New variables.
18802 (status_message): Convert Qfailed status.
18803 (Fopen_network_stream): Added support for non-blocking connect.
18804 New optional args: filter, sentinel, non_blocking. Doc updated.
18805 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18806 (deactivate_process): Handle pending non-blocking connect.
18807 (wait_reading_process_input): Poll for status of non-blocking
18808 connects. Exec sentinel directly when connect succeeds.
18809 (status_notify): Don't read process output if not yet connected.
18810
18811 2002-02-28 Kim F. Storm <storm@cua.dk>
18812
18813 * window.c: (minibuf_selected_window): Renamed from
18814 Vminibuf_selected_window. Users changed.
18815 (syms_of_window): Staticpro it.
18816
18817 2002-02-26 Kim F. Storm <storm@cua.dk>
18818
18819 The following changes add a new Vminibuf_selected_window variable
18820 which is similar to Vminibuf_scroll_window, but which is only set
18821 on entry to the minibuffer (from a non-minibuffer window):
18822
18823 * window.c: (Vminibuf_selected_window): New variable.
18824 (struct save_window_data): New member minibuf_selected_window.
18825 (Fset_window_configuration): Restore Vminibuf_selected_window.
18826 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18827 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18828 (compare_window_configurations): Compare minibuf_selected_window.
18829
18830 * window.h: (Vminibuf_selected_window): Declare extern.
18831
18832 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18833 entry to minibuffer or on entry from a non-minibuffer window.
18834
18835 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18836 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18837
18838 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18839 instead of Vminibuf_scroll_window when deciding in which window
18840 the region should be highlighted. Consequently, the region remains
18841 highlighteded even when a completion buffer is also displayed.
18842
18843 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18844
18845 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18846
18847 * xselect.c (Qcompound_text_with_extensions): Renamed from
18848 Qcompound_text_no_extensions.
18849 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18850
18851 2002-02-26 Juanma Barranquero <lektu@terra.es>
18852
18853 * w32proc.c (syms_of_ntproc): Doc fix.
18854
18855 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18856
18857 * intervals.h: Include "dispextern.h" unconditionally.
18858
18859 2002-02-24 Jason Rumney <jasonr@gnu.org>
18860
18861 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18862 and disp-table.elc.
18863 (lisp): Add emacs-lisp/backquote.elc.
18864
18865 2002-02-24 Kim F. Storm <storm@cua.dk>
18866
18867 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18868 The validation of the event type was too strict as it didn't
18869 allow string events; buffer names are used in bindings for
18870 menu-bar-select-buffer (see `menu-bar-update-buffers').
18871
18872 2002-02-23 Kim F. Storm <storm@cua.dk>
18873
18874 The following changes rework my patch of 2002-02-06 which
18875 added command remapping by entering the commands directly into
18876 the keymaps. Now, command remapping uses an explicit `remap'
18877 prefix in the keymaps, i.e. [remap COMMAND].
18878
18879 * keymap.c (Qremap, remap_command_vector): New variables.
18880 (is_command_symbol): Remove function.
18881 (Fdefine_key): No longer accept a symbol for KEY.
18882 Added validation of [remap COMMAND] argument for KEY.
18883 The DEF is no longer required to be a symbol when remapping a command.
18884 (Fremap_command): New function to remap command through keymaps.
18885 (Flookup_key): Perform command remapping initiated by
18886 Fremap_command directly for speed.
18887 (Fkey_binding): Use Fremap_command for command remapping.
18888 (where_is_internal): Handle new command remapping representation.
18889 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18890 staticpro them. Defsubr Fremap_command.
18891
18892 * keymap.h (Fremap_command): Declare extern.
18893 (is_command_symbol): Remove extern.
18894
18895 * keyboard.c (command_loop_1): Use Fremap_command for command
18896 remapping; now try command remapping for all symbols.
18897
18898 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18899
18900 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18901
18902 2002-02-23 Jason Rumney <jasonr@gnu.org>
18903
18904 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18905 on the string before encoding it.
18906 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18907 after decoding it.
18908
18909 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18910
18911 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18912
18913 * w32term.c (enter_timestamp): Remove unused static variable to
18914 prevent warning.
18915
18916 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18917
18918 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18919
18920 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18921
18922 * xselect.c (selection_data_to_lisp_data): Fix last change.
18923
18924 2002-02-22 Jason Rumney <jasonr@gnu.org>
18925
18926 * w32term.h (struct w32_output): New member menu_command_in_progress.
18927
18928 * w32menu.c (menubar_selection_callback): Free the menu and
18929 clear the menu_command_in_progress flag.
18930
18931 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18932 (menu_free_timer): New variable.
18933 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18934 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18935 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18936 menu command is in progress.
18937 <WM_COMMAND>: Set the menu_command_in_progress flag.
18938 Kill any menu_free_timer that is running.
18939
18940 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18941 Call ExtTextOutA rather than ExtTextOut.
18942
18943 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18944
18945 * puresize.h (BASE_PURESIZE): Increase to 755000.
18946
18947 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18948
18949 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18950 on the string before encoding it.
18951 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18952 after decoding it.
18953
18954 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18955
18956 Support for ICCCM Extended Segments in X selections:
18957
18958 * xselect.c <Qcompound_text_no_extensions>: New variable.
18959 (syms_of_xselect): Intern and staticpro it.
18960 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18961 selection text.
18962 (lisp_data_to_selection_data): If next-selection-coding-system is
18963 compound-text-no-extensions, set the type of selection to be
18964 compound-text.
18965
18966 * xterm.h (x_encode_text): Update prototype.
18967
18968 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18969 callers changed. If SELECTIONP is non-zero, run the
18970 pre-write-conversion function before encoding the selection text.
18971
18972 2002-02-21 Kim F. Storm <storm@cua.dk>
18973
18974 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18975
18976 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18977 Correct composing of language-change event.
18978
18979 2002-02-20 Kim F. Storm <storm@cua.dk>
18980
18981 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18982 bindings at PT when building menu (the menu is not updated often
18983 enough for this to work reliable).
18984 (tool_bar_items): Likewise.
18985 (current_active_maps): Removed unused (and buggy) function.
18986
18987 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18988
18989 * xfns.c (gif_load): Use correct width and height for GIF images.
18990
18991 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18992
18993 * floatfns.c (Fatan): Accept an optional second arg and call
18994 atan2 if passed 2 args.
18995
18996 2002-02-18 Jason Rumney <jasonr@gnu.org>
18997
18998 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18999
19000 2002-02-17 Jason Rumney <jasonr@gnu.org>
19001
19002 * w32term.c (x_autoselect_window_p): New variable.
19003 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19004 (note_mouse_movement): Use it.
19005
19006 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19007
19008 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19009
19010 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19011 New variables.
19012 (syms_of_w32fns): Intern and staticpro them.
19013 (x_frame_parms) <"fullscreen">: New parameter.
19014 (x_fullscreen_move, x_set_fullscreen): New functions.
19015 (x_set_frame_parameters): Support Qfullscreen.
19016 (x_real_positions): Save x/y_pixels_diff frame params.
19017 (x_figure_window_size): Support full-screen frames.
19018 (Fx_create_frame): Default the fullscreen parameter.
19019
19020 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19021 (x_fullscreen_adjust): New functions.
19022 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19023 fullscreen. Call x_check_fullscreen_move, and set the
19024 want_fullscreen member of output_data.w32
19025 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19026
19027 * w32term.h: New enum for FULLSCREEN_* constants.
19028 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19029 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19030 (x-fullscreen-adjust): New prototype.
19031
19032 2002-02-17 Kim F. Storm <storm@cua.dk>
19033
19034 * frame.c (Vmouse_highlight): New variable.
19035 (syms_of_frame): DEFVAR_LISP it.
19036
19037 * frame.h (Vmouse_highlight): Declare extern.
19038
19039 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19040
19041 * xterm.c (disable_mouse_highlight): Removed variable.
19042 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19043 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19044 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19045 and on after keyboard input.
19046 (x_term_init): Initialize mouse_face_hidden.
19047
19048 * msdos.h (struct display_info): Add mouse_face_hidden.
19049
19050 * msdos.c (disable_mouse_highlight): Removed variable.
19051 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19052 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19053 (internal_terminal_init): Initialize mouse_face_hidden.
19054 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19055 and on after keyboard input.
19056
19057 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19058
19059 * w32term.c (disable_mouse_highlight): Removed variable.
19060 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19061 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19062 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19063 and on after keyboard input.
19064 (w32_initialize_display_info): Initialize mouse_face_hidden.
19065
19066 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19067
19068 * msdos.c (last_mouse_window): New variable.
19069 (dos_rawgetc): Fix last change--if the mouse is in the same window
19070 as recorded in last_mouse_window, don't select this window.
19071
19072 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19073
19074 * msdos.c (x_autoselect_window_p): New variable.
19075 (syms_of_msdos): Defvar it.
19076 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19077 which the last mouse movement occured, unless it is already selected.
19078
19079 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19080 New variables.
19081 (syms_of_xdisp): DEVFAR them.
19082 (hscroll_window_tree): Use automatic_hscroll_margin and
19083 Vautomatic_hscroll_step to compute the amount of window scrolling.
19084
19085 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19086
19087 * xterm.c (x-autoselect-window): New variable.
19088 (note_mouse_movement): Use it.
19089
19090 * keyboard.c: Do not include "systime.h" twice.
19091
19092 2002-02-15 Andreas Schwab <schwab@suse.de>
19093
19094 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19095
19096 * alloc.c (NSTATICS): Increase to 1280.
19097
19098 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19099
19100 * alloc.c (NSTATICS): Bump to 1026.
19101
19102 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19103 (Vx_super_keysym): New variables.
19104 (syms_of_xterm): DEFVAR_LISP them.
19105 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19106 variables to determine which keys to use for the various modifiers.
19107
19108 2002-02-13 Kim F. Storm <storm@cua.dk>
19109
19110 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19111 (mode_line_in_non_selected_windows): New variable.
19112 (syms_of_window): DEFVAR_BOOL it.
19113
19114 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19115 Use mode_line_in_non_selected_windows.
19116 (mode_line_in_non_selected_windows): Declare extern.
19117 (Vmode_line_in_non_selected_windows): Removed extern.
19118
19119 2002-02-13 Richard M. Stallman <rms@gnu.org>
19120
19121 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19122 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19123 (Fclear_this_command_keys): Doc fixes.
19124
19125 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19126 (update_face_from_frame_parameter): Increment face_change_count
19127 and windows_or_buffers_changed to force redisplay using changed faces.
19128
19129 * xdisp.c (QCpropertize): New variable.
19130 (mode_line_proptrans_alist): New variable.
19131 (display_mode_element): New arg PROPS; all calls changed.
19132 Implement this, for strings.
19133 Handle literal output of strings by sharing the
19134 main-line code for strings, using local var `literal'.
19135 Handle :propertize feature.
19136 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19137 mode_line_proptrans_alist.
19138
19139 2002-02-11 Kim F. Storm <storm@cua.dk>
19140
19141 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19142 (syms_of_window): DEFVAR_LISP it.
19143
19144 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19145 (CURRENT_MODE_LINE_FACE_ID): Use it.
19146 (Vmode_line_in_non_selected_windows): Declare extern.
19147
19148 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19149 to get mode line face.
19150
19151 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19152
19153 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19154 variables; cus-start.el doesn't need them anymore.
19155
19156 2002-02-09 Kim F. Storm <storm@cua.dk>
19157
19158 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19159 reduction. This fixes a display problem where stray newlines were
19160 inserted in the window (corrected by C-l). Clarified code (IMHO).
19161
19162 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19163
19164 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19165
19166 * xdisp.c (display_mode_lines): Fix last change.
19167
19168 2002-02-09 Jason Rumney <jasonr@gnu.org>
19169
19170 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19171 match each other.
19172 (w32_load_system_font): Prevent Cleartype fonts from loading.
19173 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19174
19175 2002-02-09 Kim F. Storm <storm@cua.dk>
19176
19177 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19178 (CURRENT_MODE_LINE_HEIGHT): Use it.
19179 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19180
19181 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19182 (pos_visible_p, handle_face_prop): Likewise.
19183 (display_mode_lines): Likewise, but for the real selected window.
19184 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19185
19186 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19187 in non-selected windows.
19188 (realize_basic_faces): Realize it.
19189 (syms_of_term): Intern and staticpro it.
19190
19191 2002-02-08 Kim F. Storm <storm@cua.dk>
19192
19193 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19194 Changed mail addresses to emacs-devel@gnu.org.
19195
19196 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19197
19198 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19199 ~user, and there's no such user, don't discard everything before ~user.
19200
19201 * floatfns.c (Fround): Doc fix.
19202
19203 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19204
19205 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19206
19207 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19208
19209 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19210
19211 2002-02-07 Kim F. Storm <storm@cua.dk>
19212
19213 * keymap.c (where_is_internal): Only check whether definition is
19214 remapped if it fulfills is_command_symbol.
19215
19216 2002-02-07 Andreas Schwab <schwab@suse.de>
19217
19218 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19219
19220 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19221
19222 2002-02-06 Kim F. Storm <storm@cua.dk>
19223
19224 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19225 defining command remapping. Doc updated.
19226 (Flookup_key): Remap command through keymap if KEY is a symbol.
19227 (is_command_symbol): New function.
19228 (Fkey_binding): Use it. New optional argument NO-REMAP.
19229 Doc updated. Callers changed. Perform command remapping via
19230 recursive call unless that arg is non-nil.
19231 (where_is_internal): New argument no_remap. Callers changed.
19232 Call recursively to find original key bindings for a remapped
19233 comand unless that arg is non-nil.
19234 (Fwhere_is_internal): New optional argument NO-REMAP.
19235 Doc updated. Callers changed. Pass arg to where_is_internal.
19236
19237 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19238 (is_command_symbol): Add prototype.
19239
19240 * keyboard.c (Vthis_original_command): New variable.
19241 (syms_of_keyboard): DEFVAR_LISP it.
19242 (command_loop_1): Set it, and perform command remapping.
19243
19244 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19245
19246 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19247
19248 2002-02-06 Jason Rumney <jasonr@gnu.org>
19249
19250 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19251
19252 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19253
19254 * charset.c (get_charset_id): Use if-else instead of ?:.
19255
19256 2002-02-06 Richard M. Stallman <rms@gnu.org>
19257
19258 * filelock.c (S_ISLNK): Define if not defined.
19259
19260 2002-02-03 Richard M. Stallman <rms@gnu.org>
19261
19262 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19263
19264 * lread.c (read1): Redesign strategy for force_multibyte and
19265 force_singlebyte. Now is_multibyte records whether read_buffer
19266 is multibyte. Encountering any multibyte character makes it so.
19267
19268 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19269
19270 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19271 with the same sequence, map that sequence to f10 rather than f0.
19272
19273 2002-02-03 Andreas Schwab <schwab@suse.de>
19274
19275 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19276 latter never being defined on GNU/Linux.
19277
19278 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19279
19280 * xfaces.c (realize_default_face): Don't set the weight and slant of
19281 the default face to Qnormal, unless these attributes are unspecified.
19282
19283 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19284
19285 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19286 Call cancel_hourglass unconditionally.
19287
19288 * eval.c (Fsignal): Remove duplicated declaration of
19289 the variable `display_hourglass_p'.
19290
19291 2002-01-31 Richard M. Stallman <rms@gnu.org>
19292
19293 * editfns.c (region_limit): Nicer error message.
19294
19295 * coding.c (decode_composition_emacs_mule):
19296 Give up if NCOMPONENT gets too large to index `component'.
19297
19298 * callint.c (check_mark): New arg to specify clearer error message.
19299 Callers changed.
19300
19301 2002-01-27 Richard M. Stallman <rms@gnu.org>
19302
19303 * minibuf.c (Fcompleting_read): Doc fix.
19304
19305 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19306
19307 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19308 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19309 Fix doc-strings.
19310
19311 2002-01-26 Richard M. Stallman <rms@gnu.org>
19312
19313 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19314
19315 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19316 and scroll_up_aggressively.
19317
19318 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19319
19320 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19321
19322 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19323
19324 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19325 (Fprevious_property_change, Fprevious_single_property_change):
19326 Stay within the narrowed-buffer boundaries.
19327
19328 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19329
19330 * term.c (Ftty_display_color_cells): New function.
19331 (syms_of_term): Defsubr it.
19332 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19333 argument name to DISPLAY. Doc fix.
19334
19335 * dispextern.h: Add prototype for set_tty_color_mode and
19336 tty_setup_colors.
19337
19338 2002-01-24 Jason Rumney <jasonr@gnu.org>
19339
19340 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19341 If region left to draw is not what was expected, mark the frame as
19342 garbaged.
19343
19344 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19345 Combine the regions returned by BeginPaint and GetUpdateRect.
19346
19347 2002-01-23 Jason Rumney <jasonr@gnu.org>
19348
19349 * w32term.c (x_update_window_begin): Only hide caret if
19350 w32_use_visible_system_caret is set.
19351 (x_update_window_end): Only show caret if
19352 w32_use_visible_system_caret is set.
19353 (syms_of_w32term): Handle SystemParametersInfo call failing.
19354
19355 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19356
19357 2002-01-22 Richard M. Stallman <rms@gnu.org>
19358
19359 * unexelf.c (unexec): Define n so as to cause compilation error
19360 for the code where people have often written n instead of nn.
19361
19362 * .gdbinit (hookpost-run): Defined.
19363
19364 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19365
19366 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19367
19368 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19369
19370 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19371 if fullscreen is being set.
19372
19373 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19374
19375 * minibuf.c (Fminibuffer_contents)
19376 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19377 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19378
19379 2002-01-21 Richard M. Stallman <rms@gnu.org>
19380
19381 * window.c (check_frame_size): Fix minimum height calculation.
19382
19383 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19384
19385 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19386 height before comparison.
19387 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19388
19389 2002-01-20 Jason Rumney <jasonr@gnu.org>
19390
19391 * w32term.c (w32_system_caret_width): Remove.
19392 (w32_use_visible_system_caret): New user flag.
19393 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19394 Windows reports a screen reader running.
19395 (x_update_window_begin): Hide the system caret.
19396 (x_update_window_end): Show the system caret.
19397 (x_display_and_set_cursor): Don't draw a cursor when
19398 w32_use_visible_system_caret is set. Do not adjust width.
19399
19400 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19401 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19402 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19403 the user requests it. Use system default width when creating.
19404 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19405
19406 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19407 New window messages.
19408
19409 2002-01-20 Richard M. Stallman <rms@gnu.org>
19410
19411 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19412
19413 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19414
19415 * doprnt.c (doprnt1): Fix typos in error call.
19416
19417 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19418
19419 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19420
19421 2002-01-20 Jason Rumney <jasonr@gnu.org>
19422
19423 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19424 that Windows returns. If a double check fails, try to guess how
19425 ExtTextOut is going to act.
19426
19427 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19428 in place of stricmp.
19429 (w32_list_synthesized_fonts): Removed.
19430 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19431 (struct enumfont_t): New element; list.
19432 (enum_font_cb2): List all style and charset variations of a font.
19433 (Fw32_select_font): New optional argument; include_proportional.
19434 Exclude vertical fonts. Exclude proportional fonts unless
19435 include_proportional is non-nil.
19436 (w32_enable_synthesized_fonts): Change to a boolean.
19437 (Fw32_send_sys_command): Doc fix.
19438
19439 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19440
19441 * dispnew.c (update_frame): Move the variable `tem' to the block
19442 where it is used.
19443
19444 2002-01-19 Jason Rumney <jasonr@gnu.org>
19445
19446 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19447 call to face-set-after-frame-default.
19448
19449 2002-01-18 Richard M. Stallman <rms@gnu.org>
19450
19451 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19452 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19453
19454 2002-01-17 Richard M. Stallman <rms@gnu.org>
19455
19456 * window.c (enlarge_window): When exceeding size of parent,
19457 directly delete all the siblings instead of trying to resize it.
19458
19459 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19460
19461 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19462
19463 2002-01-16 Henrik Enberg <henrik@enberg.org>
19464
19465 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19466
19467 2002-01-16 Kim F. Storm <storm@cua.dk>
19468
19469 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19470 is invisible. This can happen if cursor is on top line of a
19471 window, and we switch to a buffer with a header line.
19472
19473 * w32term.c (x_erase_phys_cursor): Ditto.
19474
19475 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19476
19477 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19478 `dont_resize' only when used.
19479
19480 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19481
19482 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19483
19484 * xdisp.c (display_mode_element): When computing charpos, depend
19485 on multibyteness of elt, not the text in field.
19486
19487 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19488
19489 * buffer.c (Fkill_all_local_variables):
19490 Increment `update_mode_lines' only once.
19491
19492 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19493
19494 * lisp.h (adjust_after_replace_noundo)
19495 (Fupdate_coding_systems_internal): Add prototypes.
19496
19497 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19498
19499 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19500
19501 Support for the --color command-line argument and tty-color-mode
19502 frame parameter:
19503
19504 * term.c (tty_default_color_capabilities, tty_setup_colors)
19505 (set_tty_color_mode): New functions.
19506 (term_init): Call tty_default_color_capabilities.
19507 (Qtty_color_mode_alist): New variable.
19508 (syms_of_term): Intern and staticpro it.
19509
19510 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19511 frames.
19512 (do_switch_frame): For termcap frames, switch the tty
19513 color mode as specified by the frame's parameters.
19514 (Qtty_color_mode): New variable.
19515 (syms_of_frame): Intern and staticpro it.
19516
19517 * emacs.c (USAGE2): Add the --color option.
19518 (standard_args): Ditto.
19519
19520 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19521
19522 * xterm.h (struct x_output): New members want_fullscreen,
19523 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19524 y_pixels_outer_diff.
19525 New enum for FULLSCREEN_* constants.
19526 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19527 is NULL.
19528 (x_fullscreen_adjust): Add prototype.
19529
19530 * emacs.c (USAGE2): Add the new full-screen arguments.
19531 (standard_args): Ditto.
19532
19533 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19534 New variables.
19535 (syms_of_xfns): Intern and staticpro them.
19536 (x_frame_parms) <"fullscreen">: New parameter.
19537 (x_fullscreen_move, x_set_fullscreen): New functions.
19538 (x_set_frame_parameters): Support for Qfullscreen.
19539 (x_real_positions): More accurate computation of the frame position.
19540 (x_figure_window_size): Support full-screen frames.
19541 (Fx_create_frame): Default the fullscreen parameter.
19542
19543 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19544 (XTread_socket) <Expose>: Call x_check_fullscreen.
19545 <ConfigureNotify>: Don't resize to fullscreen.
19546 Call x_check_fullscreen_move, and set the want_fullscreen member of
19547 output_data.x.
19548
19549 2002-01-13 Jason Rumney <jasonr@gnu.org>
19550
19551 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19552 for mice with more than 3 buttons.
19553
19554 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19555 (w32_read_socket): Handle new "XBUTTON" messages.
19556
19557 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19558 (syms_of_w32fns): DEFVAR_BOOL it.
19559 (w32_wnd_proc): Handle new "XBUTTON" messages.
19560
19561 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19562
19563 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19564
19565 2002-01-13 Andreas Schwab <schwab@suse.de>
19566
19567 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19568
19569 2002-01-12 Andreas Schwab <schwab@suse.de>
19570
19571 * .gdbinit (xbuffer): Remove address operator since data is now a
19572 pointer.
19573
19574 2002-01-11 Richard M. Stallman <rms@gnu.org>
19575
19576 * insdel.c (adjust_after_replace_noundo): New function.
19577
19578 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19579
19580 2002-01-09 Jason Rumney <jasonr@gnu.org>
19581
19582 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19583 when checking for multiple frames.
19584
19585 2002-01-08 Richard M. Stallman <rms@gnu.org>
19586
19587 * window.c (delete_window): Rewrite the code for changing the
19588 selected window to handle the case where WINDOW is not a leaf.
19589
19590 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19591
19592 * process.c (send_process): Set src_multibyte to 1 after the call
19593 top setup_coding_system, not before the call.
19594
19595 2002-01-07 Jason Rumney <jasonr@gnu.org>
19596
19597 * xmenu.c (set_frame_menubar, xmenu_show):
19598 (xdialog_show): Initialize wv->help to Qnil.
19599
19600 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19601 (w32_dialog_show): Initialize wv->help to Qnil.
19602
19603 2002-01-06 Jason Rumney <jasonr@gnu.org>
19604
19605 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19606
19607 * w32menu.c (w32_menu_display_help): Revert last change.
19608
19609 * xmenu.c (menu_highlight_callback): Revert last change.
19610
19611 2002-01-06 Andreas Schwab <schwab@suse.de>
19612
19613 * insdel.c (make_gap_larger): Make sure buffer size does not
19614 overflow range of int.
19615
19616 2002-01-05 Jason Rumney <jasonr@gnu.org>
19617
19618 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19619 OVERLAPS_P.
19620
19621 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19622
19623 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19624 to the left or to the right of the pointer, put it against
19625 the left screen edge.
19626 (x_frame_parms): Add missing braces around initializer.
19627
19628 * w32term.c (x_setup_relief_colors): Don't compute an image's
19629 background color if it doesn't have a Pixmap.
19630 (notice_overwritten_cursor): Don't depend on
19631 output_cursor and updated_area. Compare pixel coordinates with
19632 window's cursor pixel coordinates.
19633 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19634 Call notice_overwritten_cursor with new arg list.
19635 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19636 unconditionally.
19637 (x_draw_image_relief): Use predefined macro instead of
19638 constant when the value of `tool_bar_button_relief' is negative.
19639
19640 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19641
19642 2002-01-04 Richard M. Stallman <rms@gnu.org>
19643
19644 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19645
19646 2002-01-03 Richard M. Stallman <rms@gnu.org>
19647
19648 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19649 (Fkey_binding): Try the `keymap' property map first.
19650 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19651 minor mode bindings.
19652
19653 2002-01-03 Kim F. Storm <storm@cua.dk>
19654
19655 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19656
19657 2002-01-02 Richard M. Stallman <rms@gnu.org>
19658
19659 * keyboard.c (read_key_sequence): Handle the keymap property
19660 before minor mode maps.
19661
19662 * editfns.c (Fformat): Update thissize from field_width
19663 based on the actual width, in the string case.
19664
19665 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19666
19667 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19668 when used as truth value to prevent gcc warnings.
19669
19670 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19671 * w32proc.c: Include <config.h>.
19672
19673 2002-01-01 Andreas Schwab <schwab@suse.de>
19674
19675 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19676 not EMACS_INT, to make them compatible with DEFVAR_INT.
19677 * lisp.h (max_specpdl_size): Adjust declaration.
19678
19679 2002-01-01 Richard M. Stallman <rms@gnu.org>
19680
19681 * print.c (print_object): Test print_escape_nonascii only for
19682 unibyte strings.
19683 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19684 when outputting to a multibyte buffer.
19685
19686 2001-12-29 Richard M. Stallman <rms@gnu.org>
19687
19688 * print.c (print_object): In multibyte string, use hex escapes.
19689 Use octal only for unibyte strings.
19690 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19691
19692 * lread.c (read_escape): New arg BYTEREP for reporting whether
19693 escape forces unibyte or multibyte.
19694 (read1): When reading a string, take note of that info.
19695
19696 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19697
19698 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19699 comparison to test lisp value returned by Fget.
19700
19701 2001-12-29 Richard M. Stallman <rms@gnu.org>
19702
19703 * lisp.h (max_specpdl_size): Add declaration.
19704
19705 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19706
19707 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19708 Handle modifier bits. Correct typo in error message.
19709
19710 2001-12-28 Richard M. Stallman <rms@gnu.org>
19711
19712 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19713 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19714 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19715 Update calls to Fdefine_abbrev.
19716 (write_abbrev): Update for changed data format.
19717 Don't list "system" abbrevs.
19718 (Fexpand_abbrev): Update use count with new data format.
19719 (describe_abbrev): Update for changed data format.
19720 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19721
19722 * config.in (HAVE_MBSINIT): Add #undef.
19723
19724 * strftime.c (mbsinit): Define as no-op if not available.
19725
19726 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19727 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19728
19729 * keymap.c (Flookup_key): Error message if key has wrong data type.
19730 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19731 (exclude_key): New variable.
19732
19733 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19734
19735 * xterm.c (x_setup_relief_colors): Don't compute an image's
19736 background color if it doesn't have a Pixmap.
19737
19738 * xterm.c (notice_overwritten_cursor): Don't depend on
19739 output_cursor and updated_area. Compare pixel coordinates with
19740 window's cursor pixel coordinates.
19741 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19742 Call notice_overwritten_cursor with new arg list.
19743 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19744 unconditionally.
19745
19746 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19747 height of the cursor line to the amount to scroll.
19748
19749 2001-12-27 Richard M. Stallman <rms@gnu.org>
19750
19751 * intervals.c (set_point_both): The position after an invisible,
19752 intangible character is not an acceptable stopping point.
19753
19754 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19755
19756 * window.c (enlarge_window): In new preserve_before code, convert
19757 CURBEG from lisp object to integer before doing arithmetic.
19758
19759 2001-12-27 Richard M. Stallman <rms@gnu.org>
19760
19761 * bytecode.c (Fbyte_code): Undo previous change.
19762
19763 2001-12-26 Kim F. Storm <storm@cua.dk>
19764
19765 * keyboard.c (record_char): Ignore duplicate help-echo events only
19766 separated by mouse-movement. When tracking mouse, only record
19767 first and last mouse-movement event in same window.
19768 Don't record mouse-movement events in keyboard macros.
19769
19770 2001-12-25 Richard M. Stallman <rms@gnu.org>
19771
19772 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19773 (Fenlarge_window): New arg PRESERVE_BEFORE.
19774
19775 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19776 instead of Fstring_as_unibyte.
19777
19778 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19779
19780 The following changes remove mocklisp support:
19781
19782 * mocklisp.h, mocklisp.c: Files removed.
19783
19784 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19785 `Qmocklisp' and `Qmocklisp_arguments'.
19786 Remove prototype of syms_of_mocklisp.
19787
19788 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19789
19790 * callint.c: Do not include mocklisp.h.
19791 (Fcall_interactively): Do not test for mocklisp case.
19792
19793 * eval.c: Remove variables `Qmocklisp_arguments',
19794 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19795 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19796 Do not test for mocklisp case.
19797 (Fwhile): Remove unused variable `tem'.
19798 (syms_of_eval): Remove variable `moclisp-arguments'.
19799
19800 * data.c (wrong_type_argument): Remove mocklisp case.
19801
19802 * doc.c (Fdocumentation): Remove mocklisp case.
19803
19804 * emacs.c (main): Do not call syms_of_mocklisp.
19805
19806 2001-12-21 Richard M. Stallman <rms@gnu.org>
19807
19808 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19809 to the left or to the right of the pointer, put it against
19810 the left screen edge.
19811
19812 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19813
19814 * Makefile.in (distclean): Remove .gdbinit if we are building
19815 outside the source tree.
19816
19817 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19818
19819 * w32.c (emacs_root_dir): New function.
19820
19821 * msdos.c (emacs_root_dir): New function.
19822
19823 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19824 of the current drive as the fallback for default_directory.
19825
19826 * dired.c (file_name_completion): Run the elements of
19827 completion-ignored-extensions through ENCODE_FILE.
19828
19829 * lisp.h (scmp): Remove prototype, since it's now a static
19830 function private to dired.c.
19831
19832 2001-12-18 Richard M. Stallman <rms@gnu.org>
19833
19834 * dired.c (scmp): Function moved from minibuf.c.
19835 Delete multibyte handling--used only on encoded strings.
19836
19837 * minibuf.c (scmp): Function moved to dired.c.
19838
19839 * fns.c (merge): Add QUIT call.
19840
19841 2001-12-18 Dave Love <fx@gnu.org>
19842
19843 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19844 language/georgian.el.
19845
19846 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19847
19848 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19849 lisp/Makefile.in:DONTCOMPILE.
19850
19851 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19852
19853 * xdisp.c (window_box_height): Do not return negative values.
19854 From Gerd Moellmann <gerd@gnu.org>.
19855
19856 * keyboard.c (head_table): Add missing braces around initializer.
19857
19858 * term.c (keys): Likewise.
19859
19860 * xfns.c (x_frame_parms, visual_classes): Likewise.
19861
19862 2001-12-17 Sam Steingold <sds@gnu.org>
19863
19864 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19865 patch (COMPOSING_P, not COMPOSING).
19866
19867 2001-12-17 Richard M. Stallman <rms@gnu.org>
19868
19869 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19870
19871 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19872 before calling decode_coding.
19873
19874 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19875
19876 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19877 instead of only for COMPOSITION_DISABLED.
19878
19879 2001-12-16 Richard M. Stallman <rms@gnu.org>
19880
19881 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19882
19883 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19884
19885 * buffer.h (struct buffer): New field `display_error_modiff'.
19886 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19887
19888 * window.c (Frecenter): Clear display_error_modiff field.
19889
19890 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19891 Call redisplay_window, but not if display_error_modiff field says no.
19892 (redisplay_window_error): New function.
19893 (displayed_buffer): New variable.
19894 (redisplay_internal, redisplay_windows): Call the new functions
19895 instead of redisplay_window directly.
19896
19897 2001-12-15 Richard M. Stallman <rms@gnu.org>
19898
19899 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19900
19901 2001-12-14 Andrew Innes <andrewi@gnu.org>
19902
19903 * makefile.w32-in (EMACSLOADPATH): Define.
19904 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19905 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19906
19907 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19908
19909 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19910 parameter have a numeric value all the time.
19911
19912 * w32fns.c (x_report_frame_params): Likewise.
19913
19914 2001-12-12 Richard M. Stallman <rms@gnu.org>
19915
19916 * fileio.c (Fwrite_region): Doc fix.
19917
19918 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19919 (redisplay_internal): Call clear_image_cache only for window terminals.
19920
19921 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19922
19923 * xdisp.c (move_it_vertically_backward): Change heuristic
19924 for the case that we didn't move far enough initially.
19925
19926 * window.c (Frecenter): Simplify computation in the case of window
19927 system frames and ARG < 0; use window_box_height.
19928
19929 2001-12-11 Richard M. Stallman <rms@gnu.org>
19930
19931 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19932 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19933
19934 2001-12-11 Andrew Innes <andrewi@gnu.org>
19935
19936 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19937 arg is negative.
19938
19939 2001-12-11 Richard M. Stallman <rms@gnu.org>
19940
19941 * m/hp800.h: Split the __hpux conditional into the parts
19942 that are right for GNU/Linux too and the parts that are not.
19943 Use the former if GNU_LINUX.
19944 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19945
19946 * s/gnu-linux.h (GNU_LINUX): Defined.
19947
19948 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19949
19950 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19951 `new style' [w/`doc:' keyword].
19952
19953 2001-12-10 Jason Rumney <jasonr@gnu.org>
19954
19955 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19956 before using.
19957
19958 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19959
19960 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19961 keyword].
19962
19963 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19964
19965 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19966
19967 * s/hpux10.h (srand48): Don't undefine.
19968
19969 2001-12-09 Jason Rumney <jasonr@gnu.org>
19970
19971 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19972 Add comment to explain where the struct came from.
19973 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19974 (add_menu_item): Process pop-up menus first to avoid memory leak.
19975 (add_menu_item, w32_menu_display_help): Use `help' field as
19976 Lisp_Object.
19977 (w32_free_submenu_strings): Only free owner-drawn strings.
19978
19979 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19980
19981 * COPYING: Moved back.
19982
19983 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19984 Add parentheses around && within ||.
19985
19986 * indent.c (compute_motion): Likewise.
19987
19988 * intervals.c (merge_properties_sticky): Likewise.
19989
19990 * coding.c (setup_coding_system, shrink_encoding_region)
19991 (Fdecode_sjis_char): Likewise.
19992
19993 2001-12-07 Andreas Schwab <schwab@suse.de>
19994
19995 * xdisp.c (display_mode_element): Don't read past end of string if
19996 it ends with '%'.
19997
19998 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19999 can hold.
20000
20001 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20002 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20003 type changed to Lisp_Object.
20004 (syms_of_data): DEFVAR_LISP them.
20005
20006 2001-12-07 Richard M. Stallman <rms@gnu.org>
20007
20008 * callproc.c (init_callproc): Set Vdata_directory based on the source
20009 location whenever Emacs was run uninstalled.
20010
20011 2001-12-06 Paul Eggert <eggert@twinsun.com>
20012
20013 * config.in (HAVE_WORKING_VFORK): New #undefs.
20014 * process.c (create_process):
20015 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20016 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20017 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20018 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20019 * m/intel386.h (HAVE_VFORK): Likewise.
20020 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20021 * m/mips.h (HAVE_VFORK): Likewise.
20022 * s/freebsd.h (vfork): Remove #define.
20023 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20024 * s/usg5-4-2.h: Fix comment about vfork.
20025
20026 2001-12-06 Richard M. Stallman <rms@gnu.org>
20027
20028 * s/hpux10.h (random): Add undef.
20029 (HAVE_RANDOM): Define it just once.
20030
20031 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20032
20033 * eval.c: Undo last change: the standard syntax is not wanted.
20034
20035 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20036
20037 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20038 scroll bars of the frame before deleting the frame itself. If the
20039 frame has a widget, delete the frame with XtDestroyWidget, and do
20040 not call XDestroyWindow before that.
20041
20042 2001-12-06 Kim F. Storm <storm@cua.dk>
20043
20044 * xfns.c (x_report_frame_params): Return actual fringe widths.
20045
20046 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20047
20048 2001-12-05 Andrew Innes <andrewi@gnu.org>
20049
20050 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20051 excessively large.
20052
20053 * insdel.c (make_gap_larger): New function.
20054 (make_gap_smaller): New function.
20055 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20056 Call make_gap_smaller if arg is negative.
20057
20058 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20059
20060 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20061 Pass a dummy argument when calling interrupt_signal.
20062 (parse_menu_item): Mark disabled items before checking for empty def.
20063 (read_char_minibuf_menu_prompt): Make safety more visible.
20064 (read_key_sequence): Add a `first_unbound' variable.
20065 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20066 unbound prefix as soon as we can detect it.
20067
20068 * doc.c (Fsnarf_documentation): Add prototype.
20069 (get_doc_string): Handle negative arguments.
20070 (Fdocumentation): Use AREF and ASIZE.
20071 Move the calls to get_doc_string to a single place.
20072 Don't confuse an interactive-spec for a docstring reference.
20073 (Fdocumentation_property): Take advantage of the fact that
20074 get_doc_string now ignores the sign of the docstring position.
20075
20076 * eval.c: Use standard syntax for usage in docstrings.
20077
20078 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20079
20080 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20081
20082 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20083
20084 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20085 constant when the value of `tool_bar_button_relief' is negative.
20086
20087 2001-12-02 Richard M. Stallman <rms@gnu.org>
20088
20089 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20090 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20091
20092 * fileio.c (read_non_regular): Delete Fsignal call.
20093
20094 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20095
20096 * lisp.h (run_hook_list_with_args): Undo last change.
20097
20098 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20099
20100 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20101
20102 2001-12-01 Jason Rumney <jasonr@gnu.org>
20103
20104 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20105
20106 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20107 [!WM_MOUSELEAVE]: Define.
20108
20109 * w32menu.c (current_popup_menu, get_menu_item_info):
20110 (set_menu_item_info): New vars.
20111 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20112 (w32_menu_show): Set current_popup_menu.
20113 (add_menu_item): Allocate new strings for owner-drawn menu items
20114 and help strings.
20115 Use owner-draw for disabled menu items again.
20116 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20117 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20118
20119 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20120 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20121 <WM_EXITMENULOOP>: Free menu strings.
20122 <WM_MOUSELEAVE>: Stop tracking mouse.
20123 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20124
20125 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20126 and mouse face.
20127
20128 2001-12-01 Kim F. Storm <storm@cua.dk>
20129
20130 The following changes add left-fringe and right-fringe
20131 frame parameters to adjust fringe widths, or remove one or
20132 both fringes.
20133
20134 * frame.h (struct frame): Remove trunc_area_pixel_width and
20135 trunc_area_cols fields.
20136 (Qleft_fringe, Qright_fringe): Declare.
20137 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20138
20139 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20140 (syms_of_frame): Initialize them.
20141
20142 * window.c (coordinates_in_window): Handle separate left and right
20143 fringe widths.
20144
20145 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20146 and fringe_cols fields.
20147 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20148 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20149 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20150 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20151 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20152 (x_compute_fringe_widths): Add prototype.
20153
20154 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20155 fill fringe evenly with small dashes.
20156 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20157 clip the new ZV bitmap to avoid jitter between rows.
20158 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20159 background. Don't draw fringe bitmaps if fringe width is zero.
20160 (x_compute_fringe_widths): New function.
20161 (x_new_font, x_set_window_size_1): Use it.
20162
20163 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20164 (x_set_frame_parameters): Process `font' parameter before other
20165 parameters as fringe widths depend on it.
20166 (x_set_fringe_width): New function.
20167 (x_figure_window_size): Use x_compute_fringe_widths.
20168 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20169 parameters.
20170
20171 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20172 (EmacsFrameSetCharSize): Ditto.
20173
20174 * w32term.h: Merged changes from xterm.h.
20175 * w32term.c: Merged changes from xterm.c.
20176 * w32fns.c: Merged changes from xfns.c.
20177
20178 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20179
20180 * COPYING: Removed.
20181
20182 2001-11-29 Dave Love <fx@gnu.org>
20183
20184 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20185 extra extra slot.
20186 (detect_coding_mask): Fix call of detect_coding_iso2022.
20187
20188 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20189
20190 * fileio.c (file-name-coding-system)
20191 (default-file-name-coding-system): Doc fix (links to referenced
20192 variables added).
20193
20194 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20195
20196 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20197 Add dummy uses of gcproN variables.
20198
20199 * category.c (describe_category, describe_category_1)
20200 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20201 (syms_of_category): Don't defsubr Sdescribe_categories.
20202
20203 2001-11-28 Richard M. Stallman <rms@gnu.org>
20204
20205 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20206
20207 * Makefile.in (lispdir): New variable, referring to build dir.
20208 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20209
20210 2001-11-28 Andrew Innes <andrewi@gnu.org>
20211
20212 * w32menu.c (w32_menu_display_help): Actually add the new argument
20213 OWNER.
20214
20215 2001-11-28 Jason Rumney <jasonr@gnu.org>
20216
20217 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20218 menu items. From David Ponce <dponce@wanadoo.fr>.
20219 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20220 conditionally.
20221 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20222 help event in the owner frame's keyboard buffer.
20223
20224 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20225 (Fx_show_tip): Don't subtract last width from row width.
20226
20227 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20228 (w32_read_socket): Use EQ to compare frames.
20229
20230 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20231
20232 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20233 OVERLAPS_P.
20234
20235 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20236
20237 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20238 `gcpro3' and `gcpro4'.
20239
20240 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20241
20242 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20243
20244 * ccl.c: Use AREF and ASIZE.
20245
20246 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20247
20248 * lisp.h (run_hook_list_with_args): Remove.
20249 (LIST_END_P): Fix call to wrong_type_argument.
20250 (make_fixnum_or_float): Use EMACS_INT rather than int.
20251
20252 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20253
20254 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20255 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20256
20257 * eval.c: Use AREF and ASIZE.
20258 (Ffetch_bytecode): Add the file name to the error message.
20259
20260 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20261 which match the end of the file-name.
20262 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20263 is not a valid env var, but leave it as is instead.
20264
20265 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20266 Make nil bindings in char-tables transparent.
20267 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20268
20269 2001-11-26 Richard M. Stallman <rms@gnu.org>
20270
20271 * textprop.c (set_text_properties_1): Allow START, END in either order.
20272 Do nothing if range is empty.
20273
20274 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20275
20276 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20277 (clean): Not here.
20278
20279 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20280
20281 * textprop.c (set_text_properties_1): Clearly mark that the
20282 interval should not be empty.
20283
20284 * intervals.c (graft_intervals_into_buffer):
20285 Don't call set_text_properties_1 on an empty interval.
20286
20287 2001-11-25 Richard M. Stallman <rms@gnu.org>
20288
20289 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20290
20291 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20292 don't lose the data in it.
20293
20294 2001-11-25 Juanma Barranquero <lektu@terra.es>
20295
20296 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20297
20298 * buffer.c (Fkill_buffer): Likewise.
20299
20300 * print.c (temp_output_buffer_setup): Likewise.
20301
20302 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20303
20304 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20305
20306 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20307
20308 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20309 Niemitalo <kon@iki.fi>.
20310
20311 2001-11-25 Jason Rumney <jasonr@gnu.org>
20312
20313 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20314
20315 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20316 (Fx_show_tip): Block input during frame creation.
20317 (Fx_show_tip, Fx_hide_tip): Enable.
20318
20319 2001-11-24 Richard M. Stallman <rms@gnu.org>
20320
20321 * lread.c (Fload): Detect recursive load error for more than 3
20322 nestings of the same file.
20323 (Vrecursive_load_depth_limit): Variable deleted.
20324 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20325
20326 2001-11-24 Jason Rumney <jasonr@gnu.org>
20327
20328 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20329 mouse position if either left or top is not specified.
20330
20331 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20332 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20333 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20334 (my_create_tip_window): Assign tip_window.
20335 (x_create_tip_frame): Use same defaults as X.
20336 (compute_tip_xy): Remove unused variable. Use full screen width.
20337 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20338
20339 * w32term.c (x_after_update_window_line): Doc fix.
20340 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20341 frames.
20342 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20343
20344 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20345 for all Windowed systems.
20346
20347 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20348
20349 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20350 realized, use the initial screen colors to clear the screen.
20351
20352 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20353
20354 * textprop.c (Fset_text_properties): Remove unused variables
20355 `unchanged', `prev_changed', `s' and `len'.
20356
20357 * search.c (Freplace_match): Remove unused variable `inslen'.
20358
20359 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20360
20361 2001-11-22 Jason Rumney <jasonr@gnu.org>
20362
20363 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20364 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20365 (my_create_tip_window): New function.
20366 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20367 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20368
20369 2001-11-20 Jason Rumney <jasonr@gnu.org>
20370
20371 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20372 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20373
20374 * w32fns.c (Vw32_system_coding_system): Remove.
20375 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20376
20377 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20378
20379 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20380 after build_annotations.
20381
20382 * syntax.c (describe_syntax): Add dummy arg.
20383 (describe_syntax_1): Update call to describe_vector.
20384
20385 * category.c (describe_category): Add dummy arg.
20386 (describe_category_1): Update call to describe_vector.
20387
20388 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20389 (describe_command, describe_translation): Add dummy second param.
20390 (describe_map): Call elt_describer with two arguments.
20391 (describe_vector_princ): Add `fun' parameter.
20392 Call it instead of the hardcoded `princ'.
20393 (describe_vector): Add arg `args'.
20394 Pass it as a new second argument to elt_describer.
20395
20396 * keymap.h (describe_vector): Update prototype.
20397
20398 * frame.c: Don't include keymap.h any more.
20399 (keys_of_frame): Remove.
20400
20401 * lisp.h (keys_of_frame): Remove declaration.
20402
20403 * emacs.c (main): Don't call `keys_of_frame' any more.
20404
20405 2001-11-14 Andreas Schwab <schwab@suse.de>
20406
20407 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20408 if defined, 0 otherwise.
20409 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20410 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20411
20412 2001-11-19 Richard M. Stallman <rms@gnu.org>
20413
20414 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20415
20416 2001-11-18 Jason Rumney <jasonr@gnu.org>
20417
20418 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20419 (x_draw_bar_cursor): If the background color of the glyph under
20420 the cursor equals the frame's cursor color, use the glyph's
20421 foreground color for drawing the bar cursor.
20422 (x_after_update_window_line): Clear internal border in different
20423 circumstances.
20424 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20425 (w32_draw_relief_rect): Correct relief by 1 pixel.
20426 (x_set_glyph_string_background_width):
20427 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20428 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20429 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20430 if cursor_in_non_selected_windows is false.
20431 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20432 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20433 Notice if cursor gets overwritten.
20434 (notice_overwritten_cursor): Renamed from
20435 note_overwritten_text_cursor. Rewritten to take glyph widths
20436 into account, and to take X positions as parameters.
20437 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20438 around call to x_draw_glyphs.
20439 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20440 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20441 color to use for image glyph reliefs.
20442 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20443 (glyph_rect): Remove unused variable `area'.
20444
20445 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20446 some items.
20447 (x_set_internal_border_width): Set frame garbaged when window
20448 doesn't exist yet.
20449 (Fx_create_frame): Accept zero tool_bar_button_relief.
20450 (x_clear_image_1, four_corners_best, image_background)
20451 (image_background_transparent): New functions.
20452 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20453 (gs_format): Add `:background' entry.
20454 (lookup_image): Set IMG's background color if specified.
20455 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20456 when appropriate.
20457 (x_clear_image_1): Reset `background_valid' and
20458 `background_transparent_valid' fields.
20459 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20460 calculating it here. Set IMG's background_transparent field.
20461 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20462 (enum png_keyword_index): Add PNG_BACKGROUND.
20463 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20464 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20465 (enum gif_keyword_index): Add GIF_BACKGROUND.
20466 (enum gs_keyword_index): Add GS_BACKGROUND.
20467 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20468 Pre-calculate image background color where necessary.
20469 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20470 Use display info's n_cbits entry for screen depth.
20471 (Fx_show_tip): Remove unused variables `buffer', `top',
20472 `left', `max_width' and `max_height'.
20473
20474 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20475
20476 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20477
20478 * puresize.h (BASE_PURESIZE): Increase to 750000.
20479
20480 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20481
20482 * frame.c (Fframe_live_p): Doc fix.
20483
20484 2001-11-18 Richard M. Stallman <rms@gnu.org>
20485
20486 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20487 (message_dolog_marker3): New static variables hold three markers.
20488 (syms_of_xdisp): Initialize and staticpro them.
20489 (message_dolog): Use message_dolog_marker1..3 instead of
20490 allocating markers each time. Unchain them when done.
20491
20492 2001-11-17 Richard M. Stallman <rms@gnu.org>
20493
20494 * doc.c (Fsnarf_documentation): Doc fix.
20495
20496 2001-11-17 Andreas Schwab <schwab@suse.de>
20497
20498 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20499
20500 2001-11-17 Richard M. Stallman <rms@gnu.org>
20501
20502 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20503
20504 2001-11-17 Jason Rumney <jasonr@gnu.org>
20505
20506 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20507
20508 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20509
20510 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20511 with invalid position.
20512
20513 2001-11-16 Richard M. Stallman <rms@gnu.org>
20514
20515 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20516
20517 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20518 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20519 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20520
20521 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20522
20523 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20524
20525 * fileio.c (build_annotations): Split off the tail.
20526 (build_annotations_2): New fun. Extracted from build_annotations.
20527 (Fwrite_region): Split the call to build_annotations into two
20528 calls to build_annotations and build_annotations_2.
20529
20530 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20531
20532 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20533 clear_waiting_for_input with argument.
20534
20535 * xterm.h (x_update_cursor): Remove duplicated prototype.
20536
20537 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20538
20539 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20540
20541 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20542
20543 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20544
20545 * fileio.c (choose_write_coding_system): New fun, extracted
20546 from Fwrite_region.
20547 (Fwrite_region): Use it.
20548
20549 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20550 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20551 (ml_apply, find_handler_clause): Add prototype.
20552
20553 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20554
20555 * config.in: Add #undef HAVE_COFF_H.
20556
20557 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20558 Required for ISC 4.1.
20559
20560 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20561
20562 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20563 Andrew Wiseman <a.wiseman@btclick.com>.
20564
20565 2001-11-16 Kim F. Storm <storm@cua.dk>
20566
20567 The following changes are made to clean up the various internal
20568 references to the fringes to actually use the term `fringe' for
20569 them. Previously, they were called `flags areas', `bitmap areas',
20570 `left/right side of windows', or implicitly as `flags' or
20571 `bitmaps':
20572
20573 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20574 Comments fixed. Use renamed symbols.
20575
20576 * dispnew.c: Comment fix. Use renamed symbols.
20577
20578 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20579 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20580 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20581
20582 * msdos.c: Comment fix.
20583
20584 * w32fns.c: Use renamed symbols.
20585
20586 * w32term.c: Comment fixes. Use renamed symbols.
20587 (fringe_bitmap_type): Renamed from bitmap_type.
20588 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20589 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20590 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20591
20592 * w32term.h: Comment fixes. Use renamed symbols.
20593 (fringes_extra): Renamed from flags_areas_extra.
20594 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20595 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20596 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20597 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20598 (FRAME_X_LEFT_FRINGE_WIDTH):
20599 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20600 (FRAME_X_RIGHT_FRINGE_WIDTH):
20601 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20602
20603 * widget.c: Use renamed symbols.
20604
20605 * window.c: Comment fixes. Use renamed symbols.
20606 (coordinates-in-window-p): Doc fix.
20607
20608 * xdisp.c: Comment fixes. Use renamed symbols.
20609
20610 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20611
20612 * xfns.c: Use renamed symbols.
20613
20614 * xterm.c: Comment fixes. Use renamed symbols.
20615 (fringe_bitmap_type): Renamed from bitmap_type.
20616 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20617 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20618 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20619
20620 * xterm.h: Comment fixes. Use renamed symbols.
20621 (fringes_extra): Renamed from flags_areas_extra.
20622 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20623 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20624 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20625 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20626 (FRAME_X_LEFT_FRINGE_WIDTH):
20627 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20628 (FRAME_X_RIGHT_FRINGE_WIDTH):
20629 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20630
20631 2001-11-15 Jason Rumney <jasonr@gnu.org>
20632
20633 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20634 work for most menu items. From David Ponce
20635 <david.ponce@wanadoo.fr>.
20636
20637 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20638
20639 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20640 Some x_set_* function expect to be called even if old and new
20641 value are equal.
20642
20643 * xdisp.c (build_desired_tool_bar_string): Accept zero
20644 tool_bar_button_relief.
20645
20646 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20647
20648 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20649
20650 * xterm.c (x_draw_bar_cursor): If the background color of the
20651 glyph under the cursor equals the frame's cursor color, use
20652 the glyph's foreground color for drawing the bar cursor.
20653
20654 * dispnew.c (direct_output_forward_char): Fix character/byte
20655 position comparison.
20656
20657 2001-11-15 Miles Bader <miles@gnu.org>
20658
20659 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20660 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20661 Update arguments to find_field.
20662 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20663 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20664 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20665 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20666
20667 2001-11-14 Richard M. Stallman <rms@gnu.org>
20668
20669 * editfns.c (Fpropertize): Allow call with 1 arg.
20670
20671 * dispextern.h (image_background, image_background_transparent):
20672 Conditionalize on HAVE_X_WINDOWS.
20673
20674 2001-11-13 Richard M. Stallman <rms@gnu.org>
20675
20676 * print.c (Fprin1_to_string): Doc fix.
20677
20678 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20679
20680 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20681
20682 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20683
20684 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20685
20686 * eval.c (syms_of_eval): Doc fix.
20687
20688 * coding.c (syms_of_coding): Doc fix.
20689
20690 * doc.c (Fsnarf_documentation): Doc fix.
20691
20692 * dispnew.c (syms_of_display): Doc fix.
20693
20694 * category.c (Fget_unused_category): Doc fix.
20695
20696 * buffer.c (syms_of_buffer): Doc fixes.
20697
20698 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20699
20700 * print.c (prin1, print): Doc fix.
20701
20702 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20703
20704 * fontset.h: Remove declarations of variables
20705 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20706
20707 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20708 `Vclip_large_size_font'.
20709
20710 2001-11-13 Jason Rumney <jasonr@gnu.org>
20711
20712 * w32fns.c: Doc fix.
20713
20714 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20715
20716 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20717
20718 * fns.c: Doc fix.
20719
20720 * emacs.c: Doc fix.
20721
20722 * coding.c: Doc fix.
20723
20724 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20725 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20726 `new style' [w/`doc:' keyword].
20727
20728 2001-11-12 Richard M. Stallman <rms@gnu.org>
20729
20730 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20731 LeaveNotify events. Only FocusIn and FocusOut do that now.
20732 (x_display_and_set_cursor): Do display hollow cursors in active
20733 minibuffer windows when they are not selected.
20734
20735 2001-11-12 Jason Rumney <jasonr@gnu.org>
20736
20737 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20738 * w32term.c: Change doc-string comments to `new style'
20739 [w/`doc:' keyword]. Doc fixes.
20740
20741 * w32fns.c: Don't define max.
20742 (Fx_open_connection): Only execute once.
20743
20744 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20745
20746 * ccl.c: Change macros to use do-while block instead of if-else.
20747 Use braces to follow GNU Coding Standards.
20748
20749 2001-11-11 Richard M. Stallman <rms@gnu.org>
20750
20751 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20752
20753 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20754
20755 * insdel.c (replace_range): Use adjust_markers_for_replace
20756 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20757
20758 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20759
20760 * textprop.c (set_text_properties_1): New subroutine
20761 broken out of set_text_properties.
20762 (set_text_properties): Use set_text_properties_1.
20763
20764 * intervals.c (graft_intervals_into_buffer):
20765 Use set_text_properties_1 to clear out properties.
20766
20767 * search.c (Freplace_match): Use replace_range to insert
20768 and delete. Don't request property inheritance from
20769 surrounding text.
20770
20771 2001-11-10 Jason Rumney <jasonr@gnu.org>
20772
20773 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20774 vertical fonts. Allow them if face name is explicitly specified.
20775 Do not give up if we find a font that cannot be converted to an xlfd.
20776
20777 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20778
20779 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20780 instead of malloc/free.
20781
20782 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20783
20784 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20785 Coding Standards.
20786 (Finternal_set_lisp_face_attribute): Likewise.
20787
20788 * buffer.c (Fbury_buffer): Likewise.
20789
20790 * indent.c (current_column_1): Remove unused variable `prev_col'.
20791
20792 * coding.c (encode_coding): Use precomputed value of `src'.
20793 (encode_coding): Remove unused variable `src_end'.
20794 (code_convert_region): Remove unused variables `count'.
20795
20796 2001-11-07 Jason Rumney <jasonr@gnu.org>
20797
20798 * w32term.c (x_display_and_set_cursor): Do not move system caret
20799 if cursor_glyph is NULL.
20800
20801 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20802
20803 * keymap.c (access_keymap): Fix compilation error.
20804
20805 2001-11-07 Miles Bader <miles@gnu.org>
20806
20807 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20808
20809 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20810
20811 * intervals.c (graft_intervals_into_buffer):
20812 Remove #ifdef'd-out code.
20813 (graft_intervals_into_buffer): Remove unused variable `middle'.
20814
20815 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20816 code (eval-current-buffer).
20817 Change doc-string comments to `new style' [w/`doc:' keyword].
20818
20819 2001-11-06 Richard M. Stallman <rms@gnu.org>
20820
20821 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20822
20823 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20824
20825 * lread.c (read1): Fix behavior with nested backquoting.
20826
20827 * keyboard.c (make_lispy_event): Check integerness and fix
20828 Lisp_Object/int mixup.
20829
20830 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20831
20832 * fns.c (copy_hash_table): Remove unused variable `v'.
20833
20834 * fontset.c (fontset_font_pattern): Remove unused variable
20835 `family_registry'.
20836
20837 * indent.c (current_column_1): Remove unused variable `prev_col'.
20838
20839 2001-11-05 Richard M. Stallman <rms@gnu.org>
20840
20841 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20842
20843 * buffer.c (Fkill_buffer): Don't delete auto save file
20844 if buffer is modified.
20845
20846 2001-11-05 Andrew Innes <andrewi@gnu.org>
20847
20848 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20849 CHECK_NUMBER_CDR.
20850
20851 2001-11-05 Richard M. Stallman <rms@gnu.org>
20852
20853 * unexelf.c (unexec): Minor changes; clean up comments.
20854
20855 2001-11-05 Sam Steingold <sds@gnu.org>
20856
20857 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20858
20859 2001-11-05 Andreas Schwab <schwab@suse.de>
20860
20861 * sound.c (sound_perror): Save errno from being clobbered.
20862
20863 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20864
20865 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20866 the program image directly.
20867
20868 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20869
20870 * buffer.h (Fbuffer_local_value): Add prototype.
20871
20872 2001-11-04 Richard M. Stallman <rms@gnu.org>
20873
20874 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20875 and CHECK_BUFFER.
20876
20877 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20878 (record_char): Likewise.
20879
20880 * keyboard.c (make_lispy_event): Don't insist a drag event must
20881 move to a different buffer position. Instead, check for moving at
20882 least double_click_fuzz.
20883
20884 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20885
20886 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20887
20888 * indent.c (current_column_1, Fmove_to_column): Separate the code
20889 for display-table glyphs from the code for buffer text, to fix
20890 bugs in the former.
20891
20892 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20893
20894 * buffer.c (Fbuffer_local_value): New function.
20895 (syms_of_buffer): Defsubr it.
20896
20897 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20898 value of `cursor-in-non-selected-windows'.
20899
20900 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20901 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20902 (syms_of_xdisp): Initialize it.
20903
20904 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20905
20906 * xfns.c (Fx_create_frame): Doc fix.
20907
20908 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20909 keyword].
20910
20911 * eval.c (top_level_value, top_level_set): Remove commented and
20912 #ifdef'd-out code.
20913 (Fdefvar): Fix usage in doc-string.
20914
20915 2001-11-03 Richard M. Stallman <rms@gnu.org>
20916
20917 * xfns.c: Include unistd.h, if it exists.
20918
20919 * editfns.c: Move the include of ctype.h after unistd.h.
20920
20921 * gmalloc.c: Test BROKEN_PROTOTYPES.
20922
20923 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20924
20925 * lisp.h (CHECK_STRING_CAR): New macro.
20926 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20927 treating XCAR and XCDR as lvalues.
20928 (openp): Use CHECK_STRING_CAR.
20929 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20930
20931 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20932
20933 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20934 (SIGMASKTYPE): Define.
20935
20936 * syssignal.h (sigunblock): Don't define if already defined.
20937
20938 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20939
20940 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20941 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20942 Fix typos in comments.
20943
20944 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20945 and #ifdef'd-out code.
20946 Fix and reindent comments.
20947
20948 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20949
20950 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20951 argument `i' in macros.
20952
20953 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20954 `i' in macros.
20955
20956 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20957 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20958 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20959 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20960 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20961 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20962 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20963 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20964 in macros.
20965
20966 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20967 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20968 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20969 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20970 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20971 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20972 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20973 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20974 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20975 (remove unused second argument).
20976
20977 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20978
20979 * syntax.c (describe_syntax): New wrapper.
20980 (Finternal_describe_syntax_value): Rename from describe_syntax.
20981 Don't insert space at front and \n at the end.
20982 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20983
20984 * regex.c (re_wctype): Try to fix some warnings.
20985 (regcomp, regexec): Don't forget the __restrict.
20986
20987 2001-11-02 Richard M. Stallman <rms@gnu.org>
20988
20989 * textprop.c (Fget_char_property): Doc fix.
20990
20991 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20992
20993 * process.c (Fstart_process): Add usage to doc-string.
20994
20995 * data.c (Fsetq_default): Ditto.
20996
20997 * callint.c (Finteractive): Ditto.
20998
20999 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21000
21001 * macros.c: Don't include keymap.h any more.
21002
21003 2001-11-01 Richard M. Stallman <rms@gnu.org>
21004
21005 * data.c (Fmake_local_variable): Doc fix.
21006
21007 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21008 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21009
21010 * keymap.c (Fdescribe_buffer_bindings): Print character property
21011 bindings along with or instead of the buffer local map.
21012 Make the overriding maps override what they should.
21013
21014 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21015
21016 * window.c (grow_mini_window): Fix typo in comment.
21017
21018 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21019
21020 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21021 (XTset_vertical_scroll_bar): Likewise.
21022
21023 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21024 instead of IMAGE_BACKGROUND.
21025
21026 * xfns.c (four_corners_best): Reindent.
21027
21028 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21029 Handle :box so that it is possible to specify sexprs.
21030
21031 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21032
21033 * s/hpux11.h: New file.
21034
21035 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21036
21037 * emacs.c (USAGE1): Show command line option --no-window-system
21038 instead of --no-windows in usage.
21039 (standard_args): Rename --no-windows to --no-window-system.
21040 (bug_reporting_address): Follow Emacs coding conventions.
21041
21042 * eval.c (Fcommandp): Doc fix.
21043 Change doc-string comments to `new style' [w/`doc:' keyword].
21044
21045 * frame.c (Fframe_live_p): Doc fix.
21046
21047 * buffer.c (selective-display-ellipses): Doc fix.
21048
21049 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21050
21051 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21052
21053 * xfaces.c (realize_x_face): If C is not a single-byte character,
21054 set the face's colors_copied_bitwise_p instead of the defaulted_p
21055 members which have a different meaning.
21056 (free_face_colors): Do nothing for a face whose colors have been
21057 copied bitwise.
21058
21059 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21060
21061 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21062
21063 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21064 [w/`doc:' keyword].
21065
21066 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21067
21068 * fns.c (require_unwind): Return Lisp_Object.
21069
21070 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21071
21072 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21073 (last-input-char): Revert doc-string to be the same as the
21074 doc-string of `last-input-event'.
21075
21076 * xdisp.c: Fix typos in comments.
21077
21078 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21079
21080 * window.c (grow_mini_window): Handle case that the root
21081 window is already smaller than the nominal mininum height.
21082
21083 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21084
21085 * emacs.c (main): Don't call keys_of_macros any more.
21086
21087 * lisp.h (keys_of_macros): Remove.
21088
21089 * macros.c (keys_of_macros): Remove.
21090
21091 * xfaces.c (Fface_attribute_relative_p): Declare args.
21092
21093 2001-10-30 Jason Rumney <jasonr@gnu.org>
21094
21095 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21096 (enum_font_cb2): Ignore fonts with vertical orientation.
21097
21098 2001-10-30 Richard M. Stallman <rms@gnu.org>
21099
21100 * keyboard.c (Finput_pending_p): Doc fix.
21101
21102 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21103
21104 * xterm.c (x_after_update_window_line): Don't run the code
21105 clearing in borders for rows whose visible height is 0.
21106
21107 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21108 resized_p flag is set. If not set, use the much less flickering
21109 method previously used.
21110
21111 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21112
21113 * frame.h (struct frame) <resized_p>: New member.
21114
21115 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21116 as large as the number of bytes to convert.
21117
21118 * lread.c (to_multibyte): New function.
21119 (read1): Use it.
21120
21121 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21122
21123 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21124
21125 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21126
21127 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21128 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21129 if the row's fill_line_p is set and drawing the last glyph with
21130 DRAW_IMAGE_{RAISED,SUNKEN}.
21131
21132 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21133
21134 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21135
21136 * xmenu.c: Include coding.h and charset.h.
21137 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21138 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21139 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21140 Explicitly set wv->help. Use `TRUE' rather than `True'.
21141 (menu_help_callback): Use empty_string.
21142
21143 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21144 (Fx_popup_dialog): Explicitly init f.
21145 (w32_menu_display_help): Use empty_string.
21146
21147 2001-10-29 Richard M. Stallman <rms@gnu.org>
21148
21149 * fns.c (Frequire): Detect recursive try to require the same
21150 feature 3 or more levels deep, and get error.
21151 (require_unwind): New subroutine.
21152 (require_nesting_list): New variable.
21153 (syms_of_fns): Init and staticpro it.
21154
21155 * print.c (print_object): Clarify indication of insertion type.
21156
21157 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21158
21159 * coding.c (syms_of_coding): Document that locale-coding-system is
21160 used for decoding input on X.
21161
21162 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21163
21164 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21165
21166 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21167 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21168
21169 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21170
21171 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21172 use NO_CURSOR if cursor_in_non_selected_windows is false.
21173
21174 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21175 the slant attribute if FRAME is t.
21176
21177 * xfns.c (x_set_internal_border_width): Set frame garbaged
21178 when X window doesn't exist yet.
21179
21180 * xterm.c (x_after_update_window_line): Clear internal border
21181 in different circumstances.
21182
21183 * xterm.c (XTread_socket) <KeyPress>: Don't use
21184 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21185 <handa@etl.go.jp>.
21186
21187 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21188
21189 * m/ibms390.h: New file. From Adam Thornton
21190 <athornton@sinenomine.net>.
21191
21192 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21193
21194 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21195
21196 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21197 a loop counter.
21198
21199 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21200
21201 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21202
21203 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21204 keyword].
21205 Fix typos in comments.
21206
21207 * emacs.c (bug_reporting_address): New function.
21208 Use it when displaying usage message.
21209
21210 * minibuf.c (read_minibuf): Remove unused external declaration of
21211 variable `Qread_only'.
21212
21213 * keymap.c (access_keymap): Remove unused variable `charset'.
21214
21215 2001-10-28 Miles Bader <miles@gnu.org>
21216
21217 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21218 Remove #ifdef'd-out code.
21219 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21220 (syms_of_xfaces): Initialize them.
21221
21222 2001-10-27 Jason Rumney <jasonr@gnu.org>
21223
21224 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21225 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21226 position using the system caret.
21227
21228 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21229 (w32_system_caret_height, w32_system_caret_x)
21230 (w32_system_caret_y): New variables for tracking system caret.
21231 (w32_initialize): Initialize them.
21232 (x_display_and_set_cursor): Make system caret follow the active cursor.
21233
21234 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21235 New messages types.
21236
21237 * w32term.c (note_mouse_highlight): Clear old help_echo.
21238
21239 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21240
21241 * xterm.c: Fix typo in a comment.
21242
21243 * emacs.c: Fix typos in comments.
21244 Remove unnecessary spaces.
21245 Change doc-string comments to `new style' [w/`doc:' keyword].
21246 (USAGE2): Fix typos in usage string.
21247
21248 * xterm.c: Fix typo in a comment.
21249
21250 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21251 emacs.c.
21252
21253 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21254
21255 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21256 instead of 1/2 line_height in the heuristic for skipping
21257 farther backward when target_y was not reached.
21258
21259 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21260 Display errno only if non-zero.
21261 (sound_warning): New function.
21262 (vox_configure): Don't treat failing to set sample rate as error.
21263 (various places): Improve error messages.
21264
21265 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21266
21267 * fileio.c (Faccess_file): Run the argument filename through
21268 Fexpand_file_name, before using it.
21269
21270 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21271 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21272
21273 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21274
21275 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21276
21277 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21278 Fix clearing in the case of scroll bars on the right.
21279
21280 2001-10-26 Juanma Barranquero <lektu@terra.es>
21281
21282 * w32gui.h (XImage): Add a dummy typedef.
21283
21284 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21285
21286 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21287
21288 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21289
21290 * frame.c (Fframe_parameter): Fix last change.
21291
21292 * fileio.c: Revert last change (which removed old commented-out
21293 version of expand-file-name). Add a comment that explains why
21294 this old version should not be removed.
21295
21296 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21297
21298 * frame.c (Fframe_parameter): Fix a bug whereby some
21299 ``artificial'' frame parameters, like `minibuffer' were not
21300 obtained by calling Fframe_parameters.
21301
21302 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21303 cursor differently.
21304
21305 * xdisp.c (move_it_vertically_backward): Compute line height
21306 differently. Add heuristic to try to be more compatible to 20.x.
21307
21308 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21309
21310 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21311
21312 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21313 boolean.
21314
21315 2001-10-25 Miles Bader <miles@gnu.org>
21316
21317 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21318 BG is a pointer to a structure, not a structure.
21319 (gif_format, png_format): Add missing commas.
21320
21321 2001-10-24 Richard M. Stallman <rms@gnu.org>
21322
21323 * xfaces.c (Fface_attributes_as_vector): New function.
21324 (syms_of_xfaces): Defsubr it.
21325
21326 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21327
21328 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21329 variable `area'.
21330
21331 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21332
21333 * search.c (scan_newline): Remove unused variable `selective_display'.
21334
21335 2001-10-25 Miles Bader <miles@gnu.org>
21336
21337 * dispextern.h (struct image): Add `background',
21338 `background_valid', and `background_transparent' fields.
21339 (image_background, image_background_transparent): New declarations.
21340 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21341 * xfns.c (image_background, image_background_transparent)
21342 (four_corners_best): New functions.
21343 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21344 (gs_format): Add `:background' entry.
21345 (lookup_image): Set IMG's background color if specified.
21346 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21347 when appropriate.
21348 (x_clear_image_1): Reset `background_valid' and
21349 `background_transparent_valid' fields.
21350 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21351 calculating it here. Set IMG's background_transparent field.
21352 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21353 (enum png_keyword_index): Add PNG_BACKGROUND.
21354 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21355 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21356 (enum gif_keyword_index): Add GIF_BACKGROUND.
21357 (enum gs_keyword_index): Add GS_BACKGROUND.
21358 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21359 Pre-calculate image background color where necessary.
21360 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21361 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21362 color to use for image glyph reliefs.
21363
21364 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21365
21366 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21367 in full-width rows.
21368
21369 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21370 Fix clearing of area not covered by scroll bar.
21371
21372 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21373
21374 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21375 and `real_start'.
21376 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21377 (glyph_rect): Remove unused variable `area'.
21378
21379 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21380
21381 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21382
21383 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21384 (row_containing_pos): Take additional argument DY.
21385 Treat rows ending in middle of char differently.
21386 (display_line): Handle tabs on window systems differently.
21387
21388 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21389 with additional argument.
21390
21391 * dispextern.h (row_containing_pos): Adjust prototype.
21392
21393 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21394 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21395 (try_window_id, try_window_reusing_current_matrix)
21396 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21397 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21398
21399 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21400
21401 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21402 gnuemacs).
21403 (HAVE_BOXES): Fix typo in comment.
21404 (push_menu_pane): Fix typo in comment.
21405
21406 * xdisp.c (display_prop_string_p): Remove unused local declaration
21407 of `Qwhen'.
21408 (single_display_prop_string_p): Remove unused local declarations
21409 of `Qwhen' and `Qmargin'.
21410 (string_buffer_position): Remove unused variable `around'.
21411 (store_frame_title): Remove unused variable `width'.
21412
21413 * window.c: Don't define max.
21414 (coordinates_in_window): Remove unused variable `uy'.
21415
21416 * widget.c: Don't define max.
21417
21418 * process.c: Don't define max.
21419 (create_process): Remove unused variable `buffer'.
21420
21421 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21422
21423 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21424
21425 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21426
21427 * xfaces.c (Finternal_set_lisp_face_attribute)
21428 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21429 frame is on a windowed display.
21430
21431 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21432
21433 * dispnew.c (sync_window_with_frame_matrix_rows):
21434 Fix handling of windows which aren't full-width, fix handling
21435 of marginal areas.
21436
21437 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21438
21439 2001-10-23 Andreas Schwab <schwab@suse.de>
21440
21441 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21442 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21443
21444 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21445
21446 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21447 REAL_END. Notice if cursor gets overwritten.
21448 (notice_overwritten_cursor): Take X positions as parameters.
21449 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21450 around call to x_draw_glyphs.
21451
21452 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21453
21454 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21455 instead of C) and usage.
21456
21457 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21458 of C) and usage.
21459
21460 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21461 `left', `max_width' and `max_height'.
21462
21463 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21464
21465 * xdisp.c (display_line): For a tab continued to the next line,
21466 set row's ends_in_middle_of_char_p.
21467
21468 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21469
21470 * xdisp.c (display_line): Fix computation of continuation lines
21471 width for TABs.
21472
21473 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21474
21475 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21476 `Qlaplace'.
21477
21478 * fileio.c: Remove unused code.
21479
21480 2001-10-22 Miles Bader <miles@gnu.org>
21481
21482 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21483 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21484 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21485
21486 2001-10-21 Jason Rumney <jasonr@gnu.org>
21487
21488 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21489
21490 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21491
21492 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21493 (Finsert_string): Avoid the multi-line string literals warning.
21494
21495 2001-10-22 Miles Bader <miles@gnu.org>
21496
21497 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21498 (Fdocumentation): Don't use it.
21499 (syms_of_doc): Don't initialize it.
21500
21501 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21502 * print.c (Fwith_output_to_temp_buffer): Likewise.
21503 * window.c (Fsave_window_excursion): Likewise.
21504 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21505 (Fsave_restriction): Likewise.
21506 * eval.c (Frun_hooks, Frun_hook_with_args)
21507 (Frun_hook_with_args_until_failure)
21508 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21509 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21510 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21511 (Funwind_protect, Fcondition_case): Likewise.
21512 * coding.c (Ffind_operation_coding_system): Likewise.
21513 * keyboard.c (Ftrack_mouse): Likewise.
21514
21515 2001-10-21 Miles Bader <miles@gnu.org>
21516
21517 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21518 (Fmake_hash_table): Add usage: string to doc string.
21519 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21520 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21521 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21522 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21523 (Fml_prefix_argument_loop): Likewise.
21524
21525 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21526
21527 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21528
21529 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21530 style' [w/`doc:' keyword].
21531
21532 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21533 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21534 comments to `new style' [w/`doc:' keyword].
21535
21536 2001-10-21 Jason Rumney <jasonr@gnu.org>
21537
21538 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21539
21540 * w32term.c (remember_mouse_glyph): New function.
21541 (w32_mouse_position): Use it.
21542 (note_mouse_movement): If the mouse moved off the glyph, remember
21543 its new position.
21544
21545 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21546 (w32_display_info): Add mouse_face_overlay.
21547
21548 * w32term.c (notice_overwritten_cursor): Renamed from
21549 note_overwritten_text_cursor. Rewritten to take glyph widths into
21550 account.
21551 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21552 (fast_find_string_pos): New function.
21553 (fast_find_position): Return the correct vpos. Add parameter
21554 STOP. In the final row, stop before glyphs having STOP as object.
21555 Don't consider glyphs that are not from a buffer.
21556 (fast_find_position) [0]: Add a presumably more correct version
21557 for after 21.1.
21558 (expose_window_tree, expose_frame): Don't compute intersections here.
21559 (expose_window): Do it here instead.
21560 (expose_window_tree, expose_window, expose_line): Return 1 when
21561 overwriting mouse-face.
21562 (expose_window): If W is the window currently being updated, mark
21563 the frame garbaged.
21564 (expose_frame): If mouse-face was overwritten, redo it.
21565 (x_use_underline_position_properties): New variable.
21566 (syms_of_xterm): DEFVAR_BOOL it.
21567 (x_draw_glyph_string): Add comment to use it in future.
21568 (x_draw_glyph_string): Restore clipping after drawing box.
21569 Fix a computation of the underline position.
21570 (w32_get_glyph_string_clip_rect): Minor cleanup.
21571 (x_fill_stretch_glyph_string): Remove an assertion.
21572 (x_produce_glyphs): Don't convert multibyte characters
21573 to unibyte characters in unibyte buffers.
21574 (cursor_in_mouse_face_p): New function.
21575 (x_draw_stretch_glyph_string): Use it to choose a different GC
21576 when drawing a cursor within highlighted text. Don't draw
21577 background again if it has already been drawn.
21578 (x_draw_glyph_string_box): Don't draw a full-width
21579 box just because the glyph row's full_width_p flag is set.
21580 (x_draw_glyphs): Fix computation of rightmost x for
21581 full-width rows.
21582 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21583 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21584 change bottom shadow accordingly. Some cleanup.
21585 (x_update_window_end): Handle overwritten mouse face
21586 also for tool bar windows.
21587 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21588 DRAW is DRAW_IMAGE_RAISED.
21589 (clear_mouse_face): Return 1 if text with mouse face was
21590 actually redrawn. Make the function static.
21591 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21592 optimize away highlighting if we pass over that same overlay again.
21593 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21594 to detect a case where we have to highlight a different region
21595 despite not having left the currently highlighted region.
21596 Set mouse_face_overlay in the x_display_info. Avoid changing the
21597 mouse pointer shape when show_mouse_face has already done it, or
21598 there is no need. Handle mouse-face and help-echo in strings.
21599 (glyph_rect): New function.
21600 (w32_mouse_position): Use it to raise the threshold for mouse
21601 movement event generation.
21602 (w32_initialize_display_info): Initialize the x_display_info's
21603 mouse_face_overlay.
21604 (w32_set_vertical_scroll_bar): Don't clear a zero height
21605 or width area.
21606 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21607 a widget to zero height.
21608
21609 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21610 Protect unibyte strings created by replacing their multibyte
21611 equivalents in menu_items.
21612 (w32_menu_show): Don't overwrite an item's name with its key
21613 description in case the description is a multibyte string.
21614 (single_submenu): Some cleanup.
21615
21616 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21617 (postprocess_image): New function.
21618 (lookup_image): Call it for all image types except PostScript.
21619 (x_kill_gs_process): Call postprocess_image.
21620 (tiff_error_handler, tiff_warning_handler): New functions.
21621 (tiff_load): Install them as handlers.
21622 (x_kill_gs_process): Recognize if someone has cleared the image
21623 cache under us.
21624 (valid_image_p): Protect better against invalid image
21625 specifications. Previous code could signal an error.
21626 (Fx_hide_tip, Fshow_tip): Doc fix.
21627 (Fv_max_tooltip_size): New variable.
21628 (syns_of_xfns): DEFVAR_LISP it.
21629 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21630 window buffer to *tip* right after creating the frame. Set frame's
21631 window_width. Use a maximum tooltip size specified by
21632 Vx_max_tooltip_size, if that has valid contents.
21633 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21634 Make sure the tooltip is completely visible.
21635 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21636 (Fx_create_frame): Adjust the frame's height for presence
21637 of the tool bar before calling x_figure_window_size.
21638 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21639 when the window gets smaller.
21640 (x_set_foreground_color): Set frame's cursor_pixel.
21641 (x_set_foreground_color, x_set_background_color): Cleaned up.
21642 (x_set_font): Handle case of x_new_fontset returning the same name
21643 as before, although there was a change in fontsets.
21644
21645 2001-10-21 Miles Bader <miles@gnu.org>
21646
21647 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21648 (Flogxor): Add usage: string to doc string.
21649 * charset.c (Fstring): Likewise.
21650 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21651 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21652
21653 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21654
21655 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21656
21657 * alloc.c: Reindent DEFUNs with doc: keywords.
21658
21659 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21660
21661 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21662 keyword].
21663
21664 See ChangeLog.9 for earlier changes.
21665
21666 ;; Local Variables:
21667 ;; coding: iso-2022-7bit
21668 ;; End:
21669
21670 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21671 Copying and distribution of this file, with or without modification,
21672 are permitted provided the copyright notice and this notice are preserved.
21673
21674 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4