*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
1 2005-11-30 Kim F. Storm <storm@cua.dk>
2
3 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
4 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
5 passing it to `emacs_write'.
6
7 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
8
9 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
10
11 2005-11-27 Richard M. Stallman <rms@gnu.org>
12
13 * window.c (adjust_window_trailing_edge): New function.
14 (Fadjust_window_trailing_edge): New function.
15 (syms_of_window): Defsubr it.
16 (window_deletion_count): New variable.
17 (delete_window): Update window_deletion_count.
18
19 2005-11-26 Eli Zaretskii <eliz@gnu.org>
20
21 * minibuf.c (syms_of_minibuf): Mention the extension of
22 `completion-auto-help's meaning by complete.el.
23
24 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
25
26 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27 Handle :inherit property as a lisp expression.
28
29 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
30
31 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
32 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
33 Qsuper, and Qmodifier_value.
34 (Vmac_control_modifier, Vmac_option_modifier)
35 (Vmac_command_modifier, Vmac_function_modifier)
36 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
37 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
38 (Vmac_charset_info_alist): Doc fixes.
39
40 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
41
42 * emacs.c (main) [MAC_OSX]: Change working directory to home
43 directory if `-psn_*' option is specified.
44
45 * mac.c (DECODE_UTF_8): Remove macro.
46 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
47 created from cfstring_to_lisp.
48 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
49 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
50
51 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
52 Add prototype.
53
54 2005-11-21 Ken Raeburn <raeburn@mit.edu>
55
56 * keymap.c (shadow_lookup): Use make_number to pass a number to
57 Fsubstring.
58
59 2005-11-21 Juri Linkov <juri@jurta.org>
60
61 * puresize.h (BASE_PURESIZE): Increment to 1180000.
62
63 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
64
65 * xfaces.c (Finternal_set_lisp_face_attribute):
66 Use :ignore-defface for new frame defaults when `unspecified' is
67 supplied.
68 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
69 (merge_face_vectors): Don't do :ignore-defface overwriting here.
70 (Finternal_merge_in_global_face): Do it here.
71
72 2005-11-20 Juri Linkov <juri@jurta.org>
73
74 * charset.c (invalid_character): Use Lisp-readable syntax
75 for octal and hex. Reorder decimal, octal and hex values.
76
77 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
78
79 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
80 this type is recognised when debugging.
81
82 2005-11-19 Andreas Schwab <schwab@suse.de>
83
84 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
85 Lisp_Cons and Lisp_Float.
86
87 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
88
89 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
90 New variable.
91 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
92 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
93 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
94 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
95
96 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
97
98 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
99
100 * xfaces.c (Qignore_defface): New variable.
101 (syms_of_xfaces): Provide `:ignore-defface'.
102 (IGNORE_DEFFACE_P): New macro.
103 (check_lface_attrs, lface_fully_specified_p)
104 (Finternal_set_lisp_face_attribute)
105 (Fface_attribute_relative_p, Fmerge_face_attribute):
106 Handle Qignore_defface as a possible value.
107 (merge_face_vectors): The merged face is `unspecified' if the
108 mergee specifies `:ignore-defface'.
109
110 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
111
112 * lread.c (readevalloop): Add missing GCPROs.
113
114 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
115
116 * xfns.c (xg_set_icon_from_xpm_data): New function.
117
118 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
119 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
120
121 * xterm.c (x_bitmap_icon): Use the xpm if available.
122
123 * image.c (x_create_bitmap_from_xpm_data): New function.
124 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
125
126 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
127
128 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
129
130 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
131
132 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
133
134 2005-11-15 Andreas Schwab <schwab@suse.de>
135
136 * lisp.h (struct Lisp_Cons): Make cdr a union.
137 (XCDR_AS_LVALUE): Adjust.
138 (struct Lisp_Float): Make data a union.
139 (XFLOAT_DATA): Adjust.
140
141 * alloc.c (free_float): Make free list chaining aliasing-safe.
142 (make_float): Likewise.
143 (free_cons): Likewise.
144 (Fcons): Likewise.
145 (check_cons_list): Likewise.
146 (Fmake_symbol): Likewise.
147 (allocate_misc): Likewise.
148 (free_misc): Likewise.
149 (gc_sweep): Likewise.
150
151 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
152
153 * mac.c (HASHKEY_QUERY_CACHE): New define.
154 (xrm_create_database, xrm_q_put_resource): Empty query cache.
155 (xrm_get_resource): Use query cache.
156
157 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
158 inhibit_window_system is set.
159
160 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
161
162 * macgui.h (USE_CG_TEXT_DRAWING): New define.
163 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
164 and cg_glyphs.
165
166 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
167 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
168 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
169 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
170 not used and font substitution never occurs for ASCII and Latin-1
171 characters.
172 (XLoadQueryFont): Maximum and minimum metrics are now those among
173 ASCII characters.
174 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
175 height adjustments for Courier, Helvetica, and Times.
176
177 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
178
179 2005-11-11 David Reitter <david.reitter@gmail.com>
180
181 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
182 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
183 Vmac_control_modifier / mac-control-modifier,
184 Vmac_option_modifier / mac-option-modifier,
185 Vmac_command_modifier / mac-command-modifier.
186 (mac_to_emacs_modifiers): Use the new style modifier
187 variables. Return UInt32 (modifiers are longs now.)
188 (backtranslate_modified_keycode): New function (refactoring).
189 (XTread_socket): Use new modifier variables and refactored function.
190 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
191 no dedicated meta key. Not in use anyway.)
192 (convert_fn_keycode): Map Fn-keys to their original keycode
193 using a table (english keyboard only).
194
195 2005-11-11 Kim F. Storm <storm@cua.dk>
196
197 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
198 Add post hook to "backtrace" to always dump lisp call stack to
199 increase chance of people sending it to us when reporting bugs.
200
201 * doc.c (Fsubstitute_command_keys): Doc fix.
202
203 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
204
205 * xdisp.c (handle_stop): Skip overlay string handling if
206 ignore_overlay_strings_at_pos_p is set.
207 (set_iterator_to_next): At end of display vector, set
208 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
209 string, so we skip those overlay strings at current pos.
210
211 2005-11-10 Lars Hansen <larsh@soem.dk>
212
213 * fileio.c (file-regular-p): Doc fix.
214
215 2005-11-10 Kim F. Storm <storm@cua.dk>
216
217 * alloc.c (valid_lisp_object_p): New function to validate that
218 an object is really a valid Lisp_Object.
219
220 * lisp.h (valid_lisp_object_p): Add prototype.
221
222 * print.c (safe_debug_print): New function to be called from gdb
223 to print Lisp objects; use valid_lisp_object_p to avoid crashing
224 if user tries to print something which is not a Lisp object.
225
226 * .gdbinit (pp, pp1): Use safe_debug_print.
227 (pv, pv1): New commands to print value of a lisp variable.
228
229 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
230
231 * .gdbinit (pp1): New user-defined function.
232
233 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
234
235 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
236
237 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
238 related variables for dumped executable.
239
240 * unexmacosx.c (unexec_write_zero): New function.
241 (copy_data_segment): Clear uninitialized local variables in
242 statically linked libraries.
243
244 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
245
246 2005-11-09 Juri Linkov <juri@jurta.org>
247
248 * keymap.c (shadow_lookup): If Flookup_key returns a number,
249 call it again with a sub-key-sequence, and if its return value
250 is non-nil (sub-key is bound), return nil.
251
252 2005-11-08 Kim F. Storm <storm@cua.dk>
253
254 * process.c (Fsignal_process): Recognize signal names with and
255 without SIG prefix, e.g. SIGHUP and HUP.
256
257 * search.c (search_buffer): No need to initialize base_pat.
258
259 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
260
261 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
262 Don't abuse the `mini' arg. Use the `obj' arg instead.
263
264 2005-11-04 Kim F. Storm <storm@cua.dk>
265
266 * xdisp.c (show_mouse_face): Clear mouse face to eol.
267
268 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
269
270 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
271 font-lock.elc and jit-lock.elc.
272
273 2005-11-03 Richard M. Stallman <rms@gnu.org>
274
275 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
276 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
277 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
278
279 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
280
281 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
282
283 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
284
285 * window.c (Fdisplay_buffer): Fix last change to not use
286 a dedicated window.
287
288 2005-11-01 Kim F. Storm <storm@cua.dk>
289
290 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
291 Instead, rotate the bottom angle bitmap 180 degrees to indicate
292 that the bottom row does not end in a newline.
293
294 2005-11-01 Andreas Schwab <schwab@suse.de>
295
296 * unexelf.c (unexec): Handle .plt section in BSS segment.
297
298 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
299
300 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
301
302 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
303 determine whether to consider dedicated windows as well.
304 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
305 (Fdisplay_buffer): Do consider dedicated windows in those cases where
306 we will split the window rather than reuse it.
307 Don't try to use windows on other displays.
308
309 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
310
311 * puresize.h (BASE_PURESIZE): Increment to 1170000.
312
313 2005-10-31 Romain Francoise <romain@orebokech.com>
314
315 * macfns.c: Update copyright year.
316 * m/gould.h: Likewise.
317
318 2005-10-30 Kim F. Storm <storm@cua.dk>
319
320 * xdisp.c (display_line): Restore it->current_x and call
321 extend_face_to_end_of_line when last glyph doesn't fit on line.
322 (set_glyph_string_background_width): Remove specific tests here
323 to see if face background should extend to end of line. Simplify.
324
325 2005-10-30 Richard M. Stallman <rms@gnu.org>
326
327 * alloc.c (BYTES_USED): Use uordblks, not arena.
328 (bytes_used_when_reconsidered): New variable.
329 (emacs_blocked_free): Set that.
330
331 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
332
333 * alloc.c (emacs_blocked_free): Fix typo.
334
335 2005-10-29 Richard M. Stallman <rms@gnu.org>
336
337 * data.c (Fmake_variable_frame_local): Doc fix.
338
339 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
340 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
341 controls whether to save and restore mode_line_proptrans_alist.
342 Callers changed.
343 (unwind_format_mode_line): Work with that feature.
344 (redisplay_internal): Don't call prepare_menu_bars if memory full.
345 (move_elt_to_front): New function.
346 (display_mode_element): Use move_elt_to_front.
347 Don't bother munging text props on a null string.
348 Delete obsolete elts from mode_line_proptrans_alist.
349 (decode_mode_spec): Test Vmemory_full, not spare_memory.
350 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
351
352 * lisp.h (memory_full_cons_threshold): Declare.
353 (internal_lisp_condition_case): Declare.
354
355 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
356 (Fmemory_full_p): Function deleted.
357 (syms_of_alloc): Don't defsubr it.
358 (memory_full_cons_threshold): New variable.
359 (spare_memory): Now a vector of 7 elts.
360 (buffer_memory_full): Don't set Vmemory_full here.
361 (xfree): Don't try to refill here.
362 (emacs_blocked_free): Record BYTES_USED in local var.
363 (memory_full): Now free all the slots in spare_memory.
364 (refill_memory_reserve): Allocate each slot in spare_memory.
365 (init_alloc_once): Call refill_memory_reserve.
366
367 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
368
369 * eval.c (internal_lisp_condition_case): New function.
370 (Fcondition_case): Use internal_lisp_condition_case.
371 (Feval): Test Vmemory_full and memory_full_cons_threshold.
372 (Ffuncall): Likewise.
373
374 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
375
376 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
377
378 * syntax.c (Fparse_partial_sexp): Fix docstring.
379
380 2005-10-28 Romain Francoise <romain@orebokech.com>
381
382 * puresize.h (BASE_PURESIZE): Increment to 1130000.
383
384 2005-10-28 Richard M. Stallman <rms@gnu.org>
385
386 * xfns.c (syms_of_xfns): Provide `x' as feature.
387
388 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
389
390 * editfns.c (Fformat): Don't include string padding
391 between info[n].start and info[n].end.
392
393 * alloc.c (spare_memory): No longer static.
394 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
395
396 * puresize.h (BASE_PURESIZE): Increment to 1120000.
397
398 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
399
400 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
401
402 * fringe.c (update_window_fringes): Handle case where buffer ends
403 with a newline.
404
405 2005-10-27 Kenichi Handa <handa@m17n.org>
406
407 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
408
409 2005-10-24 Kenichi Handa <handa@m17n.org>
410
411 * charset.h (charset_mule_unicode_0100_24ff)
412 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
413 Extern them.
414
415 * charset.c (charset_mule_unicode_0100_24ff)
416 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
417 New variables.
418 (Fsetup_special_charsets): Initialize them.
419
420 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
421 supported Unicode characters.
422
423 2005-10-25 Jason Rumney <jasonr@gnu.org>
424
425 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
426
427 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
428
429 * image.c [MAC_OS] (image_load_qt_1): Check image size.
430 Use GraphicsImportGetImageDescription instead of
431 GraphicsImportGetNaturalBounds.
432 [MAC_OSX] (image_load_quartz2d): Check image size.
433 [MAC_OS] (xpm_load_image): Likewise.
434
435 * macterm.c (last_mouse_glyph_frame): New var.
436 (note_mouse_movement): Say mouse moved if current frame differs
437 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
438 (XTmouse_position): Set last_mouse_glyph_frame.
439 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
440 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
441 Use EndianU16_BtoN.
442 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
443 (x_per_char_metric, XLoadQueryFont)
444 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
445 glyph bounds.
446 (mac_to_x_fontname, mac_do_list_fonts)
447 (mac_initialize_display_info): Change screen resolutions to 72dpi.
448
449 2005-10-25 Masatake YAMATO <jet@gyve.org>
450
451 * minibuf.c (Fdisplay_completion_list): Small doc fix.
452
453 2005-10-24 Kim F. Storm <storm@cua.dk>
454
455 * xterm.c: Undo 2005-10-23 change.
456 (last_mouse_glyph_frame): New var.
457 (note_mouse_movement): Say mouse moved if current frame differs
458 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
459 (XTmouse_position): Set last_mouse_glyph_frame.
460 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
461 last_mouse_glyph] on mouse up/down event.
462
463 * editfns.c (Fcompare_buffer_substrings): Fix last change.
464
465 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
466
467 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
468
469 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
470
471 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
472 so tool tips don't interfere with press on tool bar button.
473
474 2005-10-23 Richard M. Stallman <rms@gnu.org>
475
476 * casetab.c (Fset_case_table): Doc fix.
477
478 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
479 (readevalloop): Compute ENTIRE properly.
480 (syms_of_lread) <load-history>: Doc fix.
481
482 2005-10-21 Richard M. Stallman <rms@gnu.org>
483
484 * lread.c (Fload): Simplify gcpro structure.
485 Gcpro FOUND as well as FILE, but not EFOUND.
486 Unless preloading, record FOUND instead of FILE in Vload_history.
487 Rename repeat local FILE to MSG_FILE.
488 (syms_of_lread) <load-history>: Doc fix.
489
490 2005-10-21 Kenichi Handa <handa@m17n.org>
491
492 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
493
494 2005-10-20 Kim F. Storm <storm@cua.dk>
495
496 * buffer.c (clone_per_buffer_values): Remove unused var tem.
497 (init_buffer): Remove unused vars dotstat, pwdstat.
498
499 * ccl.c (check_ccl_update): Remove unused var vp.
500
501 * fileio.c (auto_save_error): Call SAFE_FREE.
502
503 * fns.c (Fchar_table_range): Remove unused var i.
504
505 * minibuf.c (display_completion_list_1): New wrapper function
506 for Fdisplay_completion_list.
507 (Fminibuffer_completion_help): Use it.
508
509 * term.c (encode_terminal_code): Remove unused var src_start.
510
511 * window.c (Fwindow_tree): Remove unused var alist.
512
513 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
514
515 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
516
517 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
518
519 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
520
521 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
522
523 2005-10-20 Andreas Schwab <schwab@suse.de>
524
525 * minibuf.c (Fdisplay_completion_list): Doc fix.
526
527 2005-10-19 Kim F. Storm <storm@cua.dk>
528
529 * image.c (check_image_size): Handle integer Vmax_image_size value
530 directly as max pixel value. Use default frame size for null frame.
531 (syms_of_image) <max-image-size>: Describe integer value.
532
533 2005-10-19 Romain Francoise <romain@orebokech.com>
534
535 * emacs.c (main): Update copyright year.
536
537 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
538
539 * image.c (Vmax_image_size): New variable.
540 (check_image_size): New function.
541 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
542 (gif_load, gs_load): Use it.
543 (lookup_image): Try loading again if previous load failed.
544 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
545 to display in, NULL if none.
546 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
547 argument.
548
549 2005-10-18 Richard M. Stallman <rms@gnu.org>
550
551 * search.c (Fstring_match): Doc fix.
552
553 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
554
555 * macterm.c (note_mouse_movement): Use PtInRect.
556 (XTread_socket): Also ignore mouse motion just before a button
557 release event. Don't process button release event when mouse is
558 not grabbed.
559
560 2005-10-16 Masatake YAMATO <jet@gyve.org>
561
562 * minibuf.c (Fdisplay_completion_list): Add new optional
563 argument COMMON_SUBSTRING. Bind `completion-common-substring'
564 to the optional argument during running `completion-setup-hook'.
565
566 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
567
568 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
569 Allow nil as argument.
570 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
571 for encoding arguments as UTF-16 in native byte order, no BOM.
572
573 * macfns.c (Fx_create_frame): Add debugging code.
574 (Fx_show_tip): Set frame pixel width and height.
575
576 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
577 (FRAME_NORMAL_GC): New macro.
578 (mac_draw_line, mac_clear_area, mac_clear_window)
579 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
580 (mac_draw_image_string, mac_draw_image_string_16): Rename from
581 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
582 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
583 All uses changed.
584 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
585 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
586 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
587 (mac_draw_string_16, mac_draw_image_string)
588 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
589 (mac_scroll_area): Drawing functions now take frame as destination.
590 All uses changed.
591 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
592 (x_draw_fringe_bitmap): Set clipping area in face->gc.
593
594 * macterm.h (mac_clear_area): Add extern.
595
596 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
597
598 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
599 changes for xterm.c.
600
601 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
602
603 2005-10-14 Kenichi Handa <handa@m17n.org>
604
605 * search.c (search_buffer): Give up BM search on case-fold-search
606 if one of a target character has a case-equivalence of different
607 charset even if that target charcter is an ASCII.
608
609 * casefiddle.c (casify_object): Fix for the case that case
610 conversion change the byte length.
611
612 2005-10-14 Kim F. Storm <storm@cua.dk>
613
614 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
615 (handle_one_xevent): Only clear help_echo_string; restore it if
616 note_mouse_movement didn't record any mouse movement.
617
618 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
619 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
620
621 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
622 (Fposn_at_x_y): Fix calculation of x coordinate.
623 (Fposn_at_point): Return nil if point is hscrolled out of view.
624
625 2005-10-13 Andreas Schwab <schwab@suse.de>
626
627 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
628 non-interactive mode.
629
630 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
631
632 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
633
634 2005-10-12 Kim F. Storm <storm@cua.dk>
635
636 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
637
638 2005-10-12 Romain Francoise <romain@orebokech.com>
639
640 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
641
642 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
643
644 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
645 get end of text rows. Obtain header-line/mode-line rows directly.
646
647 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
648 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
649
650 2005-10-12 Kim F. Storm <storm@cua.dk>
651
652 * xdisp.c (remember_mouse_glyph): New generic version based on
653 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
654 properly handle all different window areas.
655
656 * dispextern.h (remember_mouse_glyph): Add prototype.
657
658 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
659 (note_mouse_movement, XTmouse_position): Use generic
660 remember_mouse_glyph, add last_mouse_glyph arg.
661
662 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
663 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
664 (note_mouse_movement, w32_mouse_position): Use generic
665 remember_mouse_glyph, add last_mouse_glyph arg.
666
667 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
668 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
669 (XTmouse_position): Adapt to use generic remember_mouse_glyph
670 instead of pixel_to_glyph_coords.
671
672 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
673 Fix x position for ON_TEXT when left margin width > 0.
674
675 2005-10-11 Kim F. Storm <storm@cua.dk>
676
677 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
678
679 * keyboard.c (make_lispy_position): Fix buffer calculations for
680 mouse click or movement in right fringe and the margins.
681
682 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
683
684 * image.c (fn_jpeg_stdio_src): Don't define it.
685 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
686 (our_common_init_source): Rename from `our_init_source'.
687 (our_common_term_source): Rename from `our_term_source'.
688 (our_memory_fill_input_buffer): Rename from
689 `our_fill_input_buffer'.
690 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
691 (jpeg_memory_src): Use the new names.
692 (struct jpeg_stdio_mgr): New struct.
693 (JPEG_STDIO_BUFFER_SIZE): New constant.
694 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
695 (jpeg_file_src): New functions.
696 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
697
698 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
699
700 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
701 (fm_font_family_alist): New variable.
702 (syms_of_macterm): Initialize and staticpro it.
703 (decode_mac_font_name): Replace '-' in family name with '_' if it
704 occurs just once. Lower family name.
705 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
706 All uses changed. Remove argument MF and code conversion for it.
707 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
708 to CHARSET. Parse font size. Lower family name. Return integer
709 value for status of parsing.
710 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
711 Don't use Fdowncase because family name is already lowered by
712 decode_mac_font_name.
713 (init_font_name_table): Always call decode_mac_font_name.
714 Add pair of family name and its reference to fm_font_family_alist.
715 (mac_clear_font_name_table): Clear fm_font_family_alist.
716 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
717 Lookup fm_font_family_alist to get font family reference.
718 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
719 name is already lowered by parse_x_font_name.
720
721 2005-10-11 Kim F. Storm <storm@cua.dk>
722
723 * xterm.c (glyph_rect): Return 0 if position is outside text area.
724
725 * keyboard.c (make_lispy_position): Fix buffer position calculation for
726 mouse click or movement in fringe.
727
728 2005-10-10 Jason Rumney <jasonr@gnu.org>
729
730 * xterm.c (remember_mouse_glyph): New function.
731 (note_mouse_movement): Use it to remember the current glyph if changed.
732 (XTmouse_position): Fix calculation of fake glyph under mouse.
733 Move code to calculate glyph under mouse into remember_mouse_glyph.
734
735 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
736
737 * emacs.c (USAGE3, standard_args): -nb => -nbi.
738
739 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
740
741 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
742 (next_frame, prev_frame, set_term_frame_name): Make static.
743
744 * window.c (Fwindow_tree): Fix spelling.
745
746 2005-10-09 Romain Francoise <romain@orebokech.com>
747
748 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
749
750 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
751
752 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
753 Add options -nb, --no-bitmap-icon.
754
755 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
756
757 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
758
759 * macgui.h (MAX_CLIP_RECTS): New define.
760 (struct _XGC): New member clip_region.
761 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
762 clip_rects.
763
764 * macterm.c (GC_CLIP_REGION): New macro.
765 (saved_port_clip_region): New variable.
766 (mac_begin_clip, mac_end_clip): New functions.
767 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
768 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
769 (mac_copy_area_with_mask, mac_scroll_area): Use them.
770 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
771 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
772 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
773 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
774 rectangles stored in gc.
775 (XFreeGC): Dispose of clipping region.
776 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
777 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
778 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
779 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
780 (x_draw_bar_cursor): Use them.
781 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
782 get multiple clipping rectangles.
783
784 * macterm.h (mac_term_init): Add types to extern.
785 (struct mac_output): Remove members mWP and pending_menu_activation.
786 Put members scroll_bar_foreground_pixel and
787 scroll_bar_background_pixel in #if 0.
788 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
789
790 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
791 Add debugging code.
792
793 2005-10-08 Kim F. Storm <storm@cua.dk>
794
795 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
796
797 2005-10-07 Kim F. Storm <storm@cua.dk>
798
799 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
800 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
801 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
802
803 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
804
805 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
806 to for_overlaps. Now occupy 3 bits.
807 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
808 (OVERLAPS_ERASED_CURSOR): New defines.
809 (struct redisplay_interface): Add new OVERLAPS arg to member
810 fix_overlapping_area.
811 (x_fix_overlapping_area): Add new OVERLAPS arg.
812 (get_glyph_string_clip_rects): Add extern.
813
814 * dispnew.c (redraw_overlapping_rows):
815 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
816
817 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
818 for_overlaps.
819 (get_glyph_string_clip_rects): New function created from
820 get_glyph_string_clip_rect. Set clipping rectangles according to the
821 value of for_overlaps. Enable to store multiple clipping rectangles.
822 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
823 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
824 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
825 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
826 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
827 calculating clipping rectangles later. Call x_fix_overlapping_area
828 with new OVERLAPS arg to draw only erased cursor area.
829 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
830 to draw overlaps in both preceding and succeeding rows.
831
832 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
833 struct glyph_string to for_overlaps.
834
835 2005-10-04 Richard M. Stallman <rms@gnu.org>
836
837 * alloc.c (refill_memory_reserve): Conditionalize the body,
838 not the function's existence.
839
840 2005-10-04 Kim F. Storm <storm@cua.dk>
841
842 * window.c (window_split_tree): New function.
843 (Fwindow_split_tree): New defun.
844 (syms_of_window): Defsubr it.
845
846 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
847
848 * macterm.c (mac_invert_rectangle): New function.
849 (XTflash): Use it.
850
851 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
852
853 * regex.h (re_char): Don't expose it in the interface.
854 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
855
856 * regex.c (re_char): Move it back here.
857 (re_set_whitespace_regexp): Change the arg's type to not use it.
858
859 * keyboard.c (make_lispy_event): If point has moved between down and up
860 event, make it a drag, not a click, to mirror what
861 mouse-drag-region expects.
862
863 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
864
865 * lisp.h (fatal): Undo previous change.
866 * term.c (fatal): Undo previous change.
867
868 2005-10-01 Richard M. Stallman <rms@gnu.org>
869
870 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
871
872 2005-10-01 Kim F. Storm <storm@cua.dk>
873
874 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
875
876 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
877
878 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
879
880 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
881 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
882 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
883 Try ATSUI-compatible 12pt Monaco font first.
884
885 * macgui.h (struct _XCharStruct): New member valid_p.
886 (STORE_XCHARSTRUCT): Set valid_p.
887 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
888
889 * macterm.c (mac_draw_string_common, x_per_char_metric)
890 (mac_compute_glyph_string_overhangs, init_font_name_table)
891 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
892 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
893 (x_draw_glyph_string_background)
894 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
895 XDrawImageString. Always draw background and foreground separately.
896 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
897 functions for one-byte chars when using ATSUI-compatible fonts.
898 (atsu_font_id_hash) [USE_ATSUI]: New variable.
899 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
900 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
901 max_char_or_byte2 more in detail.
902 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
903
904 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
905
906 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
907 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
908
909 * unexelf.c (fatal): Fix prototype.
910
911 * term.c (fatal): Implement using varargs.
912
913 * regex.c (re_char): Move typedef ...
914 * regex.h (re_char): ... here.
915 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
916
917 * emacs.c (malloc_set_state): Fix return type.
918 (endif): Fix type.
919
920 * lisp.h (fatal): Add argument types.
921
922 * dispextern.h (fatal): Delete prototype.
923
924 * systime.h: (make_time): Prototype moved from ...
925 * editfns.c (make_time): ... here.
926
927 * editfns.c: Move systime.h include after lisp.h.
928 * dired.c:
929 * xsmfns.c:
930 * process.c: Likewise.
931
932 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
933 Add parameter types.
934 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
935 (emacs_blocked_free): Change definition to match __free_hook.
936 (emacs_blocked_malloc): Change definition to match __malloc_hook.
937 (emacs_blocked_realloc): Change definition to match __realloc_hook.
938
939 2005-09-30 Romain Francoise <romain@orebokech.com>
940
941 * minibuf.c (Fread_buffer): Follow convention for reading from the
942 minibuffer with a default value. Doc fix.
943
944 2005-09-29 Juri Linkov <juri@jurta.org>
945
946 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
947 Rename argument name `string' to `format-string'.
948 (Fformat): Doc fix.
949
950 2005-09-28 Kim F. Storm <storm@cua.dk>
951
952 * image.c (gif_load): Fix size of allocated image buffer
953 for images where a sub-image may be larger than the image's
954 total height/width specifications.
955
956 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
957
958 * macgui.h (struct _XCharStruct): Each member now takes short value.
959
960 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
961
962 * xfaces.c (lookup_derived_face): Add parameter type.
963
964 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
965
966 * marker.c (verify_bytepos): Add parameter type.
967
968 * process.c (get_operating_system_release): Move prototype ...
969
970 * systime.h (get_operating_system_release): ... here.
971
972 * xterm.c (handle_one_xevent): Refer to union field to match the
973 type required by the function definition.
974 (set_vertical_scroll_bar): Move prototype ...
975
976 * xterm.h: ... here.
977
978 * fns.c (internal_equal, seed_random): Fix prototypes.
979 (internal_equal): Add missing parameter.
980
981 2005-09-25 Richard M. Stallman <rms@gnu.org>
982
983 * keyboard.c (update_menu_bindings): Variable deleted.
984 (syms_of_keyboard): Don't defvar it.
985 (parse_menu_item): Don't test it.
986
987 2005-09-23 Richard M. Stallman <rms@gnu.org>
988
989 * editfns.c (Fformat): Explicitly test for end of format string
990 and don't use `index'.
991
992 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
993
994 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
995 Define BROKEN_GET_CURRENT_DIR_NAME.
996
997 * sysdep.c (get_current_dir_name): Also define if
998 BROKEN_GET_CURRENT_DIR_NAME.
999
1000 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1001
1002 2005-09-22 Kim F. Storm <storm@cua.dk>
1003
1004 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1005 (message2): Fix commentary. Ok to use alloca'ed memory.
1006 Still not ok to use Lisp string data (because of GC).
1007 (set_message): Add comment why GC cannot happen.
1008
1009 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1010
1011 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1012 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1013 variants for a scalable font multiple times.
1014
1015 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1016
1017 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1018 Setup slave tty options before forking.
1019
1020 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1021
1022 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1023 positions have been set for the frame (as is done for frames in
1024 special-display-buffer-names).
1025
1026 2005-09-19 Kim F. Storm <storm@cua.dk>
1027
1028 * editfns.c (Fformat): Don't scan past end of format string that
1029 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1030
1031 2005-09-18 Andreas Schwab <schwab@suse.de>
1032
1033 * window.h (struct window): Remove height_fixed_p, no longer set.
1034
1035 * window.c (make_window): Don't initialize height_fixed_p.
1036 (window_fixed_size_p): Don't use it.
1037
1038 2005-09-18 John Paul Wallington <jpw@pobox.com>
1039
1040 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1041
1042 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1043
1044 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1045
1046 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1047 New variables.
1048 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1049 file selection.
1050
1051 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1052
1053 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1054
1055 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1056 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1057
1058 2005-09-16 Romain Francoise <romain@orebokech.com>
1059
1060 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1061
1062 2005-09-15 Richard M. Stallman <rms@gnu.org>
1063
1064 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1065 (display_mode_element): Instead of `lisp_string' and `this',
1066 record `offset' and increment that.
1067 `last_offset' replaces `last'.
1068
1069 * Makefile.in (XMENU_OBJ): Variable deleted.
1070 (obj): Use xmenu.o unconditionally.
1071 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1072
1073 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1074
1075 2005-09-15 Kim F. Storm <storm@cua.dk>
1076
1077 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1078 (reseat_at_next_visible_line_start): Likewise (in xassert).
1079
1080 2005-09-14 Romain Francoise <romain@orebokech.com>
1081
1082 * fileio.c (write_region_inhibit_fsync): New variable.
1083 (Fwrite_region): Use it to skip call to fsync.
1084 (syms_of_fileio): Initialize it.
1085
1086 2005-09-14 Kenichi Handa <handa@m17n.org>
1087
1088 * coding.c (code_convert_region_unwind): Argument format changed.
1089 (run_pre_post_conversion_on_str): If pre-write-conversion function
1090 changed the current buffer, delete the new buffer.
1091 (run_pre_write_conversin_on_c_str): Likewise.
1092
1093 * fileio.c (Fexpand_file_name): Check multibyteness of
1094 default_directory.
1095
1096 2005-09-13 Kenichi Handa <handa@m17n.org>
1097
1098 * composite.c (compose_chars_in_text): Delete it.
1099
1100 * composite.h (compose_chars_in_text): Delete extern.
1101
1102 2005-09-13 Kim F. Storm <storm@cua.dk>
1103
1104 * print.c (print_error_message): Fix last change.
1105
1106 2005-09-12 Kim F. Storm <storm@cua.dk>
1107
1108 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1109 Unconditionally reload `ptr' and `pend' after eval.
1110
1111 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1112
1113 * print.c (print_error_message): Pass copy of caller name to
1114 message_dolog.
1115
1116 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1117
1118 2005-09-12 Kenichi Handa <handa@m17n.org>
1119
1120 * xdisp.c (display_mode_element): Be sure to make variables THIS
1121 and LISP_STRING point into a string data of ELT.
1122
1123 2005-09-12 Kim F. Storm <storm@cua.dk>
1124
1125 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1126 signal_after_change that may have GC'ed.
1127 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1128
1129 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1130 after insert while runs signal_after_change.
1131
1132 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1133 declaration to where it is used.
1134
1135 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1136
1137 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1138 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1139 know if xfree is needed instead of guessing.
1140
1141 * xterm.h (x_encode_text): Remove prototype.
1142
1143 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1144
1145 * w32term.c (x_bitmap_icon): Load small icons too.
1146
1147 2005-09-10 Romain Francoise <romain@orebokech.com>
1148
1149 * buffer.c (init_buffer): Grow buffer to add directory separator
1150 and terminal zero. Fix typos.
1151
1152 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1153
1154 * buffer.c (init_buffer): Fix error message for failed call to
1155 get_current_dir_name.
1156 (get_current_dir_name): Remove prototype.
1157
1158 * xsmfns.c: (get_current_dir_name): Remove prototype.
1159
1160 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1161 Add prototype.
1162
1163 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1164 Don't #undef NULL after including blockinput.h.
1165
1166 * config.in: Regenerated.
1167
1168 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1169
1170 Remove the MAXPATHLEN limitations:
1171
1172 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1173 New function.
1174
1175 * buffer.c (init_buffer): Use it.
1176
1177 * xsmfns.c (smc_save_yourself_CB): Ditto.
1178
1179 2005-09-09 Kim F. Storm <storm@cua.dk>
1180
1181 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1182 commands that are remapped from some other command.
1183
1184 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1185 flag in disabled rows below the window.
1186
1187 * frame.h (struct frame): New member updated_p.
1188
1189 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1190 member. Remove local `updated' array and associated variables.
1191
1192 2005-09-07 Kim F. Storm <storm@cua.dk>
1193
1194 * xdisp.c (handle_display_prop): Respect overlay window property.
1195
1196 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1197 Fixes crash reported by YAMAMOTO Mitsuharu.
1198
1199 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1200
1201 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1202 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1203 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1204 (xlfdpat_block_match): New macro.
1205 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1206 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1207 (add_font_name_table_entry): Increase font_name_table_size more
1208 rapidly.
1209 (mac_c_string_match): Remove function.
1210 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1211 expression match.
1212
1213 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1214
1215 2005-09-03 Richard M. Stallman <rms@gnu.org>
1216
1217 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1218 (move_it_in_display_line_to): Stop after last char on line even
1219 on a windowing terminal, if that's the specified stop position.
1220
1221 * fns.c (Fsort): Doc fix.
1222
1223 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1224
1225 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1226
1227 * dired.c (directory_files_internal_unwind, directory_files_internal)
1228 (file_name_completion): Use a Save_Value object rather than a cons of
1229 two 16bit ints to store the DIR*.
1230 (directory_files_internal, file_name_completion): Handle both EINTR and
1231 EAGAIN consistently after `readdir'.
1232
1233 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1234
1235 * intervals.c (update_interval): Add position info in error.
1236
1237 * dispnew.c (window_to_frame_hpos, update_window):
1238 Avoid gcc warning about unused variable `f'.
1239
1240 2005-08-31 Jason Rumney <jasonr@gnu.org>
1241
1242 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1243 error, revert to using AppendMenu.
1244
1245 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1246
1247 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1248 All uses changed.
1249 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1250 cases.
1251 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1252 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1253 Use posix_pathname_to_fsspec.
1254 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1255 while we have mask.
1256
1257 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1258
1259 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1260
1261 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1262
1263 * syntax.c (update_syntax_table): Properly reproduce the special +1
1264 setting of e_property at the end of the buffer when bumping into the
1265 INTERVALS_AT_ONCE limit.
1266
1267 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1268
1269 * emacs.c (USAGE1): Fix the description of the -Q option.
1270
1271 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1272
1273 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1274
1275 2005-08-26 Kim F. Storm <storm@cua.dk>
1276
1277 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1278 Don't move PT to new window start.
1279
1280 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1281
1282 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1283 ICONIFY/DEICONIFY_EVENT.
1284
1285 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1286 Restore background color.
1287 (mac_handle_visibility_change): New function.
1288 (x_make_frame_invisible, x_iconify_frame)
1289 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1290 [USE_CARBON_EVENTS] (mac_handle_window_event)
1291 (install_window_handler): Handle visibility change events.
1292 (x_make_frame_visible): Don't reposition window if it is iconified
1293 or asked for visible before. Select and uncollapse window when it
1294 is made visible.
1295 (x_make_frame_invisible): Don't reset x_highlight_frame.
1296 (x_iconify_frame): Likewise. Make invisible frame visible before
1297 it is iconified.
1298 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1299 (do_window_update): Don't change visibility of invisible frame.
1300
1301 2005-08-22 Juri Linkov <juri@jurta.org>
1302
1303 * term.c (turn_on_face): Check for TS_set_foreground and
1304 TS_set_background depending on standout_mode. Simplify.
1305
1306 2005-08-21 Kim F. Storm <storm@cua.dk>
1307
1308 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1309 bitmaps on fully visible rows.
1310
1311 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1312 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1313 and return 0.
1314
1315 * xdisp.c (redisplay_window): Call update_window_fringes with
1316 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1317
1318 2005-08-20 Richard M. Stallman <rms@gnu.org>
1319
1320 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1321 (resize_mini_window): Set w->start, and PT, so as to display the tail
1322 end of the buffer, if it doesn't all fit.
1323
1324 2005-08-18 Kim F. Storm <storm@cua.dk>
1325
1326 * xdisp.c (calc_pixel_width_or_height): Use actual display
1327 resolution when available instead of Vdisplay_pixels_per_inch.
1328
1329 2005-08-17 Kim F. Storm <storm@cua.dk>
1330
1331 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1332
1333 * dispnew.c (buffer_posn_from_coords): Check that target row is
1334 within matrix.
1335
1336 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1337
1338 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1339 xg_set_frame_icon and call it.
1340
1341 * gtkutil.c (xg_set_frame_icon): New function.
1342
1343 * gtkutil.h (xg_set_frame_icon): Declare it.
1344
1345 2005-08-16 Kim F. Storm <storm@cua.dk>
1346
1347 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1348
1349 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1350 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1351
1352 2005-08-15 Richard M. Stallman <rms@gnu.org>
1353
1354 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1355
1356 2005-08-15 Kim F. Storm <storm@cua.dk>
1357
1358 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1359
1360 * process.c (deactivate_process, status_notify, read_process_output)
1361 (update_status, status_convert, decode_status, allocate_pty)
1362 (make_process, remove_process, list_processes_1)
1363 (create_process_1, unwind_request_sigio, read_process_output)
1364 (send_process, keyboard_bit_set): Declare static.
1365 (Fdelete_process): Simplify. Pass process to status_notify, so we
1366 don't try to read output from it.
1367 (status_notify): New arg deleting_process--don't try to read
1368 output from that process.
1369
1370 * lisp.h (deactivate_process, status_notify, read_process_output):
1371 Remove prototypes.
1372
1373 2005-08-14 Richard M. Stallman <rms@gnu.org>
1374
1375 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1376 define_image_type.
1377
1378 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1379
1380 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1381 (xg_get_image_for_pixmap): Move some code to
1382 xg_get_pixbuf_from_pix_and_mask, and call it.
1383
1384 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1385
1386 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1387 to get an GTK icon and set it with GTK functions to avoid having GTK
1388 override an icon set with just X functions.
1389
1390 2005-08-11 Richard M. Stallman <rms@gnu.org>
1391
1392 * image.c (syms_of_image): Init image_types here, and call
1393 define_image_type.
1394 (init_image): Not here.
1395
1396 2005-08-09 Richard M. Stallman <rms@gnu.org>
1397
1398 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1399
1400 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1401
1402 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1403
1404 * floatfns.c (Fexpt): Use floats for negative exponent.
1405
1406 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1407
1408 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1409 should not be there, causing menu display errors with GTK 2.6.9.
1410
1411 2005-08-07 Richard M. Stallman <rms@gnu.org>
1412
1413 * floatfns.c (Fexpt): Undo previous change.
1414
1415 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1416 so it can be used with various state vectors.
1417
1418 * emacs.c (endif): Convert -script into -scriptload.
1419 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1420
1421 * fns.c (syms_of_fns): Add `emacs' to features.
1422
1423 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1424 output newlines to scroll the old screen contents off the screen.
1425
1426 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1427
1428 * floatfns.c (Fexpt): Use floats for negative exponent.
1429 Reported by D Goel.
1430
1431 2005-08-02 Richard M. Stallman <rms@gnu.org>
1432
1433 * frame.c (Fframe_char_width): Doc fix.
1434
1435 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1436
1437 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1438 Defvar it.
1439
1440 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1441
1442 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1443 (my_create_window, my_create_tip_window): Make static.
1444
1445 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1446 (my_set_foreground_window, my_destroy_window): Make static.
1447
1448 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1449
1450 Merge gnulib getopt implementation into Emacs.
1451
1452 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1453 now part of lib-src.
1454
1455 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1456
1457 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1458
1459 2005-07-25 Jason Rumney <jasonr@gnu.org>
1460
1461 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1462 navigating menus with the keyboard.
1463
1464 2005-07-23 Richard M. Stallman <rms@gnu.org>
1465
1466 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1467
1468 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1469 gc_relative_threshold, one by one.
1470
1471 * keyboard.c (read_char): Test gc_cons_threshold.
1472 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1473
1474 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1475 gc_relative_threshold, one by one.
1476
1477 * alloc.c (gc_cons_threshold): Not static.
1478 (gc_cons_combined_threshold): Var deleted.
1479 (gc_relative_threshold): New variable.
1480 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1481 instead of gc_cons_combined_threshold.
1482
1483 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1484 (gc_cons_combined_threshold): Declaration deleted.
1485
1486 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1487
1488 * mac.c: Don't include stdlib.h or string.h.
1489 (Fdo_applescript, Fmac_file_name_to_posix)
1490 (Fmac_file_name_to_posix): Doc fixes.
1491 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1492 (Fmac_code_convert_string): Likewise.
1493 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1494 if the executable is not contained in a bundle.
1495
1496 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1497 (gray_width, gray_height): Remove defines.
1498 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1499 (gray_bitmap_bits): Remove variables.
1500 (lispy_function_keys): Remove extern.
1501 (free_frame_menubar): Add extern.
1502 (x_window_to_frame): Remove function.
1503 (unwind_create_tip_frame): Add declaration.
1504 (x_set_name_internal): New function.
1505 (x_set_name, x_set_title): Use it.
1506 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1507 (Fx_display_pixel_height, Fx_display_planes)
1508 (Fx_display_color_cells, Fx_server_max_request_size)
1509 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1510 (Fx_display_mm_height, Fx_display_mm_width)
1511 (Fx_display_backing_store, Fx_display_visual_class)
1512 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1513
1514 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1515
1516 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1517 (Fx_get_selection_internal, Fx_selection_owner_p)
1518 (Fx_selection_exists_p): Doc fixes.
1519 (syms_of_macselect) <selection-converter-alist>: Likewise.
1520
1521 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1522
1523 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1524
1525 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1526 (Fccl_execute_on_string): Likewise; add usage info.
1527
1528 * composite.c (Fcompose_region_internal)
1529 (Fcompose_string_internal):
1530 Improve argument/docstring consistency.
1531
1532 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1533 Fix typos in docstrings.
1534
1535 * textprop.c (Fnext_char_property_change)
1536 (Fprevious_char_property_change): Doc fixes.
1537
1538 * window.c (Fset_window_margins, Fset_window_fringes):
1539 Improve argument/docstring consistency.
1540
1541 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1542
1543 2005-07-21 Andreas Schwab <schwab@suse.de>
1544
1545 * eval.c (restore_stack_limits): Return a value.
1546
1547 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1548
1549 * eval.c (Fdefvar): Doc fix.
1550
1551 2005-07-20 Kim F. Storm <storm@cua.dk>
1552
1553 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1554 Use make_save_value to unwind protect stream.
1555
1556 * lread.c (Fload, load_unwind):
1557 Use make_save_value to unwind protect stream.
1558
1559 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1560
1561 * eval.c (Fprog2, Fcalled_interactively_p),
1562 (syms_of_eval) <debug-on-quit>: Doc fixes.
1563 (syms_of_eval) <max-specpdl-size>:
1564 (Finteractive_p): Fix typos in docstrings.
1565
1566 2005-07-19 Kim F. Storm <storm@cua.dk>
1567
1568 * w32fns.c (Vx_hand_shape): Variable removed.
1569 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1570
1571 2005-07-19 Kenichi Handa <handa@m17n.org>
1572
1573 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1574
1575 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1576
1577 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1578
1579 2005-07-18 Kim F. Storm <storm@cua.dk>
1580
1581 * frame.h (struct frame): New member already_hscrolled_p.
1582
1583 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1584 to avoid redisplay looping hscrolling back and forth ad infinitum.
1585
1586 2005-07-18 Juri Linkov <juri@jurta.org>
1587
1588 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1589 * keymap.c (Fminor_mode_key_binding):
1590 * macterm.c (mac-emulate-three-button-mouse):
1591 Delete duplicate duplicate words.
1592
1593 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1594
1595 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1596
1597 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1598
1599 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1600
1601 * macgui.h (struct _XGC): New struct.
1602 (GC): Use it.
1603 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1604 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1605
1606 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1607 (XSetFont): Add declaration.
1608 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1609 Remove functions.
1610 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1611 New defines.
1612 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1613 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1614 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1615 Use them.
1616 (mac_erase_rectangle): New function.
1617 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1618 (x_draw_stretch_glyph_string): Use it.
1619 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1620 (XSetBackground, XSetFont): Adjust for new GC implementation.
1621 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1622 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1623
1624 * macterm.h (struct mac_display_info): Change types of
1625 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1626 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1627
1628 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1629
1630 2005-07-16 Richard M. Stallman <rms@gnu.org>
1631
1632 * buffer.c (Fmake_overlay): Doc fix.
1633
1634 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1635
1636 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1637 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1638
1639 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1640
1641 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1642 Use Fstring_as_unibyte instead of string_make_unibyte.
1643
1644 2005-07-15 Richard M. Stallman <rms@gnu.org>
1645
1646 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1647
1648 2005-07-15 Kim F. Storm <storm@cua.dk>
1649
1650 * xdisp.c: Fix redisplay loop in last change.
1651 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1652 (move_it_vertically_backward, move_it_by_lines): Use it.
1653
1654 2005-07-14 Jason Rumney <jasonr@gnu.org>
1655
1656 * w32.c (init_environment): Default HOME directory to user's
1657 appdata directory if possible.
1658
1659 2005-07-14 Kim F. Storm <storm@cua.dk>
1660
1661 * .gdbinit (pitx): Fix output format. Print string charpos.
1662
1663 * lread.c (syms_of_lread): Initialize seen_list.
1664
1665 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1666
1667 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1668 Staticpro re_match_object.
1669
1670 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1671
1672 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1673 dereference.
1674
1675 * macterm.c (mac_window_to_frame): Remove duplicate define.
1676
1677 2005-07-14 Kenichi Handa <handa@m17n.org>
1678
1679 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1680 (code_convert_region): Adjust for the above change.
1681 (set_conversion_work_buffer): If the work buffer is already in
1682 use, generate a new buffer and return it. Otherwise return Qnil.
1683 (run_pre_post_conversion_on_str): Adjust for the above change.
1684 (run_pre_write_conversin_on_c_str): Likewise.
1685
1686 2005-07-13 Kim F. Storm <storm@cua.dk>
1687
1688 * xdisp.c (start_display): Don't reseat to next visible line start
1689 if current start position is in a string or image.
1690 (move_it_vertically_backward): Be sure to move out of strings and
1691 images when moving it2 forward.
1692 (move_it_by_lines): When moving forward, move to next buffer
1693 position if we end up in a string or image. When moving backward,
1694 count rows moved over when moving to start of current row in case
1695 row starts in middle of a string or image. Also move further
1696 backward if we end up in a string or image.
1697 (try_cursor_movement): If overlay string spans multiple lines,
1698 move backward to set cursor on start of an overlay string.
1699 (cursor_row_p): Row is ok if cursor is at newline from string, but
1700 string starts on this line (so we always position cursor at start
1701 of string).
1702
1703 * indent.c (Fvertical_motion): If start position is on an image,
1704 don't move back if we move too far (that's almost certain to happen).
1705
1706 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1707 row in minibuffer windows.
1708 (try_window): Don't check margins in minibuffer windows.
1709
1710 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1711
1712 * macterm.c: Don't include stdlib.h or composite.h.
1713 (x_use_underline_position_properties, last_mouse_press_frame)
1714 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1715 (syms_of_macterm, mac_initialize): Don't initialize them.
1716 (waiting_for_input, initial_argv, initial_argc)
1717 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1718 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1719 (extra_keyboard_modifiers): Fix type in extern.
1720 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1721 (x_scroll_bar_report_motion): Add argument types to declaration.
1722 (mac_compute_glyph_string_overhangs): Add declaration.
1723 (disable_mouse_highlight): Remove unused variable.
1724 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1725 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1726 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1727 All callers changed.
1728 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1729 timestamp.
1730 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1731 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1732 only when its width is less than the height.
1733 (XTredeem_scroll_bar): Sync with xterm.c.
1734 (font_name_table, font_name_table_size, font_name_count):
1735 Make static.
1736 (drag_and_drop_file_list): Remove variable. Previous use is now
1737 local to function.
1738 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1739 from XTread_socket.
1740 (XTread_socket): Consolidate setting of event timestamp.
1741 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1742 Support extra_keyboard_modifiers.
1743
1744 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1745 beginning with that for ASCII.
1746
1747 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1748
1749 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1750 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1751 (syms_of_alloc): Declare gc-cons-percentage.
1752
1753 * eval.c (Feval, Ffuncall):
1754 * keyboard.c (read_char):
1755 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1756
1757 * lisp.h (gc_cons_combined_threshold): Declare.
1758
1759 2005-07-12 Kim F. Storm <storm@cua.dk>
1760
1761 * coding.c (Qprocess_argument):
1762 * coding.h (Qprocess_argument): Remove unused var.
1763
1764 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1765
1766 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1767
1768 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1769 Endian.h.
1770 [!MAC_OSX] (fchmod, fchown): New functions.
1771 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1772 Use SBYTES and EndianU32_BtoN.
1773 (mac_get_object_from_code): Return 4 byte string even if argument
1774 is 0. Use make_unibyte_string and EndianU32_NtoB.
1775 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1776 (Fmac_set_file_type): Fix documents and argument declarations.
1777 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1778
1779 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1780
1781 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1782
1783 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1784
1785 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1786 Lucid if X_I18N, font otherwise.
1787
1788 2005-07-10 Steven Tamm <steventamm@mac.com>
1789
1790 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1791 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1792 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1793
1794 2005-07-10 Richard M. Stallman <rms@gnu.org>
1795
1796 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1797 (syms_of_lread): Set up eval-buffer-list.
1798 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1799
1800 2005-07-08 Richard M. Stallman <rms@gnu.org>
1801
1802 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1803
1804 2005-07-08 Kim F. Storm <storm@cua.dk>
1805
1806 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1807 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1808
1809 2005-07-07 Kim F. Storm <storm@cua.dk>
1810
1811 * window.c (Frecenter): Fix last change (set iarg before use).
1812
1813 2005-07-06 Richard M. Stallman <rms@gnu.org>
1814
1815 * window.c (Frecenter): When arg is inside the scroll margin,
1816 move it out of the margin.
1817
1818 2005-07-06 Jason Rumney <jasonr@gnu.org>
1819
1820 * w32console.c (initialize_w32_display): Detect when the console
1821 dimensions are insane, and default to 80x25 instead.
1822 (w32_use_full_screen_buffer): Default to NIL.
1823
1824 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1825
1826 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1827 VERTICAL_BORDER_FACE_ID for vertical border line.
1828 (mac_encode_char): Call check_ccl_update in advance.
1829 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1830 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1831 Don't assume that font family length is less than 32.
1832 (x_compute_min_glyph_bounds): Make static.
1833 (x_load_font): Never set fonts_changed_p to zero.
1834
1835 2005-07-04 Lute Kamstra <lute@gnu.org>
1836
1837 * Update FSF's address in GPL notices.
1838
1839 2005-07-03 Richard M. Stallman <rms@gnu.org>
1840
1841 * xdisp.c (try_window): Fix previous change in how it handles
1842 a partially-visible line or one only partly past the margin.
1843
1844 * window.c (window_scroll_pixel_based): Take account
1845 of this_scroll_margin when finding point when scrolling up.
1846
1847 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1848
1849 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1850 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1851 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1852
1853 2005-07-02 Juri Linkov <juri@jurta.org>
1854
1855 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1856 VERTICAL_BORDER_FACE_ID for vertical border line.
1857
1858 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1859
1860 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1861 fchmod so that chmod doesn't get called on MSDOS before the file
1862 is closed.
1863
1864 2005-07-01 Jason Rumney <jasonr@gnu.org>
1865
1866 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1867 workaround.
1868 (w32_initialize): Initialize it.
1869 (w32_native_per_char_metric): Allow a couple of extra pixels when
1870 Cleartype is active.
1871
1872 * w32term.c (w32_initialize): Move check for screen reader here
1873 from syms_of_w32term.
1874
1875 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1876
1877 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1878 is not zero.
1879
1880 2005-07-01 Masatake YAMATO <jet@gyve.org>
1881
1882 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1883
1884 2005-06-30 Juri Linkov <juri@jurta.org>
1885
1886 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1887 decrease x coord of vertical border by 1 pixel to not occupy text
1888 area of the right window.
1889
1890 * xterm.c (x_draw_vertical_window_border): Use foreground of
1891 VERTICAL_BORDER_FACE_ID for vertical border line.
1892
1893 * term.c (turn_on_face): In standout mode apply specified
1894 fg to bg, and specified bg to fg (this makes the logic of
1895 inversion on terminal consistent with X).
1896
1897 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1898
1899 * eval.c (user_variable_p_eh): New function.
1900 (Fuser_variable_p): Use it. Clarify docstring.
1901 Return t for aliases of user options, nil for alias loops.
1902
1903 2005-06-27 Richard M. Stallman <rms@gnu.org>
1904
1905 * eval.c (Fdefvar): Improve error message.
1906
1907 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1908
1909 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1910 change.
1911
1912 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1913
1914 * eval.c (Fdefvar): Don't try to set constant symbols.
1915
1916 2005-06-25 Richard M. Stallman <rms@gnu.org>
1917
1918 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1919
1920 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1921
1922 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1923
1924 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1925 (redisplay_window): Handle try_window reporting point in scroll margin.
1926
1927 * dispextern.h (try_window): Declare new arg.
1928
1929 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1930 Use fchmod to copy the file modes.
1931 (Frename_file): Don't copy UID and GID here;
1932 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1933
1934 * eval.c (call_debugger): Take full care of extending stack limits
1935 to make space for the debugger, and restore the change afterward.
1936 Bind debug-on-error to nil.
1937 (restore_stack_limits): New subroutine.
1938 (Fsignal): Extend specpdl bound along with eval depth bound,
1939 for calling edebug. Don't do either one, for calling debugger.
1940 (find_handler_clause): Don't bind debug-on-error here.
1941 Don't unbind anything either.
1942 Temporarily advance max_specpdl_size for calling
1943 internal_with_output_to_temp_buffer.
1944 (grow_specpdl): Don't alter max_specpdl_size before signaling
1945 an error.
1946 (syms_of_eval) <max-specpdl-size>: Doc fix.
1947
1948 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1949
1950 2005-06-24 Eli Zaretskii <eliz@gnu.org>
1951
1952 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1953 chown on DOS_NT platforms.
1954
1955 * w32.c (sys_chown): New function.
1956
1957 * s/ms-w32.h (chown): New; define to sys_chown.
1958
1959 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
1960
1961 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1962 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1963
1964 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1965
1966 2005-06-23 Richard M. Stallman <rms@gnu.org>
1967
1968 * xdisp.c (get_next_display_element): Finish reversing the tests of
1969 Vnobreak_char_display.
1970
1971 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1972 All uses changed.
1973 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1974 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1975
1976 * fileio.c (Frename_file): Preserve owner and group, if possible,
1977 when copying.
1978
1979 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
1980
1981 * abbrev.c (Funexpand_abbrev):
1982 * category.c (Fmake_category_set):
1983 * dispnew.c (Fsleep_for, Fsit_for):
1984 * editfns.c (Fsubst_char_in_region):
1985 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1986 * frame.c (make_frame_without_minibuffer):
1987 * lread.c (read_vector):
1988 * macfns.c (check_x_frame):
1989 * process.c (Fstop_process, Fcontinue_process):
1990 * search.c (Freplace_match):
1991 * syntax.c (Fstring_to_syntax):
1992 * w32fns.c (check_x_frame, check_x_display_info):
1993 * xfaces.c (x_supports_face_attributes_p):
1994 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1995
1996 * image.c (fn_png_init_io): Don't define it.
1997 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1998 (png_read_from_file): New function, based on png_read_from_memory.
1999 (png_load): Use it, instead of fn_png_init_io.
2000
2001 2005-06-23 Kim F. Storm <storm@cua.dk>
2002
2003 * search.c (Fmatch_data): Remove evaporate option.
2004 (Fset_match_data): Do not mention evaporate option in doc string.
2005 Add commentary explaining evaporate arg (for internal use only).
2006 (unwind_set_match_data): Add comment on evaporate use.
2007
2008 2005-06-22 Miles Bader <miles@gnu.org>
2009
2010 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2011 (realize_basic_faces, syms_of_xfaces): Update references to it.
2012 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2013 to `VERTICAL_BORDER_FACE_ID'.
2014 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2015
2016 2005-06-21 Juri Linkov <juri@jurta.org>
2017
2018 * dispextern.h: Add extern Qframe_set_background_mode.
2019
2020 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2021 Qframe_set_background_mode.
2022
2023 * frame.c (Fmodify_frame_parameters):
2024 Call frame-set-background-mode after changing the background color
2025 on non-window non-dos branch.
2026
2027 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2028
2029 * fns.c (Fchar_table_range):
2030 * process.c (Fmake_network_process): Fix spellings.
2031
2032 2005-06-20 Kim F. Storm <storm@cua.dk>
2033
2034 * fns.c (Fsort): Doc fix.
2035
2036 2005-06-20 Miles Bader <miles@gnu.org>
2037
2038 * xfaces.c (Qvertical_divider): New variable.
2039 (realize_basic_faces): Realize its face.
2040 (syms_of_xfaces): Initialize it.
2041
2042 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2043
2044 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2045 window-separator on ttys using `vertical-divider' face by default.
2046
2047 2005-06-17 Richard M. Stallman <rms@gnu.org>
2048
2049 * xdisp.c (get_next_display_element):
2050 Reverse test of Vshow_nonbreak_escape.
2051
2052 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2053 (Ftty_no_underline): New function.
2054 (syms_of_term): defsubr it.
2055
2056 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2057
2058 * dispnew.c (spec_glyph_lookup_face): New function.
2059 (build_frame_matrix_from_leaf_window): Use it.
2060
2061 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2062
2063 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2064
2065 2005-06-12 Richard M. Stallman <rms@gnu.org>
2066
2067 * keyboard.c (read_char): After catching a longjmp,
2068 call restore_getcjmp.
2069
2070 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2071
2072 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2073
2074 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2075
2076 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2077 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2078 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2079 events.
2080 (XTread_socket): Don't pass keyboard events with the option
2081 modifier to the system when Vmac_command_key_is_meta is nil or
2082 Vmac_option_modifier is non-nil.
2083 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2084 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2085 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2086 handler function.
2087 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2088 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2089 handler part to mac_handle_mouse_event.
2090
2091 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2092
2093 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2094 NEW-ALIAS and BASE-VARIABLE, respectively.
2095
2096 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2097
2098 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2099 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2100 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2101
2102 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2103
2104 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2105
2106 * w32term.c (x_use_underline_position_properties): New variable.
2107 (x_draw_glyph_string): Remind in a comment to change doc string of
2108 x-use-underline-position-properties if/when underline positioning
2109 is implemented.
2110 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2111 and initialize it to nil.
2112
2113 2005-06-12 Jason Rumney <jasonr@gnu.org>
2114
2115 * w32fns.c (NEWOPENFILENAME): New struct.
2116 (Fx_file_dialog): Use it to trick the system into giving us up to
2117 date dialogs on systems that are documented to support it.
2118 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2119
2120 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2121
2122 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2123 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2124
2125 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2126
2127 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2128 to CreateDIBSection to avoid a compiler warning.
2129 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2130 warning.
2131 (png_load): Cast return values of fn_png_create_read_struct and
2132 fn_png_create_info_struct, to avoid compiler warnings on W32.
2133 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2134 to avoid compiler warnings.
2135 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2136 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2137 avoid a compiler warning.
2138 (tiff_load): Cast return values of fn_TIFFOpen and
2139 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2140 to IMAGE_BACKGROUND to avoid a compiler warning.
2141 (gif_load): Cast return values of fn_DGifOpenFileName and
2142 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2143 IMAGE_BACKGROUND to avoid a compiler warning.
2144 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2145 before redefining.
2146
2147 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2148 the call to CreateDIBSection, to avoid a compiler warning.
2149
2150 2005-06-11 Jason Rumney <jasonr@gnu.org>
2151
2152 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2153 minibuffer.
2154 * macfns.c (Fx_file_dialog): Likewise.
2155
2156 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2157
2158 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2159
2160 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2161
2162 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2163 * w32fns.c (syms_of_w32fns): Fix spellings.
2164
2165 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2166
2167 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2168 `verbose'; print diagnostic messages only if it is non-zero.
2169 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2170 in the environment.
2171 (copy_executable_and_dump_data): Print section names with %.8s.
2172
2173 2005-06-10 Masatake YAMATO <jet@gyve.org>
2174
2175 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2176 when mouse_face is not given.
2177
2178 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2179
2180 * window.c (Fselect_window): Adapt call to Fselect_frame.
2181
2182 * lisp.h: Update EXFUN of Fselect_frame.
2183
2184 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2185
2186 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2187 no_enter.
2188 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2189 Adapt to above change.
2190
2191 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2192
2193 * fns.c (Fmemq, Fmaphash): Doc fixes.
2194
2195 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2196
2197 * xfaces.c (Fdisplay_supports_face_attributes_p):
2198 Fix typo in docstring.
2199
2200 2005-06-08 Steven Tamm <steventamm@mac.com>
2201
2202 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2203 used by gcc4 on intel mac.
2204
2205 2005-06-09 Kim F. Storm <storm@cua.dk>
2206
2207 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2208 in REUSE list if non-nil; free them if equal to evaporate.
2209 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2210 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2211 (restore_search_regs): Rename from restore_match_data. Uses changed.
2212 (unwind_set_match_data): New function.
2213 (record_unwind_save_match_data): New function like save-match-data.
2214
2215 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2216 (record_unwind_save_match_data): Add prototype.
2217 (restore_search_regs): Rename from restore_match_data.
2218
2219 * composite.c (compose_chars_in_text):
2220 * eval.c (do_autoload):
2221 * macmenu.c (set_frame_menubar):
2222 * process.c (read_process_output, exec_sentinel):
2223 * xmenu.c (set_frame_menubar):
2224 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2225 * w32menu.c (set_frame_menubar):
2226 Use record_unwind_save_match_data.
2227
2228 2005-06-08 Richard M. Stallman <rms@gnu.org>
2229
2230 * xdisp.c (get_next_display_element): Alter previous change:
2231 Distinguish Vshow_nonbreak_escape = t or not t.
2232 For t, use escape_glyph once again, as before previous change.
2233 Use space or hyphen for display, instead of the non-ASCII char.
2234 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2235
2236 * process.c (Fstart_process): Don't touch command_channel_p slot.
2237
2238 * process.h (struct process): Delete command_channel_p.
2239
2240 2005-06-07 Masatake YAMATO <jet@gyve.org>
2241
2242 * xdisp.c (note_mode_line_or_margin_highlight):
2243 Check the overlapping of re-rendering area to avoid flickering.
2244 (note_mouse_highlight): Call clear_mouse_face if PART
2245 is not ON_MODE_LINE nor ON_HEADER_LINE.
2246
2247 2005-06-07 Kim F. Storm <storm@cua.dk>
2248
2249 * process.c: Improve commentary for adaptive read buffering.
2250
2251 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2252
2253 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2254 if available.
2255
2256 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2257
2258 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2259 New functions for popping down menus on C-g.
2260 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2261
2262 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2263 non-static.
2264
2265 * config.in: Add HAVE_CANCELMENUTRACKING.
2266
2267 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2268
2269 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2270
2271 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2272
2273 * w32proc.c (RVA_TO_PTR): New macro.
2274
2275 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2276
2277 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2278 Depend on w32heap.h.
2279
2280 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2281
2282 * keyboard.c (command_loop_1): Update Vthis_original_command.
2283
2284 2005-06-06 Richard M. Stallman <rms@gnu.org>
2285
2286 * xmenu.c (popup_get_selection): Undo previous change.
2287
2288 2005-06-06 Juri Linkov <juri@jurta.org>
2289
2290 * xdisp.c (Qno_break_space): New variable.
2291 (syms_of_xdisp): Initialize it.
2292 (get_next_display_element): Add no-break space and soft hypen
2293 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2294 Use `no-break-space' face for no-break spaces.
2295
2296 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2297
2298 * window.c (delete_window): Handle the case where a h/vchild has
2299 a h/vchild.
2300
2301 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2302
2303 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2304 call to pfn_setsockopt, cast optval to `const char *'.
2305
2306 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2307
2308 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2309 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2310 compiler warnings.
2311
2312 * s/ms-w32.h (fileno): Don't define if already defined.
2313
2314 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2315
2316 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2317
2318 2005-06-04 Richard M. Stallman <rms@gnu.org>
2319
2320 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2321
2322 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2323
2324 * macmenu.c (cleanup_popup_menu): New function.
2325 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2326 mac_menu_show Quit:s.
2327 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2328 a dialog).
2329
2330 2005-06-04 Kim F. Storm <storm@cua.dk>
2331
2332 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2333
2334 * callproc.c (Fcall_process): Don't use alloca to gradually
2335 increase size of buf, as it effectively uses twice the necessary
2336 space on the stack. Instead, pre-allocate buf of full size, and
2337 gradually increase the read size.
2338
2339 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2340
2341 * eval.c (unbind_to): Preserve value of Vquit_flag.
2342
2343 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2344 before a button release event.
2345
2346 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2347
2348 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2349 on faces in a frame, if the argument FRAME is non-nil.
2350 Improve argument/docstring consistency.
2351
2352 2005-06-02 Kim F. Storm <storm@cua.dk>
2353
2354 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2355 (x_consider_frame_title, Fformat_mode_line): Save offset into
2356 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2357
2358 2005-06-01 Kim F. Storm <storm@cua.dk>
2359
2360 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2361
2362 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2363
2364 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2365 resolution fields for scalable fonts to 0.
2366
2367 * xfaces.c (build_scalable_font_name): Round pixel size to the
2368 nearest integer.
2369
2370 2005-06-01 Kim F. Storm <storm@cua.dk>
2371
2372 * xdisp.c (display_mode_line): Support nested calls to redisplay
2373 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2374
2375 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2376
2377 * fileio.c (Finsert_file_contents):
2378 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2379
2380 2005-05-31 Kim F. Storm <storm@cua.dk>
2381
2382 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2383 (mode_line_noprop_ptr): Rename from frame_title_*.
2384 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2385 (store_mode_line_noprop): Rename from store_frame_title.
2386 (mode_line_target): New enum to specify current output target
2387 for mode line formatting.
2388 (display_mode_element): Test it rather than frame_title_ptr and
2389 mode_line_string_list to determine where output should go.
2390 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2391 (Vmode_line_unwind_vector): New variable.
2392 (format_mode_line_unwind_data, unwind_format_mode_line):
2393 New functions for unwind protection in mode line formatting.
2394 (x_consider_frame_title): Use them and new local var 'title_start'
2395 to support nested calls to format-mode-line and redisplay.
2396 Set mode_line_target to MODE_LINE_TITLE.
2397 (Fformat_mode_line): Use them and new local var 'string_start' to
2398 support nested calls to format-mode-line and redisplay.
2399 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2400 Don't trim trailing dashes.
2401 (decode_mode_spec): Don't make infinite number of trailing dashes
2402 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2403 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2404 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2405 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2406 Initialize mode_line_target to MODE_LINE_DISPLAY.
2407
2408 2005-05-29 Richard M. Stallman <rms@gnu.org>
2409
2410 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2411
2412 2005-05-28 Masatake YAMATO <jet@gyve.org>
2413
2414 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2415 pointer to a hand cursor when hoovering over a mouse-face.
2416
2417 2005-05-27 Kenichi Handa <handa@m17n.org>
2418
2419 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2420
2421 * ccl.c: Now an element of Vccl_program_table is a vector of
2422 length 4, not 3.
2423 (ccl_get_compiled_code): New arg idx. Caller changed.
2424 Adjust for the change of Vccl_program_table.
2425 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2426 (check_ccl_update): New function.
2427 (Fregister_ccl_program): Use ASET to set an element of a vector.
2428 Adjusted for the change of Vccl_program_table.
2429
2430 * ccl.h (struct ccl_program): New member idx.
2431 (check_ccl_update): Extern it.
2432
2433 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2434
2435 * image.c (Vimage_library_alist): Move from image.el.
2436 (syms_of_image): Defvar it.
2437 (lookup_image_type): Use it.
2438
2439 * buffer.c (Fbuffer_local_value): Make argument name match its use
2440 in docstring.
2441
2442 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2443
2444 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2445 (Fposn_at_x_y): Make argument name match its use in docstring.
2446
2447 2005-05-26 Lute Kamstra <lute@gnu.org>
2448
2449 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2450
2451 2005-05-24 Masatake YAMATO <jet@gyve.org>
2452
2453 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2454 as loop sentinels.
2455
2456 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2457
2458 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2459 select frame title ("Question"/"Information").
2460 (xdialog_show): Use it.
2461
2462 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2463
2464 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2465
2466 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2467 a third argument (Qnil).
2468
2469 * lisp.h: x-popup-dialog can have three arguments.
2470
2471 * editfns.c (Fmessage_box): Use "Information" for frame title.
2472
2473 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2474
2475 * termcap.c [VMS]: Include <starlet.h>.
2476
2477 2005-05-23 Masatake YAMATO <jet@gyve.org>
2478
2479 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2480 for mouse-face. Change the type of the first argument from `window'
2481 to `Lisp_Object'.
2482 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2483 window instead of w.
2484
2485 2005-05-22 Andreas Schwab <schwab@suse.de>
2486
2487 * process.c (send_process): Move misplaced volatile.
2488
2489 2005-05-21 Richard M. Stallman <rms@gnu.org>
2490
2491 * xdisp.c (display_mode_element): If we're processing a list and
2492 padding is specified, put it after the last element.
2493
2494 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2495
2496 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2497 "superroot" on DOS_NT systems.
2498
2499 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2500
2501 * process.c (send_process): Restore the SIGPIPE handler if we
2502 catch a SIGPIPE.
2503
2504 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2505
2506 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2507 misleading comments).
2508 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2509
2510 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2511
2512 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2513 Correct the right value.
2514
2515 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2516
2517 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2518 post-command-idle-hook and post-command-idle-delay.
2519 (command_loop_1): Don't try to execute post-command-idle-hook.
2520
2521 2005-05-16 Kim F. Storm <storm@cua.dk>
2522
2523 * xdisp.c (handle_display_prop): Handle empty replacement.
2524 (handle_single_display_spec): Return -1 for empty replacement.
2525
2526 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2527
2528 * .gdbinit (pitx): Print more info about iterator.
2529
2530 2005-05-16 Andreas Schwab <schwab@suse.de>
2531
2532 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2533
2534 2005-05-14 Richard M. Stallman <rms@gnu.org>
2535
2536 * xdisp.c (message3): Call cancel_echoing.
2537
2538 * alloc.c (Fmemory_full_p): New function.
2539 (syms_of_alloc): defsubr it.
2540
2541 * process.c (send_process_trap): Unblock SIGPIPE.
2542 (send_process): Reset SIGPIPE handler before reporting error.
2543
2544 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2545
2546 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2547
2548 2005-05-13 Richard M. Stallman <rms@gnu.org>
2549
2550 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2551 (Finsert_file_contents): If we read 0 bytes from a special file,
2552 unlock the visited file if we locked it.
2553 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2554 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2555
2556 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2557
2558 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2559
2560 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2561 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2562 redisplay from being paused by them.
2563
2564 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2565 [!MAC_OSX] (target_ticks): Remove variable.
2566 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2567 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2568 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2569 event occurs before timeout, behave as if the function were interrupted.
2570 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2571 handling using Time Manager routines.
2572 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2573 New variables.
2574 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2575 (setitimer): New functions.
2576
2577 * macfns.c, macmenu.c: Don't include signal.h.
2578
2579 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2580 Rename from get_control_part_bound. All callers changed.
2581 (x_scroll_bar_clear): New function.
2582 (x_clear_frame): Use it.
2583 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2584 (x_scroll_bar_handle_click): Change type of second argument from
2585 int to ControlPartCode.
2586 (check_alarm): Remove declaration.
2587 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2588 (XTread_socket): Use ControlPartCode instead of SInt16.
2589
2590 2005-05-13 Nozomu Ando <nand@mac.com>
2591
2592 * unexmacosx.c: Include assert.h.
2593 (MACOSX_MALLOC_MULT16): New define.
2594 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2595 ptr is in unexec regions by checking it is multiple of 16.
2596 (unexec_malloc_header_t): New typedef.
2597 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2598 allocated size information in unexec_malloc_header.
2599
2600 2005-05-10 Richard M. Stallman <rms@gnu.org>
2601
2602 * xterm.c (noinclude): Add #undef.
2603
2604 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2605
2606 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2607
2608 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2609 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2610 Doc fixes.
2611
2612 * dired.c (Ffile_name_completion): Make argument name
2613 match its use in docstring.
2614
2615 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2616
2617 * eval.c (Fdefvaralias): Remove any pre-existing
2618 variable-documentation property of the alias.
2619
2620 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2621
2622 * xfns.c (start_hourglass): Do nothing when running on a tty.
2623
2624 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2625
2626 * fns.c (Fchar_table_range): Fix typos in docstring.
2627
2628 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2629
2630 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2631
2632 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2633
2634 * lread.c (Flocate_file_internal): Doc fix.
2635
2636 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2637
2638 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2639
2640 * macselect.c (x_own_selection): Accept Lisp string as result of
2641 selection converter function.
2642 (x_clear_frame_selections): Don't call x-lost-selection-functions
2643 if Emacs is not owner of the selection.
2644 (Vmac_services_selection): Put variable and initialization in
2645 #ifdef MAC_OSX.
2646 (syms_of_macselect) [MAC_OSX]: Set default value of
2647 Vmac_services_selection to PRIMARY.
2648
2649 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2650 (mac_handle_tool_bar_click): Remove unused function and declaration.
2651 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2652 (install_scroll_bar_timer, set_scroll_bar_timer)
2653 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2654 (get_control_part_bound, x_scroll_bar_handle_press)
2655 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2656 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2657 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2658 (scroll_bar_timer_event_posted_p): New variables.
2659 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2660 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2661 (x_scroll_bar_create): Set control reference with NewControl.
2662 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2663 Initialize track_top and track_height to nil.
2664 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2665 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2666 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2667 and associated window.
2668 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2669 from window config.
2670 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2671 Set track_top and track_height to nil when scroll bar size is changed.
2672 Recalculate them if they are nil.
2673 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2674 clicked control is a scroll bar.
2675 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2676 event handler functions. Don't add modifiers to scroll bar click
2677 events. Call scroll bar release handler when window is deactivated.
2678 (mac_initialize): Remove unused code for X toolkit.
2679 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2680 Initialize Vx_toolkit_scroll_bars to nil.
2681
2682 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2683 New members track_top and track_height.
2684
2685 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2686 init_process when including sys/select.h.
2687
2688 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2689
2690 * eval.c (Fdefvaralias): Doc fix.
2691
2692 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2693
2694 2005-05-05 Kim F. Storm <storm@cua.dk>
2695
2696 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2697 default value.
2698 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2699 Fix type of cursor-in-non-selected-windows.
2700
2701 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2702
2703 * mac.c: #undef init_process so not to conflict with system headers.
2704
2705 2005-05-02 Richard M. Stallman <rms@gnu.org>
2706
2707 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2708
2709 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2710
2711 * xdisp.c (Vcursor_in_non_selected_windows)
2712 (Qcursor_in_non_selected_windows): Vars deleted.
2713 (syms_of_xdisp): Don't initialize them.
2714 (get_window_cursor_type): Use cursor_in_non_selected_windows
2715 buffer slot.
2716
2717 2005-05-02 Kim F. Storm <storm@cua.dk>
2718
2719 * macros.c (executing_kbd_macro_index): Rename from
2720 executing_macro_index. All uses changed.
2721 (executing_kbd_macro_iterations): Rename from
2722 executing_macro_iterations. All uses changed.
2723 (executing_kbd_macro): Rename from executing_macro.
2724 All uses changed.
2725 (syms_of_macros): Rename Lisp var executing-macro-index to
2726 executing-kbd-macro-index.
2727
2728 * xdisp.c (move_it_in_display_line_to): Fix last change.
2729
2730 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2731
2732 * xmenu.c (Fx_popup_menu): Doc fix.
2733
2734 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2735
2736 2005-05-02 Jason Rumney <jasonr@gnu.org>
2737
2738 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2739
2740 2005-05-02 Nozomu Ando <nand@mac.com>
2741
2742 * sysselect.h: Fix typo.
2743
2744 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2745
2746 * charset.c (Fchars_in_region): Remove as obsolete.
2747
2748 2005-05-01 Kim F. Storm <storm@cua.dk>
2749
2750 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2751 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2752 glyph.
2753
2754 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2755
2756 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2757
2758 2005-05-01 Richard M. Stallman <rms@gnu.org>
2759
2760 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2761 If user cancels the menu, quit unless FOR_CLICK.
2762
2763 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2764 All uses changed.
2765 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2766 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2767 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2768 * commands.h (Vexecuting_kbd_macro): Likewise.
2769
2770 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2771
2772 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2773
2774 2005-04-30 Richard M. Stallman <rms@gnu.org>
2775
2776 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2777 property of the file name handler.
2778 (Qoperations): New variable.
2779 (syms_of_fileio): Initialize and staticpro it.
2780
2781 * xdisp.c (set_message_1): Delete xassert.
2782
2783 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2784
2785 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2786
2787 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2788
2789 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2790 before/after including Carbon.h if there is a working mktime.
2791
2792 2005-04-28 Kim F. Storm <storm@cua.dk>
2793
2794 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2795 Fix cyclic alias check. If alias loop is detected, signal
2796 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2797
2798 2005-04-28 Lute Kamstra <lute@gnu.org>
2799
2800 * eval.c (do_autoload): Record only autoloads in the autoload
2801 property of symbols.
2802
2803 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2804
2805 * emacs.c (USAGE1): Add --basic-display and --quick options.
2806
2807 2005-04-27 Kim F. Storm <storm@cua.dk>
2808
2809 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2810
2811 2005-04-26 Richard M. Stallman <rms@gnu.org>
2812
2813 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2814 (syms_of_window): Doc fixes.
2815
2816 * indent.c (Fvertical_motion): Undo previous change.
2817
2818 2005-04-26 Kenichi Handa <handa@m17n.org>
2819
2820 * fns.c (char_table_range): New function.
2821 (Fchar_table_range): Signal an error if characters in the range
2822 have inconsistent values. Don't check the parent.
2823
2824 2005-04-25 Kenichi Handa <handa@m17n.org>
2825
2826 * fontset.c (fontset_set): Fix previous change.
2827
2828 2005-04-24 Richard M. Stallman <rms@gnu.org>
2829
2830 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2831
2832 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2833
2834 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2835 of RE_TRANSLATE to int, to shut up GCC warnings.
2836
2837 * fileio.c (Fcopy_file): Doc fix.
2838 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2839 not needed.
2840
2841 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2842
2843 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2844 (SOME_MACHINE_OBJECTS): Likewise.
2845 (mac.o): Depend on ccl.h.
2846 (macselect.o): New target.
2847
2848 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2849 Call syms_of_macselect.
2850
2851 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2852
2853 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2854 (QCLIPBOARD): Remove variable.
2855 (syms_of_mac): Don't initialize it.
2856 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2857 Remove functions.
2858 (syms_of_mac): Don't defsubr them.
2859 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2860 (QHFS_plus_D, QHFS_plus_C): New variables.
2861 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2862 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2863 (cfstring_create_normalized): New functions.
2864 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2865 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2866
2867 * macterm.c (handling_window_update, terminate_flag):
2868 Remove variables.
2869 (do_window_update, do_ae_quit_application, XTread_socket):
2870 Don't use them.
2871 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2872 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2873 (init_service_handler): Move to macselect.c. Remove declarations.
2874 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2875 (Qapplication, Qabout): New variables.
2876 (syms_of_mac): Initialize them.
2877 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2878 (Qperform): New variables.
2879 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2880 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2881 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2882 (mac_store_application_menu_event, init_menu_bar): New functions.
2883 [USE_CARBON_EVENTS] (mac_handle_command_event)
2884 (init_command_handler): New functions.
2885 (mac_handle_window_event): Return noErr on window update event.
2886 (do_ae_quit_application): Call mac_store_application_menu_event.
2887 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2888 and init_menu_bar.
2889
2890 * macterm.h (x_clear_frame_selections): Add extern.
2891
2892 * macselect.c: New file for selection processing on Mac OS.
2893
2894 2005-04-23 Richard M. Stallman <rms@gnu.org>
2895
2896 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2897 (Frename_file): Pass new arg to Fcopy_file.
2898
2899 * window.c (window_size_fixed): Variable deleted.
2900 (syms_of_window): Initialize window-size-fixed to nil.
2901 But don't DEFVAR window_size_fixed.
2902
2903 2005-04-23 Andreas Schwab <schwab@suse.de>
2904
2905 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2906 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2907 use lib64 instead of lib.
2908 (_LP64) [_ARCH_PPC64]: Define if not defined.
2909
2910 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2911
2912 * s/ms-w32.h (HAVE_PWD_H): Define.
2913
2914 2005-04-22 Kenichi Handa <handa@m17n.org>
2915
2916 * fns.c (copy_sub_char_table): Explicitly copy the default value
2917 of the sub-chartable.
2918
2919 * fontset.c (fontset_set): When a sub-chartable is created,
2920 explicitly sets the defalt value.
2921
2922 2005-04-22 Kim F. Storm <storm@cua.dk>
2923
2924 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2925 (Fsafe_plist_get): Rename to Fplist_get.
2926 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2927 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2928
2929 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2930
2931 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2932 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2933 Use Fplist_get instead of Fsafe_plist_get.
2934
2935 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2936
2937 2005-04-21 Miles Bader <miles@gnu.org>
2938
2939 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2940
2941 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2942
2943 * sysdep.c: Remove reference to defunct vms-pwd.h.
2944 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2945 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2946
2947 * config.in: Regenerate.
2948
2949 2005-04-20 Kenichi Handa <handa@m17n.org>
2950
2951 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2952 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2953 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2954
2955 * alloc.c (make_sub_char_table): Argument changed to initial
2956 value of the slots.
2957
2958 * data.c (Faref): Handle special slots used as default values of
2959 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2960 default value set for a group of characters.
2961 (Faset): Signal an error if IDXVAL is not a valid character code.
2962 Make a sub-chartable with correct initial value.
2963
2964 * fns.c (Fset_char_table_range): Don't set slots used as default
2965 values for ascii, eight-bit-control, eight-bit-graphic.
2966 Don't call Faref with charset-id.
2967 (Fset_char_table_default): Document how to treat normal character
2968 argument. Handle special slots used as default values of ascii,
2969 eight-bit-control, eight-bit-control. Make a sub chartable if
2970 necessary.
2971
2972 2005-04-20 Kenichi Handa <handa@m17n.org>
2973
2974 * search.c (boyer_moore): Fix previous change.
2975
2976 2005-04-19 Kim F. Storm <storm@cua.dk>
2977
2978 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2979 face unless last visible char and first invisible char have the
2980 same face. Also use default face if saved_face_id is undefined.
2981
2982 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2983
2984 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2985 `full_name'.
2986 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2987 mac_scriptcode member.
2988
2989 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2990 (syms_of_mac): Don't initialize them.
2991 (Vmac_charset_info_alist): New variable.
2992 (syms_of_mac): Defvar it.
2993 (create_text_encoding_info_alist): New function.
2994 (decode_mac_font_name, mac_to_x_fontname)
2995 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2996 code the correspondence among XLFD charsets, Mac script codes, and
2997 Emacs coding systems. Use Vmac_charset_info_alist and result of
2998 create_text_encoding_info_alist instead.
2999 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3000 routines also on Mac OS Classic.
3001 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3002 Use add_font_name_table_entry.
3003 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3004 specified. Derive unspecified scalable fields from specified one.
3005 (x_list_fonts): Consider Valternate_fontname_alist.
3006 (kDefaultFontSize): Change value from 9 to 12.
3007 (XLoadQueryFont): Get decoded font family, font face, and charset
3008 from x_font_name_to_mac_font_name. Set full name of loaded font.
3009 (mac_unload_font): Free `full_name' member.
3010 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3011 NULL. Copy full_name member of struct MacFontStruct to that of
3012 struct font_info.
3013
3014 2005-04-19 Kim F. Storm <storm@cua.dk>
3015
3016 * xdisp.c (handle_stop): Set saved_face_id to current face if
3017 selective_display_ellipsis_p so ellipsis will be shown in same
3018 face as preceding text.
3019 (setup_for_ellipsis): Don't set saved_face_id here.
3020 (next_element_from_display_vector): Default to saved_face_id.
3021
3022 * fns.c (Fsafe_get): New function.
3023 (syms_of_fns): Defsubr it.
3024
3025 * lisp.h (Fsafe_get): EXFUN it.
3026
3027 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3028 loops in case of bad face property lists. Limit number of face
3029 alias lookups to 10 (in case of face alias loops).
3030
3031 2005-04-18 Kim F. Storm <storm@cua.dk>
3032
3033 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3034 It replaces the corresponding member from struct window, as a
3035 window may now show multiple overlay arrows.
3036 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3037
3038 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3039 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3040
3041 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3042 rather than from window.
3043 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3044 overlay_arrow_p members.
3045 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3046 if not default.
3047
3048 * window.h (struct window): Remove member overlay_arrow_bitmap.
3049
3050 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3051
3052 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3053 Calls changed. Don't check for overlay-arrow-bitmap property here.
3054 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3055 fringe is present, return Lisp integer for bitmap (or -1 for default).
3056 Fix value of overlay-arrow-bitmap property to be a symbol, use
3057 lookup_fringe_bitmap to parse it.
3058 (display_line): Change call to overlay_arrow_at_row. Store integer
3059 return value as overlay bitmap in row rather than window.
3060 Only show overlay arrow if row displays text, or if no other overlay
3061 arrow is seen in window (if overlay marker is at point-max).
3062
3063 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3064
3065 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3066
3067 2005-04-18 Lute Kamstra <lute@gnu.org>
3068
3069 * lread.c (Vloads_in_progress): Static.
3070 * fns.c (Vloads_in_progress): Remove extern.
3071 (load_in_progress): Add extern.
3072 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3073
3074 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3075
3076 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3077
3078 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3079
3080 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3081 no frame is visible.
3082
3083 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3084
3085 * term.c (struct keys): Add support for shifted keys.
3086
3087 2005-04-16 Richard M. Stallman <rms@gnu.org>
3088
3089 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3090 (set_message): Call with_echo_area_buffer with WHICH = 0.
3091 (set_message_1): Erase the echo area buffer first thing.
3092 (echo_area_display): Don't clear echo_message_buffer.
3093
3094 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3095
3096 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3097
3098 * mac.c: Include charset.h and coding.h.
3099 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3100 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3101 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3102
3103 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3104
3105 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3106
3107 * macterm.c (x_autoselect_window_p): Remove variable.
3108 (last_window): New variable.
3109 (XTreassert_line_highlight, x_change_line_highlight):
3110 Remove declarations.
3111 (mac_focus_changed, x_detect_focus_change): New functions and
3112 declarations.
3113 (XTextExtents16, front_emacs_window): Remove function.
3114 (mac_focus_frame): New function.
3115 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3116 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3117 (x_scroll_bar_report_motion): Obtain window from control owner.
3118 (x_make_frame_invisible): Set window manager size hint.
3119 (do_mouse_moved): Remove function.
3120 (XTread_socket): Move its contents here. Generate select-window
3121 event on mouse movement if needed. Use x_detect_focus_change on
3122 activate/deactivate events. Don't deiconify frame or invalidate
3123 window rectangle when dnd items are dropped.
3124 Don't activate/deactivate root control.
3125 (frame_highlight, frame_unhighlight): Activate/deactivate root
3126 control here.
3127 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3128
3129 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3130 New extern.
3131
3132 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3133
3134 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3135 (lisp): Use it.
3136 (SOME_MACHINE_LISP): Add tooltip.
3137
3138 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3139
3140 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3141 Don't include TextEncodingConverter.h.
3142 (mac_system_script_code, Vmac_system_locale): New variables.
3143 (syms_of_mac): Defvar them.
3144 (mac_get_system_locale): New function.
3145
3146 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3147 Use ENCODE_SYSTEM to encode title bar string.
3148 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3149 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3150 Use CFStringGetSystemEncoding to get system default string encoding.
3151
3152 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3153 TextEncodingConverter.h.
3154
3155 2005-04-13 Steven Tamm <steventamm@mac.com>
3156
3157 * macterm.c (syms_of_macterm): Remove redundant definition of
3158 mac-pass-control-to-system.
3159
3160 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3161
3162 * window.c (Fset_window_configuration): Be careful when you choose
3163 among several possible points for the new_current_buffer.
3164
3165 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3166
3167 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3168 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3169 (Qlanguage_change) [MAC_OS]: New variable.
3170 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3171 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3172
3173 * macterm.c (mac_keyboard_text_encoding)
3174 (current_mac_keyboard_text_encoding): Remove variables.
3175 (XTread_socket): Store language-change event if keyboard script change
3176 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3177 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3178
3179 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3180
3181 2005-04-10 Richard M. Stallman <rms@gnu.org>
3182
3183 * emacs.c (standard_args): Rename --bare-bones to --quick.
3184 Add -D aka --basic-display.
3185
3186 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3187
3188 2005-04-09 Richard M. Stallman <rms@gnu.org>
3189
3190 * keymap.c (where_is_internal): Convert a string used as event type
3191 into "(any string)".
3192
3193 * lread.c (Vloads_in_progress): Not static.
3194 * fns.c (Vloads_in_progress): Add extern.
3195 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3196
3197 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3198
3199 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3200
3201 2005-04-09 Lute Kamstra <lute@gnu.org>
3202
3203 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3204 within the accessible part of the buffer.
3205
3206 2005-04-09 Kim F. Storm <storm@cua.dk>
3207
3208 * lread.c (readevalloop): Add args START and END as region in
3209 current buffer to read. Callers changed.
3210 When specified, narrow to this region only when reading,
3211 not during eval. Track next point to read from during eval.
3212 Also restore point to "real" buffer position before eval.
3213 (Feval_region): Don't save excursion and restriction here, and
3214 don't narrow to region. Just pass region to readevalloop.
3215 Note: Point is now preserved even when PRINTFLAG is nil.
3216
3217 2005-04-08 Kim F. Storm <storm@cua.dk>
3218
3219 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3220
3221 2005-04-06 Kim F. Storm <storm@cua.dk>
3222
3223 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3224
3225 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3226
3227 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3228 (Fmac_get_preference): Doc fix.
3229
3230 * macfns.c (Fx_create_frame, x_create_tip_frame):
3231 Add "fontset-mac" to fallback font/fontsets.
3232
3233 2005-04-04 Kim F. Storm <storm@cua.dk>
3234
3235 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3236
3237 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3238 Call it again after autoload.
3239
3240 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3241
3242 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3243 mallopt.
3244
3245 * ralloc.c (r_alloc_init): Ditto.
3246
3247 2005-04-01 Kenichi Handa <handa@m17n.org>
3248
3249 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3250 (Vascii_eqv_table): Extern them.
3251
3252 * casetab.c (set_case_table): If standard is nonzero, setup
3253 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3254
3255 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3256 not DOWNCASE_TABLE.
3257 (string_match_1): Likewise.
3258 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3259 Vascii_downcase_table.
3260 (fast_string_match_ignore_case): Likewise.
3261 (search_buffer): Fix checking of boyer-moore usability.
3262 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3263 No need of tranlating characters in PAT. Fix calculation of
3264 simple_translate.
3265
3266 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3267
3268 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3269 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3270 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3271 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3272 really work and that breaks with some versions of Xaw3d.
3273
3274 2005-03-31 Kenichi Handa <handa@m17n.org>
3275
3276 * coding.c (syms_of_coding): Fix previous change.
3277
3278 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3279
3280 * fileio.c (search_embedded_absfilename): Fix last change.
3281
3282 2005-03-25 Kenichi Handa <handa@m17n.org>
3283
3284 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3285 the docstring of coding-category-list.
3286
3287 2005-03-31 Kim F. Storm <storm@cua.dk>
3288
3289 * keyboard.c (Qmouse_fixup_help_message): New var.
3290 (syms_of_keyboard): Intern and staticpro it.
3291 (show_help_echo): Apply mouse-fixup-help-message to help string.
3292
3293 2005-03-30 Kim F. Storm <storm@cua.dk>
3294
3295 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3296
3297 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3298
3299 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3300 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3301 (Ffile_name_absolute_p): Use it.
3302 (search_embedded_absfilename): New fun, extracted from
3303 Fsubstitute_in_file_name. Use file_name_absolute_p.
3304 Free the pw data after use.
3305 (Fsubstitute_in_file_name): Use it.
3306 After cutting a prefix, re-check file-name-handler.
3307
3308 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3309
3310 * w32term.h (x_output): Add focus_state.
3311
3312 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3313 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3314
3315 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3316
3317 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3318 Use Fexit_minibuffer.
3319 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3320
3321 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3322
3323 * dired.c (Ffile_attributes): Add a missing gcpro.
3324
3325 * alloc.c (make_number): The arg can be bigger than `int'.
3326 * lisp.h (make_number): Make prototype more precise.
3327
3328 * process.c, dired.c (Vfile_name_coding_system)
3329 (Vdefault_file_name_coding_system):
3330 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3331 (Vdefault_file_name_coding_system): Remove unused declarations.
3332
3333 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3334
3335 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3336 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3337 menus fail to pop up).
3338
3339 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3340
3341 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3342 Just prepend a backslash without replacing the NBSP by an SPC.
3343
3344 2005-03-22 Kim F. Storm <storm@cua.dk>
3345
3346 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3347 * dispextern.h (lookup_derived_face): Fix prototype.
3348 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3349
3350 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3351 right-fringe face from fringe face.
3352
3353 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3354 Derive face from fringe face.
3355
3356 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3357
3358 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3359
3360 2005-03-22 David Kastrup <dak@gnu.org>
3361
3362 * textprop.c (Fnext_char_property_change)
3363 (Fprevious_char_property_change): Allow marker as limit.
3364 (Fnext_single_char_property_change)
3365 (Fprevious_single_char_property_change): Check that limit is a
3366 number in strings.
3367 (Fnext_single_char_property_change): Coerce position to integer.
3368 (Fprevious_single_char_property_change): Same here.
3369
3370 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3371
3372 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3373
3374 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3375
3376 * frame.c (Fignore_event): Remove.
3377 (syms_of_frame): Don't defsubr it.
3378
3379 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3380 redundant `ignore-event'.
3381
3382 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3383
3384 * unexec.c (write_segment, unexec): Move these functions to avoid
3385 forward references (which cause errors with "gcc -gcoff").
3386
3387 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3388
3389 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3390 that it doesn't become "tooltip". The specbind is enough.
3391
3392 * xrdb.c (x_load_resources): Use different char *helv when I18N
3393 is present.
3394
3395 2005-03-17 Kenichi Handa <handa@m17n.org>
3396
3397 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3398
3399 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3400
3401 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3402 Use xic_create_fontsetname even for non-Motif menus.
3403 Don't forget to free the fontsetname.
3404
3405 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3406
3407 2005-03-17 Richard M. Stallman <rms@gnu.org>
3408
3409 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3410
3411 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3412 (Fmake_symbolic_link): Use G to read the new file name.
3413
3414 * callint.c (Finteractive): Document G option.
3415 (Fcall_interactively): Implement G option.
3416
3417 * buffer.c (buffer_lisp_local_variables): New function,
3418 broken out from Fbuffer_local_variables.
3419 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3420
3421 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3422
3423 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3424 Always return a freshly allocated string.
3425 (xic_create_xfontset): Adjust call.
3426
3427 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3428 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3429 (dump_realized_face): Fix warning.
3430
3431 * emacs.c (Fkill_emacs): YAILOM.
3432
3433 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3434
3435 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3436
3437 * mac.c (HASHKEY_TERMINAL): Remove.
3438 (HASHKEY_MAX_NID): New macro.
3439 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3440 argument.
3441 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3442 (xrm_create_database, xrm_q_put_resource)
3443 (xrm_merge_string_database, xrm_q_get_resource_1)
3444 (xrm_q_get_resource): Change resource database representation so
3445 that it may not use multiple hash tables for a single database.
3446 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3447
3448 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3449
3450 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3451
3452 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3453 locale-coding-system, as was already done for WINDOWSNT.
3454
3455 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3456 translation for chars in the 0-255 range.
3457
3458 2005-03-16 Lute Kamstra <lute@gnu.org>
3459
3460 * floatfns.c (Ffloor): Doc fix.
3461
3462 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3463
3464 * mac.c: Include macterm.h instead of directly including Carbon.h.
3465 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3466 (Qarray, Qdictionary): New variables.
3467 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3468 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3469 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3470 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3471 in callback for CFDictionaryApplyFunction.
3472 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3473 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3474 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3475 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3476 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3477 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3478 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3479 (skip_white_space, parse_comment, parse_include_file)
3480 (parse_binding, parse_component, parse_resource_name, parse_value)
3481 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3482 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3483 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3484 New functions.
3485
3486 * macfns.c (mac_get_rdb_resource): Remove function.
3487 (x_get_string_resource): Use xrm_get_resource.
3488
3489 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3490
3491 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3492 name_list_element.
3493 (mac_make_rdb): Create resource database from preferences and
3494 argument string.
3495 (mac_term_init): Save resource database to cddr part of
3496 name_list_element.
3497
3498 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3499 (xrm_get_preference_database): Add externs.
3500 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3501 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3502 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3503
3504 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3505 defined (DARWIN) || defined (MAC_OSX)'
3506
3507 * s/darwin.h (DARWIN): Don't define.
3508
3509 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3510
3511 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3512 Remove unused variables.
3513 (syms_of_macfns): Don't initialize them. Likewise for
3514 Qface_set_after_frame_default. Defvar and initialize
3515 Vx_window_horizontal_drag_shape.
3516 (x_set_mouse_color): Change mouse pointer shape.
3517 (mac_window) [!MAC_OSX]: Create root control.
3518 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3519 (hourglass_started): New function (from xfns.c).
3520 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3521 MAC_OSX.
3522 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3523 indicator for each non-tooltip frame if needed, and show it.
3524 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3525
3526 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3527 Controls.h. Use ThemeCursor instead of CursHandle.
3528
3529 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3530 Remove functions and declarations.
3531 (mac_set_colors): Take argument for saving background color.
3532 All callers changed.
3533 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3534 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3535 background color.
3536 (x_update_end, mac_do_track_drag): Don't reset background color.
3537 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3538 Use SetThemeCursor.
3539 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3540 indicator control to the upper-right corner of the window.
3541 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3542 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3543 (do_window_update): Update controls after updating content area.
3544 (mac_handle_window_event): Remove unused extern.
3545 (XTread_socket): Check both control handle and control part code
3546 to determine whether a scroll bar is clicked. Activate/deactivate
3547 root control instead of contained scroll bar controls.
3548 (make_mac_terminal_frame): Use ThemeCursor constants.
3549
3550 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3551 New member hourglass_control.
3552 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3553 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3554
3555 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3556
3557 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3558 coincides with that in Apple X11 except `clear', `enter' on
3559 laptops, and fn + `enter' on laptops.
3560
3561 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3562
3563 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3564 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3565 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3566
3567 * xfns.c (xic_defaut_fontset): New constant.
3568 (xic_create_fontsetname): New function.
3569 Extracted from create_frame_xic. Try to generate a slightly
3570 better fontset.
3571 (xic_create_xfontset): Use it.
3572 (create_frame_xic): Simplify.
3573
3574 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3575
3576 * fileio.c (Fmake_symbolic_link): Fix last change.
3577
3578 2005-03-11 Richard M. Stallman <rms@gnu.org>
3579
3580 * fileio.c (Frename_file, Fadd_name_to_file)
3581 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3582 expand the basename of FILE relative to it.
3583
3584 2005-03-11 Kenichi Handa <handa@m17n.org>
3585
3586 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3587 before calling setup_coding_system so that autoloading of a coding
3588 system work.
3589
3590 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3591
3592 * xfns.c (hourglass_started): New function.
3593
3594 * dispextern.h: Declare hourglass_started.
3595
3596 * keyboard.c (Fexecute_extended_command): Restart hourglass
3597 after call to Fcompleting_read if already started.
3598
3599 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3600 GTK main loop is entered in xterm.c, thus doing the redraw.
3601
3602 2005-03-10 Kim F. Storm <storm@cua.dk>
3603
3604 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3605
3606 2005-03-08 Kenichi Handa <handa@m17n.org>
3607
3608 * frame.c (x_set_font): Call set_default_ascii_font if an
3609 available font is found.
3610
3611 * fontset.c (set_default_ascii_font): New function.
3612 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3613
3614 * fontset.h (set_default_ascii_font): Extern it.
3615
3616 2005-03-07 Kim F. Storm <storm@cua.dk>
3617
3618 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3619 (clear_image_cache_count): New var.
3620 (redisplay_internal): Don't clear face and image caches in the
3621 middle of redisplay; do it afterwards.
3622
3623 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3624
3625 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3626 is valid. If not, clear phys_cursor_on_p and return.
3627
3628 2005-03-07 Andreas Schwab <schwab@suse.de>
3629
3630 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3631
3632 2005-03-06 Richard M. Stallman <rms@gnu.org>
3633
3634 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3635
3636 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3637 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3638
3639 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3640
3641 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3642 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3643
3644 2005-03-05 Juri Linkov <juri@jurta.org>
3645
3646 * emacs.c (USAGE1): Replace Info node name "command arguments"
3647 with "emacs invocation".
3648 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3649 allow arguments `--color' and `MODE' to be separated by space.
3650 Add --no-blinking-cursor, -nbc.
3651 (standard_args): Add -nbc, --no-blinking-cursor.
3652
3653 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3654
3655 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3656 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3657 * fileio.c (Fexpand_file_name) [VMS]:
3658 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3659 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3660 (Fsnarf_documentation): Call munge_doc_file_name.
3661
3662 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3663
3664 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3665 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3666 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3667
3668 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3669
3670 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3671 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3672
3673 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3674
3675 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3676 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3677 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3678 (mac_clear_font_name_table): Move extern to macterm.h.
3679
3680 * macfns.c (install_window_handler): Move extern to macterm.h.
3681 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3682 valid. Don't check !NILP (dir) because it is already checked with
3683 CHECK_STRING.
3684 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3685 specifying the default location and obtaining the selected filename.
3686
3687 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3688
3689 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3690 are included via Carbon.h.
3691
3692 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3693 Define USE_CARBON_EVENTS to 1.
3694 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3695 (x_free_frame_resources): Call remove_window_handler for
3696 non-tooltip windows.
3697 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3698 via Carbon.h.
3699 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3700 (mac_do_receive_dragUPP): New variables.
3701 (mac_handle_service_event, init_service_handler): Put declarations
3702 and definitions in #ifdef MAC_OSX.
3703 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3704 drag-and-drop handler functions and register them.
3705 (remove_window_handler): New function.
3706 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3707 Use fsspec_to_posix_pathname.
3708 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3709 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3710 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3711 Set default cursors.
3712 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3713 init_service_handler or init_quit_char_handler.
3714 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3715
3716 * macterm.h (install_window_handler, remove_window_handler)
3717 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3718 (mac_clear_font_name_table): New externs.
3719
3720 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3721
3722 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3723 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3724 (Fexpand_file_name): Likewise.
3725
3726 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3727
3728 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3729 no longer special-case VMS. Add bogus return value.
3730
3731 2005-03-02 Kim F. Storm <storm@cua.dk>
3732
3733 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3734 (xassert) [!XASSERTS]: Define dummy version.
3735
3736 2005-03-02 Kim F. Storm <storm@cua.dk>
3737
3738 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3739 Reported by David Kastrup.
3740
3741 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3742
3743 * xdisp.c (get_next_display_element): Fix control and escape
3744 glyph from display vector.
3745
3746 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3747
3748 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3749
3750 2005-02-27 Richard M. Stallman <rms@gnu.org>
3751
3752 * xdisp.c (fast_find_position): Rename END to BEG.
3753 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3754
3755 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3756
3757 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3758 gtk_window_resize and x_wm_set_size_hint.
3759
3760 2005-02-25 Kim F. Storm <storm@cua.dk>
3761
3762 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3763
3764 * xdisp.c (init_from_display_pos): Don't read past end of
3765 it->overlay_strings array.
3766
3767 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3768
3769 * buffer.c (syms_of_buffer): Fix typo.
3770
3771 2005-02-23 Lute Kamstra <lute@gnu.org>
3772
3773 * buffer.c (Foverlay_buffer): Doc fix.
3774
3775 2005-02-22 Kim F. Storm <storm@cua.dk>
3776
3777 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3778 and symbol keys in alists and hash tables.
3779
3780 * xdisp.c (fast_find_position): Fix search for start of overlay.
3781
3782 2005-02-21 Kim F. Storm <storm@cua.dk>
3783
3784 * window.c (window_scroll_pixel_based): When scrolling backwards,
3785 handle partial visible line at end of window even when we hit PT.
3786
3787 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3788
3789 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3790
3791 2005-02-21 Kim F. Storm <storm@cua.dk>
3792
3793 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3794 I think those asserts are bogus if buffer contains invisible text
3795 or images.
3796
3797 2005-02-21 David Kastrup <dak@gnu.org>
3798
3799 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3800
3801 2005-02-20 Kim F. Storm <storm@cua.dk>
3802
3803 * xdisp.c (pos_visible_p): Be sure to move to the specified
3804 position. Always get the full ascent / descent of the
3805 corresponding row, to return reliable rtop and rbot values.
3806 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3807 Must look one character back, as back_to_previous_line_start
3808 returns position after the newline.
3809 (move_it_vertically_backward): Fix heuristic for when to move further
3810 back in case line_height * 2/3 is larger than window height.
3811 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3812 as it does not do anything anymore. Add arg current_matrix_p to
3813 use current matrix rather than desired matrix when set.
3814 (try_cursor_movement): Don't scroll to make cursor row fully
3815 visible if cursor didn't move. This avoids unexpected recentering
3816 in case of blinking cursor or accepting process output.
3817 Use current matrix to check cursor row visibility.
3818 (redisplay_window): Fix whether to recenter or move to top in case
3819 cursor line is taller than window height.
3820 (find_first_unchanged_at_end_row): Stop search if we reach a row
3821 which not enabled (instead of abort).
3822
3823 2005-02-18 Kim F. Storm <storm@cua.dk>
3824
3825 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3826 to be nil in a :box attribute value list; customize prints that
3827 as lisp value when no box color is specified.
3828
3829 * .gdbinit (pitx, pit): Pretty print display iterator.
3830 (prowx, prow): Pretty print glyph row.
3831 (pcursorx, pcursor): Pretty print a window cursor.
3832 (pwinx, pwin): Pretty print struct window.
3833
3834 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3835
3836 * alloc.c (BLOCK_BYTES): Harmless typo.
3837
3838 2005-02-17 Andreas Schwab <schwab@suse.de>
3839
3840 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3841 of XGetWindowProperty to avoid aliasing issues.
3842 (Fx_window_property): Likewise.
3843
3844 * xselect.c (Fx_disown_selection_internal): Use union of struct
3845 input_event and struct selection_input_event to avoid aliasing issues.
3846
3847 * xterm.c (handle_one_xevent): Use union of struct input_event and
3848 struct selection_input_event to avoid aliasing issues.
3849 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3850
3851 2005-02-17 Kim F. Storm <storm@cua.dk>
3852
3853 * dispextern.h (enum it_method): New enum.
3854 (GET_FROM_*): Its members.
3855 (struct it): Change member method from function pointer to enum.
3856
3857 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3858 (setup_for_ellipsis, handle_single_display_spec)
3859 (handle_composition_prop, next_overlay_string)
3860 (get_overlay_strings, reseat_1, reseat_to_string)
3861 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3862 (in_display_vector_p, display_line, get_next_display_element):
3863 Change it->method from function pointer to enum.
3864 (get_next_element): New array to map it->method to function.
3865 (get_next_display_element): Use it.
3866 (set_iterator_to_next): Use switch instead of if/else chain.
3867
3868 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3869
3870 * w32select.c: Summary: Thorough rework to implement Unicode
3871 clipboard operations and delayed rendering.
3872
3873 Drop last_clipboard_text and related code, keep track of
3874 ownership via clipboard_owner instead. Drop old #if0 sections.
3875
3876 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3877 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3878 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3879 (current_coding_system, current_requires_encoding)
3880 (current_num_nls, current_clipboard_type, current_lcid):
3881 New static variables.
3882
3883 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3884 (render, render_all, run_protected, lisp_error_handler)
3885 (owner_callback, create_owner, setup_config)
3886 (enum_locale_callback, cp_from_locale, coding_from_cp):
3887 New local functions.
3888
3889 (term_w32select, globals_of_w32select): New global functions.
3890
3891 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3892 clipboard_owner instead. Use delayed rendering and provide
3893 all text formats. Provide CF_LOCALE if necessary.
3894
3895 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3896 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3897 available. Force DOS line-ends for decoding.
3898
3899 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3900
3901 (syms_of_w32select): Init and register new variables.
3902
3903 * w32.h: Add prototypes for globals_of_w32select and
3904 term_w32select. Make the neighboring K&R declarations into
3905 prototypes, too.
3906
3907 * emacs.c: Include w32.h to get function prototypes.
3908 (main): Call globals_of_w32select.
3909
3910 * w32.c (term_ntproc): Call term_w32select.
3911
3912 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3913
3914 2005-02-16 Kim F. Storm <storm@cua.dk>
3915
3916 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3917 at end of display vector.
3918
3919 2005-02-15 Richard M. Stallman <rms@gnu.org>
3920
3921 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3922 for mode and header lines.
3923
3924 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3925
3926 * keymap.h (describe_map_tree): Change decl.
3927
3928 * keyboard.c (command_loop_1): Always use safe_run_hooks
3929 to run Qdeferred_action_function.
3930
3931 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3932 (describe_map, describe_vector): Likewise. When it's 1,
3933 don't omit shadowed bindings, instead mark them as shadowed.
3934
3935 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3936 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3937
3938 * data.c (Fsetq_default): Allow no arg case.
3939
3940 2005-02-14 Kenichi Handa <handa@m17n.org>
3941
3942 * coding.c (encode_coding_string): Always return a unibyte string.
3943 If NOCOPY is nonzero and there's no need of encoding, make STR
3944 unibyte directly.
3945
3946 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3947 multibyte string, signal an error instead of aborting.
3948
3949 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3950
3951 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3952
3953 2005-02-12 Kim F. Storm <storm@cua.dk>
3954
3955 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3956
3957 2005-02-10 Kim F. Storm <storm@cua.dk>
3958
3959 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3960 if it moves outside window or it doesn't display text.
3961
3962 2005-02-09 Kim F. Storm <storm@cua.dk>
3963
3964 * undo.c (Fprimitive_undo): Check that undo function does not
3965 switch buffer.
3966
3967 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3968
3969 * xselect.c (selection_data_to_lisp_data): For the special case
3970 type == XA_ATOM, data contains array of int, not array of Atom.
3971 (x_property_data_to_lisp, selection_data_to_lisp_data):
3972 Comment update: data must be array of int for format == 32.
3973
3974 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3975
3976 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3977
3978 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3979
3980 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3981 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3982 convert long array returned from XGetWindowProperty to an int array.
3983 (x_set_tool_bar_lines): Check that width and height is greater than
3984 zero before clearing area.
3985
3986 * xselect.c (x_reply_selection_request): Pass long array to
3987 XChangeProperty so that 64 bit longs are handeled correctly.
3988 (x_get_window_property): If format is 32 and long is bigger than 32
3989 bits convert data from XGetWindowProperty from long array to int array.
3990 (lisp_data_to_selection_data): When the input is a vector and the
3991 format is 32, allocate a long array even if long is bigger than 32 bits.
3992 (x_fill_property_data): Use char, short and long as the man page
3993 for XChangeProperty specifies. This way the data returned is OK for
3994 both 32 and 64 bit machines.
3995 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3996 machines.
3997 (Fx_send_client_event): Undo change from 2005-02-05,
3998 x_fill_property_data now handles that case.
3999
4000 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4001 reason for the approach in the code.
4002
4003 2005-02-07 Kim F. Storm <storm@cua.dk>
4004
4005 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4006
4007 2005-02-06 Richard M. Stallman <rms@gnu.org>
4008
4009 * eval.c (Frun_hook_with_args)
4010 (Frun_hook_with_args_until_success)
4011 (Frun_hook_with_args_until_failure): Doc fixes.
4012
4013 2005-02-05 Andreas Schwab <schwab@suse.de>
4014
4015 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4016
4017 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4018
4019 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4020 the longs in a XClientMessageEvent correctly when long is 64 bits.
4021
4022 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4023
4024 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4025 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4026
4027 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4028
4029 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4030 events so the menu event comes after them. This is to prevent sit-for
4031 from exiting on buffered events directly after a menu selection,
4032 lisp code for Help => About Emacs uses sit-for.
4033
4034 * gtkutil.c (create_menus): Connect selection-done event instead of
4035 the deactivate event to deactivate_cb. This will make the last
4036 leave event come before the call to deactivate_cb, so the leave
4037 event does not make sit-for exit after a menu selection.
4038
4039 2005-02-03 Kim F. Storm <storm@cua.dk>
4040
4041 * dispnew.c (build_frame_matrix_from_leaf_window)
4042 [!GLYPH_DEBUG]: Fix xassert.
4043
4044 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4045
4046 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4047
4048 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4049
4050 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4051 the compiling OS version.
4052
4053 * macfns.c (x_create_tip_frame): Likewise.
4054
4055 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4056
4057 2005-02-03 Richard M. Stallman <rms@gnu.org>
4058
4059 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4060
4061 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4062
4063 * buffer.c (Fbury_buffer): Doc fix.
4064
4065 2005-02-02 Steven Tamm <steventamm@mac.com>
4066
4067 * macfns.c (unwind_create_frame): Fix compile error due to
4068 xassert being uncondition, but predicate is.
4069 * dispnew.c (update_window): Fix compile error due to
4070 xassert being uncondition, but predicate is.
4071
4072 2005-02-02 Miles Bader <miles@gnu.org>
4073
4074 * dispextern.h (xassert): Enable unconditionally.
4075
4076 2005-02-02 Kim F. Storm <storm@cua.dk>
4077
4078 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4079
4080 2005-02-02 Kenichi Handa <handa@m17n.org>
4081
4082 * casefiddle.c (casify_object): Enable changing characters of
4083 different byte length.
4084 (casify_region): Fix loop condition, args to replace_range_2, and
4085 update opoint_byte.
4086
4087 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4088
4089 2005-02-01 Kim F. Storm <storm@cua.dk>
4090
4091 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4092 stack before calling handle_display_prop.
4093
4094 2005-01-31 Kim F. Storm <storm@cua.dk>
4095
4096 * undo.c (Qapply): New lisp var.
4097 (syms_of_undo): Intern and staticpro it.
4098 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4099 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4100
4101 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4102
4103 2005-01-30 Jesper Harder <harder@phys.au.dk>
4104
4105 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4106 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4107
4108 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4109
4110 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4111 Increase value to 3 Meg.
4112
4113 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4114
4115 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4116 button events are not received otherwise.
4117
4118 2005-01-29 Richard M. Stallman <rms@gnu.org>
4119
4120 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4121
4122 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4123
4124 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4125
4126 * keymap.c (access_keymap): YAILOM.
4127
4128 2005-01-27 Kim F. Storm <storm@cua.dk>
4129
4130 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4131 phys cursor position and size for hollow cursor. Position is
4132 aligned with get_glyph_string_clip_rect and ensures that a hollow
4133 cursor is shown, even when the actual glyph is not visible.
4134
4135 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4136
4137 * xterm.c (x_clip_to_row): Ensure y >= 0.
4138 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4139
4140 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4141
4142 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4143
4144 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4145
4146 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4147
4148 2005-01-27 Kim F. Storm <storm@cua.dk>
4149
4150 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4151 glyph, even when row is only partially visible and actual cursor
4152 position is not visible.
4153
4154 2005-01-24 Richard M. Stallman <rms@gnu.org>
4155
4156 * xterm.c (x_error_quitter): No longer static, and moved after
4157 x_error_handler.
4158
4159 2005-01-24 Kim F. Storm <storm@cua.dk>
4160
4161 * xdisp.c (move_it_by_lines): If we move forward after going too
4162 far back, cancel move if end position is same as start position.
4163
4164 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4165
4166 * dispextern.h (struct glyph_string): New members clip_head and
4167 clip_tail.
4168
4169 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4170 region to the area between clip_head and clip_tail.
4171 (draw_glyphs): Record the area that need to be actually redrawn to
4172 the new variables clip_head and clip_tail when there are
4173 overhangs. Set values of these variables to the corresponding
4174 members in struct glyph_string. Refine x coordinates for
4175 notice_overwritten_cursor using clip_head and clip_tail.
4176
4177 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4178
4179 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4180 QDTextBounds.
4181 (x_draw_glyph_string): Don't fill the background of the successor
4182 of a glyph with a right overhang if the successor will draw a cursor.
4183 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4184 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4185
4186 2005-01-24 Kim F. Storm <storm@cua.dk>
4187
4188 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4189 direction if window height was smaller than next-screen-context-lines.
4190 Now always scroll at least one line in the requested direction.
4191 Ensure that we actually do scroll backwards when requested to do so.
4192
4193 * xdisp.c (redisplay_window): Only try to make cursor line fully
4194 visible once (to avoid redisplay loop).
4195
4196 2005-01-23 Kim F. Storm <storm@cua.dk>
4197
4198 * window.c (Fpos_visible_in_window_p): Simplify return value for
4199 partially visible rows.
4200 (window_scroll_pixel_based): Adapt to that change.
4201
4202 * window.c (window_scroll_pixel_based): Force moving to next line
4203 if scrolling doesn't move start point, e.g. if looking at tall image.
4204
4205 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4206 Clear last_height before calling line_bottom_y to get real height.
4207 Fix calculation of y.
4208
4209 2005-01-22 Steven Tamm <steventamm@mac.com>
4210
4211 * s/darwin.h: Removed PTY_ITERATION from here.
4212 (DARWIN): Define.
4213
4214 * process.c (init_process): Default process-connection-type to
4215 nil on darwin 6 or less, t if it is 7 or higher. This way the
4216 broken pty behavior is still allowed on darwin 6 for interactive
4217 processes for people that know what they are doing.
4218
4219 2005-01-22 Kim F. Storm <storm@cua.dk>
4220
4221 * window.c (auto_window_vscroll_p): New boolean.
4222 (syms_of_window): DEFVAR_BOOL it.
4223 (Fpos_visible_in_window_p): Extend return value to include RTOP
4224 and RBOT values if FULLY is nil.
4225 (window_scroll_pixel_based): Adjust vscroll for partially visible
4226 rows if auto_window_vscroll_p is set.
4227 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4228
4229 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4230 to return number of partially invisible pixels at top and bottom
4231 of the dislay row at POS.
4232
4233 * lisp.h (pos_visible_p): Fix prototype.
4234
4235 2005-01-21 Richard M. Stallman <rms@gnu.org>
4236
4237 * fileio.c (Fcopy_file): Doc fix.
4238
4239 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4240
4241 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4242 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4243 start of function for older compilers.
4244
4245 2005-01-20 Richard M. Stallman <rms@gnu.org>
4246
4247 * editfns.c (Fmessage): If arg is "", return "" (as before).
4248
4249 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4250
4251 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4252 variable.
4253
4254 2005-01-20 Steven Tamm <steventamm@mac.com>
4255
4256 * editfns.c (Voperating_system_release): Add.
4257 (init_editfns): Assign new variable operating-system-release
4258 based on call to uname if available.
4259 (get_operating_system_release): Add function to
4260 allow c-level access to operating system release.
4261
4262 * config.h: Regenerated.
4263
4264 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4265 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4266 using ptys as '7'.
4267
4268 2005-01-20 Kim F. Storm <storm@cua.dk>
4269
4270 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4271
4272 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4273 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4274
4275 * macterm.c (x_draw_glyph_string_box): Likewise.
4276
4277 * w32term.c (x_draw_glyph_string_box): Likewise.
4278
4279 * indent.c (Fvertical_motion): Temporarily disable selective display.
4280
4281 2005-01-19 Kim F. Storm <storm@cua.dk>
4282
4283 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4284 image property.
4285
4286 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4287
4288 2005-01-18 Kim F. Storm <storm@cua.dk>
4289
4290 * xdisp.c (fast_find_position): Backtrack to find first row if
4291 charpos is inside a display overlay that spans multiple lines.
4292
4293 2005-01-18 Kenichi Handa <handa@m17n.org>
4294
4295 * coding.c (decode_coding_iso2022): Translate invalid codes if
4296 translation-table is specified.
4297
4298 2005-01-18 Kim F. Storm <storm@cua.dk>
4299
4300 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4301 change. If handle_display_prop indicates newline is replaced by
4302 image or text, move back to start of relevant overlay or interval
4303 and continue scan from there. Simplify.
4304
4305 2005-01-17 Kim F. Storm <storm@cua.dk>
4306
4307 * dispnew.c (mode_line_string, marginal_area_string):
4308 Fix off-by-one error in search for glyph.
4309
4310 2005-01-16 Kim F. Storm <storm@cua.dk>
4311
4312 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4313
4314 2005-01-16 Steven Tamm <steventamm@mac.com>
4315
4316 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4317
4318 2005-01-16 Andreas Schwab <schwab@suse.de>
4319
4320 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4321
4322 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4323
4324 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4325 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4326
4327 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4328
4329 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4330 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4331 New flags for readable_events.
4332 (get_filtered_input_pending, readable_filtered_events): Remove.
4333 (tracking_off): Call readable_events and get_input_pending with
4334 flag READABLE_EVENTS_DO_TIMERS_NOW.
4335 (readable_events): Move code from old readable_filtered_events here,
4336 but check new READABLE_EVENTS_* in argument flags instead of previous
4337 two boolean arguments do_timers_now and filter_events.
4338 If we are doing mouse tracking and the mouse moved, return only if
4339 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4340 (swallow_events): Call get_input_pending with flag
4341 READABLE_EVENTS_DO_TIMERS_NOW.
4342 (get_input_pending): Move code from old get_filtered_input_pending
4343 here. Replace boolean arguments do_timers_now, filter_events with
4344 flags, and pass flags to readable_events. Document new
4345 READABLE_EVENTS_* flags.
4346 (detect_input_pending_ignore_squeezables): New function.
4347 (detect_input_pending_run_timers): Call get_input_pending with flag
4348 READABLE_EVENTS_DO_TIMERS_NOW.
4349 (Finput_pending_p): Call get_input_pending with flags
4350 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4351
4352 * dispnew.c (update_window, update_frame_1): Replace calls to
4353 detect_input_pending with detect_input_pending_ignore_squeezables
4354 so that redisplay is not paused if the event queue contains only
4355 mouse movements.
4356
4357 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4358
4359 2005-01-15 Steven Tamm <steventamm@mac.com>
4360
4361 * macterm.c (Vmac_use_core_graphics): Declare variable for
4362 mac-allow-anti-aliasing.
4363 (syms_of_macterm): DEFVAR_LISP and initialize it.
4364 (mac_draw_string_common): Use core graphics text rendering if
4365 mac-allow-anti-aliasing is enabled.
4366
4367 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4368 file name in the text box.
4369
4370 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4371
4372 * macfns.c (x_set_foreground_color, x_set_background_color):
4373 Sync with xfns.c.
4374 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4375 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4376 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4377
4378 2005-01-14 Kim F. Storm <storm@cua.dk>
4379
4380 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4381
4382 2005-01-13 Richard M. Stallman <rms@gnu.org>
4383
4384 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4385 if Voverriding_terminal_local_map is non-nil.
4386
4387 * keyboard.c (syms_of_keyboard): Doc fix.
4388
4389 2005-01-13 Kim F. Storm <storm@cua.dk>
4390
4391 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4392 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4393
4394 2005-01-12 Richard M. Stallman <rms@gnu.org>
4395
4396 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4397 face property for characters that don't specify one.
4398
4399 * fns.c (Frequire): Record in load-history unconditionally.
4400
4401 2005-01-10 Kim F. Storm <storm@cua.dk>
4402
4403 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4404
4405 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4406 Callers changed.
4407 Add support to merge with lisp face id too (if face_name is t).
4408
4409 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4410 Don't lookup lface_id from display table glyphs here; instead use
4411 merge_faces to merge the lisp face id into current face.
4412
4413 2005-01-09 Kim F. Storm <storm@cua.dk>
4414
4415 * dispextern.h (struct it): New member dpvec_face_id.
4416 (merge_into_realized_face): Add prototype.
4417
4418 * xfaces.c (merge_into_realized_face): New function. Used to
4419 merge escape-glyph face or face from display table into current face.
4420
4421 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4422 (syms_of_xdisp): DEFVAR_LISP it.
4423 (escape_glyph_face): Remove var.
4424 (redisplay_window): Don't initialize it.
4425 (setup_for_ellipsis, get_next_display_element):
4426 Set it->dpvec_face_id to -1.
4427 (get_next_display_element): Test Vshow_nonbreak_escape.
4428 Do not setup escape_glyph_face.
4429 Properly merge escape-glyph face or face from display table with
4430 current face for escape and control characters.
4431 Set it->dpvec_face_id to relevant face id instead of adding it to each
4432 element of display vector.
4433 (next_element_from_display_vector): If it->dpvec_face_id is set,
4434 use that instead of lface_id from glyph itself.
4435
4436 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4437
4438 * xterm.h (struct x_output): New member, toolbar_detached.
4439
4440 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4441 38.
4442 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4443 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4444 (xg_create_tool_bar): Initialize toolbar_detached.
4445 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4446 toolbar_detached is zero.
4447
4448 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4449
4450 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4451 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4452
4453 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4454 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4455 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4456
4457 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4458 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4459 XFLOAT_DATA to get extract number from Lisp object.
4460
4461 2005-01-07 Kim F. Storm <storm@cua.dk>
4462
4463 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4464 Set stop_charpos to current charpos instead of 0.
4465
4466 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4467
4468 * xdisp.c (Fformat_mode_line): First arg now required.
4469
4470 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4471
4472 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4473 font widths that are returned from some Japanese fonts.
4474
4475 2005-01-06 Kim F. Storm <storm@cua.dk>
4476
4477 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4478 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4479 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4480 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4481 fringe_faces array and init elements to nil.
4482 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4483 non-persistent face id.
4484 (mark_fringe_data): New function for GC.
4485
4486 * alloc.c (mark_fringe_data): Declare extern.
4487 (Fgarbage_collect): Call mark_fringe_data.
4488
4489 * alloc.c (overrun_check_free): Invalidate freed memory if
4490 XMALLOC_CLEAR_FREE_MEMORY is defined.
4491
4492 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4493
4494 * macfns.c: Include sys/param.h.
4495 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4496 and function.
4497 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4498 of filename string. Set event callback function when creating
4499 dialog boxes. Add code conversions for filenames. Don't dispose
4500 of apple event descriptor record if failed to create it.
4501
4502 * macterm.c: Include sys/param.h.
4503 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4504 kEventWindowUpdate.
4505 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4506 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4507 of FSSpec from apple event descriptor record.
4508 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4509 size of filename string.
4510 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4511 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4512 file dialog is in action.
4513 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4514 Reject only when there are no filename items. Set background color
4515 before (un)highlighting the window below the dragged items.
4516 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4517
4518 2005-01-05 Romain Francoise <romain@orebokech.com>
4519
4520 * term.c (encode_terminal_code): Fix buffer size computation.
4521
4522 2005-01-04 Richard M. Stallman <rms@gnu.org>
4523
4524 * xdisp.c (Fformat_mode_line): Doc fix.
4525
4526 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4527
4528 * alloc.c (refill_memory_reserve): Move.
4529 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4530 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4531
4532 2005-01-03 Richard M. Stallman <rms@gnu.org>
4533
4534 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4535 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4536
4537 2005-01-03 Jason Rumney <jasonr@gnu.org>
4538
4539 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4540 fontp->space_width to FONT_WIDTH so they are valid.
4541
4542 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4543 average width. Set fontp->average_width and fontp->space_width to
4544 their appropriate values.
4545
4546 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4547 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4548 fontp->space_width.
4549
4550 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4551
4552 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4553 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4554 metrics for max and min bounds.
4555 (x_load_font): Correctly calculate average font width metrics.
4556
4557 2005-01-02 Richard M. Stallman <rms@gnu.org>
4558
4559 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4560
4561 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4562
4563 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4564
4565 2004-12-31 Richard M. Stallman <rms@gnu.org>
4566
4567 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4568 Set it->ellipsis_p to 1 or 0.
4569 (display_line): Record whether row ends in mid-ellipsis.
4570 (set_cursor_from_row): If ends in ellipsis, find start of it.
4571 (cursor_row_p): If PT's at the end of the ellipsis the row
4572 ends within, don't display cursor on this row.
4573
4574 * dispextern.h (struct it): New element ellipsis_p.
4575 (struct glyph_row): New element ends_in_ellipsis_p.
4576
4577 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4578 position if we're reading from something other than the buffer.
4579
4580 * window.c (window_scroll_pixel_based): Only look at
4581 Vscroll_preserve_screen_position if the old PT can't be kept.
4582 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4583
4584 2004-12-30 Kim F. Storm <storm@cua.dk>
4585
4586 * xdisp.c (get_line_height_property): New function extracted from
4587 original calc_line_height_property.
4588 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4589 (x_produce_glyphs): Use them to handle line-height and
4590 line-spacing according to new height spec.
4591 (Qtotal): Remove.
4592 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4593
4594 2004-12-30 Kenichi Handa <handa@m17n.org>
4595
4596 * fileio.c (Finsert_file_contents): Don't use
4597 current_buffer->buffer_file_coding_system even if REPLACE is
4598 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4599
4600 * fontset.h (struct font_info): New members space_width and
4601 average_width.
4602
4603 * frame.h (struct frame): New member space_width.
4604 (FRAME_SPACE_WIDTH): New macro.
4605
4606 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4607
4608 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4609 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4610 fontp->space_width.
4611 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4612 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4613
4614 * xdisp.c (x_produce_glyphs): Calculate tab width by
4615 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4616
4617 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4618
4619 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4620 (do_ae_open_documents): Handle Xcode-style file position open events.
4621
4622 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4623
4624 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4625
4626 2004-12-29 Richard M. Stallman <rms@gnu.org>
4627
4628 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4629
4630 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4631
4632 * macfns.c (install_window_handler): Modify extern to return OSErr
4633 value.
4634 (mac_window): Handle return value of install_window_handler.
4635
4636 * macterm.c (reflect_byte): Remove function.
4637 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4638 Lookup table instead.
4639 (mac_do_font_lists): Simplify calculation of the longest
4640 nonspecial string.
4641 (init_mac_drag_n_drop): Remove function and declaration.
4642 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4643 init_mac_drag_n_drop.
4644 (mac_do_track_drag): New function and declaration.
4645 (install_window_handler): Return OSErr value.
4646 (install_window_handler) [TARGET_API_MAC_CARBON]:
4647 Register handlers for tracking/receiving drag-and-drop items.
4648 (do_ae_open_documents): Generate unibyte strings for filenames.
4649 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4650 Reject only non-filename items. Set event modifiers, and return value.
4651
4652 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4653
4654 * coding.c (decode_coding): Fix previous change.
4655
4656 2004-12-28 Richard M. Stallman <rms@gnu.org>
4657
4658 * xdisp.c (back_to_previous_visible_line_start):
4659 Don't call handle_display_prop.
4660
4661 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4662
4663 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4664 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4665 (decode_coding_iso2022, encode_designation_at_bol)
4666 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4667 (decode_coding): Constify arguments and local vars.
4668
4669 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4670
4671 * xmenu.c (popup_get_selection): Only pop down dialogs
4672 on C-g and Escape.
4673 (popup_get_selection): Remove parameter down_on_keypress.
4674 (create_and_show_popup_menu, create_and_show_dialog):
4675 Remove parameter down_on_keypress to popup_get_selection.
4676
4677 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4678
4679 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4680 (struct glyph_string): Likewise.
4681
4682 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4683 mac_initialize.
4684
4685 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4686 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4687
4688 * fns.c (vector): Change MAC_OSX to MAC_OS.
4689
4690 * frame.c (x_set_frame_parameters, x_report_frame_params)
4691 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4692 (x_set_border_width, Vdefault_frame_scroll_bars):
4693 Change HAVE_CARBON to MAC_OS.
4694
4695 * image.c [MAC_OS]: Include sys/stat.h.
4696 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4697 QuickTimeComponents.h.
4698
4699 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4700 [!MAC_OSX] (select): Use mac_wait_next_event.
4701 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4702 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4703 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4704 (mac_clear_font_name_table): Add extern.
4705 (Fmac_clear_font_name_table): New defun.
4706 (syms_of_mac): Defsubr it.
4707 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4708 [MAC_OSX] (select_and_poll_event): New function.
4709 [MAC_OSX] (sys_select): Use it.
4710 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4711 [MAC_OSX && SELECT_USE_CFSOCKET]
4712 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4713 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4714 RunLoop for simultaneously monitoring two kinds of inputs, window
4715 events and process outputs, without periodically polling.
4716
4717 * macfns.c (mac_initialized): Remove extern.
4718 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4719 xfaces.c.
4720 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4721 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4722 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4723 (mac_get_rdb_resource): New function (from w32reg.c).
4724 (x_get_string_resource): Use it.
4725 (install_window_handler): Add extern.
4726 (mac_window): New function.
4727 (Fx_create_frame): Use it instead of make_mac_frame.
4728 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4729 (Fx_open_connection, Fx_close_connection): New defuns.
4730 (syms_of_macfns): Defsubr them.
4731 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4732 Add kWindowNoUpdatesAttribute to the window attribute.
4733 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4734 (x_create_tip_frame): Don't call ShowWindow.
4735 (Fx_show_tip): Call ShowWindow.
4736 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4737 TARGET_API_MAC_CARBON'.
4738 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4739 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4740
4741 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4742 (Window): Typedef to WindowPtr and move outside `#if
4743 TARGET_API_MAC_CARBON'.
4744 (XSizeHints): New struct.
4745
4746 * macterm.c (x_update_begin, x_update_end)
4747 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4748 frame.
4749 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4750 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4751 (construct_mouse_click): Put in #if 0.
4752 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4753 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4754 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4755 (activate_scroll_bars, deactivate_scroll_bars)
4756 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4757 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4758 if the position is neither user-specified nor program-specified.
4759 (x_free_frame_resources): Free size_hints.
4760 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4761 (mac_clear_font_name_table): New function.
4762 (mac_do_list_fonts): Initialize font_name_table if needed.
4763 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4764 around mac_do_list_fonts.
4765 (mac_unload_font): New function.
4766 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4767 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4768 and definitions with #if TARGET_API_MAC_CARBON.
4769 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4770 (install_window_handler): Add decl.
4771 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4772 window. Use UpdateControls. Get the rectangle that should be
4773 updated and restrict the target of expose_frame to it.
4774 (do_grow_window): Set minimum height/width according to size_hints.
4775 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4776 (do_zoom_window): Don't use x_set_window_size.
4777 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4778 (install_window_handler): New function.
4779 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4780 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4781 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4782 GetEventDispatcherTarget inside BLOCK_INPUT.
4783 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4784 Update mouse_region when mouse is moved.
4785 (make_mac_frame): Remove.
4786 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4787 Initialize mouse pointer shapes. Change values of f->left_pos and
4788 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4789 Don't call ShowWindow.
4790 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4791 Vinvocation_name and Vsystem_name.
4792 (mac_make_rdb): New function (from w32term.c).
4793 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4794 already been opened. Don't pass argument to
4795 mac_initialize_display_info. Don't set dpyinfo->height/width.
4796 Add entries to x_display_list and x_display_name_list.
4797 (x_delete_display): New function.
4798 (mac_initialize): Don't call mac_initialize_display_info.
4799 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4800
4801 * macterm.h (check_mac): Add extern.
4802 (struct mac_output): New member size_hints.
4803 (FRAME_SIZE_HINTS): New macro.
4804 (mac_unload_font): Add extern.
4805
4806 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4807
4808 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4809
4810 2004-12-27 Richard M. Stallman <rms@gnu.org>
4811
4812 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4813 (syms_of_buffer): Don't defsubr it.
4814
4815 * process.c (list_processes_1): Set undo_list instead
4816 of calling Fbuffer_disable_undo.
4817
4818 * xdisp.c (single_display_spec_string_p): Rename from
4819 single_display_prop_string_p.
4820 (single_display_spec_intangible_p): Rename from
4821 single_display_prop_intangible_p.
4822 (handle_single_display_spec): Rename from handle_single_display_prop.
4823 Rewritten to be easier to understand.
4824
4825 Change in load-history format. Functions now get (defun . NAME),
4826 and variables get just NAME.
4827
4828 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4829
4830 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4831 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4832 (Qdefvar): Var deleted.
4833 (syms_of_eval): Don't initialze it.
4834
4835 * lread.c (syms_of_lread) <load-history>: Doc fix.
4836
4837 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4838
4839 * xmenu.c (popup_get_selection): Pop down on C-g.
4840 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4841 pops down menu on C-g.
4842 (xdialog_show): If dialog popped down and no button in the dialog was
4843 pushed, call Fsignal to quit.
4844 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4845 Fsignal to quit.
4846
4847 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4848
4849 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4850 dialogs and menus pop down.
4851
4852 2004-12-27 Kenichi Handa <handa@m17n.org>
4853
4854 * coding.c (code_convert_region): Fix calculation of `ratio'.
4855
4856 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4857
4858 * gtkutil.c (update_frame_tool_bar): Make the value of
4859 tool-bar-button-margin control margins of images in tool bar.
4860
4861 * alloc.c (check_depth): New variable.
4862 (overrun_check_malloc, overrun_check_realloc): Only add
4863 overhead and write check pattern if check_depth is 1 (to handle
4864 recursive calls). Increase/decrease check_depth in entry/exit.
4865 (overrun_check_free): Only check for overhead if check_depth is 1.
4866 Increase/decrease check_depth in entry/exit.
4867
4868 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4869
4870 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4871 before touching input_available_clear_time, to avoid accessing it
4872 from multiple threads.
4873
4874 2004-12-23 Jason Rumney <jasonr@gnu.org>
4875
4876 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4877 of JPEG library.
4878
4879 2004-12-22 Richard M. Stallman <rms@gnu.org>
4880
4881 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4882
4883 * lisp.h (Vundo_outer_limit): Fix decl.
4884
4885 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4886 Uses changed.
4887 (syms_of_undo): Initialize appropriately.
4888 (truncate_undo_list): If it's nil, there's no limit.
4889
4890 2004-12-22 Kenichi Handa <handa@m17n.org>
4891
4892 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4893
4894 2004-12-21 Richard M. Stallman <rms@gnu.org>
4895
4896 * eval.c (unwind_to_catch): Clear immediate_quit.
4897
4898 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4899 specially as `\ ' and `\-'.
4900
4901 * keyboard.c (kbd_buffer_store_event_hold):
4902 In the code for while-no-input, handle immediate_quit.
4903
4904 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4905 Call that at the very start.
4906 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4907 (syms_of_alloc): Don't define undo-limit,
4908 undo-strong-limit and undo-outer-limit here.
4909
4910 * undo.c (truncate_undo_list): Return void.
4911 Take just one argument, the buffer.
4912 Make it current, and inhibit recursive GC.
4913 Access and update the undo list directly; return void.
4914 Refer to the undo...limit variables directly.
4915 Test undo_outer_limit only after counting the whole current command.
4916 When it's exceeded, call the function in undo-outer-limit-function.
4917 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4918 (Vundo_outer_limit_function): New variable.
4919 (syms_of_undo): Define undo-limit, undo-strong-limit
4920 and undo-outer-limit here, and undo-outer-limit-function.
4921 Doc fixes.
4922
4923 * lisp.h (truncate_undo_list): Update decl.
4924
4925 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4926
4927 * fileio.c (Fread_file_name): Delete duplicates in
4928 file-name-history when history_delete_duplicates is true.
4929
4930 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4931
4932 * macterm.c (mac_do_list_fonts): Fix memory leak
4933
4934 2004-12-20 Richard M. Stallman <rms@gnu.org>
4935
4936 * regex.c (re_match_2_internal) <symend, wordend>:
4937 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4938
4939 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4940
4941 * macterm.c (endif, x_font_name_to_mac_font_name):
4942 Use maccentraleurroman instead of maccentraleuropean
4943 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4944 quickly finding a specific font without needing regexps.
4945
4946 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4947
4948 * syssignal.h: Declare main_thread.
4949 (SIGNAL_THREAD_CHECK): New macro.
4950
4951 * keyboard.c (input_available_signal): Move thread checking code
4952 to macro SIGNAL_THREAD_CHECK and call that macro.
4953 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4954
4955 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4956
4957 * emacs.c: Define main_thread.
4958 (main): Initialize main_thread.
4959 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4960 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4961
4962 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4963
4964 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4965
4966 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4967
4968 * process.c (send_process_trap, sigchld_handler):
4969 Call SIGNAL_THREAD_CHECK.
4970
4971 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4972
4973 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4974
4975 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4976 returning when xg_ignore_gtk_scrollbar is true.
4977
4978 2004-12-14 Kim F. Storm <storm@cua.dk>
4979
4980 * keyboard.c (read_char): Save and restore echo_string when
4981 handling input method.
4982
4983 2004-12-13 Richard M. Stallman <rms@gnu.org>
4984
4985 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4986
4987 * keyboard.c (Vthrow_on_input): New variable.
4988 (syms_of_keyboard): Defvar and initialize it.
4989 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4990
4991 * lisp.h (QUIT): Check for Vthrow_on_input.
4992 (Vthrow_on_input): Declare it.
4993
4994 2004-12-13 Kim F. Storm <storm@cua.dk>
4995
4996 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4997 vector.
4998
4999 2004-12-12 Richard M. Stallman <rms@gnu.org>
5000
5001 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5002
5003 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5004 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5005
5006 2004-12-12 Kenichi Handa <handa@m17n.org>
5007
5008 * term.c (encode_terminal_code): Fix previous change.
5009
5010 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5011
5012 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5013 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5014
5015 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5016 in macro arguments.
5017
5018 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5019 XFASTINT blindly.
5020
5021 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5022
5023 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5024
5025 * w32term.c (x_calc_absolute_position): Remove calculation of
5026 difference between inner and outer window. Don't subtract difference
5027 for left and top calculations.
5028
5029 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5030 for left and top calculations. Remove call to x_real_positions.
5031 [Bug report by Drew Adams in November]
5032 (x_check_expected_move): Do not set change_gravity to 1 when calling
5033 x_set_offset.
5034
5035 2004-12-08 Richard M. Stallman <rms@gnu.org>
5036
5037 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5038 control chars and escaped octal codes.
5039 (Qescape_glyph): New variable.
5040 (syms_of_xdisp): Initialize it.
5041 (escape_glyph_face): New variable.
5042 (redisplay_window): Initialize it.
5043
5044 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5045
5046 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5047 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5048
5049 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5050
5051 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5052 reset_malloc_hooks.
5053
5054 * keyboard.c (handle_async_input, input_available_signal):
5055 Add ! defined (SYSTEM_MALLOC) around thread code.
5056
5057 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5058
5059 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5060
5061 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5062
5063 * config.in: Regenerate.
5064
5065 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5066
5067 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5068 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5069 if not given by a mouse click to correspond with x-popup-menu
5070 documentation.
5071
5072 * config.in: Regenerate.
5073
5074 * gtkutil.c: Include signal.h and syssignal.h.
5075 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5076
5077 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5078 new variables main_thread and alloc_mutex,
5079 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5080 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5081 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5082 (UN)BLOCK_INPUT.
5083 (emacs_blocked_free, emacs_blocked_malloc)
5084 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5085 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5086 (reset_malloc_hooks): New function.
5087
5088 * lisp.h: Declare reset_malloc_hooks.
5089
5090 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5091
5092 * keyboard.c: Conditionally include pthread.h
5093 (handle_async_input, input_available_signalt): If not in the main
5094 thread, block signal, send signal to main thread and return.
5095
5096 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5097 Set current folder in file chooser if default_filename is a directory.
5098
5099 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5100
5101 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5102 Remove redundant correctness checks.
5103 (regex_compile): Fix up error codes for \{..\} expressions.
5104
5105 2004-12-05 Richard M. Stallman <rms@gnu.org>
5106
5107 * regex.c (regex_compile): Fix end-of-pattern case for space.
5108
5109 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5110
5111 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5112 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5113 crashes with invalid characters.
5114 * macmenu.c (add_menu_item): Use it.
5115 * image.c (image_load_quartz2d): Likewise.
5116 * macfns.c (x_set_name, x_set_title): Likewise.
5117 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5118 creating them each time for labels.
5119
5120 2004-12-02 Richard M. Stallman <rms@gnu.org>
5121
5122 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5123 don't use it here.
5124
5125 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5126 (interactive_p): Skip Scalled_interactively_p frames
5127 like Sinteractive_p frames.
5128 (unwind_to_catch): Clear handling_signal.
5129
5130 * data.c (Fmake_variable_buffer_local): Doc fix.
5131 (Fmake_local_variable): Doc fix.
5132
5133 * insdel.c (insert_from_string_before_markers)
5134 (insert_from_string): Don't modify buffer on empty insertion.
5135
5136 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5137
5138 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5139
5140 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5141 menu text as UTF8 fails.
5142
5143 2004-12-01 Kim F. Storm <storm@cua.dk>
5144
5145 * alloc.c: Add commentary for last change.
5146 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5147 sizeof(size_t) != 4.
5148 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5149 Use them. Also clear header and trailer of freed memory.
5150 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5151 (string_overrun_cookie): Rename from string_overrun_pattern.
5152 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5153
5154 2004-12-01 Andreas Schwab <schwab@suse.de>
5155
5156 * lisp.h: Declare string_to_multibyte.
5157
5158 2004-12-01 Kenichi Handa <handa@m17n.org>
5159
5160 * w32console.c (w32con_write_glyphs): Decide coding here.
5161 Adjusted for the change of encode_terminal_code.
5162
5163 * term.c (encode_terminal_code): Don't make it "static".
5164
5165 2004-11-30 Kenichi Handa <handa@m17n.org>
5166
5167 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5168 (encode_terminal_code): Argument changed. Encode all
5169 characters at once, and return a pointer to the result of encoding.
5170 (write_glyphs): Decide coding here. Adjusted for the above change.
5171 (insert_glyphs): Likewise.
5172 (term_init): Initialize encode_terminal_bufsize to 0.
5173
5174 * coding.c (Vcode_conversion_workbuf_name): New variable.
5175 (syms_of_coding): Initialize and staticpro it.
5176 (set_conversion_work_buffer): New function.
5177 (run_pre_post_conversion_on_str): Use it.
5178 (run_pre_write_conversin_on_c_str): New function.
5179
5180 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5181
5182 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5183
5184 * keyboard.c: Don't undef SIGIO
5185 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5186 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5187 (macfns.o): Don't depend on ccl.h.
5188 * macfns.c (mac_frame_parm_handlers): Set handlers for
5189 Qleft_fringe and Qright_fringe.
5190 * macterm.c (mac_fill_rectangle_to_pixmap)
5191 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5192 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5193 Put in #if 0.
5194 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5195 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5196 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5197 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5198 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5199 XDrawImageString. Always draw background and foreground separately.
5200 (x_draw_image_foreground): Use clipping instead of computing the
5201 intersection rectangle.
5202 (x_draw_image_glyph_string): Don't draw an image with mask to a
5203 pixmap.
5204 (x_redisplay_interface): Set flush_display_optional member to 0.
5205 (XTread_socket): Correctly reset the TEConverter
5206 object.
5207
5208 2004-11-30 Kim F. Storm <storm@cua.dk>
5209
5210 * lisp.h: New defines to enable buffer overrun checking.
5211 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5212 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5213
5214 * alloc.c: Add more checks for buffer overruns.
5215 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5216 xmalloc_overrun_check_trailer, overrun_check_malloc)
5217 overrun_check_realloc, overrun_check_free): Add.
5218 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5219 (check_sblock, allocate_string_data, compact_small_strings):
5220 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5221 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5222 (check_string_free_list): Add.
5223 (allocate_string, sweep_strings): Call check_string_free_list.
5224
5225 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5226 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5227
5228 2004-11-29 Kim F. Storm <storm@cua.dk>
5229
5230 * fns.c (concat): Use SAFE_ALLOCA.
5231
5232 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5233
5234 * sysdep.c (emacs_write): Don't use QUIT.
5235
5236 2004-11-29 Kenichi Handa <handa@m17n.org>
5237
5238 * buffer.c (init_buffer): Set current_buffer->directory to a
5239 multibyte string made by string_to_multibyte.
5240
5241 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5242
5243 2004-11-27 Andreas Schwab <schwab@suse.de>
5244
5245 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5246
5247 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5248 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5249
5250 * filelock.c (lock_file_1): Call get_boot_time early.
5251 Increase buffer size.
5252
5253 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5254
5255 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5256 is not defined.
5257
5258 2004-11-27 Kim F. Storm <storm@cua.dk>
5259
5260 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5261 marker out of doc string.
5262
5263 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5264
5265 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5266 which was not mentioned in the log.
5267
5268 2004-11-26 Kim F. Storm <storm@cua.dk>
5269
5270 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5271 angle bitmaps at top/bottom line.
5272
5273 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5274 set it when it->method is set to next_element_from_display_vector.
5275 (setup_for_ellipsis): Add LEN argument. Callers changed.
5276 Set it->saved_face_id.
5277 (get_next_display_element): Use loop instead of recursion.
5278 Set it->saved_face_id. Combine duplicate code for ctr chars.
5279 (next_element_from_display_vector): Do not set it->saved_face_id.
5280 (next_element_from_ellipsis): Use setup_for_ellipsis.
5281
5282 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5283
5284 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5285 prevent compiler warnings.
5286
5287 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5288
5289 * keyboard.c (command_loop_1): Print a message describing the key
5290 the user just pressed when this key has no binding.
5291
5292 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5293 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5294
5295 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5296
5297 2004-11-24 Richard M. Stallman <rms@gnu.org>
5298
5299 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5300
5301 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5302
5303 2004-11-24 Kim F. Storm <storm@cua.dk>
5304
5305 * xdisp.c (move_it_in_display_line_to, display_line):
5306 Restore saved_face_id also when truncate-lines or hscrolled.
5307
5308 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5309
5310 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5311 x-use-old-gtk-file-dialog.
5312
5313 * xfns.c: Define x_use_old_gtk_file_dialog.
5314 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5315 outside ifdef USE_GTK.
5316
5317 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5318
5319 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5320 Don't use XFASTINT blindly.
5321
5322 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5323
5324 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5325 in macro arguments.
5326
5327 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5328
5329 * lread.c (oblookup): Don't use XFASTINT blindly.
5330
5331 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5332 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5333
5334 2004-11-23 Kim F. Storm <storm@cua.dk>
5335
5336 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5337 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5338
5339 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5340 signal_p is zero and face name is unknown.
5341 (Fx_list_fonts): Don't signal error in lookup_named_face.
5342 (Fface_font): Signal error in lookup_named_face.
5343 (ascii_face_of_lisp_face): Likewise.
5344
5345 * dispextern.h (lookup_named_face): Fix prototype.
5346
5347 * xdisp.c (handle_single_display_prop): Don't signal error in
5348 lookup_named_face for unknown fringe face name.
5349 (highlight_trailing_whitespace): Don't signal error in
5350 lookup_named_face if trailing-whitespace face unknown.
5351 (calc_line_height_property): Don't signal error in
5352 lookup_named_face if specified face name is unknown.
5353
5354 * fringe.c (update_window_fringes): Show top row indicator if
5355 window has header-line. Don't show arrow at bob and eob
5356 if the boundary indicators are not used.
5357 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5358
5359 * window.c (set_window_buffer): Clear display_error_modiff.
5360
5361 2004-11-22 Kim F. Storm <storm@cua.dk>
5362
5363 * fringe.c (update_window_fringes): Provide sensible fall-back
5364 value for non-nil indicate-buffer-boundaries setting.
5365
5366 2004-11-22 Markus Rost <rost@ias.edu>
5367
5368 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5369
5370 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5371
5372 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5373
5374 2004-11-21 Kim F. Storm <storm@cua.dk>
5375
5376 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5377
5378 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5379 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5380
5381 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5382 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5383
5384 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5385 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5386
5387 * xdisp.c (move_it_in_display_line_to, display_line):
5388 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5389 line is continued before or in middle of element from display vector.
5390
5391 * indent.c (Fvertical_motion): Fix last change. Use another
5392 method to detect if iterator moved too far ahead after reseat.
5393
5394 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5395 expand matrix width for overflow in zero-width area.
5396 (append_glyph, append_composite_glyph, produce_image_glyph)
5397 (append_stretch_glyph): Use it to avoid loop in redisplay.
5398 (note_mode_line_or_margin_highlight): Don't let help-echo from
5399 string override help-echo from image map.
5400
5401 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5402
5403 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5404 * callint.c (Fcall_interactively): Ditto.
5405
5406 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5407
5408 * minibuf.c (Fminibuffer_complete_and_exit):
5409 Fixup the case of the completed value, for case-indep completion.
5410
5411 2004-11-20 Richard M. Stallman <rms@gnu.org>
5412
5413 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5414
5415 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5416 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5417
5418 * search.c (Vsearch_spaces_regexp):
5419 Rename from Vsearch_whitespace_regexp. All uses changed.
5420
5421 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5422
5423 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5424
5425 2004-11-19 Richard M. Stallman <rms@gnu.org>
5426
5427 * search.c (Vsearch_whitespace_regexp): New variable.
5428 (syms_of_search): Defvar it.
5429 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5430 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5431 is non-nil.
5432 (struct regexp_cache): New element whitespace_regexp.
5433 (syms_of_search): Initialize whitespace_regexp elements.
5434 (compile_pattern): Compare whitespace_regexp elements.
5435 (compile_pattern_1): Set whitespace_regexp elements.
5436
5437 * regex.c (regex_compile): Substitute whitespace_regexp
5438 for spaces, if it is nonzero.
5439 (whitespace_regexp): New variable.
5440 (re_set_whitespace_regexp): New function.
5441
5442 2004-11-19 Kim F. Storm <storm@cua.dk>
5443
5444 * indent.c (Fvertical_motion): Fix last change.
5445
5446 2004-11-18 Kim F. Storm <storm@cua.dk>
5447
5448 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5449 Instead, move back again if reseating moves too far ahead.
5450
5451 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5452
5453 * xdisp.c (message3): Call clear_message.
5454
5455 2004-11-17 Kim F. Storm <storm@cua.dk>
5456
5457 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5458
5459 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5460
5461 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5462
5463 * xmenu.c (x_menu_in_use): Remove.
5464 (x_menu_set_in_use): Also set popup_activated_flag.
5465
5466 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5467 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5468
5469 * xterm.h (x_menu_in_use): Remove.
5470
5471 2004-11-16 Richard M. Stallman <rms@gnu.org>
5472
5473 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5474 Use map-keymap-internal to implement that.
5475
5476 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5477
5478 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5479
5480 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5481 a window before using XWINDOW.
5482
5483 * window.c (make_window, Fselect_window, make_dummy_parent)
5484 (save_window_save):
5485 * frame.c (make_frame):
5486 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5487
5488 * lisp.h (NILP): Use EQ rather than XFASTINT.
5489
5490 2004-11-16 Kim F. Storm <storm@cua.dk>
5491
5492 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5493
5494 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5495 moving backwards.
5496
5497 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5498
5499 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5500
5501 2004-11-16 Kenichi Handa <handa@m17n.org>
5502
5503 * xdisp.c (display_mode_element): Fix previous change (calculate
5504 end position of substring to display correctly).
5505
5506 2004-11-16 Kim F. Storm <storm@cua.dk>
5507
5508 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5509 Reported by Andrew M. Scott.
5510
5511 2004-11-15 Kim F. Storm <storm@cua.dk>
5512
5513 * fns.c (Fsafe_plist_get): New defun.
5514 (syms_of_fns): Defsubr it.
5515
5516 * lisp.h (Fsafe_plist_get): Add EXFUN.
5517
5518 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5519 Use Fsafe_plist_get.
5520 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5521 Fix image map element parsing. Use Fsafe_plist_get.
5522
5523 2004-11-15 Richard M. Stallman <rms@gnu.org>
5524
5525 * xdisp.c (get_next_display_element): Fix previous change.
5526
5527 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5528
5529 * window.c (shrink_windows): Handle special case of one window left
5530 when trying to shrink the final reminder. Grow windows if
5531 total_removed is less than total_shrink.
5532
5533 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5534 extract pointer from arg with XSAVE_VALUE.
5535 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5536 Construct arg to record_unwind_protect with make_save_value.
5537
5538 2004-11-13 Richard M. Stallman <rms@gnu.org>
5539
5540 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5541 (get_next_display_element): Fix previous change to apply only to \n.
5542
5543 * indent.c (Fvertical_motion): Scan to PT from start of line to
5544 make iterator consistent.
5545
5546 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5547
5548 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5549
5550 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5551
5552 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5553 Record unwind with clean_up_file_dialog.
5554
5555 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5556 Declare.
5557
5558 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5559
5560 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5561
5562 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5563 (xg_file_sel_destroy): Remove.
5564 (xg_file_response_cb, pop_down_file_dialog)
5565 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5566 New functions.
5567 (xg_get_file_with_chooser, xg_get_file_with_selection):
5568 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5569 Move common code to xg_get_file_name. Return widget created.
5570 (xg_get_file_name): Set name, transient for, modal and destroy
5571 with parent here. Connect response signal to xg_file_response_cb,
5572 connect delete-event to gtk_true. Record pop_down_file_dialog
5573 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5574 (xg_create_widget): Make dialogs modal.
5575
5576 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5577 Lisp_Object.
5578 (popup_get_selection): Move unwind protect ...
5579 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5580 Move destroy of widget to pop_down_menu.
5581 (popup_widget_loop): Move unwind protect ...
5582 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5583 Move destroy of widget to pop_down_menu.
5584 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5585 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5586 x_mouse_leave and grabbed = 0 to pop_down_menu.
5587
5588 2004-11-13 Kim F. Storm <storm@cua.dk>
5589
5590 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5591 (syms_of_xdisp): DEFVAR_BOOL it.
5592 (make_cursor_line_fully_visible, try_cursor_movement)
5593 (try_window_id): Use it.
5594
5595 2004-11-12 Kim F. Storm <storm@cua.dk>
5596
5597 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5598 (struct it): New member max_extra_line_spacing.
5599 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5600 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5601 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5602 part of last line is only extra line spacing (so the text on the
5603 line is fully visible). Use helper macros.
5604 Add W arg (to use them). All callers changed.
5605 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5606 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5607
5608 * window.c (window_scroll_pixel_based, Frecenter):
5609 Use move_it_vertically_backward directly.
5610 (Frecenter): Fix calculation of new start pos for negative arg.
5611 Before, the new start pos was sometimes chosen too far back, so
5612 the last line became only partially visible, and thus would be
5613 either only semi-visible or automatically scrolled to the middle
5614 of the window by redisplay.
5615
5616 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5617 (move_it_vertically_backward): Don't recure to move further back.
5618 (move_it_vertically): Remove superfluous condition.
5619 (move_it_by_lines): Clear last_height when moved 0 lines.
5620 (resize_mini_window): Use it.max_extra_line_spacing.
5621 (display_tool_bar_line): Clear row->extra_line_spacing.
5622 (try_scrolling): Use move_it_vertically_backward directly.
5623 (redisplay_window): Likewise.
5624 (compute_line_metrics): Set row->extra_line_spacing.
5625 (display_line, display_string): Likewise.
5626 (x_produce_glyphs): Update it->max_extra_line_spacing.
5627
5628 * xmenu.c (pop_down_menu): Return nil.
5629
5630 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5631
5632 * xmenu.c (x_menu_wait_for_event): New function.
5633 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5634 to handle timers.
5635 (popup_widget_loop): Add argument do_timers.
5636 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5637 do_timers to popup_widget_loop.
5638 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5639 x_menu_wait_for_event is called by XMenuActivate.
5640 (create_and_show_popup_menu): Pass 1 for do_timers to
5641 popup_get_selection.
5642 (pop_down_menu): New function.
5643 (popup_get_selection, popup_widget_loop): Unwind protect to
5644 pop_down_menu.
5645 (popup_widget_loop): Add argument widget.
5646 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5647 argument widget to popup_widget_loop.
5648
5649 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5650
5651 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5652
5653 2004-11-09 Kim F. Storm <storm@cua.dk>
5654
5655 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5656 Fix various comments referring to XEvents instead of input events.
5657 (x_queue_event): Fix format strings.
5658 (x_stop_queuing_selection_requests): Likewise.
5659
5660 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5661 (pint2hrstr): Add extra braces to silence compiler.
5662
5663 * print.c (print_object): Fix format string.
5664
5665 * lread.c (read1): Fix next_char matching.
5666
5667 * lisp.h (Fdelete): Add EXFUN.
5668 (replace_range_2): Add prototype.
5669
5670 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5671
5672 * intervals.h (NULL_INTERVAL_P): Add separate version when
5673 ENABLE_CHECKING is not defined to silence compiler.
5674 (compare_string_intervals): Add prototype.
5675
5676 * fringe.c (destroy_fringe_bitmap): Fix return type.
5677 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5678
5679 * emacs.c (Fdump_emacs): Fix format string.
5680
5681 * doc.c: Include <ctype.h>.
5682 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5683
5684 * data.c (store_symval_forwarding): Remove unused variables.
5685
5686 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5687
5688 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5689
5690 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5691 to ${OLDXMENU}.
5692
5693 2004-11-09 Kim F. Storm <storm@cua.dk>
5694
5695 * process.c (Fmake_network_process): Remove kludge for interrupted
5696 connects on BSD. If connect is interrupted, just close socket and
5697 start over rather than sleeping and retry with same socket.
5698
5699 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5700
5701 * .cvsignore: Add buildobj.lst.
5702
5703 * doc.c: New variable Vbuild_files.
5704 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5705 file names from buildobj.lst. Only attach docstrings from files
5706 that are in Vbuild_files.
5707 (syms_of_doc): Defvar Vbuild_files.
5708
5709 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5710 and w32*.o.
5711 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5712 (mostlyclean): Rm buildobj.lst
5713
5714 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5715 is linked.
5716
5717 2004-11-09 Kim F. Storm <storm@cua.dk>
5718
5719 * fringe.c (update_window_fringes): Update fringe bitmaps if
5720 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5721 also update previous row to get rid of misc. artifacts.
5722
5723 2004-11-08 Kim F. Storm <storm@cua.dk>
5724
5725 * xdisp.c (fast_find_position): Fix start pos if header line present.
5726 (note_mouse_highlight): Clear mouse face if we move out of text area.
5727
5728 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5729
5730 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5731 Don't include <sys/time.h> explicitly.
5732 Include <stdio.h> unconditionally, not just on MacOS.
5733
5734 2004-11-08 Kenichi Handa <handa@m17n.org>
5735
5736 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5737 don't pay attention to '\' before '*'.
5738 (fontset_pattern_regexp): Change the meaning of the second arg.
5739 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5740 (check_fontset_name): Try NAME as literal at first, and if it
5741 failes, try NAME as pattern.
5742
5743 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5744
5745 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5746
5747 2004-11-07 Andreas Schwab <schwab@suse.de>
5748
5749 * lisp.h (Fmsdos_downcase_filename): Declare.
5750 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5751 * fileio.c: Likewise.
5752
5753 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5754
5755 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5756 comparisons with integers instead of Lisp_Object address.
5757 (Fmsdos_set_keyboard): Declare argument allkeys.
5758
5759 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5760
5761 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5762 int/Lisp_Object mixup.
5763
5764 * fileio.c: Ditto.
5765
5766 2004-11-06 Steven Tamm <steventamm@mac.com>
5767
5768 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5769
5770 2004-11-06 Richard M. Stallman <rms@gnu.org>
5771
5772 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5773
5774 * xfaces.c (merge_named_face): GCPRO the face_name in the
5775 named_merge_point struct that we make.
5776 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5777
5778 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5779 before deciding whether to inactivate mark.
5780
5781 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5782
5783 * config.in: Regenerate (add HAVE_GETRUSAGE).
5784 * editfns.c (Fget_internal_run_time): New function.
5785 (syms_of_data): Defsubr it.
5786 * fns.c (sxhash): As far as possible, merge calculation of
5787 hash code for symbols and strings.
5788
5789 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5790
5791 * frame.c (syms_of_frame): Fix the example in the doc string.
5792
5793 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5794
5795 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5796
5797 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5798 (create_and_show_dialog): Revert change from 2004-10-31.
5799
5800 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5801
5802 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5803
5804 2004-11-05 Kim F. Storm <storm@cua.dk>
5805
5806 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5807
5808 * fileio.c (Ffile_modes): Doc fix.
5809 (auto_save_1): Check for Ffile_modes nil value.
5810
5811 2004-11-05 Kim F. Storm <storm@cua.dk>
5812
5813 * xselect.c (struct selection_event_queue, selection_queue)
5814 (x_queue_selection_requests, x_queue_event)
5815 (x_start_queuing_selection_requests)
5816 (x_stop_queuing_selection_requests): Add new queue for selection
5817 input events to replace previous XEvent queue in xterm.c.
5818 (queue_selection_requests_unwind): Adapt to new queue.
5819 (x_reply_selection_request): Adapt to new queue.
5820 Unexpect wait_object in case of x errors (memory leak).
5821 (x_handle_selection_request, x_handle_selection_clear): Make static.
5822 (x_handle_selection_event): New function. May queue selection events.
5823 (wait_for_property_change_unwind): Use save_value instead of cons.
5824 Clear property_change_reply_object.
5825 (wait_for_property_change): Abort if already waiting.
5826 Use save_value instead of cons for unwind data.
5827 (x_handle_property_notify): Skip events already arrived, but don't
5828 free them, as "arrived" field is checked by wait_for_property_change,
5829 and it will be freed by unwind or explicit unexpect_property_change.
5830 (x_get_foreign_selection): Add to new queue.
5831 (receive_incremental_selection): Don't unexpect wait_object when done
5832 as it has already been freed by previous wait_for_property_change.
5833
5834 * xterm.h (x_start_queuing_selection_requests)
5835 (x_stop_queuing_selection_requests, x_handle_selection_request)
5836 (x_handle_selection_clear): Remove prototypes.
5837 (x_handle_selection_event): Add prototype.
5838
5839 * xterm.c (handle_one_xevent): Don't queue X selection events
5840 here, it may be too late if we start queuing after we have already
5841 stored some selection events into the kbd buffer.
5842 (struct selection_event_queue, queue, x_queue_selection_requests)
5843 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5844 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5845 (x_catch_errors_unwind): Block input around final XSync.
5846
5847 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5848
5849 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5850 (kbd_buffer_unget_event): New function.
5851 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5852 and use x_handle_selection_event.
5853 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5854
5855 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5856
5857 * xselect.c (TRACE3): New debug macro.
5858 (x_reply_selection_request): Use it.
5859 (receive_incremental_selection): In call to TRACE0, the name of
5860 a symbol is in xname.
5861
5862 2004-11-05 Kim F. Storm <storm@cua.dk>
5863
5864 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5865
5866 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5867
5868 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5869
5870 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5871
5872 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5873 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5874 * xfns.c (syms_of_xfns): ... to here.
5875
5876 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5877 it doesn't start with /.
5878
5879 2004-11-04 Kenichi Handa <handa@m17n.org>
5880
5881 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5882 treat it as a literal character.
5883
5884 2004-11-03 Kim F. Storm <storm@cua.dk>
5885
5886 * .gdbinit (ppt): New function.
5887
5888 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5889
5890 * xterm.c (x_window_to_scroll_bar): Only call
5891 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5892
5893 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5894 of save.
5895
5896 2004-11-02 Andreas Schwab <schwab@suse.de>
5897
5898 * window.c (Fscroll_right): Fix last change.
5899
5900 2004-11-02 Kim F. Storm <storm@cua.dk>
5901
5902 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5903
5904 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5905
5906 * callproc.c (Fcall_process): Block input around vfork.
5907
5908 2004-11-02 Kim F. Storm <storm@cua.dk>
5909
5910 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5911 (syms_of_eval): Defsubr it.
5912
5913 2004-11-02 Richard M. Stallman <rms@gnu.org>
5914
5915 * insdel.c (replace_range_2): New function.
5916
5917 * casefiddle.c (casify_region): Handle changes in byte-length
5918 using replace_range_2.
5919
5920 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5921
5922 * xdisp.c (back_to_previous_visible_line_start):
5923 Subtract 1 from pos when checking previous newline for invisibility.
5924
5925 * window.c (window_scroll_pixel_based): Update preserve_y
5926 for header line if any.
5927 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5928 use a new second argument instead.
5929
5930 * eval.c (Fcall_interactive_p): New function.
5931 (interactive_p): Don't test INTERACTIVE here.
5932 (Finteractive_p): Doc fix.
5933
5934 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5935
5936 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5937
5938 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5939 comparing font names.
5940
5941 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5942
5943 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5944 Fx_file_dialog if only directories should be read.
5945
5946 * lisp.h: Fx_file_dialog takes 5 parameters.
5947
5948 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5949 Add parameter only_dir_p.
5950 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5951 dialog, just text field part. Do not add DEFAULT_FILENAME
5952 to list of files if it isn't there.
5953 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5954
5955 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5956 Check only_dir_p instead of comparing prompt to "Dired". When using
5957 a save dialog, add option kNavDontConfirmReplacement, change title
5958 to "Enter name", change text for save button to "Ok".
5959
5960 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5961 Check only_dir_p instead of comparing prompt to "Dired".
5962
5963 * gtkutil.c (xg_get_file_with_chooser)
5964 (xg_get_file_with_selection): New functions, only defined ifdef
5965 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5966 respectively.
5967 (xg_get_file_name): Add parameter only_dir_p.
5968 Call xg_get_file_with_chooser or xg_get_file_with_selection
5969 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5970 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5971
5972 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5973
5974 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5975
5976 2004-11-01 Kim F. Storm <storm@cua.dk>
5977
5978 * process.c (connect_wait_mask, num_pending_connects):
5979 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5980 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5981 (IF_NON_BLOCKING_CONNECT): New helper macro.
5982 (wait_reading_process_output): Only declare and use local vars
5983 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5984
5985 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5986
5987 * w32term.c (x_scroll_run): Delete region objects after use.
5988
5989 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5990
5991 * xmenu.c: Add prototypes for forward function declarations.
5992 (popup_get_selection): Remove parameter do_timers, remove call to
5993 timer_check.
5994 (create_and_show_popup_menu, create_and_show_dialog):
5995 Remove parameter do_timers from call to popup_get_selection.
5996
5997 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5998 tool_bar_items and assign the result to f->tool_bar_items if
5999 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6000 tool_bar_items to assignment of result.
6001
6002 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6003 pending_atmers is non-zero.
6004
6005 2004-10-31 Kim F. Storm <storm@cua.dk>
6006
6007 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6008
6009 2004-10-28 Will <will@glozer.net>
6010
6011 * macterm.c: Allow user to assign key modifiers to the Mac Option
6012 key via a 'mac-option-modifier' variable.
6013
6014 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6015
6016 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6017 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6018 (x_handle_selection_request, x_handle_selection_clear)
6019 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6020
6021 2004-10-28 Richard M. Stallman <rms@gnu.org>
6022
6023 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6024
6025 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6026
6027 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6028
6029 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6030 comment-starter over a 1-char one.
6031
6032 2004-10-27 Richard M. Stallman <rms@gnu.org>
6033
6034 * xdisp.c (get_next_display_element): In mode lines,
6035 treat newline and tab like other control characters.
6036
6037 * editfns.c (Fmessage): Doc fix.
6038
6039 * indent.c (vmotion): When moving up, check the newline before.
6040 Make prevline an int, not a Lisp_Object.
6041
6042 2004-10-27 Kim F. Storm <storm@cua.dk>
6043
6044 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6045 Only allocate info and discarded tables once.
6046
6047 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6048 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6049 (SAFE_FREE): Test it to determine if we need to unwind to free.
6050 Remove size arg. All users changed.
6051 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6052
6053 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6054
6055 * gtkutil.c: Put empty line between comment and function body.
6056 (xg_destroy_widgets): Rename from remove_from_container.
6057 Just destroy all widgets in list. Argument wcont removed.
6058 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6059 instead of remove_from_container.
6060 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6061 (free_frame_tool_bar): Add comment.
6062
6063 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6064 is not NULL before strcmp.
6065
6066 2004-10-26 Kim F. Storm <storm@cua.dk>
6067
6068 * callint.c (Fcall_interactively): Add 'U' code to get the
6069 up-event discarded by a previous 'k' or 'K' argument.
6070
6071 2004-10-26 David Kastrup <dak@gnu.org>
6072
6073 * buffer.c (syms_of_buffer): Fix a few typos.
6074
6075 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6076
6077 * xsmfns.c: Put empty line between comment and function body.
6078 Use two spaces before comment end.
6079
6080 2004-10-25 Kenichi Handa <handa@m17n.org>
6081
6082 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6083 PATTERN is full XLFD.
6084
6085 2004-10-24 Kenichi Handa <handa@m17n.org>
6086
6087 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6088
6089 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6090 (regex_compile): Return REG_ERANGEX if appropriate.
6091
6092 2004-10-22 Kenichi Handa <handa@m17n.org>
6093
6094 * editfns.c (Ftranslate_region_internal): New function.
6095 (syms_of_editfns): Defsubr it.
6096
6097 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6098
6099 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6100
6101 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6102
6103 * xterm.h (x_output): New member `xic_base_fontname'.
6104 (FRAME_XIC_BASE_FONTNAME): New macro.
6105 (xic_free_xfontset): Declare.
6106
6107 * xfns.c (xic_create_xfontset): Share fontsets between frames
6108 based on base_fontname.
6109 (xic_free_xfontset): New function.
6110 (free_frame_xic): Use it.
6111 (xic_set_xfontset): Ditto.
6112
6113 * xterm.c (xim_destroy_callback): Ditto.
6114
6115
6116 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6117
6118 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6119
6120 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6121
6122 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6123 XSync.
6124
6125 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6126 New variables and constant.
6127 (main): Calculate heap_bss_diff. If we are dumping and the
6128 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6129 and exec ourself again.
6130 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6131 print a warning.
6132
6133 * lastfile.c: Make my_endbss and my_endbss_static available on all
6134 platforms.
6135
6136 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6137 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6138
6139 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6140
6141 * data.c (Flocal_variable_if_set_p): Doc fix.
6142
6143 2004-10-19 Jason Rumney <jasonr@gnu.org>
6144
6145 * w32.c (init_environment): Set emacs_dir correctly when running
6146 emacs from the build directory.
6147
6148 2004-10-19 Richard M. Stallman <rms@gnu.org>
6149
6150 * editfns.c (Fdelete_and_extract_region):
6151 If region is empty, return null string.
6152
6153 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6154
6155 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6156 and canon_width.
6157 (xg_frame_cleared): Remove.
6158
6159 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6160 (xg_find_top_left_in_fixed): Remove.
6161 (xg_create_scroll_bar): Put an event box widget between
6162 the scroll bar widget and the edit widget.
6163 (xg_show_scroll_bar): Show the parent widget (the event box).
6164 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6165 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6166 Move the parent (the event box) widget inside the fixed widget.
6167 Move window clear to xterm.c.
6168
6169 * gtkutil.h (xg_frame_cleared): Remove.
6170
6171 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6172 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6173 Remove arguments left and width to xg_update_scrollbar_pos.
6174 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6175
6176 2004-10-19 Kenichi Handa <handa@m17n.org>
6177
6178 * xdisp.c (display_mode_element): Fix display of wide chars.
6179
6180 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6181
6182 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6183 gdk_window_clear and move gdk_window_process_all_updates after
6184 clear so events are sent to the X server in correct order.
6185
6186 2004-10-18 Kenichi Handa <handa@m17n.org>
6187
6188 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6189 comparing font names.
6190 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6191 (list_fontsets): Likewise.
6192
6193 * search.c (fast_string_match_ignore_case): New function.
6194
6195 * lisp.h (fast_string_match_ignore_case): Extern it.
6196
6197 2004-10-17 Kim F. Storm <storm@cua.dk>
6198
6199 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6200 than bitmap if there is not left fringe.
6201 (get_overlay_arrow_glyph_row): Also used on windows system.
6202 (display_line): Display overlay string if no left fringe.
6203
6204 2004-10-16 Jason Rumney <jasonr@gnu.org>
6205
6206 * w32fns.c (w32_font_match): Encode font name being matched.
6207
6208 2004-10-16 Richard M. Stallman <rms@gnu.org>
6209
6210 * window.c (Fspecial_display_p): Doc fix.
6211
6212 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6213
6214 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6215 Don't ignore menus, because where-is-internal already does it for us.
6216
6217 2004-10-15 Kim F. Storm <storm@cua.dk>
6218
6219 * xdisp.c (redisplay_window): Only update fringes and vertical
6220 border on window frames.
6221
6222 2004-10-14 Andreas Schwab <schwab@suse.de>
6223
6224 * m/ia64.h (DATA_SEG_BITS): Don't define.
6225
6226 2004-10-14 Kim F. Storm <storm@cua.dk>
6227
6228 * xterm.h: Include Xutil.h after keysym.h to work around bug
6229 in some X versions.
6230
6231 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6232
6233 * fns.c (map_char_table): Add missing gcpros.
6234
6235 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6236
6237 * keymap.c (get_keymap): An autoload form is not a keymap.
6238
6239 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6240
6241 2004-10-13 Kim F. Storm <storm@cua.dk>
6242
6243 * callproc.c (Fcall_process): Simplify handling of display arg.
6244 Resume `display_on_the_fly' once a coding system is determined.
6245
6246 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6247
6248 2004-10-12 Kim F. Storm <storm@cua.dk>
6249
6250 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6251 caller, such as call-process, is not going to poll for input.
6252 (calc_line_height_property): Handle case where it->object is nil.
6253
6254 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6255
6256 2004-10-12 Kenichi Handa <handa@m17n.org>
6257
6258 * xdisp.c (get_next_display_element):
6259 If unibyte_display_via_language_environment is zero, display 8-bit
6260 chars in octal in unibyte buffer.
6261
6262 2004-10-12 Kim F. Storm <storm@cua.dk>
6263
6264 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6265 are no ordinary bindings.
6266
6267 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6268
6269 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6270
6271 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6272
6273 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6274 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6275 (make_mac_frame): Add BLOCK_INPUT around the making of a
6276 terminal frame.
6277 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6278 * macgui.h (mktime): Use emacs_mktime.
6279 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6280 Make a cancel file-open dialog be like C-g.
6281 * mac.c (mktime): Use emacs_mktime.
6282 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6283 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6284
6285 2004-10-10 Kim F. Storm <storm@cua.dk>
6286
6287 * keyboard.c (timer_resume_idle): New function to resume idle
6288 timer without resetting timers on the idle list.
6289 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6290 (timer_start_idle, timer_stop_idle): Declare static.
6291 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6292
6293 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6294
6295 2004-10-08 Steven Tamm <steventamm@mac.com>
6296
6297 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6298 * macterm.c (mac_check_for_quit_char): Remove warning for using
6299 NULL where 0 should be used.
6300 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6301 objc/malloc.h
6302 * mac.c: Include time.h for Tiger compatibility.
6303
6304 2004-10-07 Kim F. Storm <storm@cua.dk>
6305
6306 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6307 windows. Update vertical line after drawing window fringes, but
6308 only if actually drawing any bitmaps--or there is no fringe.
6309
6310 * xterm.c (x_update_window_end): Likewise.
6311 * macterm.c (x_update_window_end): Likewise.
6312 * w32term.c (x_update_window_end): Likewise.
6313
6314 * fringe.c (draw_window_fringes): Return value now indicates if
6315 any fringe bitmaps were redrawn (or there are no fringes).
6316
6317 * dispextern.h (draw_window_fringes): Update prototype.
6318
6319 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6320
6321 * macfns.c (mac_get_window_bounds): Add extern.
6322 (x_real_positions): Use mac_get_window_bounds.
6323
6324 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6325 xmenu.c (YAILOM).
6326
6327 * macterm.c [!MAC_OSX]: Include Windows.h.
6328 (front_emacs_window): Rename from mac_front_window. All uses
6329 changed. Return the frontmost non-tooltip emacs window.
6330 (mac_get_window_bounds): New function.
6331 (x_calc_absolute_position): Use the difference of width and height
6332 between the inner and outer window.
6333 (x_set_offset): Specify window position by the coordinae of the
6334 outer window. Adjust the position if the title bar is completely
6335 outside the screen.
6336 (app_is_suspended, app_sleep_time): Remove unused variables.
6337 (do_app_resume, do_app_suspend): Remove their contents because
6338 window-activate/deactivate events will do the job.
6339 (do_zoom_window): Remove unused variables. Make compliant to the
6340 standard way of zooming. Set f->left_pos and f->top_pos.
6341 (XTread_socket): Don't use argument `expected'. Don't use
6342 FrontWindow to determine the clicked window. Exclude unprocessed
6343 mouseUp cases in the early stage. Add parentheses to fix operator
6344 precedence.
6345 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6346
6347 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6348
6349 * config.in: Regenerate.
6350
6351 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6352 HAVE_EXECSHIELD.
6353
6354 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6355
6356 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6357 a row if Alt or Meta has been found for that row. Also stop scanning
6358 for Keysyms for that row.
6359
6360 2004-10-04 Kim F. Storm <storm@cua.dk>
6361
6362 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6363 to list. Include overlay arrow bitmap in return value.
6364
6365 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6366 bars with fractional column width. If scroll bar separates two
6367 windows, move it towards the window it belongs to. Only update
6368 the padding area below the scroll bar widget when necessary,
6369 i.e. when scroll bar widget is created, moved, or resized.
6370
6371 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6372 while tracking/dragging mouse.
6373 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6374
6375 * window.c (coordinates_in_window): Relax check for cursor
6376 on vertial border between mode lines.
6377 (Fset_window_fringes): Do not allow negative widths.
6378 (Fset_window_scroll_bars): Likewise.
6379
6380 * .gdbinit (pp): Shorthand for p ARG + pr.
6381 (ff): New command: flush frame updates (X only).
6382
6383 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6384
6385 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6386
6387 2004-09-30 Kenichi Handa <handa@m17n.org>
6388
6389 * process.c (send_process): Free composition data.
6390
6391 * fileio.c (Finsert_file_contents): Free composition data.
6392
6393 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6394 compositions to encode.
6395 (encode_coding_string): Likewise. Free composition data.
6396
6397 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6398
6399 * coding.c (code_convert_region): Free composition data.
6400
6401 2004-09-29 Kim F. Storm <storm@cua.dk>
6402
6403 * fringe.c: Remove limit on number of bitmaps.
6404 (fringe_bitmaps, fringe_faces): Change to pointers.
6405 (max_fringe_bitmaps): New var.
6406 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6407 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6408
6409 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6410 (struct glyph_row): Reorder fringe_bitmap related fields.
6411 (struct it): Likewise.
6412
6413 * w32term.c (fringe_bmp): Change to pointer.
6414 (max_fringe_bmp): New var.
6415 (w32_define_fringe_bitmap): Expand fringe_bmp.
6416 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6417 (w32_destroy_fringe_bitmap): Likewise.
6418
6419 2004-09-29 Kim F. Storm <storm@cua.dk>
6420
6421 * fringe.c: Simplify last change.
6422 (lookup_fringe_bitmap): New function.
6423 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6424 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6425 Keep standard bitmaps in Vfringe_bitmaps.
6426 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6427 (Fset_fringe_bitmap_face): Likewise.
6428
6429 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6430 (valid_fringe_bitmap_p): Remove prototype.
6431
6432 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6433
6434 2004-09-29 Kim F. Storm <storm@cua.dk>
6435
6436 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6437 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6438
6439 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6440
6441 * fringe.c (Vfringe_bitmaps): New variable.
6442 (syms_of_fringe): DEFVAR_LISP it.
6443 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6444 Change arg to Lisp_Object and fail if not an integer.
6445 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6446 (destroy_fringe_bitmap): New functions.
6447 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6448 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6449 clear its fringe property.
6450 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6451 Fdestroy_fringe_bitmap.
6452 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6453 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6454 and set fringe property. Signal error if no free slots.
6455 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6456 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6457
6458 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6459 symbols with a fringe property.
6460
6461 2004-09-27 Kim F. Storm <storm@cua.dk>
6462
6463 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6464 Doc fix. Format may now be a symbol or alist, not a cons.
6465
6466 * fringe.c (update_window_fringes): Handle new formats of
6467 indicate-buffer-boundaries (symbol or alist). No longer
6468 allow a simple cons.
6469 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6470
6471 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6472
6473 * config.in: Rebuild.
6474
6475 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6476
6477 * config.in: Rebuild.
6478
6479 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6480
6481 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6482
6483 * xterm.c (x_term_init): Work around a bug in some X servers.
6484
6485 2004-09-18 Richard M. Stallman <rms@gnu.org>
6486
6487 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6488
6489 * xdisp.c (try_window_reusing_current_matrix):
6490 Handle the case where we reach the old displayed text,
6491 out of sync with the old line boundary.
6492
6493 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6494
6495 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6496 narrowed buffer.
6497
6498 2004-09-14 Kim F. Storm <storm@cua.dk>
6499
6500 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6501
6502 * xfaces.c (Qface_no_inherit): New var.
6503 (syms_of_xfaces): Intern and staticpro it.
6504 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6505 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6506 Don't increment face_change_count when face has non-nil
6507 face-no-inherit property.
6508
6509 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6510
6511 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6512 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6513
6514 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6515 before doing the mark_stack_check_gcpros since they're not on the stack.
6516
6517 2004-09-12 Kim F. Storm <storm@cua.dk>
6518
6519 * editfns.c (Fformat): Handle format strings with multiple text
6520 properties. Reverse text property list from the format string,
6521 so the positions are in increasing order.
6522
6523 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6524
6525 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6526 x_uncatch_errors so that possible protocol errors are delivered.
6527
6528 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6529
6530 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6531 blockinput.h.
6532 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6533 charset.h, and coding.h
6534 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6535 (term.o): Depend on window.h and keymap.h.
6536 (abbrev.o): Depend on syntax.h.
6537 (callint.o): Depend on keymap.h.
6538 (casefiddle.o): Depend on charset.h and keymap.h.
6539 (category.o): Depend on keymap.h.
6540 (coding.o): Depend on dispextern.h.
6541 (cmds.o): Depend on keyboard.h and keymap.h.
6542 (dispnew.o): Depend on indent.h and intervals.h.
6543 (doc.o): Depend on keymap.h.
6544 (editfns.o): Depend on frame.h.
6545 (emacs.o): Depend on dispextern.h.
6546 (fileio.o): Don't depend on ccl.h.
6547 (filelock.o): Depend on charset.h and coding.h.
6548 (frame.o): Depend on w32term.h and macterm.h.
6549 (insdel.o): Depend on region-cache.h.
6550 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6551 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6552 (search.o): Depend on $(INTERVALS_SRC).
6553 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6554 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6555 xterm.h, w32term.h, and macterm.h.
6556 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6557 w32term.h, and macterm.h.
6558 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6559 region-cache.h, xterm.h, w32term.h, and macterm.h.
6560 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6561 (data.o): Depend on frame.h.
6562 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6563 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6564 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6565 (intervals.o): Depend on keymap.h.
6566
6567 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6568 Add debugging print-out to termscript.
6569
6570 2004-09-09 Richard M. Stallman <rms@gnu.org>
6571
6572 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6573
6574 2004-09-08 Richard M. Stallman <rms@gnu.org>
6575
6576 * window.c (Fset_window_buffer): Doc fix.
6577
6578 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6579
6580 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6581
6582 * minibuf.c (history_delete_duplicates): New variable.
6583 (read_minibuf): Use it.
6584 (syms_of_minibuf): Create the corresponding lisp variable.
6585
6586 2004-09-08 Kim F. Storm <storm@cua.dk>
6587
6588 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6589 overlay just before point.
6590
6591 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6592
6593 * buffer.h (struct buffer): Add auto_save_file_format field.
6594 * buffer.c (reset_buffer, init_buffer_once):
6595 Handle auto_save_file_format field.
6596 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6597 `buffer-auto-save-file-format'.
6598 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6599 (build_annotations): Adapt to replacement of
6600 `auto-save-file-format' with the new buffer-local variable
6601 `buffer-auto-save-file-format'.
6602 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6603
6604 2004-09-07 Jason Rumney <jasonr@gnu.org>
6605
6606 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6607
6608 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6609 Handle Unicode menu titles.
6610
6611 2004-09-07 Kim F. Storm <storm@cua.dk>
6612
6613 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6614 property from text property or overlay strings at point.
6615
6616 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6617
6618 * xmenu.c (update_submenu_strings): YAILOM.
6619 (set_frame_menubar): Make sure last_i is initialized.
6620
6621 2004-09-03 Jason Rumney <jasonr@gnu.org>
6622
6623 * w32menu.c (_widget_value): Add lname and lkey.
6624 (digest_single_submenu): Set lname and lkey in widget_value
6625 instead of name and key.
6626 (update_submenu_strings): New function.
6627 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6628 call update_submenu_strings.
6629
6630 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6631 (digest_single_submenu, w32_menu_show): Encode menu strings as
6632 UTF-8 if Unicode API is available.
6633 (utf8to16): New function.
6634 (add_menu_item): Use it when calling Unicode API.
6635
6636 2004-09-03 Kim F. Storm <storm@cua.dk>
6637
6638 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6639 in overlay or text-property strings; set cursor on corresponding
6640 glyph rather than at end of the string.
6641
6642 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6643
6644 * macfns.c (x_real_positions): Save the current window port and
6645 set a new one before obtaining the global coordinate.
6646 Use FRAME_MAC_WINDOW.
6647 (x_set_name, x_set_title): Encode title to UTF8.
6648 Use SetWindowTitleWithCFString.
6649 (Fx_server_version): Get correct OS version.
6650
6651 * macmenu.c (add_menu_item): Remove unused variable `i'.
6652 Don't let separator items destroy refence constants of other menu items.
6653
6654 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6655 BLOCK_INPUT.
6656 (x_set_offset): Use FRAME_MAC_WINDOW.
6657
6658 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6659 nontext_cursor if it is on a scroll bar.
6660
6661 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6662 Carbon support.
6663 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6664 Use LIBS_CARBON.
6665
6666 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6667
6668 * xfns.c (x_set_name_internal): New function. Check if we shall call
6669 xfree before ENCODE_UTF_8.
6670 (x_set_name, x_set_title): Call x_set_name_internal.
6671
6672 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6673
6674 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6675 reload it.
6676
6677 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6678
6679 * macmenu.c (_widget_value): Add lname and lkey.
6680 (single_submenu): Set lname and lkey in widget_value
6681 instead of name and key.
6682 (update_submenu_strings): New function.
6683 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6684 call update_submenu_strings.
6685
6686 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6687 instead of name and key.
6688 (update_submenu_strings): New function.
6689 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6690 call update_submenu_strings.
6691
6692 * gtkutil.h (_widget_value): Added lname and lkey.
6693
6694 2004-08-30 Steven Tamm <steventamm@mac.com>
6695
6696 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6697 by using different names for inner loop variables.
6698
6699 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6700
6701 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6702 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6703
6704 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6705 tool bar items is 0.
6706
6707 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6708
6709 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6710 strings in menu items.
6711 (single_submenu): Use ENCODE_MENU_STRING
6712 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6713 button release isn't passed to event loop
6714 (add_menu_item): Use SetMenuItemWithCFString
6715
6716 2004-08-26 Steven Tamm <steventamm@mac.com>
6717
6718 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6719 tool-bar/menu click.
6720 * macfns.c (Fx_file_dialog): Implement using NavServices.
6721
6722 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6723
6724 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6725
6726 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6727 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6728 (x_top_window_to_frame): Return 0 if wdesc is None.
6729
6730 2004-08-22 Richard M. Stallman <rms@gnu.org>
6731
6732 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6733 HAVE_TERMIOS]: If there's no char for this signal, drop through
6734 and use system calls.
6735
6736 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6737
6738 2004-08-20 Kim F. Storm <storm@cua.dk>
6739
6740 * process.c (wait_reading_process_output): Rename from
6741 wait_reading_process_input. All uses changed.
6742 (wait_reading_process_output_1): Rename from
6743 wait_reading_process_input_1. All uses changed.
6744
6745 * dispnew.c (Fsleep_for): Remove obsolete code.
6746
6747 2004-08-20 Kenichi Handa <handa@m17n.org>
6748
6749 * syntax.c (skip_chars): Fix for unibyte case.
6750
6751 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6752
6753 * syntax.c (char_quoted): Mixup byte/char pos.
6754 (back_comment): Fixup globals in all cases.
6755
6756 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6757
6758 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6759 passing it to gtk_window_set_title.
6760
6761 2004-08-19 Kim F. Storm <storm@cua.dk>
6762
6763 * process.c (wait_reading_process_input): Clean up.
6764 Add wait_for_cell, wait_proc, and just_wait_proc args
6765 to avoid overloading `read_kbd' and `do_display' args.
6766 Change read_kbd arg to int. All callers changed.
6767
6768 * process.c (process_send_signal): Use CDISABLE.
6769
6770 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6771
6772 2004-08-18 Kim F. Storm <storm@cua.dk>
6773
6774 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6775 forward to wait_reading_process_input via DO_DISPLAY arg.
6776 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6777 object, only process output from that process; also inhibit
6778 running timers if DO_DISPLAY==-2.
6779
6780 2004-08-17 Kim F. Storm <storm@cua.dk>
6781
6782 * process.c (process_send_signal): Fix last change--use
6783 _POSIX_VDISABLE instead of CVDISABLE when available.
6784
6785 2004-08-16 Richard M. Stallman <rms@gnu.org>
6786
6787 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6788 Set VQUIT and VINTR chars to the standard ones if they are unset.
6789 [AIX]: Don't do that here. And don't force VINTR to standard
6790 when SIGNALS_VIA_CHARACTERS.
6791
6792 * process.c (process_send_signal)
6793 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6794 Do nothing if the character is CVDISABLE.
6795
6796 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6797
6798 * intervals.c (move_if_not_intangible):
6799 Force POSITION to be between BEGV and ZV.
6800
6801 2004-08-14 John Paul Wallington <jpw@gnu.org>
6802
6803 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6804
6805 * fileio.c (Fread_file_name): Doc fix.
6806
6807 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6808
6809 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6810
6811 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6812
6813 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6814
6815 * keyboard.c: Declare Qdisabled_command_function instead of
6816 Qdisabled_command_hook.
6817 (Fcommand_execute): Use Qdisabled_command_function instead of
6818 Qdisabled_command_hook.
6819 (syms_of_keyboard): Ditto.
6820
6821 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6822
6823 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6824 (syms_of_keymap) <key-translation-map>: Doc fixes.
6825
6826 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6827
6828 * window.c (window_list_1): YAILOM.
6829
6830 * fileio.c (make_temp_name): Handle multibyte prefixes.
6831
6832 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6833
6834 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6835 Doc fix.
6836
6837 2004-08-03 Kenichi Handa <handa@m17n.org>
6838
6839 * coding.c (decode_coding_string): Adjust coding->consumed, and
6840 etc. with shrinked_bytes.
6841
6842 2004-08-03 Kim F. Storm <storm@cua.dk>
6843
6844 * indent.c (compute_motion): Fix check for full width window
6845 in non-window case. Do not count left truncation glyph on
6846 window systems.
6847
6848 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6849
6850 * data.c (Finteractive_form): Doc fix.
6851
6852 2004-08-02 Kim F. Storm <storm@cua.dk>
6853
6854 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6855 properly accounting for continuation glyph on non-window systems.
6856 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6857 actual window width/height if TOPOS is nil, properly accounting for
6858 continuation glyphs on non-window systems, and optional header lines.
6859 (vmotion): Let compute_motion calculate actual window width.
6860
6861 * window.c (window_scroll_line_based): Let compute_motion
6862 calculate actual window width.
6863
6864 2004-08-02 Kim F. Storm <storm@cua.dk>
6865
6866 * process.c (read_process_output): Use whole read buffer.
6867 Don't trigger adaptive read buffering on errors.
6868
6869 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6870
6871 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6872
6873 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6874
6875 * callint.c (Fcall_interactively): Doc fix.
6876
6877 2004-07-30 Richard M. Stallman <rms@gnu.org>
6878
6879 * abbrev.c (Fexpand_abbrev): Undo previous change.
6880
6881 2004-07-30 Kim F. Storm <storm@cua.dk>
6882
6883 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6884
6885 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6886
6887 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6888
6889 2004-07-27 Kim F. Storm <storm@cua.dk>
6890
6891 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6892 we have ensured that the glyph fits on the current line (or returned
6893 MOVE_LINE_CONTINUED otherwise).
6894
6895 2004-07-26 Kim F. Storm <storm@cua.dk>
6896
6897 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6898 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6899 if target position is at end of display line but char is not a newline.
6900
6901 2004-07-25 Richard M. Stallman <rms@gnu.org>
6902
6903 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6904 instead of ON_VERTICAL_BORDER, when on scroll bar.
6905 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6906
6907 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6908
6909 * window.c (Fcoordinates_in_window_p):
6910 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6911
6912 * alloc.c (check_cons_list): New function (contents commented out).
6913
6914 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6915
6916 * xfaces.c (Fcolor_supported_p): Doc fix.
6917
6918 * frame.c (Fselect_frame, Fset_frame_selected_window)
6919 (Fframe_visible_p, Fraise_frame): Doc fixes.
6920
6921 2004-07-24 Richard M. Stallman <rms@gnu.org>
6922
6923 * keyboard.h (not_single_kboard_state): Declare.
6924
6925 * fileio.c (Fwrite_region): Doc fix.
6926
6927 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6928
6929 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6930 only when a real abbrev is present.
6931
6932 * xfns.c (x_icon_verify): New function.
6933 (Fx_create_frame): Use it.
6934
6935 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6936
6937 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6938
6939 2004-07-21 Kim F. Storm <storm@cua.dk>
6940
6941 * window.h (struct glyph_matrix): New members nrows_scale_factor
6942 and ncols_scale_factor.
6943
6944 * window.c (make_window): Initialize nrows_scale_factor and
6945 ncols_scale_factor members.
6946
6947 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6948 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6949 (required_matrix_height): Apply nrows_scale_factor.
6950 (required_matrix_width): Apply ncols_scale_factor.
6951
6952 * xdisp.c (display_line): Increment nrows_scale_factor and set
6953 fonts_changed_p if past last allocated row.
6954 (append_glyph, append_composite_glyph, produce_image_glyph)
6955 (append_stretch_glyph): Increment ncols_scale_factor and set
6956 fonts_changed_p if current area is full.
6957
6958 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6959
6960 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6961
6962 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6963
6964 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6965 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6966 (Fset_window_start, Fscroll_up, Fscroll_down)
6967 (Fother_window_for_scrolling, Fscroll_other_window)
6968 (Fsave_window_excursion, Fset_window_vscroll)
6969 (syms_of_window) <window-size-fixed>: Doc fixes.
6970
6971 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6972
6973 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6974 ENCODE_SYSTEM for filenames.
6975
6976 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6977
6978 * mac.c (sys_select): Block input around call to
6979 ReceiveNextEvent to prevent breakage. Correctly handle
6980 blocking on event queue only by calling ReceiveNextEvent
6981 instead of select (since GUI events aren't on an fd).
6982 (sys_read): Remove function
6983 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6984
6985 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6986
6987 * mac.c (sys_select): Redo sys_select to use alarm-based
6988 polling instead of 1 sec timeouts (like solaris).
6989
6990 * macterm.c (x_make_frame_visible): Comment in polling on
6991 frame creation.
6992
6993 * keyboard.c: Undef SIGIO on Carbon
6994
6995 * atimer.c (alarm_signal_handler): Call alarm handlers after
6996 scheduling.
6997
6998 * eval.c (Feval): Remove quit_char test
6999
7000 * process.c (wait_reading_process_input): Remove clearing
7001 stdin for select call on process input.
7002
7003 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7004
7005 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7006 capitalization error in docstring.
7007
7008 2004-07-17 Juanma Barranquero <lektu@terra.es>
7009
7010 * keyboard.c (not_single_kboard_state): Do nothing unless
7011 MULTI_KBOARD is defined.
7012
7013 2004-07-17 Richard M. Stallman <rms@gnu.org>
7014
7015 * window.c (coordinates_in_window): Inside the window but outside
7016 its box to the L or R, return ON_VERTICAL_BORDER.
7017 (window_list_1): Rotate the list to start with WINDOW.
7018
7019 * print.c (print_preprocess): Test for print_depth at limit
7020 before entering in being_printed.
7021
7022 * keyboard.c (not_single_kboard_state): New function.
7023 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7024
7025 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7026 this kboard, and we delete its last frame, go to any_kboard_state.
7027
7028 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7029
7030 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7031
7032 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7033 system before passing them to OS functions for display.
7034
7035 2004-07-15 David Kastrup <dak@gnu.org>
7036
7037 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7038 Apparently fixes an abort condition.
7039
7040 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7041
7042 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7043 instead of a cons.
7044
7045 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7046
7047 * keyboard.c (echo_dash): Do nothing if there already is a dash
7048 at the end of the echo string.
7049
7050 2004-07-12 Kim F. Storm <storm@cua.dk>
7051
7052 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7053 if GC_MARK_STACK.
7054
7055 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7056
7057 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7058
7059 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7060 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7061 (Freplace_buffer_in_windows, Fset_window_buffer)
7062 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7063 (syms_of_window): Expand docstring of `display-buffer-function'.
7064
7065 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7066
7067 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7068 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7069 that time values of the type (HIGH . LOW) are considered obsolete.
7070
7071 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7072
7073 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7074 docstring.
7075
7076 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7077
7078 2004-07-06 John Paul Wallington <jpw@gnu.org>
7079
7080 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7081
7082 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7083
7084 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7085
7086 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7087 instead of CGMainDisplayID (only in OSX 10.2 and later).
7088
7089 2004-07-04 John Paul Wallington <jpw@gnu.org>
7090
7091 * fileio.c (read_file_name_completion_ignore_case): New variable.
7092 (syms_of_fileio): Declare and initialise it.
7093 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7094
7095 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7096
7097 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7098 for event.x and event.y.
7099
7100 2004-07-01 Kenichi Handa <handa@m17n.org>
7101
7102 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7103 after getting a new string by pre-write-conversion.
7104
7105 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7106
7107 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7108 (x_calc_absolute_position): Remove unused var `child'.
7109
7110 * xfaces.c (x_supports_face_attributes_p)
7111 (Fdisplay_supports_face_attributes_p): YAILOM.
7112 (tty_supports_face_attributes_p): Remove unused var `i'.
7113
7114 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7115 back_unibyte_ok.
7116
7117 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7118
7119 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7120
7121 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7122
7123 2004-06-30 Andreas Schwab <schwab@suse.de>
7124
7125 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7126 (Finit_image_library): Pass LIBRARIES through to
7127 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7128 (lookup_image_type): Pass Qnil as second argument to
7129 Finit_image_library.
7130
7131 * lisp.h (Finit_image_library): Declare.
7132
7133 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7134
7135 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7136 (XTread_socket): Send mouse button events to the toolbox
7137 dispatcher even when the mouse is grabbed. Don't process window
7138 activate events for non-Emacs windows. Replace function calls to
7139 do_window_activate and do_window_deactivate with their contents.
7140 Reset mouse grabbing status when a window is deactivated.
7141
7142 2004-06-29 Steven Tamm <steventamm@mac.com>
7143
7144 * macterm.c (mac_get_emulated_btn)
7145 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7146 support to correctly mask out modifiers.
7147
7148 2004-06-29 David Kastrup <dak@gnu.org>
7149
7150 * search.c (Fset_match_data): Allow buffer before end of list
7151 which can happen if set-match-data is using a pre-consed list.
7152
7153 2004-06-28 Steven Tamm <steventamm@mac.com>
7154
7155 * macterm.c (XTread_socket): Correctly set the frame position
7156 after the window is moved.
7157
7158 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7159
7160 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7161 gpix and gmask just before return to avoid memory leak.
7162 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7163 so insensitive and activated icons look ok.
7164
7165 2004-06-27 Jason Rumney <jasonr@gnu.org>
7166
7167 * w32fns.c (file_dialog_callback): Disable edit control if set
7168 to directories only on CDN_INITDONE message.
7169 (Fx_file_dialog): Default to directories only when prompt starts
7170 with "Dired".
7171
7172 2004-06-25 Kim F. Storm <storm@cua.dk>
7173
7174 * alloc.c (allocate_misc): Update total_free_markers.
7175 (free_misc): New function.
7176 (safe_alloca_unwind, free_marker): Use it.
7177
7178 * lisp.h (free_misc): Add prototype.
7179
7180 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7181
7182 2004-06-24 Richard M. Stallman <rms@gnu.org>
7183
7184 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7185 (syms_of_emacs): Lisp variables deleted.
7186
7187 2004-06-23 David Kastrup <dak@gnu.org>
7188
7189 * search.c (Freplace_match): Adjust the match-data more thoroughly
7190 when replacing strings in the buffer.
7191 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7192 a buffer, add the buffer as last element to the match data.
7193 (Fset_match_data): If an additional element of the match-data is a
7194 buffer, restore it to last_thing_searched.
7195 (save_search_regs): Save last_thing_searched as part of the match data.
7196 (restore_match_data): Restore it again.
7197
7198 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7199
7200 * keymap.c (Ftext_char_description): Doc fix.
7201 * doc.c (Fsnarf_documentation): Doc fix.
7202
7203 2004-06-22 Kim F. Storm <storm@cua.dk>
7204
7205 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7206
7207 * lisp.h (struct Lisp_Save_Value): New member dogc.
7208 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7209 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7210 (SAFE_FREE_LISP): New macro.
7211
7212 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7213 (make_save_value): Init new dogc member.
7214 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7215
7216 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7217 SAFE_FREE_LISP macros.
7218
7219 2004-06-22 Kim F. Storm <storm@cua.dk>
7220
7221 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7222 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7223 in that memory area are unknown to GC. Add comments.
7224
7225 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7226
7227 2004-06-21 Kim F. Storm <storm@cua.dk>
7228
7229 * lisp.h (MAX_ALLOCA): Define here.
7230 (safe_alloca_unwind): Add prototype.
7231 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7232
7233 * alloc.c (safe_alloca_unwind): New function.
7234
7235 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7236
7237 * charset.c (Fstring): Use SAFE_ALLOCA.
7238
7239 * coding.c (MAX_ALLOCA): Remove define.
7240
7241 * data.c (MAX_ALLOCA): Remove define.
7242 (Faset): Use SAFE_ALLOCA.
7243
7244 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7245
7246 * fns.c (string_make_multibyte, string_to_multibyte)
7247 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7248 (MAX_ALLOCA): Remove define.
7249 (Fbase64_encode_region, Fbase64_encode_string)
7250 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7251 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7252 memory leak if encoding fails.
7253
7254 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7255
7256 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7257
7258 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7259
7260 2004-06-20 Richard M. Stallman <rms@gnu.org>
7261
7262 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7263
7264 * search.c (match_limit): Cleaner err msg when no match data available.
7265
7266 * window.c (syms_of_window): Doc fix.
7267
7268 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7269 for Vtransient_mark_mode.
7270
7271 * buffer.c (syms_of_buffer): Doc fix.
7272
7273 2004-06-21 David Kastrup <dak@gnu.org>
7274
7275 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7276 and unbinding of `case-fold-search' according to
7277 `completion-ignore-case' around calls of string-match and
7278 predicates, respectively. Should give satisfactory performance
7279 in all relevant cases.
7280
7281 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7282
7283 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7284 clip_x/y_origin.
7285
7286 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7287
7288 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7289
7290 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7291 on Mac OSX.
7292
7293 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7294
7295 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7296
7297 2004-06-16 Kim F. Storm <storm@cua.dk>
7298
7299 * dispextern.h (Vimage_types): Remove extern.
7300
7301 2004-06-16 Miles Bader <miles@gnu.org>
7302
7303 * image.c (lookup_image_type): Initialize image type if necessary.
7304
7305 2004-06-15 Kim F. Storm <storm@cua.dk>
7306
7307 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7308 margin at top of window.
7309 (try_window_reusing_current_matrix): Calculate proper cursor position
7310 after scrolling up with non-zero scroll margin, as the old cursor
7311 position corresponds to value of PT before executing this command.
7312 (try_window_id): Consider scroll margin at bottom of window too;
7313 otherwise we fail to scroll when hl-line-mode is enabled.
7314
7315 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7316 proper format and class is a lower-case word.
7317
7318 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7319
7320 * gtkutil.c (xg_get_image_for_pixmap): New function.
7321 (xg_get_gdk_pixmap_and_mask): Remove.
7322 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7323 xg_get_gdk_pixmap_and_mask.
7324
7325 * xterm.h (struct x_display_info): Typo in comment fixed.
7326
7327 2004-06-14 Juanma Barranquero <lektu@terra.es>
7328
7329 * dispextern.h (Vimage_types): Make it conditional on
7330 HAVE_WINDOW_SYSTEM.
7331
7332 * image.c (Vimage_types): Move from xdisp.c.
7333 (Vimage_type_cache): New variable.
7334 (define_image_type): New argument indicating whether an image
7335 library was loaded; cache loaded status and return t on success,
7336 nil otherwise.
7337 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7338 (w32_delayed_load): New function to load an image library from a
7339 list of possible filenames.
7340 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7341 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7342 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7343 (Finit_image_library): New function, extracted from `init_image'.
7344 Try to initialize an image library on demand and cache whether we
7345 were successful or not.
7346 (syms_of_image): Initialize `Vimage_types' and
7347 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7348 Export `init-image-library'.
7349 (init_image): Remove initialization of all image types, except xbm
7350 and pbm.
7351
7352 * xdisp.c (Vimage_types): Delete (moved to image.c).
7353
7354 2004-06-14 Andreas Schwab <schwab@suse.de>
7355
7356 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7357 Avoid calling specbind when completion-regexp-list is empty.
7358
7359 2004-06-13 Richard M. Stallman <rms@gnu.org>
7360
7361 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7362 (re_wctype, re_iswctype, re_wctype_to_bit):
7363 Non-function definitions moved here from regex.c.
7364
7365 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7366 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7367 (re_wctype, re_iswctype, re_wctype_to_bit):
7368 Non-function definitions moved to regex.h.
7369
7370 * window.c (Fselect_window): Doc fix.
7371
7372 * syntax.c: Include regex.h.
7373 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7374 If requested, make a list of classes, then check the scanned
7375 chars for membership in them.
7376 (in_classes): New function.
7377 Doc fix.
7378
7379 * keyboard.c (cmd_error): Don't call any_kboard_state
7380 if inside a recursive edit level.
7381
7382 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7383
7384 * keyboard.c (command_loop): Call any_kboard_state before
7385 command_loop_2 when at top level.
7386
7387 2004-06-13 Andreas Schwab <schwab@suse.de>
7388
7389 * print.c (print_object): Always use %ld for printing EMACS_INT.
7390
7391 * keyboard.c (cancel_hourglass_unwind): Return a value.
7392 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7393 (Fexecute_extended_command): Likewise.
7394
7395 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7396 avoid clashes.
7397 (SYNTAX): Likewise.
7398 (SYNTAX_WITH_FLAGS): Likewise.
7399 (SYNTAX_MATCH): Likewise.
7400
7401 * syntax.c (char_quoted): Avoid warning about undefined operation.
7402 (find_defun_start): Likewise.
7403 (scan_lists): Likewise.
7404 (INC_FROM): Likewise.
7405 (scan_sexps_forward): Likewise.
7406
7407 * image.c: Include <ctype.h>.
7408
7409 * xfaces.c (face_attr_equal_p): Declare parameters.
7410
7411 2004-06-13 Kenichi Handa <handa@m17n.org>
7412
7413 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7414
7415 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7416
7417 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7418
7419 2004-06-12 Kenichi Handa <handa@m17n.org>
7420
7421 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7422 ccl_prog_stack_struct and update it.
7423 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7424 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7425 ccl->eof_ic on EOF.
7426 (ccl_debug_hook): New function.
7427 (struct ccl_prog_stack): New member eof_ic.
7428 (ccl_driver): Handle EOF in subrountine call correctly.
7429
7430 2004-06-11 Kenichi Handa <handa@m17n.org>
7431
7432 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7433
7434 2004-06-11 Kim F. Storm <storm@cua.dk>
7435
7436 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7437
7438 2004-06-11 Juanma Barranquero <lektu@terra.es>
7439
7440 * keyboard.c (Fposn_at_point): Doc fix.
7441
7442 2004-06-11 David Kastrup <dak@gnu.org>
7443
7444 * search.c (match_limit): Don't flag an error if match-data
7445 exceeding the allocated search_regs.num_regs gets requested, just
7446 return Qnil.
7447
7448 2004-06-08 Miles Bader <miles@gnu.org>
7449
7450 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7451
7452 2004-06-07 Juanma Barranquero <lektu@terra.es>
7453
7454 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7455 (Fcurrent_time_string, Fcurrent_time_zone)
7456 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7457
7458 2004-06-07 Miles Bader <miles@gnu.org>
7459
7460 * xfaces.c (struct named_merge_point): New type.
7461 (push_named_merge_point): New function.
7462 (merge_named_face): New function.
7463 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7464 Use `merge_named_face'.
7465 (merge_face_inheritance): Function removed.
7466 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7467 Add new `err_msgs' and `named_merge_points' args. Return error
7468 status. Only print error messages if ERR_MSGS is true. Don't try to
7469 do :inherit attribute validation.
7470 (merge_face_heights): Handle `unspecified' in both directions.
7471 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7472 Call `merge_face_ref' instead of `merge_face_inheritance'.
7473 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7474 (compute_char_face, face_at_buffer_position)
7475 (face_at_string_position): Call `merge_face_ref' instead of
7476 `merge_face_vector_with_property'.
7477
7478 2004-06-07 Kenichi Handa <handa@m17n.org>
7479
7480 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7481 the necessary places.
7482
7483 2004-06-07 Kim F. Storm <storm@cua.dk>
7484
7485 * process.c (Fdelete_process): Undo 2004-05-28 change.
7486 Instead, call status_notify also for network process.
7487 (status_message): Use process instead of status as arg.
7488 Give messages "deleted" or "connection broken by remote peer" for
7489 an exited network process.
7490 (status_notify): Change call to status_message.
7491 (read_process_output): Increase readmax to 4096. Do not increase
7492 buffer size for datagram channels (default is now large enough).
7493
7494 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7495
7496 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7497 problem due to newly defined variable.
7498
7499 2004-06-06 Miles Bader <miles@gnu.org>
7500
7501 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7502 immediately if non-interactive or not initialized.
7503
7504 2004-06-05 Richard M. Stallman <rms@gnu.org>
7505
7506 * minibuf.c (Fcompleting_read): Doc fix.
7507
7508 2004-06-05 Andreas Schwab <schwab@suse.de>
7509
7510 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7511
7512 2004-06-05 Juanma Barranquero <lektu@terra.es>
7513
7514 * keymap.c (Fdescribe_vector): Fix docstring.
7515 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7516
7517 2004-06-05 Miles Bader <miles@gnu.org>
7518
7519 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7520 attributes have different values than the default face.
7521
7522 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7523
7524 * xfaces.c (x_supports_face_attributes_p): Make this function
7525 conditional on HAVE_WINDOW_SYSTEM.
7526 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7527 Don't call x_supports_face_attributes_p if it was not compiled in.
7528
7529 2004-06-04 Miles Bader <miles@gnu.org>
7530
7531 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7532 from Ftty_supports_face_attributes_p.
7533 (x_supports_face_attributes_p): New function.
7534 (Ftty_supports_face_attributes_p): Function deleted.
7535 (Fdisplay_supports_face_attributes_p): New function.
7536 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7537 (face_attr_equal_p): New function.
7538 (lface_equal_p): Use it.
7539
7540 2004-06-03 Juanma Barranquero <lektu@terra.es>
7541
7542 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7543 (Vw32_color_map): Fix typo in docstring.
7544 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7545 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7546 Make argument names match their use in docstring.
7547
7548 2004-06-02 Juanma Barranquero <lektu@terra.es>
7549
7550 Work around bugs/problems with MinGW builds of graphics libraries
7551 called from MSVC builds of Emacs.
7552
7553 * image.c (lookup_image): Make pointer to img static.
7554 (png_read_from_memory): Disable "global" optimization.
7555
7556 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7557
7558 * eval.c (Fcondition_case): Fix usage. Simplify.
7559
7560 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7561
7562 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7563
7564 * macfns.c: Don't include ccl.h.
7565 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7566 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7567 TextUtils.h.
7568 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7569 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7570 display height/width.
7571 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7572 (unwind_create_tip_frame, compute_tip_xy): New functions.
7573 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7574 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7575 and last_show_tip_args.
7576
7577 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7578 (Cursor, No_Cursor): New defines.
7579 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7580 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7581
7582 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7583
7584 * macterm.c: Don't include Gestalt.h.
7585 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7586 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7587 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7588 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7589 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7590 (construct_mouse_click, XTmouse_position)
7591 (x_scroll_bar_report_motion, x_calc_absolute_position)
7592 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7593 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7594 (note_mouse_movement): Clear the mouse face and reset the pointer
7595 shape when the pointer goes outside the frame without grabbing.
7596 (mac_front_window): New function.
7597 (mac_window_to_frame): New macro.
7598 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7599 (do_window_activate, do_window_deactivate, do_app_resume)
7600 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7601 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7602 (mac_check_for_quit_char): Use mac_front_window and/or
7603 mac_window_to_frame.
7604 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7605 scroll-bar click event.
7606 (mac_define_frame_cursor): Change the pointer shape.
7607 (x_free_frame_resources): Reset tip_window to NULL when it is
7608 disposed of.
7609 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7610 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7611 (do_window_update): Don't do anything if the updated window is the
7612 tooltip window.
7613 (do_mouse_moved): Handle mouse movement events here (previously in
7614 XTread_socket). Clear the mouse face if
7615 dpyinfo->mouse_face_hidden is set.
7616 (do_os_event, do_events): Remove (now in XTread_socket).
7617 (XTread_socket): Immediately return if interrupt_input_blocked.
7618 Loop until all the events in the queue are processed.
7619 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7620 contents of do_os_event and do_events. Remove mouse movement
7621 handling (now in do_mouse_moved). Add the case where
7622 Vmouse_highlight has an integer value.
7623 (NewMacWindow): Remove.
7624 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7625 excess initializations.
7626 (make_mac_terminal_frame): Previous initializations in
7627 make_mac_frame are moved here.
7628 (mac_initialize_display_info):
7629 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7630
7631 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7632 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7633
7634 2004-05-29 Richard M. Stallman <rms@gnu.org>
7635
7636 * lisp.h (truncate_undo_list): Update decl.
7637
7638 * alloc.c (undo_outer_limit): New variable.
7639 (syms_of_alloc): Defvar it.
7640 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7641
7642 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7643
7644 * alloc.c (lisp_align_malloc): Check for base == 0
7645 regardless of HAVE_POSIX_MEMALIGN.
7646 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7647
7648 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7649
7650 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7651 (marker_blocks_pending_free): Remove.
7652 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7653 Mark the undo lists after claning them up.
7654 Don't free block in marker_blocks_pending_free.
7655 (mark_buffer): Don't mark undo_list.
7656 (gc_sweep): Sweep hash-tables and strings first.
7657 Do free marker blocks that are empty.
7658
7659 2004-05-28 Jim Blandy <jimb@redhat.com>
7660
7661 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7662 after 'case wordend'. For symbeg and symend, print to stderr,
7663 like the other cases.
7664
7665 2004-05-28 Noah Friedman <friedman@splode.com>
7666
7667 * process.c (Fdelete_process): Do not call remove_process.
7668
7669 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7670
7671 * alloc.c (struct backtrace): Remove.
7672 (Fgarbage_collect): Use the new mark_backtrace.
7673
7674 * eval.c (mark_backtrace): New function.
7675
7676 * minibuf.c (run_exit_minibuf_hook): New function.
7677 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7678 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7679
7680 2004-05-27 Kim F. Storm <storm@cua.dk>
7681
7682 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7683 over display properties, e.g. images, that replace buffer text.
7684
7685 2004-05-25 Kim F. Storm <storm@cua.dk>
7686
7687 * alloc.c (marker_blocks_pending_free): New var.
7688 (gc_sweep): Store free marker blocks on that list.
7689 (Fgarbage_collect): Free them after undo-list cleanup.
7690
7691 * process.c (wait_reading_process_input): Check connect_wait_mask
7692 before actually accepting connection in case it has already been
7693 accepted due to recursion.
7694
7695 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7696
7697 * coding.c (Fset_safe_terminal_coding_system_internal):
7698 Set suppress_error in safe_terminal_coding, not terminal_coding.
7699
7700 2004-05-22 Richard M. Stallman <rms@gnu.org>
7701
7702 * alloc.c (Fmake_string): Doc fix.
7703
7704 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7705 and the alist pairs too.
7706
7707 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7708
7709 * emacs.c (main): Update copyright year.
7710
7711 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7712
7713 * insdel.c (del_range_2, replace_range): Don't write an anchor
7714 if the gap is empty.
7715
7716 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7717 scroll-down-aggressively is small but positive, put point
7718 near the screen edge.
7719
7720 2004-05-22 Juanma Barranquero <lektu@terra.es>
7721
7722 * keymap.c (Fdefine_key): Doc fix.
7723
7724 2004-05-22 Kim F. Storm <storm@cua.dk>
7725
7726 * alloc.c (struct backtrace): Add debug_on_exit member.
7727 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7728 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7729 the removed cons cells.
7730 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7731 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7732 any cons cells pointing to unallocated stings.
7733 Do not lisp_free any marker blocks, as there may still be pointers
7734 to them from buffer undo lists at this stage of GC.
7735
7736 * keyboard.c (struct backtrace): Add debug_on_exit member.
7737 (Fcommand_execute): Clear it.
7738
7739 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7740
7741 * intervals.c (lookup_char_property): Do not prematurely return nil.
7742
7743 2004-05-19 Jim Blandy <jimb@redhat.com>
7744
7745 Add support for new '\_<' and '\_>' regexp operators, matching the
7746 beginning and end of symbols.
7747
7748 * regex.c (enum syntaxcode): Add Ssymbol.
7749 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7750 (re_opcode_t): New opcodes `symbeg' and `symend'.
7751 (print_partial_compiled_pattern): Print the new opcodes properly.
7752 (regex_compile): Parse the new operators.
7753 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7754 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7755 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7756 (re_match_2_internal): Match symbeg and symend.
7757
7758 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7759
7760 2004-05-19 Kim F. Storm <storm@cua.dk>
7761
7762 * .gdbinit (xsymbol): Fix last change.
7763
7764 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7765
7766 * .gdbinit (xprintstr): New fun.
7767 (xstring, xprintsym): Use it.
7768
7769 * w32proc.c (create_child): Use INTMASK.
7770
7771 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7772 unmarked elements of the undo list.
7773
7774 2004-05-18 David Ponce <david@dponce.com>
7775
7776 * print.c (print): Reset print_depth before to call print_object.
7777
7778 2004-05-18 Jason Rumney <jasonr@gnu.org>
7779
7780 * w32console.c: Prefix RIF functions with w32con_ to avoid
7781 namespace clash with functions in term.c and w32term.c.
7782
7783 * w32menu.c (add_menu_item, w32_menu_display_help)
7784 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7785
7786 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7787
7788 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7789
7790 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7791
7792 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7793 with make_number.
7794 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7795 with XINT.
7796
7797 2004-05-18 Kim F. Storm <storm@cua.dk>
7798
7799 * blockinput.h (INPUT_BLOCKED_P): New macros.
7800
7801 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7802 (Ftop_level): Unblock input if blocked.
7803
7804 * buffer.h (GET_OVERLAYS_AT): New macro.
7805 * msdos.c (IT_note_mouse_highlight): Use it.
7806 * textprop.c (get_char_property_and_overlay): Use it.
7807 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7808 * xfaces.c (face_at_buffer_position): Use it.
7809
7810 * print.c (print_object): Increase buf size.
7811
7812 2004-05-17 Jason Rumney <jasonr@gnu.org>
7813
7814 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7815 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7816 Lisp_Object using i member.
7817 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7818 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7819 consistently.
7820
7821 * w32proc.c (create_child): Use make_number instead of masking pid.
7822
7823 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7824 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7825 Use EQ to compare Lisp_Objects.
7826 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7827
7828 * w32term.c (w32_num_mouse_buttons): Rename from
7829 Vw32_num_mouse_buttons and make it an int.
7830
7831 * w32.c (init_environment): Use it.
7832
7833 * w32fns.c (w32_wnd_proc): Likewise.
7834
7835 * w32proc.c (w32_pipe_read_delay): Rename from
7836 Vw32_pipe_read_delay and make it an int.
7837
7838 * w32.c (_sys_read_ahead): Use it.
7839
7840 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7841
7842 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7843
7844 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7845 (key_event): Don't mix Lisp_Object and int.
7846
7847 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7848
7849 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7850 modifiers in language change event.
7851
7852 2004-05-17 Kim F. Storm <storm@cua.dk>
7853
7854 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7855 Such objects may be freed markers which still exist on an undo list.
7856
7857 2004-05-16 Juanma Barranquero <lektu@terra.es>
7858
7859 * data.c (Fset_default): Make argument names match their use in
7860 docstring.
7861
7862 2004-05-15 Andreas Schwab <schwab@suse.de>
7863
7864 * emacs.c (gdb_array_mark_flag): Define.
7865 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7866
7867 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7868
7869 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7870 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7871 defined for the MS-DOS build.
7872
7873 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7874
7875 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7876
7877 2004-05-14 Kenichi Handa <handa@m17n.org>
7878
7879 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7880
7881 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7882
7883 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7884 section to frame.c section.
7885 (Fxw_display_color_p, Fx_file_dialog): Declare if
7886 HAVE_WINDOW_SYSTEM defined.
7887
7888 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7889
7890 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7891
7892 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7893 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7894 (XTread_socket): Fix int/Lisp_Object mixup.
7895 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7896
7897 * macterm.h (struct frame, struct face, struct image)
7898 (display_x_get_resource, Fx_display_color_p)
7899 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7900 Add prototypes.
7901
7902 2004-05-14 Kim F. Storm <storm@cua.dk>
7903
7904 * process.c (wait_reading_process_input): Make reentrant.
7905 Make Available and Connecting non-static. Save and restore value
7906 of waiting_for_user_input_p.
7907
7908 2004-05-13 Kim F. Storm <storm@cua.dk>
7909
7910 * keyboard.c (mark_kboards): Don't mark x and y members
7911 that are overloaded in selection request events.
7912
7913 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7914
7915 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7916
7917 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7918
7919 * window.c (Fdisplay_buffer, Fsplit_window)
7920 (split-height-threshold): Doc fix.
7921
7922 2004-05-13 Juanma Barranquero <lektu@terra.es>
7923
7924 * xfaces.c (Ftty_supports_face_attributes_p)
7925 (Finternal_copy_lisp_face): Fix typo in docstring.
7926 (Finternal_get_lisp_face_attribute): Fix docstring.
7927
7928 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7929
7930 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7931
7932 2004-05-11 Steven Tamm <steventamm@mac.com>
7933
7934 * macfns.c (Fx_create_frame): Default to using tool-bar by
7935 setting tool-bar-lines to 1 in default-frame-alist.
7936
7937 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7938
7939 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7940 (xpm_get_color_table_v, xpm_make_color_table_h)
7941 (xpm_put_color_table_h, xpm_get_color_table_h)
7942 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7943 (syms_of_image): Support XPM on Carbon Emacs. Does not
7944 depend on libXpm, but only supports XPM version 3 without extensions.
7945
7946 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7947
7948 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7949 instead of FRAME_X_P
7950
7951 2004-05-11 Kim F. Storm <storm@cua.dk>
7952
7953 * process.c (read_process_output): Grow decoding_buf when needed;
7954 this could cause a crash in allocate_string and compact_small_strings.
7955
7956 2004-04-29 Jim Blandy <jimb@redhat.com>
7957
7958 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7959 against proper opcode.
7960
7961 2004-05-10 Juanma Barranquero <lektu@terra.es>
7962
7963 * process.c (Fstart_process): Fix docstring.
7964
7965 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7966 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7967 (Fsplit_char, Fchar_charset): Make argument names match their use
7968 in docstring.
7969
7970 2004-05-10 Richard M. Stallman <rms@gnu.org>
7971
7972 * print.c (print_preprocess): Use being_printed, loop_count and
7973 halftail to detect overdeep nesting and cyclic cdr chains.
7974
7975 2004-05-10 Andreas Schwab <schwab@suse.de>
7976
7977 * lisp.h (Fmake_symbolic_link): Declare.
7978
7979 * fileio.c (Frename_file): Remove extra argument in call to
7980 Fmake_symbolic_link.
7981
7982 2004-05-10 Kim F. Storm <storm@cua.dk>
7983
7984 * xdisp.c (calc_line_height_property): Use string position when
7985 object is a string.
7986
7987 2004-05-10 Kenichi Handa <handa@m17n.org>
7988
7989 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7990 inhibit-modification-hooks to t temporarily before calling
7991 Ferase_buffer.
7992
7993 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7994 inhibit-modification-hooks to t temporarily before calling
7995 Ferase_buffer.
7996
7997 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7998 inhibit-modification-hooks to t temporarily before calling
7999 Ferase_buffer.
8000
8001 * fns.c (count_combining): Delete it.
8002 (concat): Don't check combining bytes.
8003
8004 2004-05-09 Jason Rumney <jasonr@gnu.org>
8005
8006 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8007 (globals_of_w32fns): Set it.
8008
8009 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8010
8011 * data.c (Fquo): Simplify.
8012
8013 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8014
8015 * data.c (Fquo): If any argument is float, do the computation in
8016 floating point.
8017
8018 2004-05-08 Juanma Barranquero <lektu@terra.es>
8019
8020 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8021 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8022 Fix spelling of Emacs on docstring.
8023 (Fset_process_coding_system, Fprocess_coding_system)
8024 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8025 Make argument names match their use in docstring.
8026 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8027 Fix docstring.
8028
8029 * editfns.c (Finsert_buffer_substring): Make argument names match their
8030 use in docstring.
8031
8032 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8033
8034 2004-05-07 Steven Tamm <steventamm@mac.com>
8035
8036 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8037 around call to ReceiveEvent to avoid certain crashes.
8038
8039 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8040
8041 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8042 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8043 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8044 Save/restore the current graphics port and device handle when
8045 drawing into an offscreen graphics world.
8046
8047 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8048 (gif_load): Likewise.
8049
8050 2004-05-07 Juanma Barranquero <lektu@terra.es>
8051
8052 * window.c (Fset_window_buffer): Fix docstring.
8053
8054 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8055
8056 * emacs.c (main) [VMS]: Fix var ref.
8057
8058 2004-05-06 Romain Francoise <romain@orebokech.com>
8059
8060 * data.c (Fsetq_default): Fix docstring.
8061
8062 2004-05-06 Jason Rumney <jasonr@gnu.org>
8063
8064 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8065 to avoid name clash.
8066
8067 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8068
8069 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8070 (Frename_file): Handle renaming of symlinks across file systems.
8071 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8072
8073 2004-05-04 Kim F. Storm <storm@cua.dk>
8074
8075 * xdisp.c (Qtotal): New var.
8076 (syms_of_xdisp): Intern and staticpro it.
8077 (calc_line_height_property): New arg total. Set it if
8078 line-spacing property has format (total . VALUE).
8079 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8080 Handle total line-spacing property.
8081
8082 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8083
8084 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8085 "under" scroll bar when size/position changes.
8086
8087 2004-05-03 Jason Rumney <jasonr@gnu.org>
8088
8089 * makefile.nt: Remove.
8090
8091 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8092
8093 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8094 Avoid compiler warnings.
8095
8096 * Makefile.in (region-cache.o): Depend on config.h.
8097
8098 2004-05-02 Romain Francoise <romain@orebokech.com>
8099
8100 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8101 with continuation lines, too.
8102
8103 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8104
8105 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8106
8107 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8108
8109 * xdisp.c (calc_line_height_property): YAILOM (yet another
8110 int/Lisp_Object mixup).
8111
8112 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8113
8114 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8115 undo bad effect of pack(4) in some versions of system headers.
8116
8117 2004-05-01 Jason Rumney <jasonr@gnu.org>
8118
8119 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8120
8121 2004-04-30 Kim F. Storm <storm@cua.dk>
8122
8123 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8124 (syms_of_buffer) <cursor-type>: Doc fix.
8125
8126 * dispextern.h (struct it): Remove member use_default_face.
8127 Add members override_ascent, override_descent, override_boff.
8128
8129 * xdisp.c (init_iterator): Handle line-spacing float value.
8130 Initialize override_ascent member.
8131 (append_space_for_newline): Reset override_ascent.
8132 Remove use_default_face.
8133 (calc_line_height_property): New function to calculate value of
8134 line-height and line-spacing properties. Look at overlays, too.
8135 Set override_ascent, override_descent, override_boff members when
8136 using another face than the current face. Float values are now
8137 relative to the frame default font, by default; accept a cons
8138 of ratio and face name to specify value relative to a specific face.
8139 (x_produce_glyphs): Use calc_line_height_property.
8140 Use override_ascent etc. when set to handle different face heights.
8141 A negative line-spacing property value is interpreted as a total
8142 line height, rather than inter-line spacing.
8143 (note_mouse_highlight): Allocate room for 40 overlays initially.
8144
8145 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8146
8147 * data.c (Fsubr_name): New fun.
8148 (syms_of_data): Defsubr it.
8149
8150 2004-04-29 Kim F. Storm <storm@cua.dk>
8151
8152 * xdisp.c (null_glyph_slice): New var.
8153 (append_glyph, append_composite_glyph, append_stretch_glyph):
8154 Use it to initialize glyph slice.
8155
8156 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8157
8158 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8159 (on_hot_spot_p): Make sure we always return a value.
8160 (Flookup_image_map): Remove unused var ix and iy.
8161 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8162
8163 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8164
8165 * msdos.c (init_environment): If one of the TMP... environment
8166 variables is set to a drive letter without a trailing slash,
8167 append a slash.
8168
8169 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8170
8171 * editfns.c (lisp_time_argument): Provide externally.
8172
8173 * fileio.c (Fset_file_times): New function.
8174 (syms_of_fileio): Intern and staticpro it.
8175
8176 2004-04-27 Kim F. Storm <storm@cua.dk>
8177
8178 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8179 header line strings.
8180
8181 * dispextern.h (struct it): New member use_default_face.
8182
8183 * xdisp.c (Qline_height): New variable.
8184 (syms_of_xdisp): Intern and staticpro it.
8185 (append_space_for_newline): Partially undo 2004-04-25 change;
8186 add default_face_p arg, and restore callers.
8187 Clear it->use_default_face after use.
8188 (x_produce_glyphs): Set default font for ascii char if
8189 it->use_default_font is set. Change line-spacing property to set
8190 just extra line spacing. Handle new line-height property.
8191
8192 2004-04-26 Andreas Schwab <schwab@suse.de>
8193
8194 * print.c (print_object): Print non-ascii characters in bool
8195 vector representation as octal escapes.
8196
8197 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8198 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8199 bool vectors.
8200 * lread.c (read1): Likewise.
8201 * alloc.c (Fmake_bool_vector): Likewise.
8202 * data.c (Faref, Faset): Likewise.
8203 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8204 (mapcar1): Likewise.
8205
8206 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8207
8208 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8209
8210 2004-04-26 Miles Bader <miles@gnu.org>
8211
8212 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8213
8214 2004-04-26 Juanma Barranquero <lektu@terra.es>
8215
8216 * buffer.c (Fpop_to_buffer): Fix docstring.
8217
8218 2004-04-26 Steven Tamm <steventamm@mac.com>
8219
8220 * lread.c (init_lread): Don't display missing lisp directory
8221 warnings with Carbon Emacs because self-contained bundled Emacs
8222 may be built without correct installation path.
8223
8224 2004-04-25 Kim F. Storm <storm@cua.dk>
8225
8226 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8227
8228 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8229
8230 * xdisp.c (append_space_for_newline): Rename from append_space.
8231 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8232 (x_produce_glyphs): Handle line-spacing property on newline char.
8233 If value is t, adjust ascent and descent to fit current row height.
8234 If value is an integer or float, set extra_line_spacing to integer
8235 value, or to float value x current line height.
8236
8237 2004-04-23 Kenichi Handa <handa@m17n.org>
8238
8239 * fontset.c (Finternal_char_font): If POSITION is nil, return
8240 font for displaying CH with the default face.
8241
8242 2004-04-23 Juanma Barranquero <lektu@terra.es>
8243
8244 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8245
8246 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8247
8248 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8249 Don't make assumptions about the relative place of i and val.
8250 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8251
8252 2004-04-21 Kim F. Storm <storm@cua.dk>
8253
8254 * dispextern.h (struct glyph_slice): New struct.
8255 (struct glyph): New member slice.
8256 (GLYPH_SLICE_EQUAL_P): New macro.
8257 (GLYPH_EQUAL_P): Use it.
8258 (struct glyph_string): New member slice.
8259 (struct it_slice): New struct.
8260 (struct it): New member slice, add member to stack too.
8261 New member constrain_row_ascent_descent_p.
8262 (image_ascent): Add prototype.
8263
8264 * dispnew.c (buffer_posn_from_coords): Return full image width
8265 and height even for image slices (posn is relative to full image).
8266 (marginal_area_string): Adjust x0,y0 for image slice.
8267
8268 * image.c (image_ascent): Add slice arg; calculate ascent for
8269 image slice (or full image).
8270
8271 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8272 (syms_of_keyboard): Defsubr them.
8273
8274 * lisp.h (pos_visible_p): Fix prototype.
8275
8276 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8277 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8278 (x_draw_image_foreground, x_draw_image_relief)
8279 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8280 Draw sliced images.
8281
8282 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8283 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8284 (x_draw_image_foreground, x_draw_image_relief)
8285 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8286 Draw sliced images.
8287
8288 * w32term.h (image_ascent): Remove prototype.
8289
8290 * window.c (Fpos_visible_in_window_p): Return pixel position if
8291 PARTIALLY arg is non-nil. Simplify. Doc fix.
8292 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8293 to return/set vscroll in pixels.
8294
8295 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8296
8297 * xdisp.c (Qslice): New variable.
8298 (syms_of_xdisp): Intern and staticpro it.
8299 (pos_visible_p): Return pixel position in new x and y args.
8300 (init_iterator): Reset it->slice info.
8301 (handle_display_prop): Parse (slice ...) property.
8302 (push_it, pop_it): Save/restore slice info.
8303 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8304 force repositioning of tall row if window is vscrolled, as that
8305 would reset vscroll.
8306 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8307 increasing row height if row is non-empty.
8308 (fill_image_glyph_string): Copy slice info.
8309 (take_vertical_position_into_account): Simplify.
8310 (produce_image_glyph): Handle iterator slice info, setup glyph
8311 slice info. Do not force minimum line height.
8312 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8313 do not increase height (ascent/descent) of non-empty row when
8314 adding normal character glyph; instead reduce glyph ascent/descent
8315 appropriately; if row is higher than current glyph, adjust glyph
8316 descent/ascent to reposition glyph within the existing row.
8317 Likewise, when char is newline, only set ascent/descent if row is
8318 currently empty.
8319 (note_mouse_highlight): Handle hotspots with sliced image.
8320
8321 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8322 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8323 (x_draw_image_foreground, x_draw_image_relief)
8324 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8325 Draw sliced images.
8326
8327 * xterm.h (image_ascent): Remove prototype.
8328
8329 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8330
8331 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8332
8333 2004-04-20 John Paul Wallington <jpw@gnu.org>
8334
8335 * fns.c (Fassoc, Feql): Fix indentation.
8336
8337 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8338
8339 2004-04-19 John Paul Wallington <jpw@gnu.org>
8340
8341 * fns.c (Feql): New function.
8342 (syms_of_fns): Defsubr it.
8343
8344 2004-04-18 Jason Rumney <jasonr@gnu.org>
8345
8346 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8347 after closing the clipboard.
8348
8349 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8350
8351 * buffer.c (Fbuffer_base_buffer): Doc fix.
8352
8353 2004-04-17 Kim F. Storm <storm@cua.dk>
8354
8355 * keymap.c (Fkey_description): Add optional PREFIX arg.
8356 Combine prefix with KEYS to make up the full key sequence to describe.
8357 Correlate meta_prefix_char and following (simple) key to describe
8358 as meta modifier. All callers changed.
8359 (describe_map): Rename arg `keys' to `prefix'. Remove local
8360 `elt_prefix' var. Use Fkey_description with prefix instead of
8361 elt_prefix combined with Fsingle_key_description.
8362 (describe_vector): Declare static. Replace arg `elt_prefix' with
8363 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8364 if !KEYMAP_P. Use Fkey_description with prefix instead of
8365 Fsingle_key_description.
8366
8367 * keymap.h (Fkey_description): Fix prototype.
8368 (describe_vector): Remove prototype.
8369
8370 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8371
8372 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8373 (png_load): Fix calculation of transparent background color on X
8374 and W32 platforms.
8375
8376 2004-04-16 Juanma Barranquero <lektu@terra.es>
8377
8378 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8379 not too large before computing how much to scroll.
8380
8381 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8382
8383 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8384
8385 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8386
8387 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8388 Add hyperlink to Elisp manual to the docstring.
8389
8390 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8391
8392 * callint.c (fix_command): Use XDCR.
8393
8394 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8395
8396 * window.c (Fget_lru_window): Doc fix.
8397
8398 2004-04-14 Kim F. Storm <storm@cua.dk>
8399
8400 * editfns.c (Fformat): Fix allocation size of precision array.
8401
8402 * dispnew.c (update_window): Only set changed_p if
8403 scrolling_window actually did scroll.
8404 (scrolling_window): Only return 1 if we actually did scroll.
8405
8406 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8407 height to glyph height when cursor row is not fully visible.
8408 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8409 failure in case row is higher than window. Callers changed.
8410 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8411 Try to scroll partially visible, higher-than-window cursor row.
8412 (redisplay_window): Always try to scroll partially visible,
8413 higher-than-window cursor row - both initially and again with
8414 centering_position = 0.
8415 Clear desired matrix before retrying with centering_position = 0.
8416
8417 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8418
8419 * syntax.c (scan_lists): Simplify backward string scan.
8420 Fix off-by-one boundary check for string and comment fences.
8421
8422 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8423
8424 * sheap.c, unexcw.c: New files.
8425
8426 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8427
8428 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8429 base buffer has been killed. Correct the error message if the
8430 base buffer does not exist.
8431
8432 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8433
8434 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8435 Cygwin itself. Add support for Xaw3d scrollbars.
8436
8437 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8438
8439 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8440
8441 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8442 before Cygwin unexec.
8443
8444 * Makefile.in: Link changes for Cygwin unexec() support.
8445
8446 2004-04-12 Andreas Schwab <schwab@suse.de>
8447
8448 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8449
8450 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8451
8452 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8453 IGNORE argument equals NAME. Doc fix.
8454
8455 2004-04-11 Masatake YAMATO <jet@gyve.org>
8456
8457 * buffer.c (fix_start_end_in_overlays): Make overlays
8458 empty if they are backwards.
8459
8460 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8461
8462 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8463
8464 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8465
8466 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8467
8468 2004-04-06 Kim F. Storm <storm@cua.dk>
8469
8470 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8471 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8472
8473 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8474 clearing highlight.
8475
8476 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8477
8478 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8479 clearing highlight.
8480
8481 * indent.c (vmotion): Do not reserve one column for continuation
8482 marks on window frames.
8483
8484 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8485
8486 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8487 from GCC.
8488
8489 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8490
8491 * .gdbinit-union: Remove.
8492
8493 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8494 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8495 ($nonvalbits): Remove.
8496 ($valmask): Set it by calling xreload to avoid redundancy.
8497
8498 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8499 (gdb_emacs_intbits): Remove.
8500
8501 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8502
8503 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8504
8505 2004-03-30 Kenichi Handa <handa@m17n.org>
8506
8507 * editfns.c (Fformat): Fix initialization of the array info.
8508
8509 2004-03-30 Kim F. Storm <storm@cua.dk>
8510
8511 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8512 (syms_of_xterm): DEFVAR_BOOL it.
8513 (ignore_next_mouse_click_timeout): New var.
8514 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8515 Use it to filter mouse clicks following focus event.
8516
8517 2004-03-29 David Ponce <david@dponce.com>
8518
8519 * callint.c (Fcall_interactively): Fix last change.
8520
8521 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8522
8523 * eval.c (Fcommandp): Simplify.
8524
8525 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8526 Extend to handle all kinds of functions.
8527
8528 * lisp.h (Finteractive_form): Declare.
8529
8530 * callint.c (Fcall_interactively): Use it.
8531
8532 2004-03-26 Kim F. Storm <storm@cua.dk>
8533
8534 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8535 to catch errors in calc_pixel_width_or_height during redisplay.
8536
8537 2004-03-26 Masatake YAMATO <jet@gyve.org>
8538
8539 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8540
8541 * lisp.h (fix_start_end_in_overlays): Likewise.
8542
8543 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8544
8545 * editfns.c (Ftranspose_regions): Likewise.
8546
8547 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8548
8549 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8550
8551 2004-03-19 Richard M. Stallman <rms@gnu.org>
8552
8553 * s/sol2-6.h: Delete previous change.
8554
8555 2004-03-19 Kim F. Storm <storm@cua.dk>
8556
8557 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8558 to_charpos corresponds to newline in right fringe. Use local
8559 BUFFER_POS_REACHED_P macro.
8560
8561 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8562
8563 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8564 to compile on non-window system.
8565
8566 2004-03-19 Kim F. Storm <storm@cua.dk>
8567
8568 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8569
8570 * image.c (Qcenter): Move to xdisp.c.
8571
8572 * xdisp.c (Qcenter): Declare here.
8573 (syms_of_xdisp): Intern and staticpro it.
8574 (handle_single_display_prop): Allow space display property on all
8575 platforms.
8576 (display_mode_line): Set mode_line_p before displaying line.
8577 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8578 handling. Remove complex cases for fringes and scroll-bars.
8579 Add left, right, and center alignment positions. Add text (area)
8580 width/height. Return width or height for image specs.
8581 (produce_stretch_glyph): Improve handling of :align-to. Is now
8582 relative to left of text area by default, but other base offsets
8583 can be specified -- also for text lines.
8584
8585 * term.c (produce_glyphs): Handle IT_STRETCH.
8586 (produce_stretch_glyph): New function to handle space width and
8587 align-to display properties on non-window systems.
8588
8589 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8590
8591 * fileio.c (Fread_file_name): Set completion-ignore-case for
8592 case-insensitive systems.
8593
8594 2004-03-14 Masatake YAMATO <jet@gyve.org>
8595
8596 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8597 when keymap and cursor are setup.
8598
8599 2004-03-14 Steven Tamm <steventamm@mac.com>
8600
8601 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8602
8603 2004-03-14 Kim F. Storm <storm@cua.dk>
8604
8605 * dispextern.h (x_find_image_file): Add prototype.
8606
8607 * image.c (x_find_image_file): Make extern.
8608
8609 * xfns.c (x_find_image_file): Remove prototype.
8610
8611 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8612
8613 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8614
8615 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8616
8617 2004-03-12 Richard M. Stallman <rms@gnu.org>
8618
8619 * fns.c (internal_equal): New arg PROPS controls comparing
8620 text properties. All callers changed.
8621 (Fequal_including_properties): New function.
8622 (syms_of_fns): defsubr it.
8623
8624 2004-03-12 Kim F. Storm <storm@cua.dk>
8625
8626 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8627
8628 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8629 (image_background, image_background_transparent): Fix prototypes.
8630
8631 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8632
8633 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8634 (x_query_font, x_find_ccl_program, x_set_window_size)
8635 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8636 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8637 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8638
8639 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8640 (x_query_font, x_find_ccl_program, x_set_window_size)
8641 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8642 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8643 (mac_draw_line_to_pixmap): Add prototypes.
8644
8645 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8646
8647 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8648
8649 2004-03-11 Kim F. Storm <storm@cua.dk>
8650
8651 * dispextern.h: Move image related prototypes from xfns.c section
8652 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8653 HAVE_X_WINDOWS.
8654
8655 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8656 Move gtkutil.o to new GTK_OBJ list.
8657 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8658 (GTK_OBJ) [USE_GTK]: New declaration.
8659 (obj): Add $(GTK_OBJ) to list.
8660
8661 2004-03-11 Steven Tamm <steventamm@mac.com>
8662
8663 * image.c [MAC_OSX]: Include sys/stat.h.
8664
8665 * macfns.c (syms_of_macfns): Remove definitions of things now
8666 defined in image.c.
8667
8668 2004-03-11 Kim F. Storm <storm@cua.dk>
8669
8670 The following changes consolidates the identical/similar image
8671 support code previously found in xfns.c, w32fns.c, and macfns.c
8672 into a new file image.c.
8673
8674 * makefile.w32-in (OBJ1): Add image.o.
8675 ($(BLD)/image.$(O)): Add dependencies.
8676
8677 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8678 (image.o): Add dependencies.
8679
8680 * image.c: New file with consolidated image support code.
8681 (COLOR_TABLE_SUPPORT): New define to control whether
8682 color table support is available (X only).
8683 (Bitmap_Record): Common name for x_bitmap_record,
8684 w32_bitmap_record, and mac_bitmap_record.
8685 (XImagePtr): Common name for pointer to XImage or equivalent.
8686 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8687 to XImagePtr on X+MAC, and to HDC on W32.
8688 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8689 (NO_PIXMAP): Common name for "None" or equivalent.
8690 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8691 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8692 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8693 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8694 Define with suitable equivalents on W32 and MAC for code sharing.
8695 (XDrawLine): Define on MAC for code sharing.
8696 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8697 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8698 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8699 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8700 (x_reference_bitmap, x_create_bitmap_from_data)
8701 (x_create_bitmap_from_file, x_destroy_bitmap)
8702 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8703 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8704 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8705 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8706 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8707 (define_image_type, lookup_image_type, valid_image_p)
8708 (image_error, enum image_value_type, struct image_keyword)
8709 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8710 (make_image, free_image, prepare_image_for_display, image_ascent)
8711 (four_corners_best, image_background, image_background_transparent)
8712 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8713 (make_image_cache, free_image_cache, clear_image_cache)
8714 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8715 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8716 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8717 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8718 (init_image_func_pointer, image_load_quartz2d)
8719 (struct ct_color, init_color_table, free_color_table)
8720 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8721 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8722 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8723 (x_disable_image, x_build_heuristic_mask)
8724 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8725 (TIFF support, GIF support, Ghostscript support): Consolidate image
8726 code from xfns.c, w32fns.c, and macfns.c.
8727 (syms_of_image): Consolidate image related symbol setup here.
8728 (init_image): Consolidate image related initializations here.
8729
8730 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8731 and init_image. Remove call to init_xfns.
8732
8733 * macterm.h (struct mac_bitmap_record): Add file member.
8734 Not currently used, but simplifies code sharing.
8735
8736 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8737 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8738 (x_reference_bitmap, x_create_bitmap_from_data)
8739 (x_create_bitmap_from_file, x_destroy_bitmap)
8740 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8741 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8742 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8743 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8744 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8745 (define_image_type, lookup_image_type, valid_image_p)
8746 (image_error, enum image_value_type, struct image_keyword)
8747 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8748 (make_image, free_image, prepare_image_for_display, image_ascent)
8749 (four_corners_best, image_background, image_background_transparent)
8750 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8751 (make_image_cache, free_image_cache, clear_image_cache)
8752 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8753 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8754 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8755 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8756 (init_image_func_pointer, image_load_quartz2d)
8757 (struct ct_color, init_color_table, free_color_table)
8758 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8759 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8760 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8761 (x_disable_image, x_build_heuristic_mask)
8762 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8763 (TIFF support, GIF support, Ghostscript support): Merge with image
8764 code from xfns.c and macfns.c into image.c.
8765 (syms_of_xfns): Move image related symbols to image.c.
8766 (init_external_image_libraries, init_xfns): Remove; initialization
8767 moved to init_image in image.c.
8768
8769 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8770 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8771 (x_reference_bitmap, x_create_bitmap_from_data)
8772 (x_create_bitmap_from_file, x_destroy_bitmap)
8773 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8774 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8775 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8776 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8777 (define_image_type, lookup_image_type, valid_image_p)
8778 (image_error, enum image_value_type, struct image_keyword)
8779 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8780 (make_image, free_image, prepare_image_for_display, image_ascent)
8781 (four_corners_best, image_background, image_background_transparent)
8782 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8783 (make_image_cache, free_image_cache, clear_image_cache)
8784 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8785 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8786 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8787 (struct ct_color, init_color_table, free_color_table)
8788 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8789 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8790 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8791 (x_disable_image, x_build_heuristic_mask)
8792 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8793 (TIFF support, GIF support, Ghostscript support): Merge with image
8794 code from xfns.c and macfns.c into image.c.
8795 (syms_of_xfns): Move image related symbols to image.c.
8796 (init_external_image_libraries, init_xfns): Remove; initialization
8797 moved to init_image in image.c.
8798
8799 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8800 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8801 (x_reference_bitmap, x_create_bitmap_from_data)
8802 (x_create_bitmap_from_file, x_destroy_bitmap)
8803 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8804 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8805 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8806 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8807 (define_image_type, lookup_image_type, valid_image_p)
8808 (image_error, enum image_value_type, struct image_keyword)
8809 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8810 (make_image, free_image, prepare_image_for_display, image_ascent)
8811 (four_corners_best, image_background, image_background_transparent)
8812 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8813 (make_image_cache, free_image_cache, clear_image_cache)
8814 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8815 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8816 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8817 (struct ct_color, init_color_table, free_color_table)
8818 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8819 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8820 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8821 (x_disable_image, x_build_heuristic_mask)
8822 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8823 (TIFF support, GIF support, Ghostscript support): Merge with
8824 w32fns.c and macfns.c image code into image.c.
8825 (syms_of_xfns): Move image related symbols to image.c.
8826 (init_xfns): Remove; initialization moved to init_image in image.c.
8827
8828 * lisp.h (syms_of_image, init_image): Add protoypes.
8829 (init_xfns): Remove prototype.
8830
8831 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8832 (x_reference_bitmap, x_create_bitmap_from_data)
8833 (x_create_bitmap_from_file, x_destroy_bitmap)
8834 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8835 (gamma_correct) [MAC_OS]: Add prototype.
8836
8837 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8838 (x_reference_bitmap, x_create_bitmap_from_data)
8839 (x_create_bitmap_from_file, x_destroy_bitmap)
8840 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8841
8842 2004-03-09 Kenichi Handa <handa@etlken2>
8843
8844 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8845 correctly.
8846
8847 2004-03-04 Richard M. Stallman <rms@gnu.org>
8848
8849 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8850
8851 * window.c (Fdisplay_buffer): Doc fix.
8852
8853 * buffer.c (Fpop_to_buffer): Doc fix.
8854
8855 2004-03-03 Kim F. Storm <storm@cua.dk>
8856
8857 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8858
8859 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8860
8861 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8862
8863 2004-03-02 Richard M. Stallman <rms@gnu.org>
8864
8865 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8866
8867 2004-03-02 Kenichi Handa <handa@m17n.org>
8868
8869 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8870
8871 2004-03-02 Kim F. Storm <storm@cua.dk>
8872
8873 * window.h (struct window): New member overlay_arrow_bitmap.
8874
8875 * window.c (make_window): Initialize overlay_arrow_bitmap.
8876
8877 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8878 implement and integrate multiple overlay arrows with redisplay.
8879 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8880 (last_arrow_position, last_arrow_string): Replace by properties.
8881 (Qlast_arrow_position, Qlast_arrow_string)
8882 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8883 (syms_of_xdisp): Intern and staticpro them.
8884 (overlay_arrow_string_or_property, update_overlay_arrows)
8885 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8886 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8887 (redisplay_internal): Use them instead of directly accessing
8888 Voverlay_arrow_position etc. for multiple overlay arrows.
8889 (mark_window_display_accurate): Use update_overlay_arrows.
8890 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8891 (try_window_id): Use overlay_arrows_changed_p.
8892 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8893 (display_line): Use overlay_arrow_at_row to check multiple
8894 overlay arrows, and get relevant overlay-arrow-string and
8895 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8896 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8897 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8898
8899 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8900 (update_window_fringes): Remove unused code.
8901
8902 2004-03-01 Jason Rumney <jasonr@gnu.org>
8903
8904 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8905
8906 2004-03-01 Juanma Barranquero <lektu@terra.es>
8907
8908 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8909
8910 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8911
8912 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8913
8914 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8915 how many colors can be displayed.
8916
8917 2004-03-01 Kenichi Handa <handa@m17n.org>
8918
8919 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8920 correctly.
8921
8922 2004-02-28 Kim F. Storm <storm@cua.dk>
8923
8924 * dispnew.c (update_window): Update header line also if there are
8925 no other changes in window (move code after set_cursor label).
8926
8927 * lisp.h (mark_window_display_accurate): Remove prototype.
8928
8929 * window.c (window_loop, Fforce_window_update): Force mode line
8930 updates by setting prevent_redisplay_optimizations_p and
8931 update_mode_lines.
8932
8933 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8934
8935 * xfns.c (x_window): Fix indentation.
8936
8937 * xterm.c (x_calc_absolute_position): Call x_real_positions
8938 to get WM window sizes and use those to calculate position.
8939 (x_set_offset): Remove code commented out.
8940
8941 2004-02-28 Miles Bader <miles@gnu.org>
8942
8943 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8944
8945 2004-02-28 Kim F. Storm <storm@cua.dk>
8946
8947 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8948 an event into kbd fifo, but with special handling of quit event;
8949 a quit event is saved for later, and further events are discarded
8950 until the saved quit event has been processed.
8951 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8952 (gen_help_event): Store help event in kbd fifo.
8953 (NREAD_INPUT_EVENTS): Remove.
8954 (read_avail_input): Adapt to new read_socket_hook interface.
8955 Remove allocation and initialization of local input_event buffer,
8956 as read_socket_hook stores events directly in fifo. Allocate and
8957 initialize local hold_quit event to handle postponed quit event
8958 (and store it if set by kbd_buffer_store_event_hold).
8959
8960 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8961 (gen_help_event): Fix prototype.
8962
8963 * macterm.c (XTread_socket): Remove bufp_r and
8964 numcharsp args. Add hold_quit arg.
8965 Rework to use just one, local, inev input_event. Store inev
8966 directly in fifo using kbd_buffer_store_event_hold.
8967
8968 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8969 (read_input_waiting): Adapt to new read_socket_hook interface.
8970 Remove allocation and initialization of local input_event buffer,
8971 as read_socket_hook stores events directly in fifo. Allocate and
8972 initialize local hold_quit event to handle postponed quit event
8973 (and store it if set by kbd_buffer_store_event_hold).
8974
8975 * term.c (read_socket_hook): Fix arg list.
8976
8977 * termhooks.h (read_socket_hook): Fix prototype.
8978
8979 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8980 numcharsp args. Add hold_quit arg.
8981 Rework to use just one, local, inev input_event. Store inev
8982 directly in fifo using kbd_buffer_store_event_hold.
8983
8984 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8985
8986 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8987 Add hold_quit arg. Rework to use just one, local, inev
8988 input_event. Store inev directly in fifo using
8989 kbd_buffer_store_event_hold. Update count in one place.
8990 Postpone call to gen_help_event until inev is stored; use new
8991 local do_help for this.
8992 Remove local emacs_event in handing of ButtonPress event; just use
8993 inev instead (so no reason to copy it later).
8994
8995 * xsmfns.c (x_session_check_input): Remove numchars arg.
8996
8997 * xterm.c (x_focus_changed, x_detect_focus_change):
8998 Remove numchars arg. Always store event into bufp arg.
8999 Return nothing. Callers changed accordingly.
9000 (glyph_rect): Simplify.
9001 (STORE_KEYSYM_FOR_DEBUG): New macro.
9002 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9003 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9004 (current_hold_quit) [USE_GTK]: Add.
9005 (event_handler_gdk): Adapt to new handle_one_xevent.
9006 (handle_one_xevent): Remove bufp_r and numcharsp args.
9007 Add hold_quit arg. Rework to use just one, local, inev
9008 input_event. Store inev directly in fifo using
9009 kbd_buffer_store_event_hold. Update count in one place.
9010 Postpone call to gen_help_event until inev is stored; use new
9011 local do_help for this.
9012 Simplify handling of keysyms (consolidate common code). Fix bug
9013 where count was updated with nchars instead of nbytes.
9014 Remove local emacs_event in handing of ButtonPress event; just use
9015 inev instead (so no reason to copy it later).
9016 Remove `out' label. Rename label `ret' to `done'; add various
9017 `goto done' to clarify code flow in deeply nested blocks.
9018 (x_dispatch_event): Simplify as handle_one_xevent now calls
9019 kbd_buffer_store_event itself.
9020 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9021 arg. Call handle_one_xevent with new arglist. Store event from
9022 x_session_check_input in fifo.
9023 [USE_GTK]: Setup current_hold_quit.
9024 Decrement handling_signal before unblocking input.
9025 (x_initialize) [USE_GTK]: Initialize current_count.
9026
9027 * xterm.h (x_session_check_input): Fix prototype.
9028
9029 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9030
9031 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9032
9033 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9034 macgui.h).
9035
9036 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9037
9038 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9039 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9040 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9041 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9042 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9043 (Bitmap): Remove typedef.
9044 (Pixmap): Change int to GWorldPtr.
9045
9046 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9047
9048 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9049 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9050 New #define to extract 16-bit depth color components from unsigned
9051 long representation.
9052 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9053 colors used for masks.
9054 (struct mac_display_info): Add color_p. Remove n_cbits.
9055
9056 * macfns.c: Include sys/types.h and sys/stat.h.
9057 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9058 Include QuickTime/QuickTime.h.
9059 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9060 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9061 functions defined in macterm.c.
9062 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9063 (ZPixmap): New #define for compatibility with xfns.c.
9064 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9065 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9066 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9067 New functions.
9068 (four_corners_best, x_create_x_image_and_pixmap)
9069 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9070 (x_edge_detection, init_color_table, colors_in_color_table)
9071 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9072 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9073 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9074 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9075 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9076 long mixup.
9077 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9078 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9079 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9080 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9081 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9082 (x_alloc_image_color, clear_image_cache, lookup_image)
9083 (x_find_image_file, xbm_read_bitmap_file_data)
9084 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9085 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9086 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9087 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9088 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9089 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9090 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9091 #if 0.
9092 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9093 #if 0. Free white_relief.gc and black_relief.gc.
9094 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9095 New functions (from xfns.c).
9096 (Fx_create_frame): Record unwind_create_frame.
9097 (Fxw_display_color_p): Use dpyinfo->color_p.
9098 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9099 dpyinfo->n_cbits.
9100 (Fx_display_color_cells): Use dpyinfo->n_planes;
9101 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9102 (Qheuristic, cross_disabled_images, emboss_matrix)
9103 (laplace_matrix): New variables (from xfns.c).
9104 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9105 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9106 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9107 (image_background_transparent): New function (from xfns.c).
9108 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9109 (image_load_quicktime): Add declaration.
9110 [MAC_OSX] (image_load_quartz2d): Likewise.
9111 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9112 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9113 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9114 (xbm_load_image_from_file, x_laplace_read_row)
9115 (x_laplace_write_row, pbm_read_file): Remove functions.
9116 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9117 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9118 (colors_in_color_table): Sync with xfns.c (although not used).
9119 (lookup_rgb_color): Don't lookup color table. Just do gamma
9120 correction.
9121 (COLOR_INTENSITY): New #define (from xfns.c).
9122 (x_disable_image): New function (from xfns.c).
9123 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9124 (x_build_heuristic_mask): Sync with xfns.c.
9125 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9126 (HAVE_PBM): Remove #ifdef.
9127 (pbm_load): Sync with xfns.c. Set img->width and img->height
9128 before IMAGE_BACKGROUND.
9129 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9130 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9131 Don't enclose with #if HAVE_PNG.
9132 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9133 symbol _CGImageCreateWithPNGDataProvider is defined.
9134 Otherwise use image_load_quicktime.
9135 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9136 [HAVE_PNG] (png_load): Sync with xfns.c.
9137 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9138 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9139 HAVE_JPEG.
9140 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9141 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9142 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9143 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9144 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9145 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9146 HAVE_TIFF.
9147 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9148 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9149 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9150 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9151 New functions (from xfns.c).
9152 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9153 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9154 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9155 Don't enclose with #if HAVE_GIF.
9156 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9157 animated gif. Otherwise use image_load_quicktime.
9158 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9159 gif_DrawText to avoid conflict with QuickdrawText.h.
9160 [HAVE_GIF] (gif_load): Sync with xfns.c.
9161 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9162 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9163 Ghostscript is not supported yet).
9164 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9165 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9166 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9167 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9168 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9169 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9170 HAVE_PNG. Call EnterMovies to support animated gifs.
9171 Call init_image_func_pointer to bind a symbol
9172 _CGImageCreateWithPNGDataProvider if it is defined.
9173
9174 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9175 (x_draw_bar_cursor): Sync declaration with xterm.c.
9176 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9177 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9178 graphics).
9179 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9180 (mac_draw_line_to_pixmap, XCreatePixmap)
9181 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9182 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9183 New functions.
9184 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9185 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9186 Cast bits to char *.
9187 (reflect_byte): New function (from w32fns.c).
9188 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9189 due to byte alignment.
9190 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9191 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9192 (XSetForeground): Remove static (now used in macfns.c).
9193 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9194 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9195 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9196 (x_draw_glyph_string_box, x_draw_image_foreground)
9197 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9198 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9199 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9200 Sync with xterm.c.
9201 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9202 than the xterm.c version when a strictly horizontal or vertical
9203 line is drawn.
9204 (XTset_terminal_window): Add static.
9205 (x_make_frame_visible): Add UNBLOCK_INPUT.
9206 (x_free_frame_resources): New funcion (from xterm.c).
9207 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9208 occurs in tool bar area.
9209 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9210 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9211 Initialize image cache.
9212 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9213 Enclose unused functions with #if 0.
9214 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9215 (decode_mac_font_name): New function to apply code conversions
9216 from a mac font name to an XLFD font name according to its script code.
9217 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9218 font name to a mac font name according to REGISTRY and ENCODING fields.
9219 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9220 whose name starts with `.'.
9221 (init_font_name_table): Use decode_mac_font_name. Add both
9222 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9223 of a font is smJapanese.
9224 (mac_do_list_fonts): New function to list fonts that match a given
9225 pattern.
9226 (x_list_fonts, XLoadQueryFont): Use it.
9227 (XLoadQueryFont): Set rbearing field for each variable width
9228 character to avoid needless redraw.
9229 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9230
9231 2004-02-26 Kim F. Storm <storm@cua.dk>
9232
9233 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9234 as read_socket_hook handler on X aborts if buffer is too small
9235 and W32 handler doesn't always check buffer limit.
9236
9237 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9238 right-fringe similar to a display margin image. Specifically,
9239 the characters having the fringe prop are no longer shown, and
9240 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9241 do this. Set fringe bitmap face_id in it->face_id.
9242 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9243 still realize it->face (i.e. the fringe bitmap face).
9244
9245 2004-02-25 Miles Bader <miles@gnu.org>
9246
9247 * xdisp.c (check_it): Check string/string_pos consistency.
9248 (init_iterator): Initialize string-related fields properly.
9249
9250 2004-02-11 Miles Bader <miles@gnu.org>
9251
9252 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9253
9254 2004-02-10 Miles Bader <miles@gnu.org>
9255
9256 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9257 BLOCK_INPUT can be nested, so it doesn't make much sense.
9258
9259 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9260
9261 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9262 (xbm_read_bitmap_data): Use unsigned char for image data.
9263
9264 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9265
9266 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9267
9268 2004-02-22 Jason Rumney <jasonr@gnu.org>
9269
9270 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9271 correctly over other bitmaps.
9272
9273 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9274
9275 * emacs.c (USAGE1): Split into two halves.
9276 (USAGE2): Second half of the old USAGE1.
9277 (USAGE3): Rename from USAGE2.
9278 (USAGE4): Rename from USAGE3.
9279
9280 2004-02-21 Juri Linkov <juri@jurta.org>
9281
9282 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9283 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9284 --file. Fix -f, -l. Sort options. Untabify.
9285 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9286
9287 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9288
9289 * category.c (Fdefine_category, Fcategory_docstring)
9290 (Fget_unused_category, Fset_category_table)
9291 (Fcategory_set_mnemonics): Doc fixes.
9292
9293 2004-02-20 Kim F. Storm <storm@cua.dk>
9294
9295 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9296 The following changes are relative to the 2004-01-21 revision.
9297 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9298 in one call to read_socket_hook. Value is 8.
9299 (read_avail_input): Separate and rework handling of read_socket_hook
9300 and non-read_socket_hook cases. Use smaller input_event buffer
9301 in read_socket_hook case, and repeat if full buffer is read.
9302 Use new local variable 'discard' to skip input after C-g.
9303 In non-read_socket_hook case, just use a single input_event, and
9304 call kbd_buffer_store_event on the fly for each character.
9305
9306 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9307
9308 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9309 Remove unused `gu' alternative.
9310
9311 2004-02-19 Andreas Schwab <schwab@suse.de>
9312
9313 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9314 warning.
9315
9316 2004-02-18 Kim F. Storm <storm@cua.dk>
9317
9318 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9319 Fix last change.
9320
9321 2004-02-17 Kim F. Storm <storm@cua.dk>
9322
9323 * xdisp.c (fast_find_position): Fix return value of new version;
9324 it was inverted compared to the 21.1 version.
9325 (get_window_cursor_type): Don't look at glyph if NULL.
9326 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9327
9328 * keyboard.c: Rework previous change; it didn't consider that the
9329 buf array was allocated on the stack.
9330 (prev_read): Remove variable.
9331 (read_avail_input_buf): New static event buffer array.
9332 (in_read_avail_input): New static variable to handle re-entrancy.
9333 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9334 Use in_read_avail_input to handle re-entrance; when re-entered,
9335 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9336 Do not initialize read_avail_input_buf in full here; instead assume it
9337 is always cleared on entry. To ensure that, we clear (just) the
9338 entries that were used before we return.
9339 (init_keyboard): Initialize read_avail_input_buf here.
9340
9341 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9342
9343 * cmds.c (Fend_of_line): Doc fix.
9344
9345 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9346
9347 * keyboard.c (prev_read): New static variable.
9348 (read_avail_input): Use it to zero out only those slots in buf[]
9349 that were used last time we were called.
9350
9351 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9352
9353 * Makefile.in (obj): Move fringe.o from here...
9354 (XOBJ, MAC_OBJ): ...to here.
9355
9356 2004-02-16 Stephen Eglen <stephen@gnu.org>
9357
9358 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9359
9360 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9361
9362 * data.c (Fbyteorder):
9363 * fringe.c (Fdefine_fringe_bitmap):
9364 * xdisp.c (handle_single_display_prop):
9365 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9366
9367 2004-02-16 Jason Rumney <jasonr@gnu.org>
9368
9369 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9370
9371 2004-02-15 Steven Tamm <steventamm@mac.com>
9372
9373 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9374 controlling emulation of a three button mouse with option and
9375 command keys.
9376 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9377 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9378
9379 2004-02-15 Kim F. Storm <storm@cua.dk>
9380
9381 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9382
9383 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9384 Perform byte-swapping.
9385
9386 2004-02-14 Kim F. Storm <storm@cua.dk>
9387
9388 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9389 bits from char to short to facilitate wider bitmaps.
9390 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9391 member.
9392
9393 * fringe.c (struct fringe_bitmap): Change member bits from char to
9394 short to facilitate 16 bits wide bitmaps. Modify all standard
9395 bitmaps accordingly.
9396 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9397 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9398 (draw_fringe_bitmap): Ditto.
9399 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9400 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9401 handle up to 16 bits wide bitmaps.
9402 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9403 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9404
9405 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9406 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9407 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9408
9409 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9410 so it is no longer necessary to expand them here.
9411
9412 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9413
9414 2004-02-12 Kim F. Storm <storm@cua.dk>
9415
9416 * window.c (Fwindow_fringes): Doc fix.
9417
9418 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9419
9420 * xselect.c (x_get_foreign_selection): Add new optional parameter
9421 time_stamp.
9422 (Fx_get_selection_internal): Ditto, pass time_stamp to
9423 x_get_foreign_selection.
9424
9425 * data.c (Fbyteorder): New function.
9426
9427 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9428
9429 * atimer.c: Move include stdio.h to same place as in other files.
9430
9431 * region-cache.c: Ditto.
9432
9433 * sysdep.c: Ditto.
9434
9435 * xfaces.c: Ditto.
9436
9437 2004-02-09 Sam Steingold <sds@gnu.org>
9438
9439 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9440
9441 2004-02-09 Kim F. Storm <storm@cua.dk>
9442
9443 * fringe.c: New file. Move original fringe related declarations
9444 and code from dispextern.h and xdisp.c here.
9445 Rework code to support user defined fringe bitmaps, redefining
9446 standard bitmaps, ability to overlay user defined bitmap with
9447 overlay arrow bitmap, and add faces to bitmaps.
9448 (Voverflow_newline_into_fringe): Declare here.
9449 (enum fringe_bitmap_align): New enum.
9450 (..._bits): All bitmaps are now defined without bitswapping; that
9451 is now done in init_fringe_once (if necessary).
9452 (standard_bitmaps): New array with specifications for the
9453 standard fringe bitmaps.
9454 (fringe_faces): New array.
9455 (valid_fringe_bitmap_id_p): New function.
9456 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9457 (draw_fringe_bitmap): New function which draws fringe bitmap,
9458 possibly overlaying bitmap with cursor in right fringe or the
9459 overlay arrow in the left fringe.
9460 (update_window_fringes): Do not handle overlay arrow here.
9461 Compare and copy fringe bitmap faces.
9462 (init_fringe_bitmap): New function.
9463 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9464 define and destroy user defined fringe bitmaps.
9465 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9466 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9467 (syms_of_fringe): New function. Defsubr new DEFUNs.
9468 DEFVAR_LISP Voverflow_newline_into_fringe.
9469 (init_fringe_once, init_fringe): New functions.
9470 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9471
9472 * Makefile.in (obj): Add fringe.o.
9473 (fringe.o): New dependencies.
9474
9475 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9476 bits allocated to hold a fringe number. Increase number of bits
9477 from 4 to 8 to allow user defined fringe bitmaps.
9478 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9479 left_user_fringe_face_id, right_user_fringe_bitmap,
9480 right_user_fringe_face_id.
9481 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9482 Move to new file fringe.c.
9483 (MAX_FRINGE_BITMAPS): Define here.
9484 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9485 and overlay_p. Change member which to int.
9486 (struct redisplay_interface): New members define_fringe_bitmap
9487 and destroy_fringe_bitmap.
9488 (valid_fringe_bitmap_id_p): Add prototype.
9489 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9490
9491 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9492 arrows.
9493 (update_frame): Do flush_display if force_flush_display_p to
9494 ensure display (specifically fringes) are updated in a timely
9495 manner when resizing the frame by dragging the mouse.
9496 (update_window_line): Update row if overlay arrow changed.
9497 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9498 or overlay arrow changed.
9499
9500 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9501 syms_of_fringe, and init_fringe.
9502
9503 * frame.h (struct frame): New member force_flush_display_p.
9504
9505 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9506 Add prototypes.
9507
9508 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9509 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9510 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9511 Use cursor color for displaying cursor in fringe.
9512 (x_redisplay_interface): Add null handlers for
9513 define_fringe_bitmap and destroy_fringe_bitmap functions.
9514
9515 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9516 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9517 for displaying cursor in fringe.
9518 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9519 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9520 (w32_redisplay_interface): Add them to redisplay_interface.
9521 (w32_term_init): Call w32_init_fringe instead of explicitly
9522 defining fringe bitmaps in fringe_bmp array.
9523 (x_delete_display): Call w32_reset_fringes instead of explicitly
9524 destroying fringe bitmaps in fringe_bmp array.
9525
9526 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9527 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9528 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9529 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9530 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9531 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9532 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9533 Move fringe handling vars and code to new file fringe.c.
9534 (handle_display_prop): Handle left-fringe and right-fringe
9535 display properties; store user fringe bitmaps in iterator.
9536 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9537 (clear_garbaged_frames): Set force_flush_display_p if resized.
9538 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9539 (display_line): Handle cursor in fringe at eob.
9540 (display_line): Set row user fringe bitmaps from iterator.
9541
9542 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9543 Use cursor color for displaying cursor in fringe.
9544 (x_redisplay_interface): Add null handlers for
9545 define_fringe_bitmap and destroy_fringe_bitmap functions.
9546
9547 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9548
9549 * macfns.c (Fx_change_window_property): Make doc string and
9550 parameters same as for X version.
9551
9552 * w32fns.c (Fx_change_window_property): Ditto.
9553
9554 2004-02-07 Kim F. Storm <storm@cua.dk>
9555
9556 * xdisp.c (hscroll_window_tree): Position cursor near to right
9557 margin in hscrolled window when jumping to end of line (rather
9558 than centering cursor).
9559
9560 * process.c (wait_reading_process_input): Don't do adaptive read
9561 buffering if waiting for a specific process.
9562
9563 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9564
9565 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9566 (Fread_minibuffer, Feval_minibuffer)
9567 (Fread_string, Fread_no_blanks_input)
9568 (Fcompleting_read): Doc fixes.
9569 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9570 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9571 (read_minibuf): Fix initial comment.
9572 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9573 case-fold-search to the value of completion-ignore-case when
9574 checking completion-regexp-list.
9575 (Fdisplay_completion_list): Make it handle arguments that are
9576 symbols. Doc fix.
9577
9578 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9579
9580 * xterm.h: Add declaration of free_frame_menubar.
9581
9582 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9583 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9584 (Fx_change_window_property): Add declaration of parameters type and
9585 format. Remove unused variable cons.
9586
9587 * xselect.c: Include stdio,h.
9588
9589 2004-02-05 Kenichi Handa <handa@m17n.org>
9590
9591 * fns.c (Fset_char_table_range): Fix previous change.
9592
9593 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9594
9595 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9596
9597 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9598
9599 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9600
9601 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9602 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9603
9604 2004-02-04 Kenichi Handa <handa@m17n.org>
9605
9606 * fns.c (Fset_char_table_range): Handle charsets ascii,
9607 eight-bit-control, and eight-bit-graphic correctly.
9608
9609 2004-02-03 Jason Rumney <jasonr@gnu.org>
9610
9611 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9612
9613 * w32fns.c (x_to_w32_font): Likewise.
9614
9615 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9616
9617 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9618 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9619
9620 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9621 ClientMessages.
9622
9623 * xselect.c: Include termhooks.h and X11/Xproto.h
9624 (x_check_property_data, x_fill_property_data)
9625 (x_property_data_to_lisp, mouse_position_for_drop)
9626 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9627 (Fx_send_client_event): Move here from xfns.c.
9628 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9629
9630 * xfns.c (x-send-client-message): Move to xselect.c
9631 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9632 OUTER_P.
9633 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9634 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9635 if vector_ret_p is true.
9636 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9637
9638 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9639
9640 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9641 basename of FILE relative to it, not FILE itself.
9642
9643 2004-02-02 Kenichi Handa <handa@m17n.org>
9644
9645 * coding.c (coding_restore_composition): Check invalid
9646 composition data more rigidly.
9647
9648 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9649
9650 * fileio.c (Fread_file_name_internal): Correctly handle the case
9651 where insert-default-directory is nil.
9652 (Fread_file_name): Always return an empty string if the user exits
9653 with an empty minibuffer. Adapt the docstring accordingly.
9654 (syms_of_fileio): Adapt the docstring of insert-default-directory
9655 to the change in Fread_file_name.
9656
9657 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9658
9659 * alloca.c [!alloca]: Fix the prototype for xfree.
9660
9661 2004-01-29 Kenichi Handa <handa@m17n.org>
9662
9663 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9664 (string_byte_to_char): Likewise.
9665
9666 2004-01-28 Peter Runestig <peter@runestig.com>
9667
9668 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9669
9670 2004-01-27 Steven Tamm <steventamm@mac.com>
9671
9672 * unexmacosx.c (unexec_copy): Do not copy more than was
9673 requested to prevent overwriting during unexec.
9674
9675 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9676
9677 * process.c (sigchld_handler): Add comment about not calling malloc.
9678
9679 * process.h: Add extern to synch_process_termsig.
9680
9681 2004-01-27 Steven Tamm <steventamm@mac.com>
9682
9683 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9684 Move setting of scroll bars from make_mac_frame to
9685 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9686
9687 2004-01-26 Richard M. Stallman <rms@gnu.org>
9688
9689 * search.c (Freplace_match): Handle nonexistent
9690 back-references properly.
9691
9692 2004-01-03 Richard M. Stallman <rms@gnu.org>
9693
9694 * window.c (decode_any_window): New function.
9695 (Fwindow_height, Fwindow_width, Fwindow_edges)
9696 (Fwindow_pixel_edges, Fwindow_inside_edges)
9697 (Fwindow_inside_pixel_edges): Use decode_any_window.
9698
9699 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9700
9701 * process.h: synch_process_termsig new variable.
9702
9703 * callproc.c: Define synch_process_termsig.
9704 (Fcall_process): Initiate synch_process_termsig to zero and
9705 check if non-zero and get signal name after subprocess has ended.
9706
9707 * process.c (sigchld_handler): Set synch_process_termsig
9708 if terminated by a signal. synch_process_death setting removed.
9709
9710 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9711
9712 2004-01-26 Andreas Schwab <schwab@suse.de>
9713
9714 * print.c (print_preprocess): Declare size as EMACS_INT to not
9715 lose bits.
9716 (print_object): Likewise.
9717 * alloc.c (Fpurecopy): Likewise.
9718
9719 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9720
9721 * window.c (Fwindow_minibuffer_p): Doc fix.
9722
9723 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9724
9725 * editfns.c (Fformat): Make both passes accept the same set of flags.
9726
9727 2004-01-23 Kenichi Handa <handa@m17n.org>
9728
9729 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9730 one, set buffer to OBJECT temporarily.
9731
9732 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9733
9734 * keyboard.c (kbd_buffer_gcpro): Remove.
9735 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9736 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9737 Don't initialize and/or maintain the variable any more. It was made
9738 redundant by my commit of 2003-06-15.
9739
9740 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9741
9742 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9743
9744 * lisp.h: Add undef DECL_ALIGN.
9745
9746 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9747
9748 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9749 Check interrupt_input_pending explicitly.
9750
9751 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9752
9753 * keyboard.c (handle_async_input): New fun,
9754 extracted from input_available_signal.
9755 (input_available_signal, reinvoke_input_signal): Use it.
9756
9757 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9758
9759 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9760
9761 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9762 manipulation macros for when tags are in the lower bits.
9763 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9764 (DECL_ALIGN): New macro.
9765 (DEFUN): Use it.
9766
9767 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9768
9769 * s/darwin.h (__attribute__): Remove outdated workaround.
9770
9771 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9772
9773 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9774 Don't check range of malloc address.
9775 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9776
9777 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9778
9779 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9780
9781 2004-01-19 Kenichi Handa <handa@m17n.org>
9782
9783 * fontset.c (fontset_font_pattern): Fix previous change.
9784
9785 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9786
9787 * xdisp.c (Voverflow_newline_into_fringe)
9788 (move_it_in_display_line_to, redisplay_internal)
9789 (update_window_fringes, redisplay_window, display_line, window):
9790 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9791 that it compiles without a window-system.
9792 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9793
9794 2004-01-16 Kim F. Storm <storm@cua.dk>
9795
9796 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9797
9798 * buffer.c (init_buffer_once): Set buffer_defaults and
9799 buffer_local_flags for indicate_buffer_boundaries.
9800 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9801 default- variable for it.
9802
9803 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9804 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9805 New members exact_window_width_line_p and cursor_in_fringe_p for
9806 overflowing newlines into right fringe.
9807 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9808 and indicate_bottom_line_p for buffer boundaries and scrolling.
9809 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9810 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9811 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9812 and HOLLOW_SQUARE_BITMAP.
9813 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9814 Add prototypes.
9815
9816 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9817 instead of related indicator fields.
9818 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9819 (direct_output_for_insert): Handle exact width lines like
9820 contined lines. Call update_window_fringes.
9821 (update_window): Call update_window_fringes.
9822 (scrolling_window): Don't skip desired rows with changed bitmaps.
9823 Check if fringe bitmaps changes when assigning scrolled rows.
9824
9825 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9826 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9827 (move_it_in_display_line_to): Overflow newline into fringe for
9828 rows that are exactly as wide as the window.
9829 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9830 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9831 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9832 (fringe_bitmaps): Add new bitmaps.
9833 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9834 Select proper bitmap for cursor in fringe when appropriate.
9835 Handle alignment of bitmap to top or bottom of row.
9836 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9837 done by update_window_fringes.
9838 (update_window_fringes, draw_window_fringes): New functions.
9839 (redisplay_internal): Call update_window_fringes in case only
9840 cursor row is updated.
9841 (redisplay_window): Call update_window_fringes.
9842 Explicitly call draw_window_fringes if redisplay was done using
9843 the current matrix or the overlay arrow is in the window.
9844 (try_window_reusing_current_matrix): Mark scrolled rows for
9845 fringe update (to update buffer-boundaries / scrolling icons).
9846 (find_last_unchanged_at_beg_row): Handle exact width lines line
9847 continued lines.
9848 (display_line): Overflow newline into fringe for rows that are
9849 exactly as wide as the window. Don't append space for newline
9850 in this case.
9851 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9852 in fringe as if it had been overwritten.
9853 (erase_phys_cursor): Erase cursor bitmap in fringe.
9854 (syms_of_xdisp): Mark show-trailing-whitespace and
9855 void-text-area-pointer as user options.
9856 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9857
9858 * xterm.c (x_update_window_end): Call draw_window_fringes.
9859 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9860 in row instead of actually drawing fringe bitmaps.
9861 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9862 (x_draw_window_cursor): Draw cursor in fringe.
9863
9864 * w32term.c (x_update_window_end): Call draw_window_fringes.
9865 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9866 in row instead of actually drawing fringe bitmaps.
9867 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9868 (w32_draw_window_cursor): Draw cursor in fringe.
9869
9870 * macterm.c (x_update_window_end): Call draw_window_fringes.
9871 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9872 in row instead of actually drawing fringe bitmaps.
9873 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9874 (mac_draw_window_cursor): Draw cursor in fringe.
9875
9876 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9877
9878 * xterm.c (handle_one_xevent): Don't handle characters that are part
9879 of an old style (XLookupString) compose sequence.
9880
9881 2004-01-15 Kenichi Handa <handa@m17n.org>
9882
9883 * search.c (Freplace_match): Use make_multibyte_string or
9884 make_unibyte_string according to the buffer multibyteness.
9885
9886 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9887
9888 * alloc.c (struct interval_block, struct string_block)
9889 (struct symbol_block, struct marker_block, live_string_p)
9890 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9891 Better preserve alignment for objects in blocks.
9892 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9893
9894 * lread.c (defvar_per_buffer): Remove dead declaration.
9895
9896 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9897 space size.
9898
9899 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9900
9901 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9902 if a key press should pop down. Only pop down if a key is pressed
9903 outside the menu/dialog.
9904 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9905 popup_get_selection.
9906 (create_and_show_dialog): Pass 1 for down_on_keypress to
9907 popup_get_selection.
9908
9909 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9910
9911 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9912 BLOCK/UNBLOCK_INPUT.
9913
9914 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9915
9916 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9917 specified.
9918
9919 2004-01-08 Kenichi Handa <handa@m17n.org>
9920
9921 * editfns.c (Fformat): Fix '&' to '&&'.
9922
9923 2004-01-08 Andreas Schwab <schwab@suse.de>
9924
9925 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9926 size if PSEUDOVECTOR_FLAG is set.
9927
9928 2004-01-07 Kenichi Handa <handa@m17n.org>
9929
9930 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9931
9932 * fontset.c (fontset_ref_via_base): Fix previous change.
9933
9934 2004-01-07 Kim F. Storm <storm@cua.dk>
9935
9936 * process.c (read_process_output): Only activate adaptive
9937 buffering if we read less than 256 bytes at a time.
9938
9939 2004-01-06 Kim F. Storm <storm@cua.dk>
9940
9941 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9942 object and image object. Return glyph width and height.
9943 (mode_line_string, marginal_area_string): Ditto.
9944
9945 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9946 (marginal_area_string): Fix prototypes.
9947
9948 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9949 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9950 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9951
9952 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9953 buffer_posn_from_coords, and marginal_area_string functions to
9954 include both string object and image object in the lispy position.
9955 Also add actual glyph width and height to position.
9956 (read_key_sequence): Use real buffer position from mouse
9957 event to find keymap property even when click is in marginal area.
9958
9959 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9960 mode_line_string and marginal_area_string functions to handle
9961 both string object and image object properties.
9962
9963 2004-01-06 Andreas Schwab <schwab@suse.de>
9964
9965 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9966 character.
9967
9968 2004-01-02 Andreas Schwab <schwab@suse.de>
9969
9970 * macterm.c (emacs_options, x_initialized, same_x_server):
9971 Remove unused (and duplicated) definitions.
9972
9973 2004-01-02 Kim F. Storm <storm@cua.dk>
9974
9975 * process.h (struct Lisp_Process): New members for adaptive read
9976 buffering: adaptive_read_buffering, read_output_delay, and
9977 read_output_skip.
9978
9979 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9980 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9981 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9982 (process_output_delay_count, process_output_skip): New vars.
9983 (Vprocess_adaptive_read_buffering): New variable.
9984 (make_process): Initialize adaptive read buffering members.
9985 (Fstart_process): Set adaptive_read_buffering member.
9986 (deactivate_process): Cleanup adaptive read buffering.
9987 (wait_reading_process_input): Temporarily omit delayed
9988 subprocesses from the set of file descriptors to read from;
9989 adjust the select timeout if we skipped any subprocesses.
9990 (read_process_output): Increase adaptive read buffering delay if
9991 we read less than a full buffer; reduce delay when we read a
9992 full buffer.
9993 (send_process): Simplify using local Lisp_Process var.
9994 Reset adaptive read buffering delay after write.
9995 (init_process): Initialize process_output_delay_count and
9996 process_output_skip.
9997 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9998
9999 2004-01-01 Jason Rumney <jasonr@gnu.org>
10000
10001 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10002
10003 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10004
10005 * print.c (Ferror_message_string): Add hyperlink in the docstring
10006 to the definition of `signal' in the Elisp manual.
10007 * eval.c (Fsignal): Ditto.
10008
10009 2003-12-29 James Clark <jjc@jclark.com>
10010
10011 * fns.c (internal_equal): Return t for two NaN arguments.
10012
10013 2003-12-29 Richard M. Stallman <rms@gnu.org>
10014
10015 * data.c (store_symval_forwarding): Handle setting
10016 default-fill-column, etc., by changing the value in
10017 buffers that use the default.
10018
10019 * minibuf.c (Fset_minibuffer_window): Doc fix.
10020
10021 * fileio.c (choose_write_coding_system): Ignore auto_saving
10022 if using the visited file for auto saves.
10023 (Fwrite_region): Don't update SAVE_MODIFF
10024 if auto-saving in visited file.
10025
10026 2003-12-29 Kenichi Handa <handa@m17n.org>
10027
10028 * dispextern.h (face_font_available_p): Extern it.
10029
10030 * fontset.c (Voverriding_fontspec_alist): New variable.
10031 (lookup_overriding_fontspec): New function.
10032 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10033 (fontset_font_pattern): Likewise.
10034 (regulalize_fontname): New function.
10035 (Fset_fontset_font): Call regulalize_fontname.
10036 (Fset_overriding_fontspec_internal): New function.
10037 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10038 Defsubr Sset_overriding_fontspec_internal.
10039
10040 * xfaces.c (face_font_available_p): New function.
10041
10042 2003-12-28 Richard M. Stallman <rms@gnu.org>
10043
10044 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10045 or if its name is nil.
10046
10047 * buffer.c (Fkill_buffer): Don't delete auto-save file
10048 if it's the same as the visited file.
10049
10050 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10051
10052 * coding.c (Fcheck_coding_system): Doc fix.
10053
10054 2003-12-28 Kim F. Storm <storm@cua.dk>
10055
10056 * Makefile.in (eval.o): Depend on dispextern.h.
10057
10058 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10059 image glyph using image's ascent.
10060 (mode_line_string): Return image glyph as object clicked on.
10061 Adjust y0 for image glyph using image's ascent.
10062
10063 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10064 (struct glyph): New members, ascent and descent. Used to save
10065 this glyph's ascent and descent, instead of having.
10066 (struct glyph): Declare member face_id using FACE_ID_BITS.
10067 (find_hot_spot): Add prototype.
10068
10069 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10070 (QCmap): Declare extern.
10071 (make_lispy_position): When position is inside image hot-spot,
10072 use hot-spot element's id as posn element.
10073
10074 * lisp.h (IMAGEP): New macro to test for image object type.
10075 (Qimage): Declare extern.
10076
10077 * macfns.c (Qimage): Remove extern (now in lisp.h).
10078 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10079
10080 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10081
10082 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10083 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10084
10085 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10086
10087 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10088
10089 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10090 pointer types.
10091 (Qrelative_width, Qalign_to): Remove unused variables.
10092 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10093 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10094 image maps.
10095 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10096 new dx and dy args.
10097 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10098 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10099 than row's ascent and height, to get sensible height on tall rows.
10100 (build_desired_tool_bar_string): Remove Qimage extern.
10101 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10102 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10103 image glyph is alone on the last line.
10104 (append_glyph, append_composite_glyph, produce_image_glyph)
10105 (append_stretch_glyph): Set glyph's ascent and descent.
10106 (on_hot_spot_p): New function to check if position is inside an
10107 rectangular, circular, or polygon-shaped image hot-spot,
10108 (find_hot_spot): New function to search for image hot-spot.
10109 (Flookup_image_map): New defun to search for image hot-spot.
10110 (define_frame_cursor1): New aux function to determine frame pointer.
10111 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10112 Handle `pointer' text property and :pointer image property to
10113 control frame pointer shape. Detect image hot-spots for pointer
10114 and help_echo properties. Use define_frame_cursor1.
10115 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10116 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10117 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10118
10119 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10120
10121 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10122 (Qimage): Remove extern (now in lisp.h).
10123 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10124
10125 * xmenu.c (show_help_event): Remove unused code.
10126
10127 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10128 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10129 row's ascent and descent, to get a sensible height on tall rows.
10130
10131 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10132
10133 * minibuf.c (Fcompleting_read): Undo previous change.
10134
10135 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10136
10137 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10138 Arguments GCPRO'ed in call to file name handler.
10139
10140 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10141
10142 * termcap.c (tgetst1): Scan for "%pN"; if all
10143 N are continuous in [1,9], remove all "%pN".
10144
10145 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10146
10147 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10148
10149 * xfaces.c (lface_fully_specified_p): Take into account that
10150 MAC OS always have unspecified stipple.
10151
10152 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10153
10154 * tparam.c (tparam1): Add handling for `%pN', which
10155 means use param N for the next substitution.
10156
10157 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10158
10159 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10160 In case `frame' is nil, consult the selected frame.
10161 (Fcolor_supported_p): Likewise.
10162
10163 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10164
10165 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10166 Doc fixes.
10167
10168 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10169 and an integer. Adapt the introductory comment accordingly.
10170 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10171 Doc fix.
10172 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10173 read_minibuf.
10174 (Fcompleting_read): Delete code moved into read_minibuf.
10175 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10176
10177 2003-12-03 Kenichi Handa <handa@m17n.org>
10178
10179 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10180 encoding sequence.
10181
10182 2003-12-01 Kenichi Handa <handa@m17n.org>
10183
10184 * composite.c (syms_of_composite): Don't make the compostion hash
10185 table week.
10186
10187 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10188
10189 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10190 * textprop.c (Fget_char_property_and_overlay): New function.
10191 (syms_of_textprop): Defsubr it.
10192
10193 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10194
10195 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10196 to compile on terminal configuration.
10197
10198 * fileio.c (Fread_file_name): Check use_file_dialog also before
10199 calling Fx_file_dialog.
10200
10201 * fns.c (use_file_dialog): New variable.
10202 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10203
10204 2003-11-29 Kim F. Storm <storm@cua.dk>
10205
10206 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10207 (syms_of_msdos): Don't intern and staticpro them.
10208
10209 2003-11-27 Kim F. Storm <storm@cua.dk>
10210
10211 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10212 coordinates relative to glyph at posn. If glyph is an image,
10213 return that as object at posn. Callers changed.
10214 (mode_line_string, marginal_area_string): Calculate and return
10215 pixel coordinates relative to glyph. Callers changed.
10216
10217 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10218 (marginal_area_string): Fix prototypes.
10219 (window_box_left_offset, window_box_right_offset): Add prototypes.
10220
10221 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10222 Remove prototypes.
10223
10224 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10225
10226 * keyboard.c (make_lispy_position): Add x and y coordinates
10227 relative to the current glyph as 7th element of position.
10228 If glyph is an image, return it in the object element.
10229 (read_key_sequence): Skip checks for keymap property in cases
10230 where POSN_STRING is not a string (e.g. an image).
10231
10232 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10233 (Vshow_text_cursor_in_void): New variable.
10234 (glyph_to_pixel_coords): Don't use negative hpos.
10235 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10236 (append_stretch_glyph): Change ascent arg to be actual value
10237 in pixels rather than ratio to height. Callers changed.
10238 (calc_pixel_width_or_height): New aux function, implementing
10239 pixel based artihmetic for glyph widths and heights.
10240 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10241 :width, :height, :align-to, and :ascent, thus allowing these to
10242 be specified in pixels as well as multiples of characters.
10243 Don't produce stretch glyphs with zero width or height.
10244 (get_specified_cursor_type): Declare static.
10245 (get_window_cursor_type): Declare static. Add glyph arg to be
10246 able to know when cursor is on an image; always substitute
10247 hollow-box cursor for filled-box cursor on images, to avoid
10248 negative images and flicker when blinking the cursor.
10249 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10250 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10251 than vertical scroll-bar cursor in display margins.
10252 (note_mouse_highlight): Use non-text cursor rather than text
10253 cursor in fringes and over images in the text area.
10254 Use non-text cursor when mouse pointer is outside editable text,
10255 i.e. in the void after end-of-line or end-of-buffer; this was
10256 already done for W32, but is now standard for all systems --
10257 user can toggle show-text-cursor-in-void to get old behaviour.
10258 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10259 Vdisplay_pixels_per_inch.
10260
10261 2003-11-25 Andreas Schwab <schwab@suse.de>
10262
10263 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10264 EMACS_INT to not lose bits.
10265 (Ffillarray): Don't set bits beyond the size of a bool vector.
10266
10267 2003-11-25 Kim F. Storm <storm@cua.dk>
10268
10269 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10270 define this defun on systems that cannot use stderr as lvalue.
10271
10272 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10273
10274 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10275 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10276 ld's default is incompatible with unexec.
10277
10278 2003-11-23 Kim F. Storm <storm@cua.dk>
10279
10280 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10281 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10282 (Fforce_window_update): New defun.
10283 (syms_of_window): Defsubr it.
10284 (Fset_window_margins, Fset_window_fringes): Doc fix.
10285
10286 * print.c (Fredirect_debugging_output): New defun.
10287 (syms_of_print): Defsubr it.
10288
10289 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10290
10291 * fns.c (Fset_char_table_parent): Doc fix.
10292
10293 2003-11-22 Kim F. Storm <storm@cua.dk>
10294
10295 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10296 for glyph clicked on, rather than (unused) pixel positions.
10297 (mode_line_string, marginal_area_string): Change X and Y args to
10298 pointers for returning actual row/column for glyph clicked on.
10299 Simplify and optimize loops.
10300
10301 * dispextern.h (mode_line_string, marginal_area_string):
10302 Update prototypes.
10303
10304 * keyboard.c (make_lispy_position): New function for generating
10305 mouse click positions from frame and pixel coordinates.
10306 Enhanced to return buffer position and actual row/column for
10307 events outside the text area using updated mode_line_string and
10308 marginal_area_string functions.
10309 Return left-fringe and right-fringe clicks as such, rather than
10310 clicks in text area.
10311 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10312 pixel_to_glyph_coords, as we never use the results.
10313 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10314 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10315 Eliminate unused code in WHEEL_EVENT handling.
10316 (make_lispy_movement): Use make_lispy_position.
10317
10318 * window.c (coordinates_in_window): Remove redundant tests.
10319 Fix returned X pixel value for left-margin.
10320
10321 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10322 mode_line_string and marginal_area_string parameters.
10323
10324 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10325
10326 * w32.c (struct the_group, getgrgid): Add.
10327 * mac.c (struct my_group, getgrgid): Add.
10328
10329 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10330
10331 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10332
10333 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10334
10335 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10336 include in call to file name handler. Optionally translate numeric
10337 UID and GID to strings. Update docstring.
10338 (directory_files_internal): Add parameter ID-FORMAT.
10339 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10340 include in call to file name handler and call to
10341 directory_files_internal. Update Docstring.
10342 (Fdirectory_files): Add dummy parameter in call to
10343 directory_files_internal.
10344 * lisp.h (Qinteger): Add.
10345 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10346 (Ffile_attributes): Add parameter.
10347 * data.c (Qinteger): Export.
10348
10349 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10350
10351 * fns.c (Freverse, Fnreverse): Doc fixes.
10352
10353 2003-11-19 Kim F. Storm <storm@cua.dk>
10354
10355 * xdisp.c (init_iterator): Initialize it->start to position
10356 before reseating (in case start position is invisible).
10357 (init_to_row_start): Set it->start to row-start.
10358 (redisplay_window): Accept optional_new_start if start position
10359 is invisible (in which case IT_CHARPOS overshoots PT).
10360 (display_line): Setup row->start from it->start (rather than
10361 it->current which is wrong if first char on line is invisible).
10362 When done, reseat it->start to it->current (= start of next row).
10363 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10364 is only partially visible.
10365
10366 * dispextern.h (struct it): New member start.
10367
10368 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10369
10370 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10371 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10372 of block_index outside of the macro call.
10373 (Fgarbage_collect): Remove null code.
10374
10375 * m/amdx86-64.h: Don't redefine XPNTR.
10376
10377 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10378 of VALMASK.
10379
10380 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10381 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10382 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10383
10384 * lisp.h (VALMASK): Only define for non-union type.
10385 (MARKBIT): Remove.
10386 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10387 (XTYPE): Define unconditionally.
10388 (XSETTYPE): Remove one more remnant.
10389 (EQ): Define differently for the union and non-union cases.
10390 (INTMASK): New bit mask.
10391 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10392 (GC_EQ): Delegate to EQ.
10393
10394 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10395
10396 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10397
10398 * xterm.c (x_window_to_scroll_bar): Move check of display to
10399 where window_id is compared.
10400
10401 2003-11-17 Kim F. Storm <storm@cua.dk>
10402
10403 * dispextern.h (struct it): New member first_vpos.
10404
10405 * xdisp.c (start_display): Set it->first_vpos.
10406 (try_window_id): Use first_vpos to start display in first _text_
10407 line if no reusable lines at start of window with header line.
10408
10409 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10410
10411 * w32fns.c (XPutPixel):
10412 * w32bdf.c (w32_init_bdf_font):
10413 * sunfns.c (sel_read):
10414 * process.c (Fmake_network_process):
10415 * frame.c (store_frame_param):
10416 * fontset.c (Fset_fontset_font):
10417 * emacs.c (shut_down_emacs):
10418 * ccl.c (ccl_driver): Remove period at end of error message.
10419
10420 * config.in: Regenerate.
10421
10422 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10423 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10424 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10425 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10426 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10427
10428 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10429
10430 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10431 (XTmouse_position, handle_one_xevent): Pass Display* to
10432 x_window_to_scroll_bar.
10433 (x_window_to_scroll_bar): Take a Display* argument.
10434 Check that display for frame is equal to Display* argument.
10435 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10436 x_display_info_for_display instead. Use Display in xev instead
10437 of GDK_DISPLAY.
10438 (x_dispatch_event): Call x_display_info_for_display.
10439 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10440 (x_connection_closed): Call xg_display_close for GTK.
10441 (x_term_init): Call xg_display_open for additional displays.
10442 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10443 for GTK.
10444
10445 * xmenu.c (single_menu_item, mouse_position_for_popup)
10446 (x_activate_menubar): Formatting adjustments.
10447
10448 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10449 adjustments.
10450
10451 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10452 (xg_display_close, xg_create_default_cursor)
10453 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10454 handling.
10455 (xg_left_ptr_cursor): Remove.
10456 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10457 cursor here.
10458 (xg_win_to_widget): Take Display* argument, call
10459 gdk_xid_table_lookup_for_display.
10460 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10461 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10462 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10463 in FRAME_X_DISPLAY_INFO.
10464 (xg_get_scroll_id_for_window): Take Display* argument.
10465 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10466 (xg_initialize): Remove xg_left_ptr_cursor.
10467
10468 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10469 Display* argument.
10470 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10471
10472 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10473
10474 * xterm.c (x_detect_focus_change): Do not change focus frame for
10475 Enter/LeaveNotify if the current focus frame has explicit focus.
10476
10477 2003-11-14 Kim F. Storm <storm@cua.dk>
10478
10479 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10480 is active and first glyph is only partially visible.
10481
10482 2003-11-13 Kenichi Handa <handa@m17n.org>
10483
10484 * xdisp.c (select_frame_for_redisplay): New function.
10485 (redisplay_internal): Record also selected_frame for
10486 unwind_redisplay. Call select_frame_for_redisplay before
10487 redrawing each frame.
10488 (unwind_redisplay): Argument changed to a cons.
10489
10490 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10491
10492 * fns.c (Fstring_to_multibyte): Doc fix.
10493
10494 2003-11-11 Kenichi Handa <handa@m17n.org>
10495
10496 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10497
10498 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10499
10500 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10501 program specified positions.
10502
10503 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10504
10505 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10506
10507 2003-11-08 Kenichi Handa <handa@m17n.org>
10508
10509 * Makefile.in (lisp): Add kannada.el.
10510 (shortlisp): Likewise.
10511
10512 2003-11-07 Kenichi Handa <handa@m17n.org>
10513
10514 * coding.c (coding_allocate_composition_data):
10515 Reset coding->composing to COMPOSITION_NO.
10516 (coding_restore_composition): Detect invalid composition data.
10517 Give Fstring and Fvector a Lispy integer, not C int.
10518
10519 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10520
10521 * floatfns.c (Flogb): Don't use VALMASK.
10522
10523 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10524 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10525
10526 * lisp.h (XINT): Move the cast to clarify what is going on.
10527 (GCTYPEMASK, XSETTYPE): Remove.
10528 (XGCTYPE): Make it an alias of XTYPE.
10529
10530 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10531
10532 * xterm.c (x_term_init): Fix formatting.
10533
10534 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10535
10536 * gtkutil.h (xg_have_tear_offs): Declare.
10537 (xg_keep_popup, xg_did_tearoff): Remove.
10538
10539 * gtkutil.c: Remove variable xg_did_tearoff.
10540 (xg_have_tear_offs): New function.
10541 (tearoff_remove): Just decrease xg_detached_menus.
10542 (tearoff_activate): Increase xg_detached_menus and call
10543 tearoff_remove when tearoff is removed.
10544 (xg_keep_popup): Remove function.
10545 (create_menus): Give add_tearoff_p as argument to recursive
10546 call to create_menus.
10547 (xg_create_widget): Use variables instead of multiple
10548 strcmp. Tell create_menus to create tear off only for
10549 menu bar menus.
10550 (xg_update_menubar): Change title for a detached menu also.
10551 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10552 of deep_p.
10553 (xg_initialize): Initialize xg_detached_menus, remove
10554 initialization of xg_did_tearoff.
10555
10556 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10557 xg_have_tear_offs returns non-zero.
10558 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10559 call to xg_keep_popup.
10560
10561 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10562
10563 * macterm.c (XTread_socket): Handle menubar selection and grow
10564 window only for mouseDown events.
10565
10566 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10567
10568 * xterm.c (x_term_init): For GTK part, increase x_initialized
10569 to check for more than one display. Use error instead of return 0.
10570
10571 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10572
10573 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10574 (copy_dysymtab): Call it.
10575
10576 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10577
10578 * eval.c (Fdefvaralias): Doc fix.
10579
10580 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10581
10582 * data.c (Fsetplist): Doc fix.
10583
10584 2003-10-14 Lute Kamstra <lute@gnu.org>
10585
10586 * window.c (Fset_window_fringes): Clarify docstring.
10587
10588 2003-10-14 Kim F. Storm <storm@cua.dk>
10589
10590 * window.c (Fset_window_margins): Simplify arg checking.
10591
10592 2003-10-13 Richard M. Stallman <rms@gnu.org>
10593
10594 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10595 (print_partial_compiled_pattern): Replace assert with a printout.
10596 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10597
10598 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10599
10600 * window.c (Fset_window_margins): Allow only integers as args.
10601 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10602 Doc fixes.
10603
10604 2003-10-13 Lute Kamstra <lute@gnu.org>
10605
10606 * window.c (Fset_window_fringes): Elaborate docstring.
10607
10608 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10609
10610 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10611
10612 * s/darwin.h (GC_MARK_STACK): Define.
10613
10614 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10615
10616 * window.c (shrink_windows): New function.
10617 (size_window): Call shrink_windows to calculate window sizes when
10618 shrinking frame with more than one window.
10619
10620 2003-10-12 Kim F. Storm <storm@cua.dk>
10621
10622 * xdisp.c (compute_fringe_widths): Doc fix.
10623
10624 2003-10-08 Kenichi Handa <handa@m17n.org>
10625
10626 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10627
10628 2003-10-07 Kenichi Handa <handa@m17n.org>
10629
10630 * coding.c (Qcoding_system_define_form): New variable.
10631 (syms_of_coding): Intern and staticpro it.
10632 (Fcheck_coding_system): Try to autoload the definition of
10633 CODING-SYSTEM.
10634
10635 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10636
10637 * fns.c (Frequire): Doc fix.
10638
10639 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10640
10641 * xfns.c (Fx_send_client_event): New function as a base for
10642 manipulating extended window manager hints.
10643 (Fx_send_client_event): Remove unused variable s.
10644
10645 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10646 that function is removed.
10647
10648 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10649 x/y_pixels_outer_diff.
10650 (x_check_expected_move): Calculate move_offset_left/top.
10651
10652 * xterm.h (struct x_output): New members: move_offset_top/left.
10653
10654 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10655 call x_set_offset directly.
10656
10657 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10658
10659 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10660
10661 * xterm.c (x_delete_display): Free font names and font_encoder
10662 in dpyinfo->font_table.
10663
10664 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10665 Move xfree of font names to x_delete_display.
10666
10667 * xterm.h (struct x_display_info): New member, wm_type.
10668 (struct x_output): New members, expected_top/left and
10669 check_expected_move.
10670
10671 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10672 is received.
10673 (handle_one_xevent): Rename x_check_expected_move from
10674 x_check_fullscreen_move.
10675 (x_set_offset): Only add WM decoration sizes to modified_top/left
10676 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10677 (x_check_expected_move): Rename from x_check_fullscreen_move.
10678 Removed fullscreen specific code. Use check_expected_move,
10679 expected_left/top instead. Also, set wm_type.
10680 (x_term_init): Initialize wm_type to unknown.
10681
10682 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10683 sizes to move_x/y.
10684
10685 2003-10-03 Kenichi Handa <handa@m17n.org>
10686
10687 * macterm.c (x_load_font): Clear all members of FONTP before start
10688 filling them.
10689
10690 2003-10-02 Kenichi Handa <handa@m17n.org>
10691
10692 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10693 before calling find_ccl_program_func. Call find_ccl_program_func
10694 only when fontp->font_encoder is not NULL.
10695
10696 * xterm.c (x_load_font): Clear all members of FONTP before start
10697 filling them.
10698
10699 2003-10-03 John Paul Wallington <jpw@gnu.org>
10700
10701 * keymap.c (map_keymap): Don't abort when binding is a vector.
10702
10703 2003-10-02 Jason Rumney <jasonr@gnu.org>
10704
10705 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10706 Sync dependencies with Makefile.in.
10707 (alloca.o): Remove.
10708
10709 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10710 filling them.
10711
10712 * w32bdf.c (w32_load_bdf_font): Likewise.
10713
10714 2003-09-30 Richard M. Stallman <rms@gnu.org>
10715
10716 * term.c (set_tty_color_mode): Calculate current_mode_spec
10717 regardless of value of VAL.
10718
10719 * intervals.c (graft_intervals_into_buffer):
10720 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10721 Handle over_used when splitting UNDER.
10722
10723 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10724
10725 * regex.c (regex_compile): Free the stack when returning from function.
10726
10727 2003-09-28 Kenichi Handa <handa@m17n.org>
10728
10729 * fontset.c (Finternal_char_font): Change return value to
10730 cons (FONT-NAME . GLYPH-CODE).
10731
10732 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10733
10734 * term.c (tty_setup_colors): Treat any negative argument as -1.
10735
10736 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10737
10738 * process.c (send_process): Delete unused temp_buf.
10739
10740 2003-09-26 Dave Love <fx@gnu.org>
10741
10742 * xterm.c (x_bitmap_mask): Declare.
10743
10744 2003-09-25 Dave Love <fx@gnu.org>
10745
10746 * Makefile.in (fns.o): Depend on md5.h.
10747
10748 2003-09-25 Kim F. Storm <storm@cua.dk>
10749
10750 * window.c (set_window_buffer): Fix redisplay problems when
10751 switching between buffers with different display margin widths.
10752
10753 2003-09-23 Kim F. Storm <storm@cua.dk>
10754
10755 * process.c (set_socket_option): Fix :bindtodevice option.
10756 (Fset_network_process_option): Update process contact list when
10757 setting option succeeds.
10758 (Fmake_network_process): Doc fix.
10759
10760 2003-09-23 Dave Love <fx@gnu.org>
10761
10762 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10763
10764 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10765
10766 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10767 color mode is an integer number (it could be -1).
10768
10769 2003-09-22 Richard M. Stallman <rms@gnu.org>
10770
10771 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10772 in the case where OVER is longer than UNDER.
10773
10774 2003-09-22 Masatake YAMATO <jet@gyve.org>
10775
10776 * window.c (Fset_window_scroll_bars): Validate the value of
10777 `vertical_type'.
10778
10779 2003-09-21 Kim F. Storm <storm@cua.dk>
10780
10781 * frame.c (Vdefault_frame_scroll_bars): New variable.
10782 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10783 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10784 window-system default scroll bar position.
10785
10786 * window.c (Fwindow_scroll_bars): Doc fix.
10787
10788 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10789
10790 * xterm.c (x_set_offset): Take window manager decorations into account.
10791
10792 2003-09-19 Richard M. Stallman <rms@gnu.org>
10793
10794 * atimer.h: Don't include lisp.h.
10795 (P_): Define it here (as well as elsewhere).
10796
10797 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10798 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10799
10800 * data.c (Fvariable_binding_locus): New function.
10801 (syms_of_data): defsubr it.
10802 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10803
10804 2003-09-18 Dave Love <fx@gnu.org>
10805
10806 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10807
10808 * process.c (Fnetwork_interface_info): Fix type error.
10809 (Fnetwork_interface_list): Doc fix.
10810 (read_process_output, read_process_output): Delete unused var.
10811
10812 2003-09-17 Kim F. Storm <storm@cua.dk>
10813
10814 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10815 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10816 (Fnetwork_interface_info): Check that ifreq struct has required
10817 fields before accessing them; this requires that those fields are
10818 defined as macros, which may be too restrictive on some platforms,
10819 but it is better than failing on other platforms.
10820 (syms_of_process): Only defsubr above fns when included.
10821
10822 2003-09-17 Dave Love <fx@gnu.org>
10823
10824 * unexalpha.c: Don't include varargs.h.
10825
10826 2003-09-17 Kim F. Storm <storm@cua.dk>
10827
10828 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10829 for network process.
10830 (socket_options): Add `:' prefix to option names. Add optbit field.
10831 (set_socket_option): Remove no_error arg and special handling of s < 0.
10832 Return 1<<optbit for known option, 0 for unknown.
10833 Do not interpret 0 as false for boolean option (only nil).
10834 Pass failed option and value to report_file_error.
10835 (Fset_network_process_options): Replace by Fset_network_process_option.
10836 (Fset_network_process_option): New function to set just one option.
10837 (Fmake_network_process): Allow :coding arg to be a cons.
10838 Allow :server arg to be an integer specifying backlog size.
10839 Remove :options arg, and allow options to be specified directly
10840 as :KEY, VALUE pairs. Parse these options before binding socket.
10841 As before, :reuseaddr t is default for a server process, but this
10842 can now be disabled by specifying :reuseaddr nil.
10843 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10844 (init_process): Availability of network options is now checked with
10845 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10846 setup features.
10847 (syms_of_process): Fix defsubr's for the replaced functions.
10848
10849 2003-09-16 Dave Love <fx@gnu.org>
10850
10851 * Makefile.in: Depend on coding.h.
10852
10853 2003-09-14 Kim F. Storm <storm@cua.dk>
10854
10855 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10856 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10857 (syms_of_process): Defsubr them.
10858
10859 * config.in: Regenerate.
10860
10861 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10862
10863 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10864 * m/news-r6.h (XUNMARK): Remove.
10865 * m/mips.h (XUNMARK): Remove.
10866 * m/mips-siemens.h (XUNMARK): Remove.
10867 * m/iris4d.h (XUNMARK): Remove.
10868 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10869
10870 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10871
10872 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10873 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10874 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10875 (XTYPE): Use unsigned right-shift.
10876 (XMARKBIT, XMARK, XUNMARK): Remove.
10877
10878 * alloc.c (init_intervals, init_symbol, init_marker):
10879 Don't preallocate anything.
10880 (Fgarbage_collect, mark_object): Ignore the markbit.
10881
10882 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10883
10884 2003-09-08 Lute Kamstra <lute@gnu.org>
10885
10886 * xdisp.c (pint2hrstr): New function.
10887 (decode_mode_spec): Add `%i' and `%I' specs.
10888 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10889 for `mode-line-format'.
10890
10891 2003-09-07 Andreas Schwab <schwab@suse.de>
10892
10893 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10894 avoid warning.
10895
10896 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10897
10898 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10899
10900 2003-09-03 Kim F. Storm <storm@cua.dk>
10901
10902 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10903 change (superseded by 2002-08-30 change); the default blink-off
10904 cursor is now again "no cursor".
10905
10906 2003-09-01 Jason Rumney <jasonr@gnu.org>
10907
10908 * makefile.w32-in (alloca.o): Remove.
10909 (coding.o): Depend on intervals.h
10910 (emacs.o, bytecode.o): Depend on window.h
10911
10912 2003-09-01 Dave Love <fx@gnu.org>
10913
10914 * Makefile.in (alloca.o): Remove commands.
10915 (coding.o): Depend on intervals.h composite.h window.h.
10916 (emacs.o): Depend on window.h keyboard.h keymap.h.
10917 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10918 (bytecode.o): Depend on window.h.
10919
10920 2003-08-31 Jason Rumney <jasonr@gnu.org>
10921
10922 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10923 returned even when font_type is unknown.
10924
10925 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10926
10927 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10928
10929 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10930
10931 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10932 *_offset.
10933
10934 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10935 calculate pixel value.
10936
10937 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10938
10939 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10940 Don't tell redisplay display is accurate when it's actually been
10941 paused for pending input.
10942
10943 2003-08-29 Richard M. Stallman <rms@gnu.org>
10944
10945 * dispnew.c (adjust_glyph_matrix): Call window_box
10946 whenever W is nonzero.
10947
10948 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10949 (Fkill_local_variable, Fmake_variable_frame_local)
10950 (Flocal_variable_p, Flocal_variable_if_set_p):
10951 Use indirect_variable to trace thru variable aliases.
10952
10953 * config.in: Updated.
10954
10955 * callint.c (Fcall_interactively): Save and restore
10956 Vthis_command, Vthis_original_command, real_this_command,
10957 and current_kboard->Vlast_command.
10958
10959 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10960
10961 2003-08-29 Gerd Moellmann <gerd@gnu.org>
10962
10963 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10964
10965 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10966
10967 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10968 (decode_coding_sjis_big5): Likewise.
10969
10970 2003-08-27 Jason Rumney <jasonr@gnu.org>
10971
10972 * w32.c (sys_pipe): Protect against file descriptor overflow.
10973
10974 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10975
10976 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10977
10978 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10979
10980 * xfns.c (Vgtk_version_string): New variable.
10981 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10982
10983 2003-08-24 Eli Zaretskii <eliz@gnu.org>
10984
10985 * term.c (term_init): Remove `const' from buffer_size's declaration.
10986
10987 * Makefile.in (msdos.o): Depend on intervals.h.
10988
10989 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10990
10991 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10992
10993 * xterm.h (struct x_display_info): New fields: client_leader_window
10994 and Xatom_wm_client_leader.
10995
10996 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10997 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10998
10999 * xsmfns.c (create_client_leader_window): New function.
11000 (x_session_initialize): Call create_client_leader_window, take
11001 dpyinfo as argument.
11002
11003 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11004
11005 * Makefile.in (xsmfns.o): Add more depenedencies.
11006
11007 2003-08-21 Dave Love <fx@gnu.org>
11008
11009 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11010
11011 2003-08-21 Kenichi Handa <handa@m17n.org>
11012
11013 * term.c (term_init): Fix previous change; don't rely on the
11014 length of `buffer' if TERMINFO is defined.
11015
11016 2003-08-20 Dave Love <fx@gnu.org>
11017
11018 * atimer.h: Include lisp.h.
11019
11020 * lisp.h (EMACS_LISP_H): New.
11021 (popup_activated_flag): Don't declare.
11022
11023 * alloca.c: Some merging with gnulib. Change logic and doc
11024 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11025 [DO_BLOCK_INPUT]: Don't include lisp.h.
11026 (xmalloc, xfree): Declare.
11027 (malloc): Don't declare.
11028
11029 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11030 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11031 atimer.h, blockinput.h.
11032
11033 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11034
11035 * alloca.s: Remove.
11036
11037 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11038
11039 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11040 use -lncurses.
11041
11042 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11043 FreeBSD returns something longer than 2044. Abort if the end of
11044 the buffer is overwritten.
11045
11046 2003-08-19 Miles Bader <miles@gnu.org>
11047
11048 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11049
11050 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11051
11052 * alloc.c (lisp_align_malloc): Check for memory full when
11053 allocating ablocks, which also avoids freeing a pointer into an
11054 ablocks structure.
11055
11056 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11057
11058 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11059
11060 2003-08-16 Richard M. Stallman <rms@gnu.org>
11061
11062 * editfns.c (Fencode_time): Doc fix.
11063
11064 2003-08-16 David Ponce <david@dponce.com>
11065
11066 * fileio.c (Fwrite_region): Fix conditional expression to issue
11067 the right message.
11068
11069 2003-08-16 Juri Linkov <juri@jurta.org>
11070
11071 * syntax.c (Fforward_word): Argument changed to optional.
11072 Set default value to 1.
11073
11074 2003-08-15 Kenichi Handa <handa@m17n.org>
11075
11076 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11077 what autoscaled.
11078 (best_matching_font): Once we find a better scalable font, set
11079 non_scalable_has_exact_height_p to 1.
11080 (try_font_list): Call try_alternative_families to try any family
11081 with the given registry.
11082
11083 2003-08-09 Andreas Schwab <schwab@suse.de>
11084
11085 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11086
11087 * print.c (print_string): Fix printing of multibyte string with
11088 nontrivial printcharfun.
11089
11090 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11091
11092 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11093
11094 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11095
11096 2003-07-31 Kenichi Handa <handa@m17n.org>
11097
11098 * process.c (read_process_output): Return the actually read bytes
11099 instead of the result of decoding.
11100
11101 2003-07-31 Kenichi Handa <handa@m17n.org>
11102
11103 * xterm.h (struct x_bitmap_record): New member have_mask.
11104
11105 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11106 to 0.
11107 (x_create_bitmap_from_file): Likewise.
11108 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11109 (x_destroy_all_bitmaps): Likewise.
11110 (x_create_bitmap_mask): Set have_mask member to 1.
11111
11112 2003-07-30 Richard M. Stallman <rms@gnu.org>
11113
11114 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11115
11116 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11117
11118 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11119
11120 2003-07-29 Richard M. Stallman <rms@gnu.org>
11121
11122 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11123 Conditionalize XIM code on HAVE_XIM.
11124
11125 * fns.c (Fclear_string): New function.
11126 (syms_of_fns): defsubr it.
11127
11128 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11129
11130 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11131
11132 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11133
11134 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11135
11136 * buffer.c (delete_all_overlays): New function.
11137 * buffer.h (delete_all_overlays): Declare.
11138 * coding.c (run_pre_post_conversion_on_str):
11139 * print.c (temp_output_buffer_setup):
11140 * fileio.c (Finsert_file_contents):
11141 * minibuf.c (get_minibuffer): Use it.
11142
11143 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11144
11145 * unexmacosx.c (unexec_regions_sort_compare):
11146 (unexec_regions_merge): New functions. Sort and merge unexec
11147 regions before dumping them.
11148
11149 2003-07-22 Dave Love <fx@gnu.org>
11150
11151 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11152
11153 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11154
11155 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11156 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11157 MARKBIT as the gcmarkbit for strings.
11158
11159 2003-07-21 Richard M. Stallman <rms@gnu.org>
11160
11161 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11162
11163 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11164 (syms_of_fns): Corresponding change.
11165
11166 * alloc.c (syms_of_alloc): Doc fixes.
11167
11168 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11169
11170 * s/netbsd.h: Use -Wl syntax.
11171
11172 2003-07-17 Richard M. Stallman <rms@gnu.org>
11173
11174 * xterm.c (xim_initialize): Redo 6/24 change.
11175
11176 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11177
11178 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11179 (Fswitch_to_buffer): Don't signal an error when switching to the same
11180 buffer in a dedicated window.
11181
11182 * alloc.c: Use bitmaps for cons, as was done for floats.
11183 (init_float, init_cons): Let the normal code allocate the first block.
11184 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11185 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11186 New macros.
11187 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11188 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11189 (live_cons_p): Check the pointer is not past the `conses' array.
11190 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11191 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11192 (survives_gc_p): Use CONS_MARKED_P and simplify.
11193 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11194
11195 2003-07-13 Paul Eggert <eggert@twinsun.com>
11196
11197 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11198 puts it into BSS instead, at least on Solaris 8 and 9.
11199 This is a valid optimization, and it may occur on other platforms,
11200 so Emacs should not assume that initializing a static variable to
11201 zero puts it into data.
11202 * alloc.c (pure, staticvec):
11203 Initialize these arrays to nonzero, so that they're not
11204 put into BSS by that optimization.
11205
11206 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11207
11208 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11209 (lisp_align_malloc): Use posix_memalign is available.
11210 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11211 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11212 for consistency. Update users.
11213
11214 2003-07-13 Richard M. Stallman <rms@gnu.org>
11215
11216 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11217
11218 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11219
11220 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11221 and use the Gtk+ function gtk_window_icon_from_file if available.
11222
11223 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11224 handle mask of bitmaps.
11225 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11226 mask property.
11227 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11228
11229 * xterm.h (xg_set_icon): New function.
11230
11231 2003-07-12 Paul Eggert <eggert@twinsun.com>
11232
11233 * unexelf.c (unexec): Consider a section to precede the .bss
11234 section if its addresses overlap that of .bss.
11235
11236 2003-07-12 Richard M. Stallman <rms@gnu.org>
11237
11238 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11239
11240 * config.in (HAVE_CRTIN): Add #undef.
11241 (INLINE): Really inline only if OPTIMIZE is defined.
11242
11243 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11244 END_FILES_1.
11245 (START_FILES_1, END_FILES_1): New macros (conditional).
11246 (LD_SWITCH_SYSTEM_TEMACS): Define.
11247
11248 * s/openbsd.h: Don't include bsd4-3.h.
11249 (TERMINFO): Define.
11250 (LIBS_TERMCAP): Define.
11251 (LD_SWITCH_SYSTEM): Define (two definitions).
11252
11253 * xfns.c: Include libpng/png.h instead of png.h.
11254
11255 2003-07-11 Andreas Schwab <schwab@suse.de>
11256
11257 * buffer.c (modify_overlay): Update prototype.
11258 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11259 Likewise.
11260
11261 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11262
11263 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11264 (struct interval): Move to intervals.h.
11265 (struct Lisp_Marker): Use EMACS_INT for position info.
11266 (forward_point): Remove prototype of defunct function.
11267 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11268 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11269 (syms_of_textprop, set_text_properties): Remove prototypes that are
11270 already in intervals.h.
11271
11272 * intervals.h (struct interval): Move from lisp.h.
11273 Use EMACS_INT for position and size info.
11274
11275 * coding.c: Include intervals.h for Fset_text_properties.
11276
11277 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11278 position and length information.
11279
11280 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11281
11282 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11283 position and length information.
11284
11285 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11286
11287 Change overlays_after and overlays_before so the overlays themselves
11288 are linked into lists, rather than using cons cells. After all each
11289 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11290 Lisp_Overlay for free and save up one cons cell per overlay (not
11291 to mention one indirection when traversing the list of overlay).
11292
11293 * lisp.h (struct Lisp_Overlay): New field `next'.
11294
11295 * buffer.h (struct buffer): Change overlays_before and overlays_after
11296 from Lisp lists of overlays to pointers to overlays.
11297
11298 * buffer.c (overlay_strings, recenter_overlay_lists):
11299 Fix typo in eassert in last commit.
11300 (unchain_overlay): New function.
11301 (add_overlay_mod_hooklist): Use AREF.
11302 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11303 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11304 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11305 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11306 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11307 Adjust to new type of overlays_(before|after).
11308
11309 * alloc.c (mark_object): Mark the new `next' field of overlays.
11310 (mark_buffer): Manually mark the overlays_(after|before) fields.
11311
11312 * coding.c (run_pre_post_conversion_on_str):
11313 * editfns.c (overlays_around):
11314 * xdisp.c (load_overlay_strings):
11315 * fileio.c (Finsert_file_contents):
11316 * indent.c (current_column):
11317 * insdel.c (signal_before_change, signal_after_change):
11318 * intervals.c (set_point_both):
11319 * print.c (temp_output_buffer_setup): Use new type for
11320 overlays_(before|after).
11321
11322 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11323
11324 * buffer.c (report_overlay_modification): Don't run hooks while
11325 traversing the list of overlays.
11326
11327 * buffer.h (struct buffer): Use an int for overlay_center.
11328 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11329 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11330
11331 * buffer.c (reset_buffer, recenter_overlay_lists)
11332 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11333 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11334 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11335 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11336 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11337
11338 * xdisp.c (fast_find_position): Remove unused var.
11339
11340 * cmds.c (Qexpand_abbrev): New sym.
11341 (syms_of_cmds): Initialize it.
11342 (internal_self_insert): Use it to call expand-abbrev.
11343
11344 2003-07-09 Kim F. Storm <storm@cua.dk>
11345
11346 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11347 was configured with --without-xim.
11348 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11349
11350 2003-07-07 Richard M. Stallman <rms@gnu.org>
11351
11352 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11353
11354 * alloc.c (Fgarbage_collect): Doc fix.
11355
11356 2003-07-07 Nozomu Ando <nand@mac.com>
11357
11358 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11359
11360 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11361
11362 * minibuf.c (read_minibuf): UNGCPRO before returning.
11363 (Ftry_completion, Fall_completions): Doc fix.
11364
11365 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11366 now that `floats' is not the last element of the struct any more.
11367
11368 2003-07-06 Jason Rumney <jasonr@gnu.org>
11369
11370 * w32term.h (ClipboardSequence_Proc): New type.
11371
11372 * w32fns.c (clipboard_sequence_fn): New variable.
11373 (globals_of_w32fns): Initialize it.
11374
11375 * w32select.c (last_clipboard_sequence_number): New variable.
11376 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11377 number if possible.
11378
11379 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11380
11381 * m/amdx86-64.h (MARKBIT):
11382 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11383 MARKBIT and ARRAY_MARK_FLAG any more.
11384
11385 * m/hp800.h (XSETMARKBIT):
11386 * m/sr2k.h (XSETMARKBIT):
11387 * lisp.h (XSETMARKBIT): Remove unused macro.
11388
11389 * lisp.h (mark_object): Change prototype.
11390
11391 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11392 (last_marked): Change accordingly.
11393 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11394 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11395 (mark_buffer): Update calls to mark_object.
11396
11397 * bytecode.c (mark_byte_stack):
11398 * fns.c (sweep_weak_table):
11399 * keyboard.c (mark_kboards): Update calls to mark_object.
11400
11401 2003-07-06 Jason Rumney <jasonr@gnu.org>
11402
11403 * alloc.c (struct ablock): Only include padding when there is some.
11404
11405 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11406
11407 * alloc.c (ALIGN): Add casts to simplify usage.
11408 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11409 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11410 (struct ablock, struct ablocks): New types.
11411 (free_ablock): New global var.
11412 (lisp_align_malloc, lisp_align_free): New functions.
11413 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11414 (struct float_block): Reorder and add gcmarkbits.
11415 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11416 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11417 (init_float, make_float): Use lisp_align_malloc.
11418 (free_float, live_float_p): Don't use `type' any more.
11419 (make_float): Use FLOAT_UNMARK to access to mark bit.
11420 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11421 Use FLOAT_MARKED_P to access the mark bit.
11422 (pure_alloc): Simplify use of ALIGN.
11423 (mark_object): Use FLOAT_MARK to access the mark bit.
11424 (gc_sweep): Use new macros to access the float's mark bit.
11425 (init_alloc_once): Init free_ablock.
11426
11427 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11428
11429 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11430
11431 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11432 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11433 (allocate_buffer): Move.
11434 (string_bytes): Don't mask markbit of `size_byte'.
11435 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11436 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11437 Use the `size' field of buffers (rather than the `name' field) for
11438 the mark bit, as is done for all other vectorlike objects.
11439 Use the new macros to access the mark bit of vectorlike objects.
11440
11441 2003-06-26 Richard M. Stallman <rms@gnu.org>
11442
11443 * puresize.h (BASE_PURESIZE): Increment base size.
11444
11445 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11446
11447 * xterm.c (xim_initialize): Undo previous change.
11448
11449 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11450
11451 * alloc.c (survives_gc_p): Simplify.
11452
11453 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11454
11455 * window.c (Fset_window_dedicated_p): Simplify.
11456 (display_buffer_1): Don't raise the win from which minibuf was entered.
11457 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11458 (Fminibuffer_selected_window): Simplify.
11459
11460 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11461
11462 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11463 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11464
11465 * insdel.c (check_markers, adjust_markers_for_delete)
11466 (adjust_markers_for_insert, adjust_markers_for_replace)
11467 (prepare_to_modify_buffer, RESTORE_VALUE):
11468 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11469 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11470 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11471 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11472 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11473 * editfns.c (save_excursion_restore, transpose_markers):
11474 * window.c (delete_window):
11475 * xdisp.c (message_dolog): Update for new types.
11476
11477 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11478
11479 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11480 (realize_default_face): Use default_face_done_p for the force_p
11481 argument to set_lface_from_font_name. Set default_face_done_p to one.
11482
11483 * frame.c (make_frame): Initialize default_face_done_p.
11484
11485 * frame.h (struct frame): Add default_face_done_p.
11486
11487 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11488 will be defined.
11489
11490 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11491
11492 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11493 Initialize the new field `gcmarkbit'.
11494 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11495 (mark_interval_tree): Don't mark the tree separately from the nodes.
11496 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11497 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11498 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11499
11500 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11501 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11502 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11503 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11504 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11505
11506 2003-06-24 Dave Love <fx@gnu.org>
11507
11508 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11509
11510 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11511 from gnulib.
11512
11513 2003-06-21 Richard M. Stallman <rms@gnu.org>
11514
11515 * fileio.c (Fwrite_region): Alternate messages
11516 for append and partial write.
11517
11518 * keyboard.c (read_key_sequence): When converting upcase fn key to
11519 downcase, update fkey and keytran so `backspace' gets translated.
11520
11521 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11522
11523 * process.c (wait_reading_process_input): Don't signal SIGIO
11524 in batch mode.
11525
11526 2003-06-17 Kenichi Handa <handa@m17n.org>
11527
11528 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11529 composite.h.
11530
11531 * xselect.c: Don't include charset.h, coding.h, composite.h.
11532 (Qforeign_selection): New variable.
11533 (syms_of_xselect): Intern and static it.
11534 (selection_data_to_lisp_data): Return a unibyte string made from
11535 data with `foreign-selection' text property.
11536
11537 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11538
11539 * termhooks.h (EVENT_INIT): New macro.
11540
11541 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11542
11543 * alloc.c (mark_kboards): Move to keyboard.c.
11544
11545 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11546 * xterm.c (x_dispatch_event):
11547 * xmenu.c (find_and_call_menu_selection):
11548 * xdisp.c (handle_tool_bar_click):
11549 * w32menu.c (menubar_selection_callback):
11550 * sysdep.c (kbd_input_ast, read_input_waiting):
11551 * msdos.c (dos_rawgetc):
11552 * macterm.c (mac_check_for_quit_char):
11553 * macmenu.c (menubar_selection_callback):
11554 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11555 data to kbd_buffer_store_event.
11556
11557 2003-06-15 Kim F. Storm <storm@cua.dk>
11558
11559 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11560 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11561
11562 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11563
11564 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11565
11566 2003-06-12 Kenichi Handa <handa@m17n.org>
11567
11568 * fileio.c (Fwrite_region): Save and restore restriction.
11569
11570 2003-06-12 Dave Love <fx@gnu.org>
11571
11572 * alloca.c (alloca): Declare arg as size_t.
11573
11574 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11575 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11576
11577 2003-06-11 Dave Love <fx@gnu.org>
11578
11579 * search.c (shrink_regexp_cache): Use xrealloc.
11580 (syms_of_search): Use xmalloc.
11581
11582 2003-06-10 Kim F. Storm <storm@cua.dk>
11583
11584 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11585 Adjust phys_cursor.x to be relative to window box, rather than
11586 text area before checking -- to ensure cursor is redrawn when
11587 exposing window.
11588 Note: This also fixes a similar (older) bug if display margins
11589 are present.
11590
11591 2003-06-06 Kenichi Handa <handa@m17n.org>
11592
11593 * coding.c (encoding_buffer_size): If coding->type is
11594 coding_type_ccl, double magnification on CRLF encoding.
11595
11596 2003-06-06 Jason Rumney <jasonr@gnu.org>
11597
11598 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11599 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11600
11601 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11602 Mac too.
11603
11604 2003-06-05 Dave Love <fx@gnu.org>
11605
11606 * strftime.c: Merge changes from gnulib.
11607
11608 * mktime.c (__mktime_internal): Merge changes from gnulib
11609 involving year 69 and dst2.
11610
11611 Changes to merge with gnulib version and be consistent with the
11612 autoconf test:
11613
11614 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11615 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11616 [HAVE_LOCALE_H]: Include locale.h.
11617 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11618
11619 2003-06-05 Kim F. Storm <storm@cua.dk>
11620
11621 * window.c (coordinates_in_window): Convert X and Y to window
11622 relative coordinates inside mode-line and header-line parts.
11623 Convert X and Y to margin area relative coordinates inside left
11624 and right display margin parts.
11625
11626 2003-06-05 Jason Rumney <jasonr@gnu.org>
11627
11628 * w32fns.c (add_system_logical_colors_to_map): New function.
11629 (Fx_open_connection): Use it.
11630
11631 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11632
11633 * process.c (allocate_pty): Revert part of the previous patch.
11634 (Faccept_process_output): Simplify.
11635
11636 2003-06-04 Jason Rumney <jasonr@gnu.org>
11637
11638 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11639
11640 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11641 (lispy_mouse_wheel_names): Remove.
11642 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11643 Always define drag_and_drop_syms.
11644
11645 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11646 WHEEL_EVENT events.
11647
11648 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11649
11650 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11651
11652 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11653
11654 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11655
11656 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11657 menu item label.
11658
11659 2003-06-03 Richard M. Stallman <rms@gnu.org>
11660
11661 * window.c (Fwindow_edges): Doc fix.
11662 (Fwindow_pixel_edges, Fwindow_inside_edges)
11663 (Fwindow_inside_pixel_edges): New functions.
11664 (syms_of_window): defsubr them.
11665
11666 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11667 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11668
11669 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11670
11671 * dispnew.c (Fsit_for): Don't lie about the number of args.
11672
11673 2003-06-02 Dave Love <fx@gnu.org>
11674
11675 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11676 (syms_of_callproc) <process-environment>: Doc fix.
11677
11678 * doc.c: Use HAVE_FCNTL_H, not USG5.
11679
11680 * xfaces.c (font_rescale_ratio): Fix for K&R.
11681
11682 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11683
11684 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11685
11686 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11687
11688 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11689 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11690
11691 * xterm.c (Qutf_8): Move to coding.c
11692
11693 * xmenu.c (ENCODE_MENU_STRING): New.
11694 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11695 Use it.
11696
11697 * coding.h (ENCODE_UTF_8): New.
11698 (Qutf_8): Declare.
11699
11700 * coding.c (Qutf_8): New.
11701 (syms_of_coding): Intern it.
11702
11703 * fns.c: Doc fixes.
11704
11705 2003-06-02 Kenichi Handa <handa@m17n.org>
11706
11707 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11708
11709 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11710
11711 * lread.c (openp): Make sure STR is a string.
11712
11713 2003-06-01 David Ponce <david@dponce.com>
11714
11715 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11716 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11717
11718 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11719 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11720 (discard_mouse_events): Discard WHEEL_EVENT events too.
11721 (lispy_wheel_names, wheel_syms): New.
11722 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11723 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11724 (make_lispy_event): Add WHEEL_EVENT handler.
11725
11726 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11727 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11728 WHEEL_EVENT events.
11729
11730 2003-05-31 John Paul Wallington <jpw@gnu.org>
11731
11732 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11733 timer are in lisp/emacs-lisp.
11734
11735 2003-05-31 Kenichi Handa <handa@m17n.org>
11736
11737 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11738 region when a buffer is changed to unibyte.
11739
11740 * charset.h (VALID_LEADING_CODE_P): New macro.
11741 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11742
11743 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11744 is nonzero, accept multibyte form of eight-bit-control chars.
11745 (decode_composition_emacs_mule): Likewise.
11746 (decode_coding_emacs_mule): Likewise.
11747 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11748 multibyte form of eight-bit-control chars.
11749
11750 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11751 (Finsert_file_contents): If coding-system-for-read is bound to
11752 Qauto_save_coding, use the coding system emacs-mule with special
11753 setting for recovering a file.
11754 (choose_write_coding_system): On auto saving, use the coding
11755 system emacs-mule with special setting for auto saving.
11756 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11757
11758 2003-05-30 Kenichi Handa <handa@m17n.org>
11759
11760 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11761 properly before calling ccl_driver.
11762
11763 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11764
11765 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11766 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11767 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11768
11769 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11770
11771 * xfaces.c (realize_default_face): Do not abort if lface is
11772 non-existent - reverts change from 2003-05-19.
11773
11774 2003-05-29 Kenichi Handa <handa@m17n.org>
11775
11776 * coding.c (decode_coding_iso2022): Pay attention to the byte
11777 sequence of CTEXT extended segment, and retain those bytes as is.
11778
11779 2003-05-28 Kenichi Handa <handa@m17n.org>
11780
11781 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11782 of CODING_REPLACEMENT_CHARACTER.
11783 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11784 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11785 check this flag on encoding.
11786 (encode_coding_sjis_big5):
11787 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11788 (Fset_terminal_coding_system_internal):
11789 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11790 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11791
11792 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11793 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11794 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11795
11796 2003-05-28 Richard M. Stallman <rms@gnu.org>
11797
11798 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11799
11800 * eval.c (unbind_to): Move init of this_binding to separate statement.
11801
11802 2003-05-28 Kim F. Storm <storm@cua.dk>
11803
11804 * xdisp.c (expose_window): Fix error in calculation of
11805 window relative coordinates of area to redisplay.
11806
11807 2003-05-27 Jason Rumney <jasonr@gnu.org>
11808
11809 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11810
11811 2003-05-27 David Ponce <david@dponce.com>
11812
11813 Handle W32 mouse wheel events as mouse click events, like in X.
11814
11815 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11816 MOUSE_WHEEL_EVENT anymore.
11817
11818 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11819 Scrolling down/up the mouse wheel is respectively mapped to mouse
11820 button 4 and 5.
11821 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11822 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11823 WM_MOUSEWHEEL events.
11824
11825 2003-05-27 Andreas Schwab <schwab@suse.de>
11826
11827 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11828
11829 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11830 partially visible line.
11831
11832 * alloc.c (Fgarbage_collect): Fix last change.
11833
11834 2003-05-26 John Paul Wallington <jpw@gnu.org>
11835
11836 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11837
11838 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11839
11840 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11841 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11842
11843 * window.h (window_box_text_cols): Declare.
11844
11845 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11846 (x_draw_vertical_border): Remove unused var `f'.
11847
11848 * xfaces.c (build_scalable_font_name): Remove `unused var
11849 pixel_size' warning.
11850
11851 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11852
11853 * unexelf.c (unexec): Remove `unused var n' warning.
11854
11855 * strftime.c (my_strftime_localtime_r): Remove `defined but
11856 unused' warning.
11857
11858 * process.c (allocate_pty): Remove `unused var stb' and
11859 `cp might be used uninitialized' warnings.
11860
11861 * dispnew.c (mode_line_string): Remove unused var `f'.
11862
11863 * coding.c (find_safe_codings): Remove unused var `i'.
11864
11865 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11866
11867 * buffer.c (Fkill_buffer): Remove unused var `list'.
11868
11869 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11870
11871 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11872
11873 * frame.c (make_frame): Condition want_fullscreen with
11874 HAVE_WINDOW_SYSTEM.
11875
11876 2003-05-25 Juanma Barranquero <lektu@terra.es>
11877
11878 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11879 (Fwindow_scroll_bars): Fix typo in docstring.
11880
11881 2003-05-24 Kim F. Storm <storm@cua.dk>
11882
11883 The following changes serve several purposes:
11884
11885 1) Swap the position of fringes and display margins in windows, i.e.
11886 the fringes are now displayed between the margins and the text area
11887 (by default).
11888
11889 2) Allow fringe and scroll bar parameters to be set per-buffer and
11890 per-window (like display margins). Such settings are now stored
11891 in window configurations, preserved when frames are resized, and
11892 copied when windows are split vertically or horizontally.
11893 Several bugs related to display margins have been fixed.
11894
11895 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11896
11897 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11898 rather than FRAME_WIDTH (FRAME_FONT (f)).
11899
11900 5) Introduce a consistent naming of variables, members and macros
11901 depending on whether their value is measured in pixels or in
11902 canonical columns/lines. Pixel dimensions are named *_width and
11903 *_height, while canonical columns/lines are named *_cols and
11904 *_lines. Pixel positions are named *_x and *_y, while column/line
11905 positions are named *_col and *_line.
11906
11907 6) Consolidate more of the X, W32, and MAC gui code by moving
11908 common data into struct frame, and generalize it for the non-gui
11909 case by using suitable defaults.
11910
11911 7) Cleanup and consolidate the macros controlling frame and window
11912 layout into frame.h and window.h, and generalize the use of the
11913 various window_box_* functions (enhanced to handle the new fringe
11914 position and the per-window fringe and scroll bar settings).
11915
11916 * frame.h (struct frame): Rename members height to text_lines,
11917 width to text_cols, window_height to total_lines, window_width to
11918 total_cols, new_height to new_text_lines, new_width to
11919 new_text_cols. All uses changed.
11920 (struct frame): New members which consolidate common members of
11921 x_output, w32_output, and mac_output structures: left_pos,
11922 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11923 win_gravity, size_hint_flags, border_width, internal_border_width,
11924 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11925 want_fullscreen. All uses changed.
11926 (struct frame): New member column_width contaning the canonical
11927 column width, analogue to line_height. All uses changed.
11928 (struct frame): Rename members scroll_bar_pixel_width to
11929 config_scroll_bar_width, and scroll_bar_cols to
11930 config_scroll_bar_cols. All uses changed.
11931 (struct frame): New member scroll_bar_actual_width which
11932 consolidates and renames the vertical_scroll_bar_extra member of
11933 x_output, w32_output, and mac_output structures. All uses changed.
11934 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11935 from x/w32/macterm.h files. All uses changed. Also change code
11936 which referred to f->output_data...->pixel_height.
11937 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11938 from x/w32/macterm.h files. All uses changed. Also change code
11939 which referred to f->output_data...->pixel_width.
11940 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11941 Also change code which referred to f->height.
11942 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11943 Also change code which referred to f->width.
11944 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11945 to update new_text_lines and new_text_cols members directly.
11946 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11947 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11948 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11949 FRAME_SCROLL_BAR_COLS. All uses changed.
11950 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11951 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11952 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11953 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11954 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11955 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11956 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11957 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11958 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11959 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11960 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11961 Unconditionally return line_height member (it now has proper value
11962 also for non-window frames).
11963 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11964 return new column_width member (rather than the default font width).
11965 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11966 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11967 from x/w32/macterm.h files. Unconditionally return corresponding
11968 member of frame structure (they now have proper values also for
11969 non-window frames).
11970 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11971 Calculate return value from left and right widths.
11972 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11973 internal_border_width member (has proper value for non-window frame).
11974 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11975 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11976 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11977 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11978 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11979 consolidated from xterm.h, macterm.h, and w32term.h.
11980 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11981 consolidated from xterm.h, macterm.h, and w32term.h.
11982 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11983 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11984 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11985 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11986 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11987 consolidated from x/mac/w32term.h.
11988 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11989 consolidated from x/mac/w32term.h.
11990 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11991 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11992 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11993 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11994
11995 * window.h (struct window): Rename members left to left_col,
11996 top to top_line, height to total_lines, width to total_cols,
11997 left_margin_width to left_margin_cols, right_margin_width to
11998 right_margin_cols, orig_height to orig_total_lines, orig_top to
11999 orig_top_line. All uses changed.
12000 (struct window): New members left_fringe_width, right_fringe_width,
12001 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12002 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12003 New macros primarily used to simplify other macros.
12004 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12005 referred to XINT (w->width).
12006 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12007 referred to XINT (w->height).
12008 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12009 referred to XINT (w->width) * canon_x_unit.
12010 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12011 referred to XINT (w->height) * canon_y_unit.
12012 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12013 referred to XINT (w->left).
12014 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12015 all uses and code that referred to XINT (w->left) + XINT (w->width).
12016 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12017 referred to XINT (w->top).
12018 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12019 referred to XINT (w->top) + XINT (w->height).
12020 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12021 referred to XINT (w->left) * canon_x_unit.
12022 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12023 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12024 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12025 referred to XINT (w->top) * canon_y_unit.
12026 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12027 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12028 (WINDOW_LEFTMOST_P): New macro.
12029 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12030 All uses changed.
12031 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12032 All uses changed.
12033 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12034 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12035 Do not exclude left fringe width.
12036 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12037 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12038 Do not exclude fringe widths.
12039 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12040 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12041 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12042 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12043 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12044 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12045 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12046 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12047 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12048 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12049 New macros. Change code which referenced corresponding
12050 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12051 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12052 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12053 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12054 allow per-window scroll-bar settings.
12055 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12056 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12057 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12058 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12059 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12060 FRAME_SCROLL_BAR_WIDTH.
12061 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12062 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12063 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12064 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12065 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12066 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12067 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12068 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12069 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12070 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12071 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12072 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12073 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12074 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12075 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12076 (window_from_coordinates): Update prototype.
12077 (Fset_window_buffer): Update EXFUN.
12078 (set_window_buffer): Update prototype.
12079
12080 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12081 to window_left_col, window_top_y to window_top_line. All uses
12082 changed.
12083 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12084 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12085 internal_border_width is now set to 0 for non-window frames.
12086 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12087 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12088 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12089 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12090 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12091 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12092 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12093 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12094 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12095 Move to window.h and renamed [see window.h changes].
12096 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12097 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12098 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12099 Use WINDOW_TOTAL_LINES.
12100 (frame_update_line_height): Remove prototype.
12101
12102 * buffer.h (struct buffer): Rename members measured in columns:
12103 left_margin_width to left_margin_cols, right_margin_width to
12104 right_margin_cols. All uses changed.
12105 New members left_fringe_width, right_fringe_width,
12106 fringes_outside_margins for per-buffer fringe settings.
12107 New members scroll_bar_width and vertical_scroll_bar_type for
12108 per-buffer scroll bar settings.
12109
12110 * buffer.c (init_buffer_once): Set buffer_defaults and
12111 buffer_local_flags for new buffer-local variables
12112 left_fringe_width, right_fringe_width, fringes_outside_margins,
12113 scroll_bar_width, and vertical_scroll_bar_type.
12114 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12115 default-* variables for them.
12116
12117 * dispnew.c: Make (many) trivial substitutions for renamed and
12118 new macros in dispextern.h, frame.h and window.h.
12119 (mode_line_string): No need to adjust width for mode lines, as it
12120 is already adjusted by the caller.
12121 (marginal_area_string): Handle fringes inside/outside margins.
12122
12123 * frame.c: Make (many) trivial substitutions for renamed and
12124 new macros in dispextern.h, frame.h and window.h.
12125 (make_frame): Initialize left_fringe_width, right_fringe_width,
12126 fringe_cols, scroll_bar_actual_width, border_width,
12127 internal_border_width, column_width, line_height, x_pixels_diff,
12128 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12129 members with values suitable for a non-window frames.
12130
12131 * gtkutil.c: Make (many) trivial substitutions for renamed and
12132 new macros in dispextern.h, frame.h and window.h.
12133
12134 * indent.c: Make (few) trivial substitutions for renamed and
12135 new macros in dispextern.h, frame.h and window.h.
12136
12137 * keyboard.c: Make (many) trivial substitutions for renamed and
12138 new macros in dispextern.h, frame.h and window.h.
12139 (make_lispy_event): Use window positions returned from
12140 window_from_coordinates when constructing the lisp event for
12141 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12142 (incorrect) values locally.
12143 (make_lispy_movement): Use window positions returned from
12144 window_from_coordinates when constructing the lisp event, rather
12145 than calculating (incorrect) values locally.
12146
12147 * scroll.c: Make (some) trivial substitutions for renamed and
12148 new macros in dispextern.h, frame.h and window.h.
12149
12150 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12151 scroll-bars.
12152
12153 * sysdep.c: Make (few) trivial substitutions for renamed and
12154 new macros in dispextern.h, frame.h and window.h.
12155
12156 * term.c: Make (some) trivial substitutions for renamed and
12157 new macros in dispextern.h, frame.h and window.h.
12158
12159 * widget.c: Make (few) trivial substitutions for renamed and
12160 new macros in dispextern.h, frame.h and window.h.
12161
12162 * window.c: Make (many) trivial substitutions for renamed and
12163 new macros in dispextern.h, frame.h and window.h.
12164 (make_window): Initialize new members
12165 left_margin_cols, right_margin_cols, left_fringe_width,
12166 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12167 and vertical_scroll_bar_type.
12168 (coordinates_in_window): Adapt to new fringe/margin positions
12169 and per-window fringes and scroll-bars.
12170 Fix bug related to incorrectly adjusting coordinates by
12171 frame's internal_border_width (the effect normally negible since
12172 the internal_border_width is typically 0 or 1 pixel, but very
12173 noticeable for an internal_border_width of e.g. 25 pixels).
12174 Upon successful return (other than ON_NOTHING), the coordinates
12175 are now always properly converted to window relative for the
12176 given display element.
12177 (window_from_coordinates): Add new parameters wx and wy to
12178 return the window relative x and y position in the returned
12179 window and part. A null arg means, don't return the position.
12180 All callers changed.
12181 (adjust_window_margins): New function which may reduce the width
12182 of the display margins if a window's text area is too small after
12183 resizing or splitting windows.
12184 (size_window): Fix bug that did not account for display margin
12185 widths when checking the minimum width of a window; use
12186 adjust_window_margins.
12187 (set_window_buffer): Call Fset_window_fringes and
12188 Fset_window_scroll_bars to setup per-window elements.
12189 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12190 existing display margin, fringe widths, and scroll bar settings
12191 (e.g. after splitting a window or resizing the frame).
12192 All callers changed.
12193 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12194 (Fsplit_window): Duplicate original window's display margin,
12195 fringe, and scroll-bar settings; then call Fset_window_buffer with
12196 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12197 window to only preserve the display margins in one of the windows.
12198 When splitting horizontally, call adjust_window_margins on both
12199 windows to ensure that the text area of the new windows is non too
12200 narrow. This fixes a bug which could cause Emacs to trap if the
12201 width of the split window was less than the width of the display
12202 margins.
12203 (window_box_text_cols): Rename from window_internal_width.
12204 All uses changed. Adapt to per-window fringes and scroll bars.
12205 Fix bug that caused vertical separator to be subtracted also on
12206 window frames. Fix another bug that did not reduce the returned
12207 value by the columns used for display margins.
12208 (window_scroll_line_based): Fix bug related to scrolling too much
12209 when display margins are present (implicitly fixed by the fix to
12210 window_box_text_cols).
12211 (scroll_left, scroll_right): Fix bug related to scrolling too far
12212 by default when display margins are present (implicitly fixed by
12213 the fix to window_box_text_cols).
12214 (struct saved_window): Rename members left to left_col, top to
12215 top_line, width to total_cols, height to total_lines, orig_top to
12216 orig_top_line, orig_height to orig_total_lines. All uses changed.
12217 New members left_margin_cols, right_margin_cols,
12218 left_fringe_width, right_fringe_width, fringes_outside_margins,
12219 scroll_bar_width, and vertical_scroll_bar_type for saving
12220 per-window display elements.
12221 (Fset_window_configuration): Restore display margins, fringes,
12222 and scroll bar settings. This fixes a bug which caused display
12223 margins to be discarded when saving and restoring a window
12224 configuration.
12225 (save_window_save): Save display margins, fringes, and scroll bar
12226 settings. This fixes a bug which caused display margins to be
12227 discarded when saving and restoring a window configuration.
12228 (Fset_window_margins): Do nothing if display margins are not
12229 really changed. Otherwise, call adjust_window_margins to ensure
12230 the text area doesn't get too narrow. This fixes a bug which
12231 could cause Emacs to trap if setting display margins wider than
12232 the width of the window.
12233 (Fset_window_fringes): New defun to allow user to specifically set
12234 this window's fringe widths and position vs. display margins.
12235 (Fwindow_fringes): New defun to return window's actual fringe settings.
12236 (Fset_window_scroll_bars): New defun to allow user to specifically
12237 set this window's scroll bar width and position.
12238 (Fwindow_scroll_bars): New defun to return window's actual scroll
12239 bar settings.
12240 (compare_window_configurations): Also compare display margins,
12241 fringes, and scroll bar settings.
12242 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12243
12244 * xdisp.c: Make (many) trivial substitutions for renamed and
12245 new macros in dispextern.h, frame.h and window.h.
12246 (window_box_width): Adapt to per-window fringes and scroll bars,
12247 and new fringe vs. display margin position. Note that returned
12248 value is no longer guaranteed to be a whole multiple of the frame
12249 column width, since per-window fringes may now be any width.
12250 (window_box_left_offset): New function like window_box_left, but
12251 value is relative to left border of window (rather than frame).
12252 (window_box_right_offset): New function like window_box_right,
12253 but value is relative to left border of window.
12254 (window_box_left): Adapt to per-window fringes and scroll bars,
12255 and new fringe vs. display margin position. Simplify by using
12256 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12257 (window_box): Allow null args for unnecessary return values;
12258 change/simplify relevant callers.
12259 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12260 and new fringe vs. display margin position.
12261 Use window_box_left_offset and window_box_right_offset
12262 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12263 scroll bars, and new fringe vs. display margin position.
12264 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12265 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12266 fringe vs. display margin position.
12267 (hscroll_window_tree): Use window_box_width instead of window_box.
12268 (redisplay_window): Adapt to per-window scroll bars.
12269 (draw_glyphs): Rework to handle per-window fringes and scroll
12270 bars, and new fringe vs. display margin position.
12271 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12272 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12273 bars, and new fringe vs. display margin position. Fix bug which
12274 increased total width of full_width rows by width of scroll bars
12275 although window's total width already includes that.
12276 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12277 (expose_area): Simplify using window_box_left_offset.
12278 (x_draw_vertical_border): Handle per-window scroll bar settings,
12279 mixing windows with left, right and no scroll bars.
12280
12281 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12282 where it's used in x_list_fonts (for clarity).
12283 (frame_update_line_height): Remove unused function; functionality
12284 is now done directly when setting the default font in x_set_font.
12285
12286 * xfns.c: Make (many) trivial substitutions for renamed and
12287 new macros in dispextern.h, frame.h and window.h.
12288
12289 * xmenu.c: Make (some) trivial substitutions for renamed and
12290 new macros in dispextern.h, frame.h and window.h.
12291
12292 * xterm.h (struct x_output): Move members left_pos, top_pos,
12293 border_width, pixel_height, pixel_width, line_height,
12294 internal_border_width, vertical_scroll_bar_extra,
12295 left_fringe_width, right_fringe_width, fringe_cols,
12296 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12297 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12298 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12299 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12300 (PIXEL_WIDTH, PIXEL_HEIGHT)
12301 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12302 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12303 frame.h and renamed [see frame.h changes].
12304 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12305 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12306 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12307 and renamed [see frame.h changes].
12308
12309 * xterm.c: Make (several) trivial substitutions for renamed and
12310 new macros in dispextern.h, frame.h and window.h.
12311 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12312 (scroll_run): Adapt to new fringe position.
12313 (glyph_rect): Use window coordinates returned from
12314 window_from_coordinates rather than frame_to_window_pixel_xy.
12315 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12316 scroll-bars.
12317 (handle_one_xevent): Simplify a USE_GTK conditional.
12318 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12319 (fringes are now inside margins, i.e. always in the clipping area).
12320 All callers changed.
12321 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12322 directly, then call compute_fringe_widths. Don't call
12323 frame_update_line_height.
12324
12325 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12326 border_width, pixel_height, pixel_width, line_height,
12327 internal_border_width, vertical_scroll_bar_extra,
12328 left_fringe_width, right_fringe_width, fringe_cols,
12329 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12330 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12331 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12332 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12333 (PIXEL_WIDTH, PIXEL_HEIGHT)
12334 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12335 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12336 frame.h and renamed [see frame.h changes].
12337 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12338 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12339 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12340 and renamed [see frame.h changes].
12341
12342 * w32term.c: Make (several) trivial substitutions for renamed and
12343 new macros in dispextern.h, frame.h and window.h.
12344 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12345 (glyph_rect): Use window coordinates returned from
12346 window_from_coordinates rather than frame_to_window_pixel_xy.
12347 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12348 scroll-bars.
12349 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12350 (fringes are now inside margins, i.e. always in the clipping area).
12351 All callers changed.
12352 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12353 directly, then call compute_fringe_widths. Don't call
12354 frame_update_line_height.
12355
12356 * w32console.c: Make (few) trivial substitutions for renamed and
12357 new macros in dispextern.h, frame.h and window.h.
12358
12359 * w32fns.c: Make (many) trivial substitutions for renamed and
12360 new macros in dispextern.h, frame.h and window.h.
12361
12362 * w32menu.c: Make (few) trivial substitutions for renamed and
12363 new macros in dispextern.h, frame.h and window.h.
12364
12365 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12366 border_width, pixel_height, pixel_width, line_height,
12367 internal_border_width, vertical_scroll_bar_extra,
12368 left_fringe_width, right_fringe_width, fringe_cols,
12369 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12370 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12371 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12372 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12373 (PIXEL_WIDTH, PIXEL_HEIGHT)
12374 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12375 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12376 frame.h and renamed [see frame.h changes].
12377 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12378 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12379 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12380 and renamed [see frame.h changes].
12381
12382 * macterm.c: Make (several) trivial substitutions for renamed and
12383 new macros in dispextern.h, frame.h and window.h.
12384 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12385 (glyph_rect): Use window coordinates returned from
12386 window_from_coordinates rather than frame_to_window_pixel_xy.
12387 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12388 scroll-bars.
12389 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12390 (fringes are now inside margins, i.e. always in the clipping area).
12391 All callers changed.
12392 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12393 directly, then call compute_fringe_widths. Don't call
12394 frame_update_line_height.
12395
12396 * macfns.c: Make (several) trivial substitutions for renamed and
12397 new macros in dispextern.h, frame.h and window.h.
12398 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12399
12400 * macmenu.c: Make (few) trivial substitutions for renamed and
12401 new macros in dispextern.h, frame.h and window.h.
12402
12403 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12404 and line_height, and use corresponding new members in struct
12405 frame. All uses changed.
12406 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12407 superseeded by corresponding macros in frame.h.
12408
12409 * msdos.c: Make (several) trivial substitutions for renamed and
12410 new macros in dispextern.h, frame.h and window.h.
12411 (IT_note_mouse_highlight): Use updated window coordinates returned
12412 by window_from_coordinates, rather than adjusting them locally.
12413 (internal_terminal_init): No need to initialize line_height here;
12414 it now defaults to 1.
12415
12416 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12417
12418 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12419 dropping `down' events.
12420
12421 2003-05-24 Andreas Schwab <schwab@suse.de>
12422
12423 * coding.c (find_safe_codings): Fix last change.
12424
12425 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12426
12427 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12428
12429 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12430
12431 * xdisp.c (display_mode_element): Increase max depth.
12432 Simplify the error handling code. Use a different error string
12433 for the case where we hit the depth limit.
12434
12435 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12436
12437 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12438
12439 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12440
12441 * intervals.c (get_local_map): Don't get char-property of previous
12442 point any more: get_pos_property already does it and better.
12443
12444 2003-05-21 Dave Love <fx@gnu.org>
12445
12446 [Merged from unicode branch.]
12447
12448 * xfns.c (x_window, x_window): Use use_xim.
12449
12450 * xterm.c (use_xim): Initialize.
12451 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12452 (x_term_init): Maybe set use_xim.
12453
12454 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12455
12456 2003-05-21 Jason Rumney <jasonr@gnu.org>
12457
12458 * unexw32.c (_start): Remove _fmode initialization.
12459
12460 * emacs.c (main) [WINDOWSNT]: Move it here.
12461
12462 2003-05-20 Dave Love <fx@gnu.org>
12463
12464 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12465
12466 2003-05-19 Richard M. Stallman <rms@gnu.org>
12467
12468 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12469 as value for QCfont attribute.
12470 (realize_default_face): lface should already exist; crash if not.
12471 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12472
12473 * frame.c (Fignore_event): Doc fix.
12474
12475 2003-05-19 Kenichi Handa <handa@m17n.org>
12476
12477 * coding.c (decode_coding_string): Handle post-read-conversion
12478 even if the coding doesn't require decoding.
12479
12480 2003-05-18 Richard M. Stallman <rms@gnu.org>
12481
12482 * callproc.c (Fcall_process_region): Doc fix.
12483
12484 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12485
12486 * lread.c (Fload): Print a message if package is obsolete.
12487
12488 * window.c (Fselect_window): Add optional `norecord' arg.
12489 (select_window_1): Fold into Fselect_window.
12490 (select_window_norecord): New function.
12491 (temp_output_buffer_show): Use it. Preserve current buffer.
12492
12493 * window.h (Fselect_window): Update declaration.
12494
12495 * window.c (delete_window, Fother_window, Fset_window_configuration):
12496 * minibuf.c (read_minibuf):
12497 * macterm.c (x_new_focus_frame):
12498 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12499 * callint.c (Fcall_interactively):
12500 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12501
12502 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12503
12504 2003-05-17 David Kastrup <dak@gnu.org>
12505
12506 * process.c (read_process_output): Back out change from 2003-03-09.
12507
12508 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12509
12510 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12511
12512 * textprop.c (text_property_stickiness): New arg `buffer'.
12513
12514 * intervals.h (text_property_stickiness): New arg `buffer'.
12515 (get_pos_property): Declare.
12516
12517 * intervals.c (get_local_map): Use get_pos_property, to obey
12518 stickiness and empty overlays.
12519 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12520 (merge_properties, intervals_equal, merge_properties_sticky):
12521 Use XCAR, XCDR.
12522 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12523
12524 2003-05-17 Richard M. Stallman <rms@gnu.org>
12525
12526 * minibuf.c (read_minibuf): If buffer is empty, record the default
12527 in the history.
12528 (Fminibuffer_complete_word): When deleting the overlap, take account
12529 of its real position.
12530
12531 * fns.c (map_char_table): Fix previous change.
12532
12533 * syntax.c (find_defun_start):
12534 When open_paren_in_column_0_is_defun_start,
12535 return beginning of buffer.
12536
12537 * lisp.h (map_char_table): Declare added arg.
12538
12539 * fns.c (map_char_table): New arg TABLE gets the master table.
12540 All calls changed.
12541 Process default and inheritance, resorting to Faref if necessary.
12542
12543 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12544 (Faccessible_keymaps): Pass new arg to map_char_table.
12545
12546 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12547
12548 * casetab.c (set_case_table): Pass new arg to map_char_table.
12549
12550 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12551
12552 * lisp.h (specbinding_func): New typedef.
12553 (struct specbinding): Use specbinding_func, to put the `volatile'
12554 in the right place.
12555
12556 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12557 to avoid GCC warning.
12558
12559 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12560
12561 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12562
12563 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12564
12565 * keyboard.c (apply_modifiers): Don't fill the other cache.
12566
12567 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12568
12569 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12570
12571 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12572 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12573 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12574 (Fset_window_configuration, Fcurrent_window_configuration)
12575 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12576 (Fpos_visible_in_window_p, mark_window_cursors_off)
12577 (window_internal_height, window_internal_width, Frecenter)
12578 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12579 (replace_buffer_in_all_windows, init_window_once, init_window)
12580 (syms_of_window, keys_of_window): Move from lisp.h.
12581 * lisp.h: Move window.c declarations to window.h.
12582
12583 * bytecode.c: Include window.h.
12584 * emacs.c: Include window.h.
12585
12586 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12587 (keyremap): Add `parent' field.
12588 (keyremap_step): Use it. Remove `parent' argument.
12589 (read_key_sequence): Setup and use the new `parent' field.
12590
12591 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12592
12593 * keyboard.c (adjust_point_for_property): Ensure termination.
12594
12595 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12596
12597 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12598 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12599 duplicated handling of function-key-map and key-translation-map
12600 in read_key_sequence.
12601 (read_key_sequence): Use them.
12602
12603 * keyboard.c (adjust_point_for_property): Try harder to move point
12604 to the non-sticky end of an invisible property.
12605
12606 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12607 property intangible as well.
12608
12609 2003-05-10 Andreas Schwab <schwab@suse.de>
12610
12611 * xmenu.c (single_menu_item): Change last parameter to void* to
12612 avoid warning.
12613
12614 2003-05-09 Richard M. Stallman <rms@gnu.org>
12615
12616 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12617 Bind Qinhibit_modification_hooks to t so there will be no GC.
12618 Rename local `tem' to `save_deactivate_mark'.
12619
12620 * eval.c (specpdl_ptr): Declare volatile.
12621 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12622 before doing the work of unbinding it.
12623
12624 * lisp.h (struct specbinding): Declare elements volatile.
12625 (specpdl_ptr): Declare volatile.
12626
12627 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12628
12629 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12630 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12631
12632 2003-05-08 Dave Love <fx@gnu.org>
12633
12634 * coding.c (Vlast_coding_system_used): Doc fix.
12635
12636 2003-05-07 Jason Rumney <jasonr@gnu.org>
12637
12638 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12639 when system does not support them.
12640
12641 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12642
12643 * fileio.c (Qwrite_region_annotate_functions): New var.
12644 (build_annotations): Use it to process the global part of the hook.
12645 (syms_of_fileio): Init and staticpro it.
12646
12647 * keyboard.c (safe_run_hooks_error): Display a message instead of
12648 silently ignoring the error.
12649
12650 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12651
12652 * keyboard.c (input_available_signal): Mark static.
12653 (menu_bar_items): Use map_keymap.
12654 (menu_bar_one_keymap): Remove.
12655 (menu_bar_item): Adjust arglist (for use in map_keymap).
12656 Properly hide a second binding when not both are keymaps.
12657
12658 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12659 (single_keymap_panes): Use it and map_keymap.
12660 (single_menu_item): Use skp as well.
12661
12662 * keymap.h (map_keymap_function_t): New type.
12663 (map_keymap): Declare.
12664
12665 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12666 (map_keymap_call, Fmap_keymap): New functions.
12667 (syms_of_keymap): Defsubr map-keymap.
12668
12669 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12670
12671 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12672 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12673 ..._with_mnemonic functions for menu items.
12674
12675 2003-05-01 Kenichi Handa <handa@m17n.org>
12676
12677 * coding.c (coding_system_accept_latin_extra_p): Delete this
12678 function.
12679 (find_safe_codings): Pay attention to
12680 the property tranlsation-table-for-encode of each codings.
12681 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12682
12683 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12684
12685 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12686
12687 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12688
12689 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12690
12691 * lisp.h (CHECK): Wrap args in parenthesis.
12692 (specbind): Fix doc: symbol = Qnil is not supported any more.
12693
12694 * bytecode.c (Fbyte_code) <unwind-protect>:
12695 Use Fprogn rather than 0 and Qnil.
12696
12697 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12698 `double', and `triple' modifiers as well.
12699
12700 2003-04-30 Richard M. Stallman <rms@gnu.org>
12701
12702 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12703
12704 * alloc.c (abort_on_gc): New variable.
12705 (Fgarbage_collect): Abort if abort_on_gc is set.
12706
12707 * lisp.h (abort_on_gc): Add decl.
12708
12709 * eval.c (Fsignal): Clear abort_on_gc.
12710
12711 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12712 Reinit FORMAT_START and END before second scan.
12713
12714 * xdisp.c (move_it_vertically_backward): Do the final big else
12715 even if nlines is 0.
12716
12717 * xdisp.c (redisplay_internal): Finish the per-frame loop
12718 even if redisplay is suspended by input.
12719
12720 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12721
12722 * macterm.c (x_list_fonts): Return all fonts that match if
12723 maxnames = -1.
12724
12725 2003-04-25 Kenichi Handa <handa@m17n.org>
12726
12727 * syntax.c (skip_chars): Fix previous change.
12728
12729 2003-04-24 Kenichi Handa <handa@m17n.org>
12730
12731 * syntax.c (skip_chars): Make the code faster by using the common
12732 technique of *p, *stop, and *endp.
12733
12734 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12735
12736 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12737 tool_bar_items so GTK tool bar expose callback does not access items
12738 being updated.
12739
12740 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12741
12742 * eval.c (Fapply): Undo last change and add a comment about why.
12743
12744 2003-04-18 Miles Bader <miles@gnu.org>
12745
12746 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12747 pickier PARSE_MULTIBYTE_SEQ.
12748
12749 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12750
12751 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12752 Use XCDR, XCAR, CONSP.
12753 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12754 (Fapply): Remove unnecessary GCPRO.
12755
12756 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12757
12758 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12759
12760 * buffer.h: Don't hardcode BEG==1.
12761
12762 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12763
12764 2003-04-16 Richard M. Stallman <rms@gnu.org>
12765
12766 * xdisp.c (try_window, try_window_reusing_current_matrix):
12767 When at end of window, set window_end_pos to Z-ZV.
12768
12769 * buffer.c (Foverlay_recenter): Doc fix.
12770
12771 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12772
12773 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12774
12775 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12776
12777 * macterm.c (mac_check_for_quit_char): Don't check more often than
12778 once a second.
12779
12780 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12781
12782 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12783 specially, so that they can't hide an implicit switch-frame event.
12784 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12785 (head_table): Use switch-frame as event_kind for select-window.
12786 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12787
12788 * editfns.c (Fformat): Lisp_Object/int mixup.
12789 (format2): Remove unused var numargs.
12790
12791 2003-04-11 Kenichi Handa <handa@m17n.org>
12792
12793 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12794 (Qafter_insert_file_set_coding): New variable.
12795 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12796 for after-insert-file-adjust-coding-function.
12797 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12798 instead of Vafter_insert_file_adjust_coding_function.
12799
12800 2003-04-11 Kenichi Handa <handa@m17n.org>
12801
12802 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12803
12804 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12805 string. Callers changed.
12806
12807 2003-04-10 Kenichi Handa <handa@m17n.org>
12808
12809 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12810 (syms_of_fileio): Declare it as a lisp variable.
12811 (Finsert_file_contents):
12812 Call Vafter_insert_file_adjust_coding_function before calling
12813 decode-format.
12814
12815 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12816
12817 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12818 get GtkAdjustment as widget now is a GtkRange.
12819
12820 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12821 GtkRange to avoid memory leak.
12822
12823 2003-04-09 Kenichi Handa <handa@m17n.org>
12824
12825 * xfaces.c (Vface_font_rescale_alist): New variable.
12826 (struct font_name): New member rescale_ratio.
12827 (font_rescale_ratio): New function.
12828 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12829 (better_font_p): On comparing point sized, pay attention to
12830 recale_ratio member of fonts.
12831 (build_scalable_font_name): Reflect font->rescale_ratio in the
12832 font name.
12833 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12834
12835 * lread.c (read1): Before calling index, check if the 2nd
12836 arguemnt is in ASCII range.
12837
12838 2003-04-08 Richard M. Stallman <rms@gnu.org>
12839
12840 * fileio.c (Ffile_symlink_p): Doc fix.
12841
12842 * editfns.c (Fformat): Translate positions of text properties
12843 in the format string to apply them to the result.
12844
12845 * fileio.c (Finsert_file_contents): Doc fix.
12846 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12847
12848 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12849
12850 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12851
12852 2003-04-08 Steven Tamm <steventamm@mac.com>
12853
12854 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12855 that self-contained application finds libexec files.
12856
12857 2003-04-08 Kenichi Handa <handa@m17n.org>
12858
12859 * coding.c (code_convert_region_unwind):
12860 Set Vlast_coding_system_used to the argument.
12861 (code_convert_region): If post-read-conversion function changed
12862 the value of last-coding-sytem, keep the new value in
12863 coding->symbol so that it won't be overridden.
12864 (run_pre_post_conversion_on_str): Likewise.
12865 (coding_system_accept_latin_extra_p): New function.
12866 (find_safe_codings): Pay attention to characters registered in
12867 latin-extra-code-table.
12868
12869 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12870
12871 * Makefile.in (md5.o): Add missing dependency info.
12872
12873 2003-04-06 Richard M. Stallman <rms@gnu.org>
12874
12875 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12876
12877 * marker.c (verify_bytepos): New function.
12878
12879 * intervals.c (set_intervals_multibyte_1): When becoming
12880 multibyte, adjust right and left child sizes to a whole set of
12881 characters. If an interval gets zero total-length, delete it.
12882 If an interval consists of just its children, delete one of them.
12883
12884 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12885 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12886
12887 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12888 All calls deleted.
12889 (lisp_malloc): Do the work here directly.
12890
12891 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12892
12893 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12894 char tables.
12895
12896 2003-04-04 Kenichi Handa <handa@m17n.org>
12897
12898 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12899 destructively change "%S" to "%s".
12900
12901 2003-04-03 Miles Bader <miles@gnu.org>
12902
12903 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12904 always set.
12905
12906 2003-04-01 Dave Love <fx@gnu.org>
12907
12908 * xfns.c (xpm_lookup_color): Grok "opaque".
12909
12910 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12911
12912 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12913 parent window ID.
12914
12915 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12916
12917 * macterm.h (struct mac_output): Define x_pixels_diff and
12918 y_pixels_diff.
12919
12920 2003-03-31 Juanma Barranquero <lektu@terra.es>
12921
12922 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12923 blockinput.h and files included from it.
12924
12925 2003-03-31 Kim F. Storm <storm@cua.dk>
12926
12927 The following changes consolidates the common code related to
12928 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12929 files into frame.c.
12930
12931 * frame.c: Include blockinput.h.
12932 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12933 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12934 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12935 related vars here.
12936 (struct frame_parm_table, frame_parms): New table for describing
12937 frame parameters and their associated Q-variable.
12938 The order of the parameters corresponds to the sequence of the
12939 frame_parm_handlers table in redisplay_interface.
12940 (x_fullscreen_move, x_set_frame_parameters)
12941 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12942 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12943 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12944 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12945 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12946 Generic functions for processing of frame parameters.
12947 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12948 (display_x_get_resource, x_get_resource_string): Functions for
12949 generic access to X resources.
12950 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12951 (x_default_parameter, Fx_parse_geometry): Functions for generic
12952 access to frame parameters.
12953 (x_figure_window_size): Generic calculation of frame size.
12954 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12955 (syms_of_frame): Intern and staticpro frame parameter variables.
12956 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12957 Defsubr Sx_get_resource and Sx_parse_geometry.
12958
12959 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12960 parameter related vars defined in frame.c.
12961 (EMACS_CLASS): Define here.
12962 (enum FULLSCREEN_*): Define here.
12963 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12964 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12965 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12966 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12967 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12968 (x_set_visibility, x_set_autoraise, x_set_autolower)
12969 (x_set_unsplittable, x_set_vertical_scroll_bars)
12970 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12971 (x_figure_window_size): Add prototypes.
12972
12973 * dispextern.h (frame_parm_handler): New typedef.
12974 (struct redisplay_interface): New member frame_parm_handlers.
12975 (enum resource_types): Move declaration here.
12976 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12977 (x_default_parameter): Add prototypes.
12978
12979 * window.c: Remove extern decl for frame parameter vars.
12980 (change_window_heights): New generic function;
12981 replaces x_change_window_heights. All users changed.
12982
12983 * window.h (change_window_heights): Add prototype.
12984
12985 * xfaces.c: Remove extern decl for frame parameter vars.
12986
12987 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12988 (struct w32_display_info): Fix type of xrdb member.
12989 (enum FULLSCREEN_*): Remove.
12990 Remove prototypes for generic functions (in frame.h).
12991
12992 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12993 parameters now defined in frame.h and frame.c.
12994 (Vx_resource_name): Remove. Use generic var.
12995 (enum x_frame_parms): Remove (bogus, unused enum).
12996 (check_x_display_info): Make non-static (for frame.c).
12997 (struct x_frame_parm_table, x_frame_parms): Remove.
12998 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12999 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13000 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13001 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13002 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13003 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13004 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13005 Remove. Use generic functions instead.
13006 (enum resource_types): Remove.
13007 (x_set_scroll_bar_default_width): New global function (for frame.c).
13008 (Fx_create_frame): Depend on x_figure_window_size to add space for
13009 toolbar and setup size_hint_flags.
13010 (x_frame_parm_handlers): New table for redisplay_interface.
13011 (syms_of_xfns): Don't intern/staticpro removed vars.
13012
13013 * xterm.c: Remove unnecessary extern declarations.
13014 (x_fullscreen_adjust): Remove. Use generic instead.
13015 (x_redisplay_interface): Add x_frame_parm_handlers member.
13016
13017 * w32gui.h (XrmDatabase): New (dummy) typedef.
13018
13019 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13020 (struct w32_display_info): Fix type of xrdb member.
13021 (enum FULLSCREEN_*): Remove.
13022 (x_fullscreen_adjust): Remove prototype.
13023
13024 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13025 parameters now defined in frame.h and frame.c.
13026 (Vx_resource_name): Remove. Use generic var.
13027 (enum x_frame_parms): Remove (bogus, unused enum).
13028 (check_x_display_info): Make non-static (for frame.c).
13029 (struct x_frame_parm_table, x_frame_parms): Remove.
13030 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13031 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13032 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13033 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13034 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13035 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13036 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13037 Remove. Use generic functions instead.
13038 (enum resource_types): Remove.
13039 (x_set_scroll_bar_default_width): New global function (for frame.c).
13040 (Fx_create_frame): Depend on x_figure_window_size to add space for
13041 toolbar and setup size_hint_flags.
13042 (w32_frame_parm_handlers): New table for redisplay_interface.
13043 (syms_of_w32fns): Don't intern/staticpro removed vars.
13044
13045 * w32term.c: Remove unnecessary extern declarations.
13046 (x_fullscreen_adjust): Remove. Use generic instead.
13047 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13048
13049 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13050
13051 * macgui.h (XrmDatabase): New (dummy) typedef.
13052
13053 * macterm.h (EMACS_CLASS): Remove.
13054 (struct mac_display_info): Add xrdb member.
13055 (struct mac_output): Add want_fullscreen member.
13056
13057 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13058 parameters now defined in frame.h and frame.c.
13059 (Vx_resource_name): Remove. Use generic var.
13060 (check_x_display_info): Make non-static (for frame.c).
13061 (struct x_frame_parm_table, x_frame_parms): Remove.
13062 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13063 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13064 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13065 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13066 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13067 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13068 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13069 Remove. Use generic functions instead.
13070 (enum resource_types): Remove.
13071 (x_set_scroll_bar_default_width): New global function (for frame.c).
13072 (mac_frame_parm_handlers): New table for redisplay_interface.
13073 (syms_of_macfns): Don't intern/staticpro removed vars.
13074
13075 * macterm.c: Remove unnecessary extern declarations.
13076 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13077
13078 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13079 included from it (atimer.h and systime.h).
13080
13081 2003-03-30 Andreas Schwab <schwab@suse.de>
13082
13083 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13084 parameters for shift_glyphs_for_insert.
13085
13086 * macterm.c (x_redisplay_interface): Add missing entry for
13087 draw_vertical_window_border.
13088
13089 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13090
13091 * fileio.c (Fexpand_file_name): In the no-handler case, after
13092 expanding, look again for a handler and invoke it. This is needed
13093 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13094 expansion produces "/user@host:/bar/../baz" which needs to be
13095 expanded again for the finame result "/user@host:/baz".
13096
13097 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13098
13099 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13100 of area to be redrawn for better performance.
13101
13102 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13103
13104 * xterm.c (take_vertical_position_into_account): Remove.
13105 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13106 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13107 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13108 (x_set_toolkit_scroll_bar_thumb): Simplify.
13109 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13110 (XTread_socket): Remove unused var.
13111 (x_make_frame_invisible): Replace goto with else.
13112
13113 * xdisp.c (set_vertical_scroll_bar): New fun.
13114 (redisplay_window): Use it.
13115
13116 2003-03-26 Richard M. Stallman <rms@gnu.org>
13117
13118 * xdisp.c (update_tool_bar): Recompute tool bar if
13119 update_mode_lines is set. Set w->update_mode_line
13120 only if the tool bar contents actually change.
13121 (update_menu_bar): Undo previous change.
13122
13123 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13124
13125 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13126 (xg_frame_set_char_size): Calculate scroll bar width before frame
13127 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13128 (xg_separator_p): Check for all documented separator types.
13129 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13130 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13131
13132 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13133 so tool bar gets updated.
13134
13135 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13136
13137 * data.c (store_symval_forwarding): Re-instate part of the code
13138 that was deleted with too much enthusiasm.
13139
13140 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13141
13142 * data.c (store_symval_forwarding): Delete special read-only
13143 hack for type == -1, since we now use ->constant instead.
13144 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13145
13146 * buffer.c (overlays_in): Declare static.
13147 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13148 `constant' field rather than the variable's `type' field.
13149
13150 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13151
13152 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13153
13154 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13155
13156 * fns.c [MAC_OSX]: Do not redefine vector.
13157
13158 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13159
13160 * macgui.h: Remove definition of No_Cursor.
13161
13162 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13163
13164 * xdisp.c: Define No_Cursor.
13165 (x_write_glyphs, notice_overwritten_cursor)
13166 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13167 (note_mouse_highlight): Remove Mac-specific code.
13168 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13169
13170 2003-03-24 John Paul Wallington <jpw@gnu.org>
13171
13172 * xdisp.c (redisplay_window): If mini window's buffer is not
13173 empty, then redisplay it like other windows.
13174
13175 2003-03-23 Kim F. Storm <storm@cua.dk>
13176
13177 * w32term.c (w32_draw_window_cursor): Fix last change.
13178
13179 2003-03-23 Kenichi Handa <handa@m17n.org>
13180
13181 * alloc.c (make_string_from_bytes, make_specified_string):
13182 Add `const' for the arg CONTENTS.
13183
13184 * lisp.h (make_string_from_bytes, make_specified_string):
13185 Prototypes adjusted.
13186
13187 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13188
13189 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13190
13191 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13192 (XG_SB_RANGE): New define.
13193
13194 * gtkutil.c (xg_fixed_handle_expose): New function.
13195 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13196 expose events.
13197 (xg_update_scrollbar_pos): Take two more arguments, left and width
13198 of scroll bar including borders.
13199 Clear left and right part outside scroll bar separately as some
13200 themes have bars that are not an even number of pixels.
13201 Don't set reallocate_redraws, don't call
13202 gdk_window_process_all_updates.
13203 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13204 so no need to change it. Calculate size and value with XG_SB_RANGE.
13205
13206 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13207 Pass left and width of scroll bar including borders to
13208 xg_update_scrollbar_pos.
13209
13210 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13211
13212 * Makefile.in: Make sure space precedes end-of-line backslashes.
13213
13214 2003-03-22 Kim F. Storm <storm@cua.dk>
13215
13216 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13217 Add generic versions here. Remove system specific versions
13218 defined elsewhere.
13219
13220 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13221 Add prototypes.
13222
13223 * xterm.h (STORE_NATIVE_RECT): New macro.
13224
13225 2003-03-21 Kim F. Storm <storm@cua.dk>
13226
13227 * xdisp.c (get_glyph_string_clip_rect):
13228 Use FRAME_INTERNAL_BORDER_WIDTH.
13229
13230 * dispextern.h (struct redisplay_interface): Add active_p
13231 argument to draw_window_cursor member. All uses changed.
13232
13233 2003-03-21 Kim F. Storm <storm@cua.dk>
13234
13235 The following changes consolidate code related to writing and
13236 inserting glyphs, exposing frame, the tool bar, the mouse face,
13237 the output cursor, and help echo from xterm.c, w32term.c and
13238 macterm.c into xdisp.c. It also generalizes the use of the
13239 window_part enum instead of using numeric values throughout.
13240
13241 * xdisp.c: Consolidate gui-independent code here.
13242 Include keymap.h.
13243 (Qhelp_echo): Import.
13244 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13245 (help_echo_string, help_echo_window, help_echo_object)
13246 (previous_help_echo_string, help_echo_pos): Declare here.
13247 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13248 (estimate_mode_line_height): Define here. Handle windowing
13249 systems directly (without using estimate_mode_line_height_hook).
13250 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13251 (update_window_cursor, update_cursor_in_window_tree)
13252 (fast_find_position, fast_find_string_pos)
13253 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13254 (expose_area, expose_line, expose_overlaps, expose_window)
13255 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13256 declared static as they are only used locally in xdisp.c.
13257 (draw_glyphs): Rename from x_draw_glyphs and make static.
13258 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13259 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13260 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13261 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13262 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13263 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13264 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13265 (note_mouse_highlight, x_clear_window_mouse_face)
13266 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13267 (x_intersect_rectangles): New generic functions for use by xdisp.c
13268 and GUI front-ends.
13269 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13270 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13271
13272 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13273 (NativeRectangle): Generic typedef for rectangle type.
13274 (enum window_part): Move here from window.c.
13275 (struct redisplay_interface): New members flush_display_optional,
13276 define_frame_cursor, clear_frame_area, draw_window_cursor,
13277 draw_vertical_window_border, shift_glyphs_for_insert.
13278 Rename member clear_mouse_face to clear_window_mouse_face.
13279 (estimate_mode_line_height_hook): Remove hook.
13280 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13281 (tool_bar_item_info): Remove prototype.
13282 (help_echo_string, help_echo_window, help_echo_object)
13283 (previous_help_echo_string, help_echo_pos)
13284 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13285 (x_stretch_cursor_p, output_cursor): Declare extern.
13286 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13287 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13288 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13289 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13290 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13291 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13292 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13293 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13294 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13295 Add prototypes.
13296 (mode_line_string, marginal_area_string): Fix prototypes.
13297
13298 * window.c (enum window_part): Move to dispextern.h.
13299 (coordinates_in_window): Use enum window_part member names
13300 instead of numbers to describe return value.
13301 (struct check_window_data): Change part member to window_part.
13302 (check_window_containing): Return window_part unaltered.
13303 (window_from_coordinates): Change part arg from int to enum
13304 window_part. Allow part arg to be null. All users changed.
13305
13306 * window.h (window_from_coordinates): Fix prototype.
13307
13308 * term.c (estimate_mode_line_height): Move to xdisp.c.
13309
13310 * keyboard.c (make_lispy_event): Use enum window_part.
13311
13312 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13313 window_part instead of int in arg list. Users changed.
13314
13315 * xterm.h (No_Cursor): Declare as None for X.
13316 (struct mac_output): Replace member cross_cursor by hand_cursor.
13317
13318 * xterm.c: Remove consolidated defines and code.
13319 (BETWEEN): Remove unused macro.
13320 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13321 (x_define_frame_cursor, x_clear_frame_area)
13322 (x_draw_window_cursor): New X-specific functions for RIF.
13323 (x_redisplay_interface): Add new members.
13324
13325 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13326
13327 * w32term.h (struct w32_output): Remove cross_cursor member.
13328
13329 * w32term.c: Remove consolidated defines and code.
13330 (BETWEEN): Remove unused macro.
13331 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13332 (w32_define_frame_cursor, w32_clear_frame_area)
13333 (w32_draw_window_cursor): New W32-specific functions for RIF.
13334 (w32_redisplay_interface): Add new members.
13335
13336 * w32gui.h (No_Cursor): Define as 0 for W32.
13337 (XRectangle): Add X compatible rectangle type.
13338 (NativeRectangle): Declare as RECT for W32.
13339 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13340
13341 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13342
13343 * w32console.c: Remove consolidated defines and code.
13344
13345 * msdos.h (Display_Info): Add generic typedef.
13346
13347 * msdos.c: Remove consolidated defines and code.
13348 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13349
13350 * macterm.h (struct mac_output): Replace member cross_cursor by
13351 hand_cursor.
13352 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13353
13354 * macterm.c: Remove consolidated defines and code.
13355 (BETWEEN): Remove unused macro.
13356 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13357 (mac_define_frame_cursor, mac_clear_frame_area)
13358 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13359 (x_redisplay_interface): Add new members.
13360
13361 * macgui.h (No_Cursor): Define as 0 for Mac.
13362 (XRectangle): Add X compatible rectangle type.
13363 (NativeRectangle): Declare as Rect for Mac.
13364 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13365
13366 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13367 (x_set_cursor_color): Use x_display_and_set_cursor.
13368
13369 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13370 included from it. Add dependency on keymap.h.
13371
13372 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13373
13374 2003-03-21 Kenichi Handa <handa@m17n.org>
13375
13376 * fileio.c (Fexpand_file_name): Fix previous change.
13377
13378 2003-03-19 Kenichi Handa <handa@m17n.org>
13379
13380 * fileio.c (Ffile_name_directory): Reconstruct file name by
13381 make_specified_string.
13382 (Ffile_name_nondirectory, Ffile_name_as_directory)
13383 (Fdirectory_file_name, Fexpand_file_name)
13384 (Fsubstitute_in_file_name): Likewise.
13385 (Fread_file_name): Compare decoded homedir with DIR and
13386 DEFAULT_FILENAME.
13387
13388 * alloc.c (make_specified_string): If NCHARS is negative, count
13389 the number of characters.
13390
13391 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13392
13393 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13394 all widgets.
13395
13396 * gtkutil.h: Removed xg_ignore_next_thumb.
13397
13398 2003-03-18 Kenichi Handa <handa@m17n.org>
13399
13400 * coding.c (Vchar_coding_system_table): Remove this variable.
13401 (Vcoding_system_safe_chars): New variable.
13402 (intersection): Remove this function.
13403 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13404 all codings in SAFE_CODINGS.
13405 (Ffind_coding_systems_region_internal): Adjust for the change of
13406 find_safe_codings. Get generic coding systems from
13407 Vcoding_system_safe_chars.
13408 (Fdefine_coding_system_internal): New function.
13409 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13410 Initialize and staticpro Vcoding_system_safe_chars.
13411
13412 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13413
13414 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13415 equal old values before updating.
13416
13417 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13418
13419 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13420
13421 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13422
13423 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13424 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13425 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13426 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13427 (xg_create_scroll_bar): Pass bar to button event callback.
13428 (xg_find_top_left_in_fixed): New function.
13429 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13430 whole scroll bar area. Get old position with
13431 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13432 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13433 dragging is in progress. Calculate whole as for Motif.
13434 Remove code that saved last values. Call gtk_range functions to
13435 set scroll bar sizes.
13436
13437 * gtkutil.h: Removed xg_ignore_next_thumb.
13438
13439 2003-03-17 Juanma Barranquero <lektu@terra.es>
13440
13441 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13442 and files included from it.
13443
13444 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13445
13446 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13447 multiple occurrences of the same keymap under different prefixes.
13448 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13449
13450 2003-03-16 Jason Rumney <jasonr@gnu.org>
13451
13452 * w32gui.h: Use HDC for Display.
13453
13454 * w32term.c (w32_encode_char): Prevent double-byte chars from
13455 crashing Emacs.
13456
13457 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13458 as binary.
13459
13460 2003-03-16 Juanma Barranquero <lektu@terra.es>
13461
13462 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13463
13464 2003-03-16 Kim F. Storm <storm@cua.dk>
13465
13466 The following changes consolidate some of the gui-independent
13467 parts of the processing and drawing of "glyph strings" from
13468 xterm.c, w32term.c, and macterm.c into xdisp.c.
13469
13470 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13471 21 bits (this reduces number of faces from 4M to 2M).
13472 Replace W32 specific w32_font_type member (2 bits) by generic
13473 font_type member (3 bits) for portability.
13474 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13475 (enum draw_glyphs_face): Define here.
13476 (struct glyph_string): Define here. Merge W32 and X versions.
13477 (struct redisplay_interface): New members per_char_metric,
13478 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13479 (VCENTER_BASELINE_OFFSET): Define here.
13480 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13481 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13482
13483 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13484 (dump_glyph_string): Moved here.
13485 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13486 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13487 (fill_composite_glyph_string, fill_glyph_string)
13488 (fill_image_glyph_string, fill_stretch_glyph_string)
13489 (left_overwritten, left_overwriting, right_overwritten)
13490 (right_overwriting, get_char_face_and_encoding)
13491 (set_glyph_string_background_width, compute_overhangs_and_x)
13492 (append_glyph, append_composite_glyph, produce_image_glyph)
13493 (take_vertical_position_into_account, append_stretch_glyph)
13494 (produce_stretch_glyph): New generic functions (based on X version).
13495 Call platform specific functions through rif.
13496 (INIT_GLYPH_STRING): New macro, hides W32 details.
13497 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13498 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13499 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13500 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13501 (notice_overwritten_cursor):
13502 Generic functions exported to platform modules. Users changed.
13503
13504 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13505 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13506 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13507 New macros for consolidated code.
13508
13509 * xterm.c: Remove consolidated defines and code.
13510 (x_per_char_metric, x_encode_char)
13511 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13512 (x_redisplay_interface): Add new members.
13513
13514 * w32gui.h (Display): Add dummy typedef for consolidation.
13515 (XChar2b): Define alias for wchar_t for consolidation.
13516 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13517
13518 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13519 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13520 New macros for consolidation.
13521
13522 * w32term.c: Remove consolidated defines and code.
13523 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13524 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13525 (w32_per_char_metric): Change font_type arg to int for RIF.
13526 (w32_encode_char): Return int according to RIF requirements.
13527 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13528 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13529 x_get_glyph_overhangs.
13530 (w32_redisplay_interface): Add new members.
13531
13532 * macgui.h (XChar2b): Move typedef here for consolidation.
13533 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13534
13535 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13536 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13537 consolidation.
13538
13539 * macterm.c: Remove consolidated defines and code.
13540 (mac_per_char_metric): New function for RIF.
13541 (mac_encode_char): Adapt to new RIF requirements.
13542 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13543 (x_redisplay_interface): Add new members.
13544
13545 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13546
13547 * keymap.c (Vmenu_events): New var.
13548 (syms_of_keymap): Initialize it.
13549 (where_is_internal): Check more carefully what is a menu event.
13550
13551 2003-03-14 Richard M. Stallman <rms@gnu.org>
13552
13553 * lread.c (read1): After #!, exit loop on eof.
13554
13555 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13556
13557 * gtkutil.h: Add declaration for xg_frame_cleared.
13558
13559 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13560
13561 * gtkutil.c (struct xg_last_sb_pos): New structure.
13562 (handle_fixed_child): New function.
13563 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13564 and force a redraw on them.
13565 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13566 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13567 so we can avoid unneeded redraws.
13568 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13569 and force a redraw on the scroll bar.
13570 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13571 if xg_last_sb_pos shows the positions are up to date.
13572 (xg_frame_cleared): New function.
13573
13574 2003-03-13 Kenichi Handa <handa@m17n.org>
13575
13576 * coding.c (Fdetect_coding_region): Fix docstring.
13577 (Fdetect_coding_string): Fix docstring.
13578
13579 2003-03-13 Andreas Schwab <schwab@suse.de>
13580
13581 * gtkutil.c: Add prototype for create_menus.
13582
13583 * data.c (long_to_cons): Fix type of top.
13584
13585 * xselect.c (selection_data_to_lisp_data): Use int instead of
13586 long for an integer of size 4.
13587
13588 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13589 (xg_tool_bar_help_callback): Likewise.
13590
13591 2003-03-12 Andreas Schwab <schwab@suse.de>
13592
13593 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13594
13595 2003-03-12 Kim F. Storm <storm@cua.dk>
13596
13597 The following changes consolidate the fringe handling from
13598 xterm.c, w32term.c, and macterm.c into xdisp.c.
13599
13600 * xdisp.c: Consolidate fringe handling code here.
13601 (left_bits, right_bits, continued_bits, continuation_bits)
13602 (ov_bits, zv_bits): Define fringe bitmaps.
13603 (fringe_bitmaps): New array holding fringe bitmaps.
13604 (draw_fringe_bitmap): Draw a specific bitmap; call display
13605 specific drawing routine via rif->draw_fringe_bitmap.
13606 (draw_row_fringe_bitmaps): Generic replacement for
13607 x_draw_row_fringe_bitmaps; all callers changed.
13608 (compute_fringe_widths): Generic replacement for
13609 x_compute_fringe_widths; all callers changed.
13610
13611 * dispextern.h (enum fringe_bitmap_type): Define here.
13612 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13613 (fringe_bitmaps): Declare extern.
13614 (struct redisplay_interface): New member draw_fringe_bitmap.
13615 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13616
13617 * xterm.c: Remove generic fringe code.
13618 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13619 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13620
13621 * w32term.c: Remove generic fringe code.
13622 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13623 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13624
13625 * macterm.c: Remove generic fringe code.
13626 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13627 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13628
13629 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13630
13631 * print.c (Fprin1_to_string): Return unibyte string if possible.
13632
13633 2003-03-09 David Kastrup <dak@gnu.org>
13634
13635 * process.c (read_process_output): We have allocated enough space
13636 for readmax and carryover, so actually use the alloted space.
13637
13638 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13639
13640 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13641 toolkit scrollbar click.
13642
13643 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13644 for USE_GTK.
13645 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13646 also.
13647 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13648 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13649
13650 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13651
13652 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13653 (xg_tool_bar_item_expose_callback): New function.
13654 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13655 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13656 on the tool bar widget.
13657 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13658 to expose on the tool bar item widgets.
13659
13660 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13661
13662 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13663 struct image* when deciding to update (struct image* may have been
13664 deleted from the image cache).
13665
13666 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13667 the event isn't for a frame (i.e. for dialogs).
13668
13669 2003-03-07 Kenichi Handa <handa@m17n.org>
13670
13671 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13672 composition components reaches the limit, terminate composing.
13673 (COMPOSITION_OK): New macro.
13674 (detect_coding_iso2022): Use it if an escape sequence for
13675 composition is found.
13676 (coding_restore_composition): Adjust the number of composition
13677 components if it is not sane.
13678
13679 2003-03-06 Juanma Barranquero <lektu@terra.es>
13680
13681 * w32term.h (struct w32_display_info): Add xrdb member to support
13682 passing resources via -xrm on Windows.
13683
13684 * w32term.c (w32_make_rdb): New function.
13685 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13686 struct. Delete leftover code.
13687
13688 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13689 for resources passed on the command line.
13690
13691 * w32reg.c (w32_get_rdb_resource): New function.
13692 (x_get_string_resource): Use it, so resources passed with -xrm
13693 supercede the ones in the registry.
13694
13695 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13696
13697 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13698 instead of x_top_window_to_frame.
13699
13700 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13701
13702 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13703 when restarting Emacs.
13704
13705 2003-03-03 Richard M. Stallman <rms@gnu.org>
13706
13707 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13708 to run kill-buffer-query-functions.
13709 (Qkill_buffer_query_functions): New var.
13710 (syms_of_buffer): Init and staticpro it.
13711
13712 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13713
13714 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13715
13716 2003-02-25 Kim F. Storm <storm@cua.dk>
13717
13718 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13719 If centering point failed to make whole line visible and vscroll
13720 is non-zero, disable vscroll and try centering point again.
13721
13722 * lread.c (read1): Accept `single space' syntax like (? x).
13723
13724 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13725
13726 * keyboard.c (cancel_hourglass_unwind): Surround with
13727 #ifdef HAVE_X_WINDOWS
13728
13729 2003-02-25 Kenichi Handa <handa@m17n.org>
13730
13731 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13732 process only when "subprocesses" is defined.
13733
13734 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13735
13736 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13737
13738 2003-02-24 Juanma Barranquero <lektu@terra.es>
13739
13740 * callint.c (fix_command): Declare as static void and move before
13741 Fcall_interactively.
13742
13743 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13744 (syms_of_xdisp): Don't initialize Qwhen.
13745
13746 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13747
13748 * keyboard.c (cancel_hourglass_unwind): New function.
13749 (command_loop_1): Cancel hourglass with unwind-protect.
13750
13751 2003-02-23 Richard M. Stallman <rms@gnu.org>
13752
13753 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13754 Detect (when ... (region-beginning)) etc.
13755 (Fcall_interactively): Call fix_command.
13756 (Qif, Qwhen): New variables.
13757 (syms_of_callint): Init and staticpro them.
13758
13759 * regex.c (print_partial_compiled_pattern): Output to stderr.
13760
13761 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13762
13763 * dired.c (directory_files_internal): Don't expand directory.
13764 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13765 instead. From Lars Hansen <larsh@math.ku.dk>.
13766
13767 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13768
13769 * fns.c (string_to_multibyte): Remove unused var i.
13770 (Flanginfo): Fix int/Lisp_Object mixup.
13771 (void_call2): New fun.
13772 (Fmap_char_table): Use it in place of call2.
13773
13774 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13775
13776 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13777
13778 * keymap.c (copy_keymap_1): Make it static.
13779
13780 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13781
13782 2003-02-22 David Ponce <david@dponce.com>
13783
13784 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13785
13786 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13787
13788 * process.h: Removed subtty field from struct Lisp_Process.
13789
13790 * process.c (create_process): Remove setting of subtty.
13791 (emacs_get_tty_pgrp): New function.
13792 (Fprocess_running_child_p, process_send_signal):
13793 Call emacs_get_tty_pgrp instead of ioctl.
13794 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13795
13796 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13797
13798 * keymap.c (Fdefine_key): Doc fix.
13799
13800 2003-02-21 Juanma Barranquero <lektu@terra.es>
13801
13802 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13803
13804 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13805 POLLING_PROBLEM_IN_SELECT.
13806
13807 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13808 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13809
13810 * s/hpux10-20.h: New file.
13811
13812 * process.c (wait_reading_process_input):
13813 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13814
13815 2003-02-20 Kenichi Handa <handa@m17n.org>
13816
13817 * fontset.c (check_fontset_name): If NAME is nil, return the
13818 default fontset.
13819 (override_font_info): New function.
13820 (Fset_fontset_font): Document that NAME nil means the default fontset.
13821 (Ffontset_info): If FONTSET is not the default fontset, merge
13822 FONTSET onto the copy of the default fontset, and work on that
13823 copy. Document that NAME nil means the default fontset.
13824 (Ffontset_font): Document that NAME nil means the default fontset.
13825
13826 * process.c (setup_process_coding_systems): If the process's
13827 in/out descriptor is -1, do nothing.
13828
13829 2003-02-19 Andreas Schwab <schwab@suse.de>
13830
13831 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13832 Add prototypes.
13833
13834 2003-02-19 Kenichi Handa <handa@m17n.org>
13835
13836 * xfaces.c (try_alternative_families): Try all scalable fonts if
13837 Vscalable_fonts_allowed is not Qt.
13838
13839 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13840
13841 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13842
13843 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13844
13845 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13846 names.
13847
13848 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13849 (sorted_font_list): Move allocation of struct font_name to
13850 x_face_list_fonts.
13851 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13852 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13853
13854 2003-02-18 Kim F. Storm <storm@cua.dk>
13855
13856 * lread.c (read1): Fix last change.
13857 "`" is not always special. Allow "?" after a character constant.
13858
13859 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13860
13861 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13862
13863 2003-02-18 Andreas Schwab <schwab@suse.de>
13864
13865 * window.c (window_scroll_pixel_based): Move outside a
13866 multi-glyph character before setting new window start.
13867
13868 * xdisp.c (in_display_vector_p): New function.
13869 * dispextern.h (in_display_vector_p): Declare.
13870
13871 2003-02-18 Kim F. Storm <storm@cua.dk>
13872
13873 * lread.c (read1): Fix and relax read syntax.
13874 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13875 Only recognize "," after dotted-pair dot if inside backquote.
13876 Never include "`" or "," (inside backquote) in a symbol.
13877 Allow dotted-pair dot after a character constant.
13878 Allow "`" and "," (inside backquote) after a character constant.
13879
13880 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13881
13882 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13883 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13884 icons. Set name of tool bar to emacs-toolbar.
13885 (update_frame_tool_bar): Connect expose event to
13886 xg_tool_bar_expose_callback.
13887
13888 2003-02-17 Richard M. Stallman <rms@gnu.org>
13889
13890 * keyboard.c (this_command_key_count_reset): New variable.
13891 Initiatize to 0 where this_command_key_count is set.
13892 (read_char): Save and restore this_command_key_count_reset
13893 around input method code.
13894 (read_char): If this_command_key_count_reset, echo reread commands.
13895 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13896
13897 2003-02-17 Kenichi Handa <handa@m17n.org>
13898
13899 * fns.c (string_to_multibyte): Always return a multibyte string.
13900
13901 2003-02-16 Jason Rumney <jasonr@gnu.org>
13902
13903 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13904 Negative max_fonts parameter means list all.
13905
13906 2003-02-14 Dave Love <fx@gnu.org>
13907
13908 * fns.c (Flanginfo): Doc fix.
13909
13910 2003-02-13 Kim F. Storm <storm@cua.dk>
13911
13912 * lread.c (read_escape): Interpret \s as a SPACE character, except
13913 for \s-X in a character constant which still is the super modifier.
13914 (read1): Signal an `invalid read syntax' error if a character
13915 constant is immediately followed by a digit or symbol character.
13916
13917 * search.c (Fmatch_data): Doc fix. Explicitly state that
13918 match-data is undefined if last search failed.
13919
13920 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13921 All uses changed.
13922
13923 2003-02-12 Juanma Barranquero <lektu@terra.es>
13924
13925 * eval.c (Fdefmacro): Fix typo.
13926
13927 2003-02-12 Kim F. Storm <storm@cua.dk>
13928
13929 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13930 macro is a string, convert meta modifiers in string when copying
13931 the string into a vector.
13932
13933 2003-02-11 Kim F. Storm <storm@cua.dk>
13934
13935 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13936
13937 2003-02-11 Kenichi Handa <handa@m17n.org>
13938
13939 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13940
13941 2003-02-10 Kim F. Storm <storm@cua.dk>
13942
13943 * process.c: Doc fixes.
13944 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13945
13946 2003-02-10 Kenichi Handa <handa@m17n.org>
13947
13948 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13949
13950 * process.c (QCfilter_multibyte): New variable.
13951 (setup_process_coding_systems): New function.
13952 (Fset_process_buffer, Fset_process_filter):
13953 Call setup_process_coding_systems.
13954 (Fstart_process): Initialize the member `filter_multibyte' of
13955 struct Lisp_Process.
13956 (create_process): Call setup_process_coding_systems.
13957 (Fmake_network_process): New keyward `:filter-multibyte'.
13958 Initialize the member `filter_multibyte' of struct Lisp_Process.
13959 Call setup_process_coding_systems.
13960 (server_accept_connection): Call setup_process_coding_systems.
13961 (read_process_output): If the process has a filter, decide the
13962 multibyteness of a string to given to the filter by
13963 `filter_multibyte' member of the process. If the process doesn't
13964 have a filter and the result of conversion is unibyte, use
13965 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13966 multibyte form.
13967 (Fset_process_coding_system): Call setup_process_coding_systems.
13968 (Fset_process_filter_multibyte): New function.
13969 (Fprocess_filter_multibyte_p): New function.
13970 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13971 Defsubr Sset_process_filter_multibyte and
13972 Sprocess_filter_multibyte_p.
13973
13974 * process.h (struct Lisp_Process): New member filter_multibyte.
13975
13976 * lisp.h (setup_process_coding_systems): Add prototype.
13977
13978 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13979 process, update coding systems for the process.
13980
13981 2003-02-09 Kenichi Handa <handa@m17n.org>
13982
13983 * fns.c (string_to_multibyte): New function.
13984 (Fstring_to_multibyte): New function.
13985 (syms_of_fns): Defsubr it.
13986
13987 2003-02-08 Andreas Schwab <schwab@suse.de>
13988
13989 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13990 instead of the substitution.
13991
13992 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13993
13994 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13995
13996 * xmenu.c (menu_position_func): Adjust menu popup position so that
13997 the menu is fully visible.
13998
13999 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14000
14001 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14002 (x_make_frame_invisible, x_wm_set_icon_position):
14003 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14004
14005 * xfns.c (x_set_name, x_set_title): Ditto.
14006
14007 2003-02-04 Richard M. Stallman <rms@gnu.org>
14008
14009 * keyboard.c (echo_now): Update before_command_echo_length.
14010 (Freset_this_command_lengths): Reset this_command_key_count etc.
14011 immediately rather than arranging to do it later.
14012 (before_command_key_count_1, before_command_echo_length_1)
14013 (before_command_restore_flag): Vars deleted.
14014 (add_command_key): Don't handle before_command_restore_flag.
14015 (read_char, record_menu_key): Don't update before_command_key_count or
14016 before_command_echo_length.
14017 (read_char): Don't handle before_command_restore_flag.
14018
14019 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14020 in direct-output clauses if it wouldn't be called in the ordinary case.
14021
14022 2003-02-04 Kim F. Storm <storm@cua.dk>
14023
14024 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14025
14026 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14027
14028 * gtkutil.c (remove_from_container): Copying list is not needed.
14029 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14030 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14031 on list returned from gtk_container_get_children to avoid memory leak.
14032
14033 2003-02-01 Jason Rumney <jasonr@gnu.org>
14034
14035 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14036 local malloc.
14037 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14038 definitions in xpm.h.
14039 (init_xpm_functions): New function.
14040 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14041 (init_external_image_libraries): Try to load libXpm.dll.
14042
14043 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14044 timestamp.
14045
14046 2003-01-31 Dave Love <fx@gnu.org>
14047
14048 * syntax.c (Fskip_chars_forward)
14049 (open-paren-in-column-0-is-defun-start): Doc fix.
14050
14051 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14052
14053 * fileio.c: Support // at start of name for Cygwin (just added proper
14054 preprocessor tests).
14055
14056 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14057
14058 * Makefile.in: Use @EXEEXT@ for Cygwin.
14059
14060 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14061
14062 * s/cygwin.h: Added for Cygwin port.
14063
14064 2003-01-31 Juanma Barranquero <lektu@terra.es>
14065
14066 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14067 when including gif_lib.h.
14068 (init_gif_functions, init_tiff_functions): New functions.
14069 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14070 Windows. Disable color table lookups. Call library functions
14071 through pointers determined at runtime.
14072 (init_external_image_libraries): Try to load libungif.dll and
14073 libtiff.dll.
14074
14075 2003-01-31 Kenichi Handa <handa@m17n.org>
14076
14077 * xdisp.c (SKIP_GLYPHS): New macro.
14078 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14079
14080 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14081
14082 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14083
14084 2003-01-30 Dave Love <fx@gnu.org>
14085
14086 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14087 (Fgarbage_collect): Use them.
14088 (init_alloc, syms_of_alloc): Set them up.
14089
14090 2003-01-30 Juanma Barranquero <lektu@terra.es>
14091
14092 * w32fns.c (init_external_image_libraries): Add missing operator.
14093
14094 2003-01-29 Jason Rumney <jasonr@gnu.org>
14095
14096 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14097 an alternative name for jpeg.dll.
14098
14099 2003-01-29 Kenichi Handa <handa@m17n.org>
14100
14101 * xdisp.c (set_cursor_from_row): Pay attention to string display
14102 properties.
14103
14104 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14105
14106 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14107 <escape>.
14108 (keycode_to_xkeysym_table): Reformat and add more comments.
14109 (XTread_socket): Drop special case for backspace.
14110
14111 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14112
14113 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14114 values in old-style RGB specs.
14115
14116 2003-01-27 Juanma Barranquero <lektu@terra.es>
14117
14118 * w32fns.c (init_external_image_libraries): Try alternate names for the
14119 jpeg dll.
14120
14121 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14122
14123 * gtkutil.c (create_dialog, xg_separator_p)
14124 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14125 before calling strcmp or strlen.
14126
14127 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14128
14129 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14130 and handle image load failure.
14131
14132 2003-01-26 Jason Rumney <jasonr@gnu.org>
14133
14134 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14135 New functions.
14136 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14137 Disable color table lookups. Call jpeg library functions
14138 through pointers determined at runtime.
14139 (init_external_image_libraries): Try to load jpeg.dll.
14140
14141 2003-01-25 Richard M. Stallman <rms@gnu.org>
14142
14143 * lisp.h: Declare format2 instead of format1.
14144
14145 * fileio.c (barf_or_query_if_file_exists):
14146 Call format2 instead of format1.
14147
14148 * editfns.c (format2): New function, replaces format1
14149 but takes exactly two Lisp Objects as format args.
14150
14151 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14152
14153 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14154
14155 * xterm.h: Change to return value of x_dispatch_event to int.
14156
14157 * xterm.c (x_filter_event): New function.
14158 (event_handler_gdk, XTread_socket): Call x_filter_event.
14159 (x_dispatch_event): Change to return value of finish.
14160 (event_handler_gdk): Use return value from x_dispatch_event.
14161
14162 * xfns.c (x_window): Call create_frame_xic for GTK version to
14163 initialize input methods.
14164
14165 * gtkutil.h: Add (void) prototypes.
14166
14167 * gtkutil.c (create_menus): Remove code that puts the help menu to
14168 the right.
14169
14170 2003-01-25 Jason Rumney <jasonr@gnu.org>
14171
14172 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14173 [HAVE_PNG]: Sync with xfns.c version.
14174 (png_load): Adjust colors for Windows. Use Windows
14175 bitmaps. Disable color table lookups.
14176 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14177 (init_png_functions): New function.
14178 (png_read_from_memory, png_load): Call png library functions
14179 through pointers determined at runtime.
14180 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14181 (init_external_image_libraries): New function.
14182 (init_xfns): Call it.
14183
14184 2003-01-24 Andreas Schwab <schwab@suse.de>
14185
14186 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14187
14188 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14189
14190 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14191 of static initializer.
14192
14193 2003-01-24 Dave Love <fx@gnu.org>
14194
14195 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14196 architectures.
14197
14198 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14199 Use __alignof__.
14200
14201 2003-01-24 Kenichi Handa <handa@m17n.org>
14202
14203 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14204 It it is nonzero, don't pretend that an invisible area doesn't exist.
14205 (command_loop_1): Call adjust_point_for_property with proper
14206 second arg.
14207
14208 2003-01-22 Jason Rumney <jasonr@gnu.org>
14209
14210 Sync changes with xterm.c and xfns.c.
14211
14212 * w32term.c (x_draw_glyph_string_foreground)
14213 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14214
14215 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14216 phys_cursor's hpos is overwritten. This is still not completely
14217 correct, as it doesn't really make sense to use hpos at all to
14218 get the cursor glyph (as that is relative to the width of the
14219 characters on the line, which may have changed during the update).
14220
14221 * w32term.c (notice_overwritten_cursor): Handle the special case
14222 of the cursor being in the first blank non-text line at the
14223 end of a window.
14224
14225 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14226 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14227 Compute from the x position returned by x_draw_glyphs.
14228
14229 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14230 except for NO_CURSOR and system caret, to make phys_cursor_width
14231 contain what its name suggests.
14232 (notice_overwritten_cursor): Consider the cursor image erased if
14233 the output area intersects the cursor image in y-direction.
14234
14235 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14236 note_mode_line_highlight and extend.
14237
14238 * w32term.c (last_window): New variable.
14239 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14240 (note_mouse_movement): Remove reimplemented code in #if 0.
14241
14242 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14243 not update_mode_lines, and always set it to 1.
14244
14245 2003-01-21 Jason Rumney <jasonr@gnu.org>
14246
14247 * w32fns.c (IDC_HAND): Define it if system headers don't.
14248
14249 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14250
14251 * w32term.h (struct w32_output): New member hand_cursor.
14252 (WM_EMACS_SETCURSOR): New message definition.
14253
14254 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14255 function w32_define_cursor.
14256 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14257 position, change member name output_data.x to output_data.w32 and
14258 add function w32_define_cursor.
14259 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14260 and change member name output_data.x to output_data.w32.
14261 (w32_initialize_display_info):
14262 Setup dpyinfo->vertical_scroll_bar_cursor.
14263
14264 * w32fns.c (Vx_hand_shape): New variable.
14265 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14266 WM_EMACS_SETCURSOR.
14267 (x-create-frame): Setup Cursor types.
14268
14269 2003-01-21 David Ponce <david@dponce.com>
14270
14271 * w32term.c (w32_encode_char): For DIM=1 charset, set
14272 ccl->reg[2] to -1 before calling ccl_driver.
14273 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14274 <handa@m17n.org> on 2002-09-30.)
14275 (w32_draw_relief_rect): Declare all args.
14276 (w32_define_cursor): New.
14277
14278 * w32fns.c (w32_load_cursor): New function.
14279 (w32_init_class): Use it.
14280 (x_put_x_image): Declare all args.
14281
14282 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14283
14284 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14285
14286 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14287
14288 * gtkutil.c: Must include stdio.h before termhooks.h
14289
14290 2003-01-21 Dave Love <fx@gnu.org>
14291
14292 * alloc.c (Fgc_status): Print zombie list.
14293 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14294 Fix assignment of zombies.
14295 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14296 Don't take car of non-cons.
14297
14298 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14299
14300 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14301
14302 2003-01-20 David Ponce <david@dponce.com>
14303
14304 * w32menu.c (digest_single_submenu): Declare all args.
14305
14306 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14307 changes in xmenu.c:
14308
14309 (parse_single_submenu): Use individual keymap's prompt
14310 string as pane name, if there is one.
14311 (set_frame_menubar): Save menu_items_n_panes from each call to
14312 parse_single_submenu and use it when calling digest_single_submenu.
14313
14314 2003-01-20 Steven Tamm <steventamm@mac.com>
14315
14316 * macterm.c (XTread_socket): Check for valid, visible window
14317 before sending a scroll-wheel event.
14318
14319 2003-01-20 Richard M. Stallman <rms@gnu.org>
14320
14321 * xdisp.c (redisplay_window): If mini window's buffer is not
14322 a minibuffer, then redisplay it like other windows.
14323
14324 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14325
14326 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14327 external tool bar before setting tool bar height.
14328
14329 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14330
14331 * xterm.c (handle_one_xevent): Surround popup_activated
14332 with #ifdef:s for non-toolkit version.
14333
14334 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14335 (gtkutil.o): New file.
14336 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14337 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14338
14339 * gtkutil.c: New file for GTK version.
14340
14341 * gtkutil.h: New file for GTK version.
14342
14343 * xterm.h: Add xt_or_gtk_widget.
14344 Include gtk files for USE_GTK.
14345 (struct x_output): Add toolbar_height.
14346 (struct x_output): Add GTK widgets and Gdk size_hints.
14347 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14348 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14349 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14350
14351 * xterm.c: Include gtkutil.h for USE_GTK.
14352 (free_frame_menubar): Declare extern void for USE_GTK.
14353 (note_mouse_highlight): Check popup_activated for USE_GTK.
14354 (xt_action_hook): Don't compile if USE_GTK.
14355 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14356 (xg_scroll_callback): New function.
14357 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14358 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14359 for USE_GTK.
14360 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14361 xg_show_scroll_bar for USE_GTK.
14362 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14363 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14364 (event_handler_gdk): New function for USE_GTK.
14365 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14366 (handle_one_xevent): Make sure widget is mapped before
14367 calling x_real_positions for USE_GTK.
14368 (XTread_socket): Add GTK event loop for USE_GTK.
14369 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14370 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14371 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14372 (x_iconify_frame): Add code for USE_GTK.
14373 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14374 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14375 is in gtkutil.c.
14376 (x_term_init): Add initialization for GTK.
14377 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14378
14379 * xmenu.c: Include gtkutil.h for USE_GTK.
14380 (Fx_popup_menu): Use current position if x and y is NIL.
14381 (single_menu_item, single_menu_item, Fx_popup_dialog):
14382 Check for USE_GTK.
14383 (popup_widget_loop): New function for USE_GTK.
14384 (x_activate_menubar): Add code for USE_GTK.
14385 (popup_activate_callback, popup_deactivate_callback)
14386 (menu_highlight_callback, menubar_selection_callback):
14387 Add USE_GTK versions.
14388 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14389 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14390 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14391 is in gtkutil.c.
14392 (popup_selection_callback): New version for USE_GTK.
14393 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14394 one USE_X_TOOLKIT version.
14395 (xmenu_show): Call create_and_show_popup_menu.
14396 (dialog_selection_callback): New version for USE_GTK.
14397 (create_and_show_dialog): New fuction, one USE_GTK version and
14398 one USE_X_TOOLKIT version.
14399 (xdialog_show): Call create_and_show_dialog.
14400
14401 * xfns.c: Include gtkutil for USE_GTK.
14402 (x_window_to_frame, x_any_window_to_frame)
14403 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14404 (x_top_window_to_frame): Add code for USE_GTK.
14405 (x_set_background_color): Call xg_set_background_color for GTK.
14406 (x_set_menu_bar_lines): Check for USE_GTK.
14407 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14408 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14409 (x_window): Call xg_create_frame_widgets for USE_GTK.
14410 (Fx_create_frame): Check for USE_GTK
14411 (Fx_file_dialog): New implementation for USE_GTK.
14412
14413 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14414 (update_menu_bar): Add check for USE_GTK.
14415 (update_tool_bar): Add check for USE_GTK and external tool bar.
14416 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14417 (redisplay_internal): Add check for USE_GTK and popup_activated.
14418 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14419 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14420 (display_menu_bar): Add check for USE_GTK
14421
14422 * lisp.h (Vx_resource_name): Declare extern.
14423
14424 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14425 for USE_GTK.
14426 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14427
14428 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14429 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14430 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14431
14432 * fileio.c (Fread_file_name): Add check for USE_GTK.
14433
14434 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14435 Add check for USE_GTK.
14436
14437 * config.in: Added HAVE_GTK
14438
14439 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14440
14441 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14442
14443 * charset.h (Funibyte_char_to_multibyte): Export.
14444
14445 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14446
14447 * xmenu.c (mouse_position_for_popup): New function.
14448 (Fx_popup_menu): Call mouse_position_for_popup for X and
14449 mouse_position_hook for others.
14450
14451 2003-01-17 Kim F. Storm <storm@cua.dk>
14452
14453 * editfns.c (Finsert): Mention `string-make-multibyte' and
14454 `string-as-multibyte' in doc string.
14455
14456 2003-01-17 Kenichi Handa <handa@m17n.org>
14457
14458 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14459
14460 * editfns.c (Fformat): Convert an unibyte char argument that is
14461 formatted by "%c" to multibyte if the total result must be a
14462 multibyte string.
14463
14464 2003-01-16 Kim F. Storm <storm@cua.dk>
14465
14466 * process.c (set-process-filter): Document unibyte/multibyte-ness
14467 of string argument.
14468
14469 2003-01-16 Kenichi Handa <handa@m17n.org>
14470
14471 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14472
14473 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14474 (re_search_2): Likewise.
14475
14476 2003-01-15 Kenichi Handa <handa@m17n.org>
14477
14478 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14479 buffer is unibyte.
14480
14481 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14482
14483 * fns.c (Fsubstring): Clarify doc string.
14484
14485 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14486 (Fprevious_char_property_change)
14487 (Fnext_single_char_property_change)
14488 (Fprevious_single_char_property_change, Fnext_property_change)
14489 (Fnext_single_property_change, Fprevious_property_change)
14490 (Fprevious_single_property_change, Fadd_text_properties)
14491 (Fput_text_property, Fset_text_properties)
14492 (Fremove_text_properties, Fremove_list_of_text_properties)
14493 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14494
14495 2003-01-14 Kim F. Storm <storm@cua.dk>
14496
14497 * process.h (struct Lisp_Process): New member plist replaces old
14498 member private_vars. All uses changed.
14499
14500 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14501 (QCplist): Rename from QCvars. Change all uses.
14502 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14503 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14504 (syms_of_process): Intern, staticpro, defsubr these.
14505 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14506
14507 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14508
14509 * m/delta.h: Remove (obsolete).
14510
14511 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14512
14513 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14514 behaviour in front of symlinks.
14515 (Fdelete_file): Raise an error on directories.
14516
14517 2003-01-13 Dave Love <fx@gnu.org>
14518
14519 * fns.c (Freverse): Use QUIT.
14520
14521 2003-01-13 Richard M. Stallman <rms@gnu.org>
14522
14523 * minibuf.c (minibuffer_completion_contents):
14524 Error if point is inside prompt.
14525
14526 * keyboard.c (command_loop_1): Don't redisplay directly
14527 if there's a post-command-hook.
14528
14529 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14530 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14531
14532 2003-01-12 Kim F. Storm <storm@cua.dk>
14533
14534 * process.h (struct Lisp_Process): New member private_vars.
14535
14536 * process.c (QCvars): New variable.
14537 (syms_of_process): Intern and staticpro it.
14538 (Fset_process_contact): Removed function.
14539 (Fprocess_variable, Fset_process_variable): New functions.
14540 (syms_of_process): Defsubr them.
14541 (Fstart_process): Initialize private_vars plist to nil.
14542 (Fmake_network_process): New arg :vars to setup the private
14543 variables for new network process.
14544 (server_accept_connection): Copy server's private variables to
14545 client process.
14546
14547 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14548 crashes). Code rewritten and simplified. Now directly aligns the
14549 pointer and recalculates pure_bytes_used, rather than aligning the
14550 size and adjusting the pointer.
14551
14552 2003-01-11 Kim F. Storm <storm@cua.dk>
14553
14554 * process.c (Fset_process_contact): New function.
14555 (syms_of_process): defsubr it.
14556 (make-network-process): Update doc.
14557
14558 2003-01-10 Andreas Schwab <schwab@suse.de>
14559
14560 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14561 Reported by Berthold Gunreben <b.gunreben@web.de>.
14562
14563 2003-01-10 Dave Love <fx@gnu.org>
14564
14565 * composite.c (syms_of_composite): Make composition_hash_table weak.
14566
14567 2003-01-09 Kim F. Storm <storm@cua.dk>
14568
14569 * process.c (Fmake_network_process): Convert new port number
14570 to host byte order for `:service t' case. From Mario Lang.
14571
14572 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14573
14574 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14575 instead of XtAppProcessEvent.
14576
14577 * xterm.c (handle_one_xevent): New function.
14578 (x_dispatch_event): New function.
14579 (XTread_socket): Call handle_one_xevent.
14580
14581 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14582
14583 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14584 call XQueryPointer to get coordinates.
14585 (popup_get_selection): Do not set popup_activated_flag to zero,
14586 let popup_deactivate_callback do that. Needed for Motif.
14587 Call x_dispatch_event instead of XtDispatchEvent.
14588 (xmenu_show): Calculate root coordinate from frame top/left position.
14589
14590 2003-01-08 Kim F. Storm <storm@cua.dk>
14591
14592 * process.c (server_accept_connection): Fix recording of new
14593 connection's local address in :local property of contact info.
14594 (Fmake_network_process): Record local network address for new
14595 client processes in :local property of contact info.
14596 (format-network-address): Add arg OMIT-PORT. Change callers.
14597
14598 2003-01-07 Dave Love <fx@gnu.org>
14599
14600 * Makefile.in (fns.o): Depend on coding.h.
14601
14602 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14603
14604 * minibuf.c (Fread_variable): Doc fix.
14605
14606 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14607 use the same test as for custom-variable-p.
14608
14609 2003-01-05 Richard M. Stallman <rms@gnu.org>
14610
14611 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14612 Count LAST_LINE_MISFIT in scroll margin for end of window.
14613 Move label too_near_end before setting SCROLL_MARGIN_POS.
14614 Set LAST_LINE_MISFIT before jumping there.
14615
14616 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14617 scroll_conservatively case. If scrolling that much doesn't change
14618 STARTP, move it down one line.
14619
14620 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14621 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14622
14623 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14624 selected frame.
14625
14626 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14627 (syms_of_keymap): Staticpro them.
14628 (Fapropos_internal): Initialize them and clear them out.
14629 Don't GCPRO them.
14630
14631 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14632 Doc fixes.
14633
14634 * lisp.h: New misc type Lisp_Save_Value.
14635 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14636 (XSAVE_VALUE): New macro.
14637 (struct Lisp_Save_Value): New data type.
14638 (union Lisp_Misc): Add u_save_value alternative.
14639 (make_save_value): Declare.
14640
14641 * alloc.c (make_save_value): New function.
14642
14643 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14644 (x_catch_errors_unwind): Call XSync.
14645
14646 2003-01-01 Richard M. Stallman <rms@gnu.org>
14647
14648 * window.c (window_scroll_pixel_based): Partially undo last change.
14649
14650 * keyboard.c (command_loop_1): Call adjust_point_for_property
14651 in direct action cases for Qforward_char and Qbackward_char.
14652 Set already_adjusted so it won't be done twice.
14653
14654 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14655
14656 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14657 type definition of size_t.
14658
14659 2003-01-02 Steven Tamm <steventamm@mac.com>
14660
14661 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14662 distinguish Carbon GUI builds from X11 builds on darwin.
14663
14664 2002-12-30 Steven Tamm <steventamm@mac.com>
14665
14666 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14667 to default to t.
14668
14669 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14670
14671 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14672
14673 2002-12-28 Steven Tamm <steventamm@mac.com>
14674
14675 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14676 allow building in a different directory than source. Uses some
14677 GNU Make extensions, but there is no other make on Mac OS X.
14678
14679 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14680
14681 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14682 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14683 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14684 (Fstring_to_number): Mention the returned value in the doc strings.
14685
14686 2002-12-23 Richard M. Stallman <rms@gnu.org>
14687
14688 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14689 <scroll-down-aggressively>: Doc fix.
14690
14691 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14692 string as pane name, if there is one.
14693 (set_frame_menubar): Save menu_items_n_panes from each call to
14694 parse_single_submenu and use it when calling digest_single_submenu.
14695
14696 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14697 Don't try to make last line fully visible if it is past end of window.
14698
14699 2002-12-22 Steven Tamm <steventamm@mac.com>
14700
14701 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14702 (mac_menu_show): Add support for hierarchical popup menus.
14703 (add_menu_item): Remove indentation support.
14704 (fill_submenu, fill_menu): Create hierarchical menus
14705 instead of using indentation.
14706
14707 2002-12-22 Richard M. Stallman <rms@gnu.org>
14708
14709 * xdisp.c (try_cursor_movement): Don't call try_window here.
14710 (redisplay_window): Never redisplay minibuffer when inactive.
14711
14712 * window.c (select_window_1): Undo 9/21 change.
14713
14714 2002-12-22 Steven Tamm <steventamm@mac.com>
14715
14716 * macterm.c (XTread_socket): Call KeyTranslate for control and
14717 meta to deal correctly shifted non-alpha characters, like C-S-5
14718 being treated like C-%. Do not look for shift key to deal
14719 with masking off control-key with mac-reverse-ctrl-meta.
14720
14721 2002-12-21 Richard M. Stallman <rms@gnu.org>
14722
14723 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14724 If it is non-nil, run timers. Use an unwind-protect to requeue
14725 the events that were read ahead.
14726 (popup_get_selection_unwind): New subroutine.
14727 (popup_get_selection_queue): File-scope variable now holds that queue.
14728 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14729 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14730 Use an unwind-protect to pop down the dialog box.
14731 (xdialog_show_unwind): New subroutine implements that.
14732
14733 * xdisp.c (row_containing_pos): Change exit test using last_y.
14734 (try_window_id): Abort if row_containing_pos returns null.
14735
14736 * lread.c (load_error_handler): New function.
14737 (Fload): Handle errors in Fsubstitute_in_file_name.
14738 Don't expect Fsignal to return.
14739
14740 * eval.c: Errors and throws work right with interrupt blocking.
14741 (struct catchtag): New elt interrupt_input_blocked.
14742 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14743 (internal_catch, Fcondition_case, internal_condition_case)
14744 (internal_condition_case_1, internal_condition_case_2): Save it.
14745 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14746
14747 * editfns.c (Fformat): Add parens.
14748
14749 * dired.c (file_name_completion): Fix that change.
14750 Delete special quit-handling code; just use QUIT.
14751
14752 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14753
14754 * dired.c (file_name_completion): Close directory on error
14755 just as in directory_files_internal.
14756
14757 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14758
14759 * window.c (Fset_window_configuration): Set old_point to correct
14760 value when new_current_buffer == current_buffer.
14761
14762 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14763
14764 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14765 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14766 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14767
14768 These changes were in part based upon suggestions made by Peter
14769 'Luna' Runestig [peter@runestig.com].
14770
14771 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14772 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14773 (g_b_init_get_sid_identifier_authority ): Add several static
14774 global variables.
14775
14776 * w32.c (globals_of_w32): New function. Used to initialize those
14777 global variables that must always be initialized on startup even
14778 when the global variable initialized is non zero. Its primary
14779 purpose at this time is to set the global variables
14780 g_b_init_is_windows_9x, g_b_init_open_process_token,
14781 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14782 g_b_init_get_sid_identifier_authority to 0 on startup.
14783 Called from main.
14784
14785 * w32.c (is_windows_9x): Perform initialization only if
14786 g_b_init_is_windows_9x is equal to 0. On initialization set
14787 g_b_init_is_windows_9x equal to 1.
14788
14789 * w32.c (open_process_token): Perform initialization only if
14790 g_b_init_open_process_token is equal to 0. On initialization set
14791 g_b_init_open_process_token equal to 1.
14792
14793 * w32.c (get_token_information): Perform initialization only if
14794 g_b_init_get_token_information is equal to 0. On initialization
14795 set g_b_init_get_token_information equal to 1.
14796
14797 * w32.c (lookup_account_sid): Perform initialization only if
14798 g_b_init_lookup_account_sid is equal to 0. On initialization
14799 set g_b_init_lookup_account_sid equal to 1.
14800
14801 * w32.c (get_sid_identifier_authority): Perform initialization
14802 only if g_b_init_get_sid_identifier_authority is equal to 0.
14803 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14804
14805 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14806 those global variables that must always be initialized on startup
14807 even when the global variable initialized is non zero.
14808 Its primary purpose at this time is to initialize the global variable
14809 track_mouse_event_fn.
14810
14811 * w32fns.c (w32_wnd_proc): Remove initialization of
14812 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14813
14814 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14815
14816 * w32menu.c (globals_of_w32menu): New function. Used to
14817 initialize those global variables that must always be initialized
14818 on startup even when the global variable initialized is non zero.
14819 Its primary purpose at this time is to initialize the global
14820 variables get_menu_item_info and set_menu_item_info.
14821
14822 * w32menu.c (initialize_frame_menubar): Remove initialization of
14823 get_menu_item_info and set_menu_item_info.
14824
14825 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14826
14827 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14828 Declare them.
14829
14830 * emacs.c (main): Call globals_of_w32 prior to calling
14831 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14832 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14833 is defined.
14834
14835 * w32term.c (x_update_window_begin): Fix Windows API error
14836 detected by BoundsChecker. Test to determine if
14837 w32_system_caret_hwnd is NULL prior to attempting to use
14838 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14839
14840 * w32term.c (x_update_window_end): Fix Windows API error
14841 detected by BoundsChecker. Test to determine if
14842 w32_system_caret_hwnd is NULL prior to attempting to use
14843 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14844
14845 2002-12-17 Kenichi Handa <handa@m17n.org>
14846
14847 * coding.c (coding_system_require_warning): New variable.
14848 (syms_of_coding): DEFVAR it.
14849
14850 * coding.h (coding_system_require_warning): Extern it.
14851
14852 * fileio.c (choose_write_coding_system): Even if
14853 Vcoding_system_for_write is non-nil, if
14854 coding_system_require_warning is nonzero, call
14855 Vselect_safe_coding_system_function.
14856
14857 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14858
14859 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14860 (lisp): Add font-core.
14861
14862 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14863
14864 * textprop.c (text_read_only): New arg `propval'.
14865 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14866 (verify_interval_modification): Use text_read_only's new arg.
14867
14868 2002-12-13 Kenichi Handa <handa@m17n.org>
14869
14870 * coding.c (Funencodable_char_position): Set pend correctly.
14871
14872 2002-12-12 Jason Rumney <jasonr@gnu.org>
14873
14874 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14875 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14876 Be more careful about when help_events are generated.
14877
14878 2002-12-12 Steven Tamm <steventamm@mac.com>
14879
14880 * macterm.c (mac_check_for_quit_char): Correctly set the
14881 modifiers of the event to 0.
14882 * mac.c (sys_select): Duplicate rfds before calling select to
14883 ensure that rfds survive the while loop.
14884
14885 2002-12-11 Kim F. Storm <storm@cua.dk>
14886
14887 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14888 row_containing_pos returned NULL.
14889
14890 2002-12-10 Steven Tamm <steventamm@mac.com>
14891
14892 * mac.c (sys_read): Fix sys_read to not call select if IO is
14893 non-blocking.
14894 (sys_select): Fix sys_select to not use a timeout larger than
14895 the one given.
14896
14897 2002-12-10 Juanma Barranquero <lektu@terra.es>
14898
14899 * editfns.c (Fformat): Use alloca, not _alloca.
14900
14901 2002-12-09 Richard M. Stallman <rms@gnu.org>
14902
14903 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14904 as the last thing.
14905
14906 2002-12-09 Dave Love <fx@gnu.org>
14907
14908 * s/sol2-8.h: Removed. (Not necessary.)
14909
14910 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14911
14912 * editfns.c (Fformat): Handle precision in string conversion
14913 specifiers like libc functions do (ie, print at most that many
14914 characters).
14915
14916 2002-12-08 Richard M. Stallman <rms@gnu.org>
14917
14918 * xdisp.c (row_containing_pos): Check more carefully
14919 whether charpos is really in the row before returning it.
14920
14921 2002-12-07 Steven Tamm <steventamm@mac.com>
14922
14923 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14924
14925 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14926 each stack frame. This may change as it could be time consuming.
14927
14928 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14929 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14930 (mac_initialize): Add code to check for pressing of quit_char
14931 in the OS event queue.
14932
14933 * mac.c (sys_select): Call mac_check_for_quit_char every second
14934 while blocking on select.
14935
14936 * mac.c (sys_read): Use sys_select to test for input first
14937 before calling read, to allow C-g to break.
14938
14939 2002-12-07 Richard M. Stallman <rms@gnu.org>
14940
14941 * minibuf.c (Fcompleting_read): Doc fix.
14942
14943 * lread.c (syms_of_lread) <load-history>: Doc fix.
14944
14945 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14946
14947 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14948 autoload.
14949
14950 * data.c (Fdefalias): Record in load-history redefining an autoload.
14951
14952 * alloca.c: Undo ifdef change accidentally made on 12-04.
14953
14954 2002-12-06 Francesco Potorti` <pot@gnu.org>
14955
14956 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14957
14958 2002-12-04 Richard M. Stallman <rms@gnu.org>
14959
14960 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14961
14962 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14963
14964 * alloca.c: Don't use #error.
14965
14966 2002-12-03 Dave Love <fx@gnu.org>
14967
14968 * buffer.c (Qucs_set_table_for_input): New.
14969 (Fget_buffer_create): Use it.
14970 (Qset_buffer_major_mode_hook): Deleted.
14971 (Fset_buffer_major_mode): Revert previous change.
14972 (init_buffer_once): Intern ucs-set-table-for-input.
14973 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14974 Add &Qucs_set_table_for_input.
14975
14976 2002-12-03 Andreas Schwab <schwab@suse.de>
14977
14978 * callint.c (Fcall_interactively): Use next_event only if less
14979 than key_count.
14980
14981 2002-12-02 Andrew Choi <akochoi@shaw.ca>
14982
14983 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14984 names to 255 characters.
14985
14986 * macterm.c (XTread_socket): If all frames have been collapsed,
14987 expand the first one before handling drag-and-drop events.
14988
14989 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14990 which is detected by autoconf.
14991
14992 2002-12-01 Steven Tamm <steventamm@mac.com>
14993
14994 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14995 offset in two hints table to allow prebinding to be redone and
14996 allow the executable to be stripped.
14997
14998 2002-11-29 Dave Love <fx@gnu.org>
14999
15000 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15001 already provided.
15002
15003 2002-11-29 Richard M. Stallman <rms@gnu.org>
15004
15005 * xdisp.c (start_display): Check more intelligently for
15006 whether the line is continued.
15007 (move_it_vertically_backward): Clear it->continuation_lines_width.
15008
15009 2002-11-28 Dave Love <fx@gnu.org>
15010
15011 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15012 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15013
15014 2002-11-27 Steven Tamm <steventamm@mac.com>
15015
15016 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15017 more descriptive error output from lread.c:Fload upon most require
15018 cycles during boostrapping.
15019
15020 2002-11-27 Jason Rumney <jasonr@gnu.org>
15021
15022 * fileio.c (Finsert_file_contents): Give a more appropriate error
15023 for files bigger than 2Gb when off_t is 32 bit.
15024
15025 * dired.c (Ffile_attributes): Don't return negative file sizes for
15026 files bigger than 2Gb when off_t is 32 bit.
15027
15028 2002-11-27 Dave Love <fx@gnu.org>
15029
15030 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15031
15032 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15033 Test GETPGRP_VOID instead.
15034 [BSD_TERMIOS]: Remove definitions (never used).
15035
15036 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15037 Don't define.
15038 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15039
15040 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15041
15042 2002-11-25 Jason Rumney <jasonr@gnu.org>
15043
15044 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15045 supported.
15046
15047 2002-11-25 Dave Love <fx@gnu.org>
15048
15049 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15050
15051 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15052
15053 2002-11-25 Andreas Schwab <schwab@suse.de>
15054
15055 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15056
15057 2002-11-24 Steven Tamm <steventamm@mac.com>
15058
15059 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15060 determine the size of pointers alloced in unexed space instead
15061 of using possibly invalid emacs_zone pointers. This fixes the
15062 binary incompatibility problems caused by updates to libSystem.B.
15063
15064 2002-11-24 Richard M. Stallman <rms@gnu.org>
15065
15066 * search.c (Fstring_match): Doc fix.
15067
15068 * callint.c (Fcall_interactively): If a command fails because
15069 `*' detects a read-only buffer, but RECORD_FLAG is set,
15070 record it anyway if the args don't actually do tty input.
15071
15072 2002-11-22 Dave Love <fx@gnu.org>
15073
15074 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15075
15076 * keyboard.c (interrupt_signal): Provide forward declaration.
15077 (kbd_buffer_store_event): Don't declare interrupt_signal.
15078
15079 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15080
15081 2002-11-21 Richard M. Stallman <rms@gnu.org>
15082
15083 * eval.c (interactive_p): Skip any number of bytecode
15084 and special form frames, in any order.
15085
15086 2002-11-20 Jason Rumney <jasonr@gnu.org>
15087
15088 * w32fns.c (convert_mono_to_color_image): New function.
15089 (xbm_load, xbm_load_image): Use it when foreground or background
15090 is explicitly set.
15091
15092 2002-11-19 Dave Love <fx@gnu.org>
15093
15094 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15095
15096 2002-11-18 Jason Rumney <jasonr@gnu.org>
15097
15098 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15099 (XPutPixel): Swap blue and red.
15100 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15101 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15102 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15103 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15104
15105 2002-11-18 Dave Love <fx@gnu.org>
15106
15107 * m/orion105.h (HAVE_ALLOCA): Don't define.
15108
15109 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15110
15111 * m/intel386.h: Don't include alloca.h or define alloca.
15112
15113 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15114 malloc, realloc, calloc.
15115
15116 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15117 (bcmp): Don't define.
15118
15119 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15120
15121 * m/amdahl.h: Don't define LIB_STANDARD.
15122
15123 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15124
15125 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15126
15127 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15128 Don't include alloca.h.
15129
15130 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15131
15132 * regex.c (_GNU_SOURCE): Don't define.
15133
15134 * process.c (_GNU_SOURCE): Don't define.
15135
15136 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15137
15138 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15139
15140 * s/sol2-8.h: Include sol2-6.h.
15141
15142 2002-11-18 Miles Bader <miles@gnu.org>
15143
15144 * dispextern.h (struct face): Add `overstrike' field.
15145 * xterm.c (x_draw_glyph_string_foreground)
15146 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15147 * xfaces.c (load_face_font): Set `face->overstrike' based on
15148 result from choose_face_font.
15149 (best_matching_font, choose_face_font): Add `needs_overstrike'
15150 argument, and use it to return whether overstriking is desirable
15151 for this face/font combo.
15152 (set_font_frame_param: Pass new argument to choose_face_font.
15153
15154 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15155
15156 This change is my fix for the following entry in etc/PROBLEMS:
15157 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15158 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15159
15160 * w32.c: Added wrapper functions around the win32 API functions
15161 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15162 GetSidIdentifierAuthority. These wrapper functions serve two
15163 purposes:
15164 1. They ensure that the wrapped function can never be called
15165 when Emacs is running on an operating system on which they are
15166 not supported (Microsoft Windows 95 / 98 / ME).
15167 2. They call the wrapped functions via function pointers rather
15168 than calling them directly. This avoids taking advantage of the
15169 undocumented fact that although these functions are not supported
15170 in the 9x branch of Microsoft Windows, the functions do exist in
15171 the version of advapi32.dll that is found in the 9x branch of
15172 Microsoft Windows.
15173
15174 * w32.c (init_user_info): Replace the calls to the win32 API
15175 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15176 and GetSidIdentifierAuthority with calls to the newly added
15177 wrapper functions.
15178
15179 * w32.h: Added extern declarations for the following functions:
15180 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15181 syms_of_w32menu, and void syms_of_fontset.
15182
15183 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15184 function pointer track_mouse_event_fn in the handler for the
15185 WM_SETFOCUS message.
15186
15187 * w32menu.c (initialize_frame_menubar): Add code to
15188 reinitialize the function pointers set_menu_item_info and
15189 get_menu_item_info.
15190
15191 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15192
15193 * sound.c: Added a partial implementation of play-sound-internal
15194 for Microsoft Windows. Added various #ifdef / #else / #endif
15195 code blocks to separate the code that will compile under
15196 Microsoft Windows from the code that is specific to GNU/Linux.
15197 Moved several blocks of code around to make this separation of code
15198 into Windows compatible and GNU/Linux compatible code blocks easier.
15199
15200 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15201
15202 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15203 added support for play-sound-internal under Windows would be
15204 included in the build of Emacs.
15205
15206 2002-11-16 Jason Rumney <jasonr@gnu.org>
15207
15208 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15209
15210 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15211
15212 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15213
15214 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15215 (adjust_point_for_property): Move out of display and invisible even if
15216 we were already inside before (in case a property was added while
15217 we weren't looking). Be more careful when handling invisible props.
15218 Skip invisible text as if it really wasn't there at all.
15219
15220 2002-11-15 Jason Rumney <jasonr@gnu.org>
15221
15222 * w32term.c (x_draw_image_foreground)
15223 (w32_draw_image_foreground_1): Use standard copy and invert
15224 operations to draw images.
15225
15226 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15227 depth of 1.
15228 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15229 (XPutPixel): Don't invert bits here.
15230
15231 2002-11-15 Jason Rumney <jasonr@gnu.org>
15232
15233 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15234 (w32_draw_image_foreground_1): Handle image masks.
15235 (x_draw_image_glyph_string): Don't BitBlt transparently.
15236
15237 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15238 (x_from_xcolors): Adjust RGB values for W32.
15239 (image_background, image_background_transparent)
15240 (postprocess_image, x_to_xcolors, x_disable_image)
15241 (x_build_heuristic_mask): Adapt for W32 and enable.
15242 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15243 (xbm_load): Remove unused variable.
15244
15245 2002-11-14 Richard M. Stallman <rms@gnu.org>
15246
15247 * buffer.c (syms_of_buffer): Doc fix.
15248
15249 2002-11-14 Dave Love <fx@gnu.org>
15250
15251 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15252
15253 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15254 * xmenu.c (unuse_menu_items, digest_single_submenu):
15255 * xfns.c (x_put_x_image):
15256 * xdisp.c (message2_nolog, set_message):
15257 * undo.c (record_point):
15258 * terminfo.c (tparam):
15259 * syntax.c (scan_sexps_forward):
15260 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15261 * composite.c (update_compositions):
15262 * cm.c (calccost, cmgoto):
15263 * charset.c (c_string_width): Declare all args (per C99).
15264
15265 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15266
15267 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15268 Don't declare.
15269
15270 * emacs.c (main) [!VMS]: Avoid third arg.
15271
15272 * fns.c (Fcopy_sequence): Doc fix.
15273 (Fmap_char_table): Cast `call2'.
15274
15275 2002-11-14 Francesco Potorti` <pot@gnu.org>
15276
15277 * s/sol2-8.h: New file.
15278
15279 2002-11-14 Kim F. Storm <storm@cua.dk>
15280
15281 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15282 dependency on `risky-local-variable' and the :propertize form.
15283
15284 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15285
15286 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15287
15288 * syntax.c (scan_sexps_forward): Undo last patch.
15289 Use a more obvious fix: check eob before updating the syntax table.
15290
15291 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15292
15293 * syntax.c (scan_sexps_forward): Update syntax table before reading
15294 a char rather than after so we don't update the table past eob.
15295
15296 2002-11-09 Dave Love <fx@gnu.org>
15297
15298 * buffer.c (Fset_buffer_major_mode): Fix last change.
15299
15300 * regex.c (regexec): Fix pmatch declaration.
15301
15302 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15303
15304 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15305 to self-inserting characters.
15306 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15307
15308 * coding.c (Vtranslation_table_for_input): New.
15309 (syms_of_coding): DEFVAR it.
15310
15311 2002-11-08 Juanma Barranquero <lektu@terra.es>
15312
15313 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15314 window.
15315
15316 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15317
15318 * process.c (Fformat_network_address): Remove unused locals p,
15319 cp, and i.
15320
15321 2002-11-06 Dave Love <fx@gnu.org>
15322
15323 * buffer.c (Qset_buffer_major_mode_hook): New.
15324 (Fset_buffer_major_mode): Use it.
15325
15326 2002-11-06 Richard M. Stallman <rms@gnu.org>
15327
15328 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15329 and stop_polling.
15330
15331 * process.c (wait_reading_process_input):
15332 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15333 Avoid initialization for auto Lisp_Object var.
15334
15335 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15336
15337 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15338
15339 2002-11-05 Richard M. Stallman <rms@gnu.org>
15340
15341 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15342
15343 * callint.c (Fcall_interactively): New local filter_specs.
15344 (Fcall_interactively): Check for progn as well as let.
15345 Add a gcpro.
15346 (Qprogn): New variable.
15347 (syms_of_callint): Staticpro and init Qprogn.
15348
15349 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15350
15351 * lread.c (Feval_buffer): Doc fix.
15352
15353 2002-11-04 Dave Love <fx@gnu.org>
15354
15355 * keyboard.c (read_char): Always translate iff
15356 Vkeyboard_translate_table is a char table and c is valid.
15357
15358 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15359 and fix C types.
15360
15361 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15362
15363 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15364
15365 * editfns.c (get_pos_property): Don't hardcode Qfield.
15366
15367 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15368 overlays. Also handle `invisible' prop.
15369
15370 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15371
15372 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15373 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15374
15375 2002-11-01 Andreas Schwab <schwab@suse.de>
15376
15377 * editfns.c (Fmessage): Revert last change to properly handle %%.
15378
15379 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15380
15381 * xmenu.c (unuse_menu_items): New fun.
15382 (menu_items_inuse): New var.
15383 (syms_of_xmenu): Initialize it.
15384 (init_menu_items): Use it to detect re-entrance.
15385 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15386 (Fx_popup_menu): Remove spurious XSETFRAME.
15387
15388 * editfns.c (find_field): Make an exception for nil fields.
15389
15390 2002-11-01 Dave Love <fx@gnu.org>
15391
15392 * m/gec63.h: Deleted.
15393
15394 2002-10-31 Dave Love <fx@gnu.org>
15395
15396 * xterm.c (XTread_socket): Fix last change.
15397 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15398
15399 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15400
15401 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15402
15403 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15404
15405 * editfns.c (overlays_around, get_pos_property): New funs.
15406 (find_field): Use them.
15407 Also be careful not to modify POS before its last use.
15408 (Fmessage): Don't Fformat if there's nothing to format.
15409
15410 2002-10-30 Dave Love <fx@gnu.org>
15411
15412 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15413 [HAVE_PTY_H]; Include pty.h.
15414
15415 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15416
15417 * xterm.c (Qeql): Declare.
15418 (Vx_keysym_table): New.
15419 (syms_of_xterm): Initialize it.
15420 (XTread_socket): Use it. Deal with ASCII keysyms.
15421 (XSetIMValues) [HAVE_X11R6]: Prototype.
15422
15423 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15424 (lispy_kana_keys): Comment out.
15425 (make_lispy_event) [XK_kana_A]: Comment out.
15426 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15427 Fix sprintf call.
15428
15429 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15430 regexp.h change).
15431 (TERMINFO, LIBS_TERMCAP): Define.
15432
15433 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15434 (bcmp): Define conditional on HAVE_BCMP.
15435 (NO_SIOCTL_H): Don't define.
15436 (TIOCSIGSEND): Don't make conditional on IRIX6.
15437
15438 * s/sol2-5.h: Don't include strings.h.
15439 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15440
15441 * s/irix6-0.h (IRIX6): Don't define.
15442 (bcopy, bcmp, bzero): Don't undef.
15443
15444 * s/irix6-5.h: Don't include strings.h.
15445 (IRIX6): Don't define.
15446 (bcopy, bcmp, bzero): Don't undef.
15447
15448 * syntax.c (Fforward_comment): Doc fix.
15449
15450 2002-10-29 Kim F. Storm <storm@cua.dk>
15451
15452 * process.c (Fsignal_process): Allow PROCESS to be specified by
15453 name in addition to pid (as integer or string).
15454
15455 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15456
15457 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15458 environments.
15459
15460 2002-10-27 Kim F. Storm <storm@cua.dk>
15461
15462 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15463
15464 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15465
15466 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15467
15468 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15469
15470 2002-10-26 Richard M. Stallman <rms@gnu.org>
15471
15472 * editfns.c (Fformat): Detect invalid format letters for floats.
15473
15474 2002-10-25 Kenichi Handa <handa@m17n.org>
15475
15476 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15477 (x_set_title): Likewise.
15478
15479 2002-10-25 Juanma Barranquero <lektu@terra.es>
15480
15481 * macgui.h:
15482 * w32gui.h: Remove definition of XColor.
15483
15484 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15485
15486 2002-10-24 Kim F. Storm <storm@cua.dk>
15487
15488 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15489 Callers changed (supply dummy arg).
15490
15491 * lisp.h (get_window_cursor_type): Update prototype.
15492
15493 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15494 get_window_cursor_type to track system caret.
15495
15496 2002-10-24 Kim F. Storm <storm@cua.dk>
15497
15498 * process.c (Fformat_network_address): New function.
15499 (syms_of_process): Defsubr it.
15500 (list_processes_1): Use it to format :local/:remote address if
15501 service/host is not set; before Emacs would crash in that case.
15502 (Fmake_network_process): Don't use Ffind_operation_coding_system
15503 to setup coding system if host or service is not set.
15504
15505 2002-10-23 Juanma Barranquero <lektu@terra.es>
15506
15507 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15508
15509 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15510 COLORREF.
15511
15512 * macgui.h:
15513 * w32gui.h: Add definition of XColor.
15514
15515 * macfns.c:
15516 * w32fns.c:
15517 * xfaces.c: Remove definition of XColor.
15518
15519 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15520
15521 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15522
15523 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15524 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15525 window if it is dedicated.
15526 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15527 (Vspecial_display_function): Update docstring.
15528
15529 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15530 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15531 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15532
15533 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15534
15535 * casefiddle.c (casify_region): Don't treat a prefix char as part
15536 of a word when at the beginning.
15537
15538 2002-10-17 Juanma Barranquero <lektu@terra.es>
15539
15540 * lread.c (syms_of_lread): Fix typos.
15541
15542 2002-10-17 Dave Love <fx@gnu.org>
15543
15544 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15545
15546 2002-10-16 Richard M. Stallman <rms@gnu.org>
15547
15548 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15549
15550 2002-10-14 Juanma Barranquero <lektu@terra.es>
15551
15552 * w16select.c (syms_of_win16select): Fix docstring for
15553 `selection-coding-system'.
15554
15555 * w32select.c (syms_of_w32select): Likewise.
15556
15557 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15558
15559 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15560 a backslash-quoted char.
15561 (scan_lists, scan_sexps_forward): Pacify the compiler.
15562
15563 2002-10-13 Richard M. Stallman <rms@gnu.org>
15564
15565 * window.c (window_scroll): Set immediate_quit.
15566
15567 * print.c (print): When backquote form is the car of a list,
15568 output in old style. Use old_backquote_output to output all
15569 comma forms inside it in old style too.
15570
15571 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15572
15573 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15574
15575 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15576 batch mode).
15577
15578 * lread.c (Fload): Doc fix (load-suffixes).
15579
15580 2002-10-10 Steven Tamm <steventamm@mac.com>
15581
15582 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15583 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15584 Also switch the default to Qnil from Qt.
15585
15586 2002-10-08 Kenichi Handa <handa@m17n.org>
15587
15588 * coding.c (code_convert_region): When we need more GAP for
15589 conversion, pay attention to the case that coding->produced is not
15590 greater than coding->consumed.
15591
15592 2002-10-07 Richard M. Stallman <rms@gnu.org>
15593
15594 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15595
15596 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15597
15598 * macmenu.c (mac_menu_show): Add j to count menu items; match
15599 menu_item_selection to it to find selected item.
15600
15601 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15602
15603 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15604 cases. The correct fix is to pass ReparentNotify to Xt.
15605 The shell widget interprets ConfigureNotify differently depending
15606 on if it has been reparented or not.
15607
15608 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15609
15610 * editfns.c (Fformat_time_string): Doc fix.
15611
15612 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15613
15614 * fns.c (Flength): Doc fix.
15615
15616 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15617
15618 * keyboard.c (keyremap): New struct.
15619 (read_key_sequence): Use it: globally replace keytran_foo with
15620 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15621 keytran_next and fkey_next to just `next'.
15622
15623 2002-10-04 Steven Tamm <steventamm@mac.com>
15624
15625 * macterm.c (keycode_to_xkeysym_table): Change return to be
15626 treated like an X keysym.
15627
15628 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15629
15630 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15631 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15632 This is to also handle x/y changes that occur because of a resize.
15633
15634 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15635
15636 * frame.c (Vdelete_frame_functions): New variable.
15637 (syms_of_frame): Initialize and defvar it.
15638 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15639 it when frame's `tooltip' parameter is non-nil.
15640
15641 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15642
15643 * w32fns.c (x_create_tip_frame): Likewise.
15644
15645 * macfns.c (x_create_tip_frame): Likewise.
15646
15647 2002-09-30 Kenichi Handa <handa@m17n.org>
15648
15649 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15650 -1 before calling ccl_driver.
15651
15652 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15653 Only when it is non-nil, handle composition sequence.
15654 (setup_coding_system) <0>: Don't force composition handling.
15655
15656 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15657
15658 2002-09-29 Richard M. Stallman <rms@gnu.org>
15659
15660 * search.c (Freplace_match): Adjust match data for the substitution
15661 just made in the buffer.
15662
15663 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15664 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15665
15666 2002-09-27 Richard M. Stallman <rms@gnu.org>
15667
15668 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15669 (read_char): Use them. Do all exits thru the end of the function.
15670
15671 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15672
15673 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15674 is nil.
15675
15676 2002-09-26 Richard M. Stallman <rms@gnu.org>
15677
15678 * regex.h (__restrict_arr): Don't define if already defined.
15679
15680 * coding.c (run_pre_post_conversion_on_str):
15681 Save and restore Vdeactivate_mark.
15682
15683 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15684
15685 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15686
15687 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15688
15689 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15690 nonzero, try face's family at first. Otherwise try FAMILY at first.
15691 (choose_face_font): If C is a single byte char or latin-1, call
15692 try_font_list with PREFER_FACE_FAMILY 1.
15693
15694 2002-09-21 Richard M. Stallman <rms@gnu.org>
15695
15696 * window.c (select_window_1): Don't select frame.
15697 Set frame's selected window only when frame itself is selected.
15698 (Fselect_window): Doc fix.
15699
15700 2002-09-18 Kim F. Storm <storm@cua.dk>
15701
15702 * process.c (make-network-process): Doc fix (there is no
15703 network-server-log-function hook).
15704
15705 2002-09-18 Richard M. Stallman <rms@gnu.org>
15706
15707 * print.c (print): Clear out the unused parts of Vprint_number_table.
15708 (syms_of_print): Doc fix for `print-number-table'.
15709
15710 * unexelf.c (unexec): Undo previous change.
15711
15712 2002-09-17 Andreas Schwab <schwab@suse.de>
15713
15714 * m/alpha.h [LINUX]: Don't define DATA_START.
15715
15716 2002-09-16 Dave Love <fx@gnu.org>
15717
15718 * unexelf.c (unexec): Deal with .got, reinstating change from
15719 25-08-1999.
15720
15721 2002-09-13 Richard M. Stallman <rms@gnu.org>
15722
15723 * s/sol2-6.h (UNEXEC): Comment out definition.
15724
15725 * unexsol.c (unexec): Don't downcase first letter of error msg.
15726
15727 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15728
15729 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15730
15731 * unexsol.c: Include buffer.h, charset.h, coding.h.
15732
15733 2002-09-11 Richard M. Stallman <rms@gnu.org>
15734
15735 * unexsol.c: Don't use report_file_error; do it by hand
15736 using dlerror.
15737
15738 * process.c (wait_reading_process_input, both versions):
15739 Before calling turn_on_atimers, call stop_polling.
15740
15741 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15742
15743 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15744 we go to too_near_end, call clear_glyph_matrix.
15745 (redisplay_window): After make_cursor_line_fully_visible,
15746 call clear_glyph_matrix and bypass `goto done'.
15747
15748 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15749 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15750
15751 2002-09-10 Richard M. Stallman <rms@gnu.org>
15752
15753 * fileio.c (Fdo_auto_save): Catch error making directory.
15754 Only call push_message if we need to.
15755 At the same time, make an unwind-protect to pop it.
15756 Rename local message_p to old_message_p.
15757 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15758 (do_auto_save_unwind): Don't call pop_message.
15759
15760 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15761
15762 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15763
15764 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15765
15766 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15767
15768 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15769
15770 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15771 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15772 (re_match_2_internal): Be more careful with infinite loops.
15773
15774 2002-09-10 Kim F. Storm <storm@cua.dk>
15775
15776 * macros.c (end_kbd_macro): New function.
15777 (Fend_kbd_macro): Use it.
15778
15779 * macros.h (end_kbd_macro): Declare extern.
15780
15781 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15782 end and save it instead of discarding it.
15783
15784 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15785
15786 * s/sol2-6.h: Fix typo. Add comment.
15787
15788 2002-09-09 Richard M. Stallman <rms@gnu.org>
15789
15790 * regex.c (regnum_t): Use signed int, not unsigned int.
15791
15792 * s/sol2-6.h: New file.
15793
15794 * s/sol2-5.h (UNEXEC): Definition deleted.
15795
15796 2002-09-08 Kim F. Storm <storm@cua.dk>
15797
15798 * macros.c (executing_macro_index): Change type to EMACS_INT.
15799 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15800
15801 * macros.h (executing_macro_index): Change type to EMACS_INT.
15802
15803 2002-09-06 Richard M. Stallman <rms@gnu.org>
15804
15805 * casetab.c (set_case_table): Make canon table point to eqv table.
15806
15807 2002-09-06 Juanma Barranquero <lektu@terra.es>
15808
15809 * coding.c (syms_of_coding): Fix spacing.
15810
15811 * composite.c (Fcompose_region_internal)
15812 (Fcompose_string_internal): Likewise.
15813
15814 * data.c (Flsh): Likewise.
15815
15816 * fontset.c (Fset_fontset_font): Likewise.
15817
15818 * macfns.c (Fx_server_max_request_size): Likewise.
15819
15820 * w16select.c (syms_of_win16select): Likewise.
15821
15822 * w32select.c (syms_of_w32select): Likewise.
15823
15824 * xselect.c (syms_of_xselect): Likewise.
15825
15826 2002-09-05 Richard M. Stallman <rms@gnu.org>
15827
15828 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15829 call EXTEND_RANGE_TABLE and return a proper value.
15830 (set_image_of_range): Don't call set_image_of_range_1
15831 if no TRANSLATE or if range includes all of Latin-1.
15832 Only call it for the Latin-1 part of the range.
15833 For other cases, make two separate ranges,
15834 one for the original specified characters and one for
15835 their case-conversions.
15836
15837 2002-09-04 Richard M. Stallman <rms@gnu.org>
15838
15839 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15840
15841 * window.c (displayed_window_lines): Correct for one-off bug
15842 in HEIGHT on non-window displays.
15843
15844 * regex.c (set_image_of_range_1): New function.
15845 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15846 Return a value to indicate running out of memory.
15847 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15848 (extend_range_table_work_area): New subroutine.
15849 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15850 Different calling conventions, and used from set_image_of_range{,_1}.
15851 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15852
15853 2002-09-04 Juanma Barranquero <lektu@terra.es>
15854
15855 * makefile.w32-in: All dependencies updated.
15856
15857 2002-09-01 Richard M. Stallman <rms@gnu.org>
15858
15859 * unexsol.c: New file.
15860
15861 * xfns.c (Qbox): Declare external, don't define.
15862
15863 * xdisp.c (redisplay_window) <force-start case>:
15864 If point is on semi-visible last line, reposition
15865 it at previous line.
15866
15867 * alloc.c (display_malloc_warning): Use display-warning.
15868 (malloc_warning_1): Function deleted.
15869
15870 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15871
15872 * lread.c (read1): Handle #! by skipping the line.
15873
15874 2002-08-31 Richard M. Stallman <rms@gnu.org>
15875
15876 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15877 Don't include LDFLAGS.
15878 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15879
15880 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15881
15882 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15883 member of x_display_info unless we compile for some window system.
15884
15885 2002-08-31 Kim F. Storm <storm@cua.dk>
15886
15887 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15888 (get_window_cursor_type): Don't use them.
15889 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15890
15891 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15892
15893 * xdisp.c (get_next_display_element): Fix previous change.
15894
15895 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15896
15897 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15898 (expose_window): Use it to fix the display of overlapping
15899 rows (merge code from xterm.c).
15900
15901 * macfns.c (Qbox): Add extern declaration.
15902
15903 2002-08-30 Juanma Barranquero <lektu@terra.es>
15904
15905 * w32fns.c (Qbox): Make extern.
15906 (syms_of_w32fns): Remove initialization of Qbox.
15907
15908 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15909
15910 * xfns.c (Fx_open_connection): Fix error message.
15911
15912 2002-08-30 Kim F. Storm <storm@cua.dk>
15913
15914 The following changes consolidates the handling of the cursor
15915 type in xdisp.c, moving duplicate code and functionality from
15916 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15917
15918 * frame.h (enum text_cursor_kinds): Consolidated here.
15919 Added DEFAULT_CURSOR value.
15920 (struct frame) <desired_cursor, cursor_width>
15921 <blink_off_cursor, blink_off_cursor_width>: New fields.
15922 Consolidated from output_x, output_w32 and output_mac structs.
15923 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15924 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15925
15926 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15927 Variables consolidated here.
15928 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15929 (Vcursor_in_non_selected_windows): Renamed from
15930 cursor_in_non_selected_windows and changed to Lisp_Object.
15931 (syms_of_xdisp): Define and staticpro new and moved variables.
15932 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15933 consolidated here. Recognize Qhollow setting.
15934 (set_frame_cursor_types): New function to set frame cursor types
15935 based on the frame parameters.
15936 (get_window_cursor_type): New function to calculate new cursor
15937 type and width for the specified window. Based on duplicated
15938 code consolidated here.
15939 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15940 check buffer-local alternate-cursor-type and blink-cursor-alist
15941 before using built-in blink off methods.
15942
15943 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15944
15945 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15946 (get_specified_cursor_type, get_window_cursor_type)
15947 (set_frame_cursor_types): Added prototypes.
15948
15949 * macfns.c (x_specified_cursor_type): Removed.
15950 (x_set_cursor_type): Use set_frame_cursor_types.
15951 (Qbar, Qbox): Removed.
15952 (syms_of_macfns): Don't intern or staticpro them.
15953
15954 * macterm.c (x_specified_cursor_type): Remove prototype.
15955 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15956 (x_display_and_set_cursor): Use get_window_cursor_type.
15957 Remove unused local variables cursor_non_selected, active_cursor.
15958 Redraw cursor if hbar cursor width changes.
15959 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15960
15961 * macterm.h (enum text_cursor_kinds): Removed.
15962 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15963 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15964 (FRAME_DESIRED_CURSOR): Macro removed.
15965
15966 * w32fns.c (Vblink_cursor_alist): Removed.
15967 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15968 (syms_of_w32fns): Don't intern, staticpro, or define them.
15969 (x_specified_cursor_type): Removed.
15970 (x_set_cursor_type): Use set_frame_cursor_types.
15971
15972 * w32term.c (x_specified_cursor_type): Remove prototype.
15973 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15974 (x_display_and_set_cursor): Use get_window_cursor_type.
15975 Remove unused local variables cursor_off_state.
15976 Redraw cursor if hbar cursor width changes.
15977 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15978
15979 * w32term.h (enum text_cursor_kinds): Removed.
15980 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15981 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15982 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15983 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15984 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15985 w32_highlight_frame.
15986
15987 * xfns.c (Vblink_cursor_alist): Removed.
15988 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15989 (syms_of_xfns): Don't intern, staticpro, or define them.
15990 (x_specified_cursor_type): Removed.
15991 (x_set_cursor_type): Use set_frame_cursor_types.
15992
15993 * xterm.c (x_specified_cursor_type): Remove prototype.
15994 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15995 (x_display_and_set_cursor): Use get_window_cursor_type.
15996 Remove unused local variables cursor_off_state.
15997 Redraw cursor if hbar cursor width changes.
15998
15999 * xterm.h (enum text_cursor_kinds): Removed.
16000 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16001 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16002 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16003 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16004 (x_specified_cursor_type): Remove prototype.
16005
16006 2002-08-28 Richard M. Stallman <rms@gnu.org>
16007
16008 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16009 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16010 (Vblink_cursor_alist): New variable.
16011 (syms_of_w32fns): Initialize and defvar it.
16012 (x_specified_cursor_type): Recognize Qbox for filled box.
16013 Exceptions are hollow boxes.
16014 (Qbox, Qhollow): New variables.
16015 (syms_of_w32fns): Initialize and staticpro them.
16016
16017 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16018 New macros.
16019 (struct w32_output): New fields blink_off_cursor,
16020 blink_off_cursor_width.
16021 (FRAME_CURSOR_WIDTH): New macro.
16022
16023 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16024 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16025
16026 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16027 for bar cursor.
16028
16029 * w32term.c (expose_overlaps): New function.
16030 (expose_window): Use it to fix the display of overlapping rows.
16031
16032 2002-08-28 Simon Josefsson <jas@extundo.com>
16033
16034 * xfns.c (Fx_open_connection): Improve help when X connection
16035 fails, xhost is insecure and xauth is better.
16036
16037 2002-08-28 Juanma Barranquero <lektu@terra.es>
16038
16039 * makefile.w32-in: Add missing dependencies on w32term.h and
16040 composite.h.
16041
16042 * emacs.c (USAGE1): Add missing newline.
16043
16044 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16045
16046 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16047
16048 2002-08-27 Richard M. Stallman <rms@gnu.org>
16049
16050 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16051 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16052 (Vblink_cursor_alist): New variable.
16053 (syms_of_xfns): Initialize and defvar it.
16054 (x_specified_cursor_type): Recognize Qbox for filled box.
16055 Exceptions are hollow boxes.
16056 (Qbox, Qhollow): New variables.
16057 (syms_of_xfns): Initialize and staticpro them.
16058
16059 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16060 New macros.
16061 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16062
16063 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16064 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16065
16066 * emacs.c (main): Handle --script.
16067 (USAGE1): Mention --script.
16068 (standard_args): Define sort order for --script.
16069
16070 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16071
16072 * xdisp.c (redisplay_updating_p): Variable removed.
16073 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16074 New variables.
16075 (init_iterator): Don't free realized faces if
16076 inhibit_free_realized_faces is set.
16077 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16078 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16079 initialize Qinhibit_free_realized_faces.
16080
16081 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16082 when iterator is adding glyphs to a glyph matrix.
16083
16084 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16085
16086 * xdisp.c (get_next_display_element): In unibyte case, don't use
16087 octal form for such eight-bit characters that can be converted to
16088 multibyte char.
16089
16090 2002-08-26 Kim F. Storm <storm@cua.dk>
16091
16092 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16093 foreground and background colors. From Joe Buehler.
16094
16095 2002-08-26 Miles Bader <miles@gnu.org>
16096
16097 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16098
16099 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16100
16101 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16102 defined instead of MAC_OSX.
16103
16104 * s/darwin.h (select): Define select to sys_select only if
16105 HAVE_CARBON is defined.
16106 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16107 (DONT_REOPEN_PTY): #def it.
16108
16109 * macterm.c (XTread_socket): Remove code to call
16110 SendEventToEventTarget for keys with command modifiers when
16111 mac_command_key_is_meta is nil.
16112
16113 2002-08-24 Andreas Schwab <schwab@suse.de>
16114
16115 * eval.c (Fdefvar): Fix last change.
16116
16117 2002-08-23 Richard M. Stallman <rms@gnu.org>
16118
16119 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16120 Record variables in load history as (defvar . VAR).
16121 (Fdefvar): Don't record in load history if no initial value.
16122 (Qdefvar): New variable.
16123 (syms_of_eval): Init and staticpro it.
16124
16125 * lread.c (syms_of_lread): Doc fix.
16126 (build_load_history): Use Fmember to see if a definition
16127 is already in the Vload_history element.
16128
16129 * process.c (Fstart_process): Remove /: from program name.
16130
16131 * emacs.c (decode_env_path): Don't add /: if file name handler
16132 has a `safe-magic' property.
16133
16134 * callproc.c (Fcall_process): Remove /: from program name.
16135
16136 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16137
16138 * regex.c (PATFETCH): Remove the translating fetch.
16139 (PATFETCH_RAW): Rename to PATFETCH.
16140 (set_image_of_range): New fun.
16141 (SET_RANGE_TABLE_WORK_AREA): Use it.
16142 (regex_compile): Don't translate the pattern chars so eagerly.
16143 Only do it when inserting an `exactn' bytecode or when handling
16144 a char-range.
16145 (mutually_exclusive_p): Avoid empty statement.
16146
16147 2002-08-22 Kim F. Storm <storm@cua.dk>
16148
16149 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16150 end up on a partially visible line; this reverts a specific part
16151 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16152 display error which has been reported several times now.
16153 However it introduces the problem that changes was supposed to fix.
16154 See my comments in the source if you want to debug this further.
16155
16156 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16157
16158 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16159
16160 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16161
16162 * msdos.c (croak): Add `void' to definition.
16163
16164 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16165 Don't define them, they are defined in msdos.c.
16166
16167 * mem-limits.h [MSDOS]: Declare etext.
16168
16169 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16170 `const' since CORRECT_DIR_SEPS modifies its target.
16171
16172 2002-08-19 Kim F. Storm <storm@cua.dk>
16173
16174 * keyboard.c (Fclear_this_command_keys): Add optional arg
16175 KEEP-RECORD to avoid clearing lossage when we just want to clear
16176 the current key sequence (kmacro needs this).
16177
16178 2002-08-19 Kenichi Handa <handa@localhost>
16179
16180 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16181
16182 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16183 cons, return Qnil.
16184
16185 2002-08-17 Richard M. Stallman <rms@gnu.org>
16186
16187 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16188
16189 * sysdep.c [!VMS]: Include sys/files.h.
16190
16191 * editfns.c (save_restriction_restore): Defend from unchained marker.
16192
16193 * buffer.c (overlays_at): Handle extending vec uniformly.
16194 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16195
16196 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16197
16198 * mac.c (init_mac_osx_environment): New function.
16199
16200 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16201
16202 2002-08-14 Kim F. Storm <storm@cua.dk>
16203
16204 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16205 executing macro before appending to it (when used from Lisp).
16206 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16207 which is called prior to each iteration of macro (for kmacro.el).
16208 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16209
16210 * lisp.h (Fexecute_kbd_macro): Update prototype.
16211
16212 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16213
16214 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16215
16216 * xselect.c (QUTF8_STRING): New variable.
16217 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16218 (x_atom_to_symbol): Likewise.
16219 (x_get_local_selection): New argument local_request. If it is
16220 nonzero, call handler_fn with the second arg nil.
16221 (x_handle_selection_request): Call x_get_local_selection with
16222 local_request 0.
16223 (lisp_data_to_selection_data): Don't encode the string here.
16224 (Fx_get_selection_internal): Call x_get_local_selection with
16225 local_request 1.
16226 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16227
16228 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16229
16230 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16231
16232 2002-08-13 Richard M. Stallman <rms@gnu.org>
16233
16234 * minibuf.c (Fminibufferp): New function.
16235 (syms_of_minibuf): Defsubr it.
16236 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16237
16238 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16239
16240 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16241
16242 2002-08-12 Richard M. Stallman <rms@gnu.org>
16243
16244 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16245 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16246 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16247 already.
16248
16249 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16250
16251 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16252
16253 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16254 (Vmac_pass_command_to_system): New variable.
16255 (Vmac_pass_control_to_system): New variable.
16256 (do_mouse_moved): Check wp with is_emacs_window.
16257 (XTread_socket): Check window_ptr with is_emacs_window.
16258 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16259 events back to Mac Toolbox for processing, depending on values of
16260 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16261 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16262 Vmac_pass_control_to_system.
16263
16264 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16265
16266 * coding.c (unencodable_char_position): New function.
16267 (Funencodable_char_position): New function.
16268 (syms_of_coding): Defsubr Funencodable_char_position.
16269
16270 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16271
16272 * mac.c (sys_select) [MAC_OSX]: New function.
16273
16274 * macterm.c (MakeMeTheFrontProcess): New function.
16275 (mac_initialize): Call MakeMeTheFrontProcess.
16276
16277 * s/darwin.h: Define select to sys_select.
16278
16279 2002-08-09 Richard M. Stallman <rms@gnu.org>
16280
16281 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16282
16283 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16284
16285 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16286 end of the buffer.
16287
16288 2002-08-08 Ken Raeburn <raeburn@mit.edu>
16289
16290 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16291
16292 * puresize.h (BASE_PURESIZE): Increase to 910000.
16293
16294 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16295
16296 * coding.c (Ffind_operation_coding_system): For write-region, if
16297 VISIT is a filename, make it the target.
16298
16299 2002-08-07 Richard M. Stallman <rms@gnu.org>
16300
16301 * alloc.c (mark_object): Detect long lists for debugging.
16302 (mark_object_loop_halt): New variable.
16303
16304 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16305
16306 * data.c (Fmake_variable_frame_local): Doc fix.
16307
16308 2002-08-01 David Ponce <david@dponce.com>
16309
16310 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16311 (malloc_widget_value, free_widget_value)
16312 (w32_free_submenu_strings): Use them.
16313
16314 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16315 (push_menu_pane, push_menu_item, single_keymap_panes)
16316 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16317 (single_submenu, set_frame_menubar)
16318 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16319
16320 (Fx_popup_menu): Don't show pop up menu until preceding one is
16321 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16322
16323 * w32menu.c: Changes adapted from xmenu.c
16324 (set_frame_menubar): First parse all submenus,
16325 then make widget_value trees from them.
16326 Don't allocate any widget_value objects
16327 until we are done with the parsing.
16328 (parse_single_submenu): New function.
16329 (digest_single_submenu): New function.
16330 (single_submenu): Function deleted, replaced by those two.
16331
16332 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16333
16334 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16335 returns a valid window pointer before proceeding for keyDown and
16336 autoKey events.
16337
16338 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16339
16340 * macterm.c (USE_CARBON_EVENTS): New macro.
16341 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16342 (x_iconify_frame): Call CollapseWindow.
16343 (Vmac_reverse_ctrl_meta): New variable.
16344 (Vmac_wheel_button_is_mouse_2): New variable.
16345 (init_mac_drag_n_drop): New function.
16346 (mac_do_receive_drag): New function.
16347 (mac_handle_service_event): New function.
16348 (init_service_handler): New function.
16349 (mac_to_emacs_modifiers): New function.
16350 (mac_event_to_emacs_modifiers): New function.
16351 (mac_get_mouse_btn): New function.
16352 (mac_convert_event_ref): New function.
16353 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16354 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16355 mac_get_mouse_btn.
16356 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16357
16358 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16359 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16360 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16361 TOOL_BAR_EVENT for MAC_OS as well.
16362 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16363 as for WINDOWS_NT.
16364 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16365
16366 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16367
16368 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16369
16370 * xdisp.c (forward_to_next_line_start): Fix a condition that
16371 lead to a newline being skipped.
16372
16373 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16374
16375 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16376
16377 2002-08-01 Richard M. Stallman <rms@gnu.org>
16378
16379 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16380
16381 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16382
16383 * macfns.c: #undef init_process before #define-ing it.
16384
16385 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16386 HAVE_CARBON is defined.
16387
16388 2002-07-31 Richard M. Stallman <rms@gnu.org>
16389
16390 * xmenu.c (set_frame_menubar): First parse all submenus,
16391 then make widget_value trees from them.
16392 Don't allocate any widget_value objects
16393 until we are done with the parsing.
16394 (parse_single_submenu): New function.
16395 (digest_single_submenu): New function.
16396 (single_submenu): Function deleted, replaced by those two.
16397
16398 2002-07-30 Juanma Barranquero <lektu@terra.es>
16399
16400 * w32proc.c (syms_of_ntproc): Fix docstring of
16401 `w32-get-true-file-attributes'.
16402
16403 2002-07-28 Richard M. Stallman <rms@gnu.org>
16404
16405 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16406 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16407
16408 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16409
16410 * keyboard.c (make_lispy_event):
16411 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16412 Explicitly clear up_modifier in event->modifiers.
16413
16414 2002-07-27 Richard M. Stallman <rms@gnu.org>
16415
16416 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16417
16418 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16419 for bar cursor.
16420
16421 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16422
16423 * coding.c (detect_coding_iso2022): While checking a byte sequence
16424 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16425 it in the normal loop.
16426
16427 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16428
16429 * xterm.c (expose_overlaps): New function.
16430 (expose_window): Use it to fix the display of overlapping rows.
16431
16432 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16433
16434 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16435
16436 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16437 since it only depends on XUINT.
16438
16439 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16440 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16441 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16442 Macros deleted.
16443
16444 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16445 its value over other approaches.
16446 * sysdep.c (start_of_data): Don't define the function if a macro
16447 form has been defined.
16448
16449 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16450
16451 * xdisp.c (redisplay_updating_p): New variable.
16452 (init_iterator): Don't free realized faces when
16453 redisplay_updating_p is set.
16454 (redisplay_internal): Set redisplay_updating_p while updating
16455 the display.
16456
16457 2002-07-23 Richard M. Stallman <rms@gnu.org>
16458
16459 * editfns.c (Fmessage): Treat "" like nil.
16460
16461 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16462
16463 * xdisp.c (face_before_or_after_it_pos):
16464 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16465
16466 2002-07-22 Juanma Barranquero <lektu@terra.es>
16467
16468 * callproc.c (init_callproc) [DOS_NT]:
16469 Initialize Vshared_game_score_directory to nil.
16470 (syms_of_callproc) [DOS_NT]: Likewise.
16471
16472 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16473
16474 * xdisp.c (display_line): Replace an abort with xassert.
16475
16476 2002-07-21 Richard M. Stallman <rms@gnu.org>
16477
16478 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16479 and END_UNCHANGED when setting buffer_unchanged_p.
16480 Use current_matrix_up_to_date_p to decide whether to use
16481 try_cursor_movement.
16482
16483 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16484
16485 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16486
16487 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16488 Set to nil if dir does not exist.
16489 (syms_of_callproc): Init unconditionally and simply.
16490
16491 * buffer.c (Fbuffer_list): Doc fix.
16492
16493 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16494
16495 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16496
16497 * buffer.c (mmap_realloc): When shrinking, make sure number of
16498 pages to unmap is rounded towards zero.
16499
16500 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16501 (XSETINT): Deleted.
16502
16503 * m/att3b.h (XINT): Don't define.
16504 (VALBITS, VALMASK, XTYPE): Deleted.
16505 (DATA_SEG_BITS): Define.
16506 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16507 ARRAY_MARK_FLAG): Deleted.
16508 (DATA_SEG_BITS): Define.
16509 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16510 (DATA_SEG_BITS): Define.
16511
16512 2002-07-20 Richard M. Stallman <rms@gnu.org>
16513
16514 * print.c (print_error_message): New args CONTEXT and CALLER.
16515 Calls changed.
16516
16517 * lisp.h (print_error_message): Declare new args.
16518
16519 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16520 and CONTEXT to print_error_message, don't print them here.
16521 For a Quit, don't use Vsignaling_function.
16522 Call message_log_maybe_newline.
16523
16524 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16525
16526 2002-07-20 Kim F. Storm <storm@cua.dk>
16527
16528 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16529
16530 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16531
16532 * bytecode.c (struct byte_stack): Pointers into byte string now
16533 point to const.
16534 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16535 const.
16536 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16537 * coding.c (encode_eol, detect_coding, detect_eol):
16538 (decode_coding, encode_coding, detect_coding_system):
16539 Source strings now treated as const.
16540 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16541 modify Lisp string contents.
16542 * coding.h (decode_coding, encode_coding, detect_coding,
16543 detect_eol): Declarations updated.
16544 * composite.c (compose_chars_in_text): Treat Lisp string contents
16545 as const.
16546 * dispnew.c (safe_bcopy): Source pointer now points to const.
16547 * lisp.h (STRING_COPYIN): New macro.
16548 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16549 (internal_with_output_to_temp_buffer): Declarations updated.
16550 * print.c (temp_output_buffer_setup):
16551 (internal_with_output_to_temp_buffer): Buffer name argument is now
16552 pointer to const.
16553 * sound.c (struct sound_device): Function pointer field "write"
16554 buffer argument now points to const.
16555 (vox_write): Buffer argument points to const.
16556 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16557 contents as const.
16558 * sysdep.c (emacs_write): Buffer pointer now const.
16559 * term.c (encode_terminal_code): Buffer pointer now const.
16560 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16561 (x_face_list_fonts, x_update_menu_appearance):
16562 (hash_string_case_insensitive): Treat Lisp string contents as const.
16563
16564 2002-07-19 Juanma Barranquero <lektu@terra.es>
16565
16566 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16567
16568 * fileio.c (syms_of_fileio): Likewise.
16569 (Ffile_name_as_directory): Fix argument name in docstring.
16570 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16571
16572 2002-07-18 Richard M. Stallman <rms@gnu.org>
16573
16574 * data.c (Fdefalias): Doc fix.
16575
16576 2002-07-17 Dave Love <fx@gnu.org>
16577
16578 * intervals.h (text_property_stickiness): Use P_.
16579
16580 * ccl.c: Remove `emacs' conditionals.
16581 (ccl_backtrace_table): Fix size spec.
16582 (ccl_driver): Fix type errors.
16583
16584 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16585
16586 * alloc.c (xstrdup, make_string, make_unibyte_string)
16587 (make_multibyte_string, build_string): String pointer args now
16588 point to const.
16589 * charset.c (find_charset_in_text, c_string_width):
16590 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16591 * fileio.c (report_file_error):
16592 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16593 (count_combining_before, count_combining_after, insert_1_both):
16594 (insert, insert_and_inherit, insert_string):
16595 (insert_before_markers, insert_before_markers_and_inherit):
16596 * lread.c (intern, oblookup, hash_string):
16597 * minibuf.c (temp_echo_area_glyphs):
16598 * search.c (fast_c_string_match_ignore_case):
16599 * sysdep.c (emacs_open, set_file_times):
16600 * xfaces.c (xstricmp):
16601 * xdisp.c (store_frame_title, string_char_and_length):
16602 (message_dolog, message2, message2_nolog, set_message): Likewise.
16603 (set_message_1): Cast message string argument to const pointer.
16604 * editfns.c (general_insert_function): Insertion function now
16605 takes pointer to const for input data.
16606 * charset.h (find_charset_in_text, c_string_width):
16607 (parse_str_as_multibyte): Declarations updated.
16608 * dispextern.h (xstricmp): Declaration updated.
16609 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16610 (count_size_as_multibyte, count_combining_before):
16611 (count_combining_after, insert_1, insert_1_both, message_dolog):
16612 (insert, insert_and_inherit, insert_before_markers)
16613 (insert_before_markers_and_inherit, set_message, message2):
16614 (message2_dolog, build_string, make_string, make_unibyte_string):
16615 (make_multibyte_string, intern, oblookup, report_file_error):
16616 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16617 (emacs_open, xstrdup): Declarations updated.
16618 * systime.h (set_file_times): Declaration updated.
16619
16620 * charset.c (find_charset_in_text, lisp_string_width): Use const
16621 for pointer to lisp string data.
16622 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16623 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16624 * coding.c (Ffind_coding_systems_region_interval):
16625 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16626 (Fmake_directory_internal, Fdelete_directory):
16627 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16628 * fontset.c (font_family_registry, fs_query_fontset):
16629 (list_fontsets):
16630 * frame.c (Fframe_parameter):
16631 * keyboard.c (cmd_error_internal):
16632 * keymap.c (Fdescribe_buffer_bindings):
16633 * lread.c (complete_filename_p, openp):
16634 * minibuf.c (Fminibuffer_complete_word):
16635 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16636 (face_before_or_after_it_pos, next_element_from_string):
16637 (get_overlay_arrow_glyph_row, display_mode_element):
16638 (decode_mode_spec_coding):
16639 * xterm.c (same_x_server): Likewise.
16640
16641 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16642 settings of non-existent fields.
16643
16644 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16645 copy a lisp value.
16646
16647 * lread.c (Fintern_soft): Use string macros instead of
16648 Lisp_String fields.
16649 * keyboard.c (echo_char, parse_modifiers_uncached):
16650 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16651 * textprop.c (validate_interval_range, interval_of): Likewise.
16652
16653 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16654
16655 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16656 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16657 XSTRING()->size_byte.
16658
16659 * lisp.h (SDATA, SREF): Produce rvalue.
16660 (SSET): New macro.
16661 * alloc.c (make_event_array): Use SSET for storing into a string.
16662 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16663 a string.
16664 * casefiddle.c (casify_object): Use SSET.
16665 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16666 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16667 address of string contents.
16668 * data.c (Faref): Use SDATA.
16669 (Faset): Use SDATA, SSET.
16670 * dired.c (directory_files_internal): Use SSET.
16671 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16672 (Fread_file_name): Use SREF, SSET.
16673 * fns.c (concat): Use SSET.
16674 (concat, Fdelete): Use SDATA.
16675 * insdel.c (insert_from_string_1): Use SDATA.
16676 * keyboard.c (Fevent_convert_list): Use SREF.
16677 * lread.c (Fload): Use SDATA, SSET.
16678 * macfns.c (validate_x_resource_name): Use SSET.
16679 * process.c (status_message): Use SSET.
16680 * search.c (wordify): Use SDATA.
16681 (Freplace_match): Use SREF.
16682 * w32fns.c (validate_x_resource_name): Use SSET.
16683 * xfns.c (validate_x_resource_name): Use SSET.
16684 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16685
16686 2002-07-16 Richard M. Stallman <rms@gnu.org>
16687
16688 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16689
16690 * xdisp.c (reconsider_clip_changes):
16691 Don't test prevent_redisplay_optimizations_p.
16692 (redisplay_internal): Test prevent_redisplay_optimizations_p
16693 along with clip_changed in some cases.
16694 (try_window_id): Likewise.
16695 (redisplay_window): New local var buffer_unchanged_p.
16696
16697 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16698
16699 * process.c (create_process): Test USG_SUBTTY_WORKS.
16700 (process_send_signal): Clean up handling of GID.
16701 Detect errors in ioctls meant to set GID.
16702
16703 * window.c (temp_output_buffer_show):
16704 Don't set prevent_redisplay_optimizations_p.
16705
16706 2002-07-15 Juanma Barranquero <lektu@terra.es>
16707
16708 * eval.c (Fdefvaralias): Add docstring argument.
16709
16710 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16711
16712 * lisp.h (STRING_INTERVALS): Produce rvalue.
16713 (STRING_SET_INTERVALS): New macro.
16714 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16715 * fns.c (Fstring_as_multibyte): Likewise.
16716 * intervals.c (balance_possible_root_interval, delete_interval)
16717 (create_root_interval, copy_intervals_to_string): Likewise.
16718 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16719 instead of 0.
16720
16721 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16722
16723 * lisp.h (STRING_SET_CHARS): New macro.
16724 (SCHARS, SBYTES): Produce rvalues.
16725 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16726 * fns.c (concat): Likewise.
16727 * lread.c (read_vector): Likewise.
16728
16729 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16730 (STRING_SET_UNIBYTE): New macro.
16731 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16732 length of -1) changed to use STRING_SET_UNIBYTE.
16733 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16734 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16735 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16736 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16737 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16738 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16739 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16740 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16741 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16742 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16743 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16744 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16745 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16746 unchanged for now.
16747
16748 2002-07-13 Kim F. Storm <storm@cua.dk>
16749
16750 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16751
16752 2002-07-12 Richard M. Stallman <rms@gnu.org>
16753
16754 * fileio.c (Fwrite_region): Doc fix.
16755
16756 * print.c (print_error_message): Don't handle Vsignaling_function here.
16757
16758 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16759 (command_loop_1): Avoid certain actions after memory-full error.
16760
16761 * eval.c (Fsignal): Don't call cancel_hourglass.
16762 For a memory-full error, don't call Vsignal_hook_function
16763 and don't set Vsignaling_function.
16764
16765 * process.c (process_send_signal): Add abort call.
16766
16767 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16768
16769 * keymap.c (Fkey_binding): Fix typo.
16770
16771 2002-07-11 Richard M. Stallman <rms@gnu.org>
16772
16773 * alloc.c (Vmemory_full): New variable.
16774 (Vmemory_signal_data): Rename from memory_signal_data.
16775 Uses changed.
16776 (syms_of_alloc): Defvar them.
16777 (memory_full, buffer_memory_full): Set Vmemory_full.
16778
16779 * lisp.h (Vmemory_full): Add declaration.
16780 (current_column, indented_beyond_p): Change declaration.
16781
16782 * indent.c (last_known_column): Declare as double, not float.
16783 (current_column, current_column_1, string_display_width)
16784 (position_indentation): Return `double'.
16785 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16786
16787 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16788 (back_to_previous_visible_line_start)
16789 (reseat_at_next_visible_line_start, next_element_from_buffer):
16790 Use `double', not `float', when calling indented_beyond_p.
16791
16792 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16793
16794 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16795
16796 2002-07-11 Juanma Barranquero <lektu@terra.es>
16797
16798 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16799 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16800 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16801 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16802 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16803 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16804
16805 2002-07-10 Juanma Barranquero <lektu@terra.es>
16806
16807 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16808 All callers changed.
16809
16810 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16811
16812 * data.c (Fdefalias): Add an optional `docstring' argument.
16813 (set_internal, Fsetq_default): Use XCAR/XCDR.
16814
16815 * composite.c (HASH_VALUE, HASH_KEY):
16816 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16817
16818 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16819
16820 * callproc.c (Fcall_process): Fix previous change.
16821
16822 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16823
16824 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16825 Add support for hash-tables.
16826 (Ftry_completion): Return t even if the string appears multiple times.
16827
16828 * fns.c (Fnconc): Use XCDR.
16829 (Fprovide): Use CONSP and XCDR.
16830 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16831 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16832 (Fmake_hash_table): Accept `:size nil'.
16833 (Fmakehash): Delete: moved to subr.el.
16834 (syms_of_fns): Don't defsubr makehash.
16835
16836 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16837 (HASH_TABLE_SIZE): Move from fns.c.
16838
16839 2002-07-07 Richard M. Stallman <rms@gnu.org>
16840
16841 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16842 Instead just return 0 when there is something to be done.
16843 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16844 retry scrolling as if cursor were off the bottom.
16845 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16846 return CURSOR_MOVEMENT_MUST_SCROLL.
16847 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16848 go to try_to_scroll.
16849
16850 * buffer.c (Fbuffer_local_value): Store current value into its binding
16851 so we get the up-to-date value for the binding that is loaded.
16852
16853 * eval.c (Fdefmacro): Doc fix.
16854
16855 2002-07-05 Dave Love <fx@gnu.org>
16856
16857 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16858 correctly.
16859
16860 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16861 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16862 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16863 CCL_LookupCharConstTbl.
16864 (syms_of_ccl): Defvar translation-hash-table-vector.
16865
16866 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16867
16868 * xdisp.c: Remove unused variable `face'.
16869
16870 2002-07-04 Juanma Barranquero <lektu@terra.es>
16871
16872 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16873 obsolescence information.
16874
16875 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16876
16877 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16878 pattern. Search cache first.
16879 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16880 for Japanese font.
16881 (XLoadQueryFont): Use it.
16882
16883 2002-07-02 Richard M. Stallman <rms@gnu.org>
16884
16885 * keymap.c (Fdefine_key): Doc fix.
16886
16887 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16888
16889 2002-07-02 Juanma Barranquero <lektu@terra.es>
16890
16891 * keymap.c (syms_of_keymap): Fix typo.
16892
16893 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16894
16895 * s/darwin.h: Define POSIX_SIGNALS.
16896
16897 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16898 and FSRefMakePath to convert FSSpec returned with Apple Event to
16899 Posix pathname.
16900 (mac_initialize) [TARGET_API_MAC_CARBON]:
16901 Call init_required_apple_events and disable the `Quit' menu item
16902 provided automatically by the Carbon Toolbox.
16903
16904 2002-07-01 Dave Love <fx@gnu.org>
16905
16906 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16907 for K&R.
16908
16909 * xterm.c: Fix prototype for K&R.
16910
16911 * term.c (costs_set): Declare static, non-initialized for pcc.
16912
16913 2002-07-01 Richard M. Stallman <rms@gnu.org>
16914
16915 * keyboard.c (timer_last_idleness_start_time): New variable.
16916 (timer_start_idle): Set that.
16917 (read_key_sequence): Use that to reset timer_idleness_start_time
16918 to previous value.
16919
16920 * window.c (Frecenter): With arg, set optional_new_start.
16921
16922 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16923
16924 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16925 buffer for completion.
16926
16927 2002-06-29 Ken Raeburn <raeburn@gnu.org>
16928
16929 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16930
16931 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16932
16933 * keyboard.c (readable_filtered_events): New function that filters
16934 FOCUS_IN_EVENT depending on parameter.
16935 (readable_events): Calls readable_filtered_events, not filtering
16936 FOCUS_IN_EVENT.
16937 (get_filtered_input_pending): New function, filtering parameter passed
16938 to readable_filtered_events.
16939 (get_input_pending): Calls get_filtered_input_pending, not filtering
16940 FOCUS_IN_EVENT.
16941 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16942 FOCUS_IN_EVENT.
16943
16944 * xterm.h (struct x_output): Add focus_state.
16945
16946 * xterm.c (x_focus_changed): New function.
16947 (x_detect_focus_change): New function.
16948 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16949 EnterNotify and LeaveNotify to track X focus changes.
16950
16951 2002-06-28 Andreas Schwab <schwab@suse.de>
16952
16953 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16954
16955 2002-06-27 Kim F. Storm <storm@cua.dk>
16956
16957 * xdisp.c (mode_line_string_list, mode_line_string_face)
16958 (mode_line_string_face_prop): New variables.
16959 (store_mode_line_string): New function.
16960 (display_mode_element): Use store_mode_line_string to
16961 add mode-line string elements to mode_line_string_list
16962 when mode_line_string_list is non-nil.
16963 (Fformat_mode_line): Now returns propertized string by
16964 default. New arg NO-PROPS to ignore properties.
16965 (decode_mode_spec): Only add two dashes for %- in propertized
16966 mode-line string.
16967 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16968
16969 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16970
16971 * minibuf.c (minibuffer_completion_contents): Add return type.
16972
16973 2002-06-27 Juanma Barranquero <lektu@terra.es>
16974
16975 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16976
16977 2002-06-26 Juanma Barranquero <lektu@terra.es>
16978
16979 * fileio.c (read_file_name_cleanup): Add missing return.
16980
16981 2002-06-26 Richard M. Stallman <rms@gnu.org>
16982
16983 * window.c (Frecenter): Don't set force_start flag.
16984
16985 * minibuf.c (do_completion, Fminibuffer_complete_word)
16986 (Fminibuffer_completion_help): Complete just the text before point.
16987 (minibuffer_completion_contents): New function.
16988
16989 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16990
16991 * frame.c (frames_bury_buffer): Function deleted.
16992
16993 2002-06-25 Miles Bader <miles@gnu.org>
16994
16995 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16996 the end of callint_message, allow for a terminating '\0'.
16997
16998 2002-06-24 Juanma Barranquero <lektu@terra.es>
16999
17000 * w32select.c: Include composite.h.
17001
17002 * w16select.c: Likewise.
17003
17004 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17005
17006 * callproc.c (Fcall_process): If code detection is necessary,
17007 call detect_coding directly here.
17008
17009 * coding.c (detect_eol): Preserve coding->cmp_data.
17010
17011 * w16select.c (Fw16_get_clipboard_data):
17012 * w32fns.c (w32_to_x_font):
17013 * w32select.c (Fw32_get_clipboard_data):
17014 * xselect.c (selection_data_to_lisp_data):
17015 * xterm.c (XTread_socket): Disable composition handling.
17016
17017 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17018
17019 * print.c (temp_output_buffer_setup): Kill all local variables.
17020
17021 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17022
17023 * lread.c (Fread): Remove redundant and imprecise declaration.
17024
17025 * xfns.c (check_x_display_info): Use check_x_frame.
17026
17027 * .gdbinit (xprintsym): Use the new `xname' field.
17028 (xsymbol): Use it.
17029
17030 2002-06-22 Jason Rumney <jasonr@gnu.org>
17031
17032 * w32fns.c (file_dialog_callback): New function.
17033 (Fx_file_dialog): Allow selecting directories as well as files.
17034
17035 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17036
17037 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17038 OpenBSD. Add support for mipseb-*-netbsd* machines.
17039
17040 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17041
17042 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17043 black and white before scrolling. Restore frame background and
17044 foreground color after scrolling.
17045 (do_window_update): Call XClearWindow before calling expose_frame.
17046 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17047 FRAME_FOREGROUND_PIXEL of frame.
17048
17049 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17050 test Mac command key as <ALT> key.
17051
17052 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17053
17054 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17055
17056 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17057 Lookup keys in function-key-map immediately so that key-translation-map
17058 can be applied earlier.
17059 Remove function_key_possible and key_translation_possible, replaced
17060 by checking `keytran_start < t'.
17061
17062 * .gdbinit (xsymbol): Use the new `xname' field.
17063
17064 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17065
17066 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17067 test Mac command key as <ALT> key.
17068
17069 * mac.c (do_applescript): Call initialize_applescript if necessary
17070 when first called. Dispose of result_desc only when there is no error.
17071 (Fdo_applescript): Use %d format specifier instead of %ld.
17072
17073 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17074
17075 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17076 of FrontWindow for cases keyDown and autoKey.
17077
17078 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17079 Vdefault_fontset to Monaco with mac-roman coding.
17080
17081 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17082 init_process before and after inclusion of Carbon/Carbon.h, resp.
17083
17084 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17085 cursor_gc.
17086 (add_font_name_table_entry): New function.
17087 (init_font_name_table): Use add_font_name_table_entry; add italic,
17088 bold, and bold-italic entries for truetype fonts.
17089
17090 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17091 for Mac too.
17092 (try_font_list) [MAC_OS]: If no font matches given registry, try
17093 fonts with any registry matching face_family.
17094 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17095
17096 * s/darwin.h: If autoconf detects the Ncurses library, define
17097 LIBS_TERMCAP to -lncurses to use it.
17098
17099 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17100
17101 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17102
17103 2002-06-15 Richard M. Stallman <rms@gnu.org>
17104
17105 * window.c (Fset_window_configuration): Explicitly preserve
17106 the point value that new_current_buffer had at the start.
17107
17108 2002-06-14 Juanma Barranquero <lektu@terra.es>
17109
17110 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17111 Fix typos.
17112
17113 2002-06-14 Kim F. Storm <storm@cua.dk>
17114
17115 * insdel.c (insert_1_both, insert_from_string_1)
17116 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17117 insert happened in the end_unchanged region. Otherwise, the
17118 redisplay may be confused and duplicate the last line in the
17119 buffer [seen after save-buffer when require-final-newline==t].
17120
17121 2002-06-13 Jason Rumney <jasonr@gnu.org>
17122
17123 * w32.c (init_environment): Remove EMACSLOCKDIR.
17124 (stat): Swap _S_IFDIR and _S_IFREG.
17125
17126 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17127
17128 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17129 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17130 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17131 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17132 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17133 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17134 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17135 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17136 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17137 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17138 SELECTION_REQUEST_EVENT, selection_clear_event to
17139 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17140 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17141 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17142 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17143 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17144 no_event to NO_EVENT.
17145
17146 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17147
17148 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17149
17150 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17151
17152 * intervals.c (textget): Don't forget to `return'.
17153 (lookup_char_property): Use XCAR/XCDR.
17154
17155 2002-06-12 Juanma Barranquero <lektu@terra.es>
17156
17157 * xdisp.c (Fformat_mode_line): Fix typo.
17158
17159 2002-06-12 Kim F. Storm <storm@cua.dk>
17160
17161 * xdisp.c (Fformat_mode_line): New function.
17162 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17163 (store_frame_title_char, store_frame_title): Use unconditionally.
17164 (init_xdisp): Defsubr Fformat_mode_line.
17165 Initialize frame_title_buf etc. unconditionally.
17166
17167 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17168
17169 * keyboard.c (read_key_sequence):
17170 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17171 things through those maps after downcasing events.
17172 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17173 applies after function-key-map.
17174 Make sure that keytran can be done in the middle in the sequence.
17175 Be careful not to throw away events past the one we downcase.
17176
17177 * lread.c (read_integer): Remove unused var `tem'.
17178 (read1): Fix int/Lisp_Object mixup.
17179
17180 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17181
17182 2002-06-11 Richard M. Stallman <rms@gnu.org>
17183
17184 * keyboard.c (readable_events): Ignore any number of
17185 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17186
17187 2002-06-09 Miles Bader <miles@gnu.org>
17188
17189 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17190 (parse_rgb_list, tty_lookup_color): New functions.
17191 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17192 (color_distance, Fcolor_distance): New functions.
17193 (TTY_SAME_COLOR_THRESHOLD): New macro.
17194 (Qtty_color_standard_values): New variable.
17195 (syms_of_xfaces): Initialize new vars & functions.
17196
17197 2002-06-08 Colin Walters <walters@verbum.org>
17198
17199 * textprop.c (Vchar_property_alias_alist): New variable.
17200 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17201
17202 * intervals.c (lookup_char_property): New function for looking up
17203 overlay and text properties, created from textget.
17204 (textget): Use it.
17205
17206 * intervals.h (lookup_char_property): Declare.
17207 (Vchar_property_alias_alist): Declare.
17208
17209 * buffer.c (Foverlay_get): Use lookup_char_property.
17210
17211 2002-06-07 Sam Steingold <sds@gnu.org>
17212
17213 * xselect.c (lisp_data_to_selection_data): Fix last change:
17214 *data_ret is not a Lisp string, while unibyte_string is.
17215
17216 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17217
17218 * xselect.c (lisp_data_to_selection_data): Fix last change:
17219 set size_ret.
17220
17221 2002-06-07 Andreas Schwab <schwab@suse.de>
17222
17223 * m/amdx86-64.h: New file.
17224
17225 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17226
17227 * fns.c (Fstring_make_unibyte): Doc fix.
17228
17229 * xselect.c (lisp_data_to_selection_data): If the requested type
17230 is STRING, call string_make_unibyte to encode the selected text
17231 as a string.
17232
17233 * window.c (Fset_window_hscroll): Doc fix.
17234
17235 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17236
17237 * fileio.c (choose_write_coding_system):
17238 Call select-safe-coding-system properly.
17239
17240 2002-06-03 Richard M. Stallman <rms@gnu.org>
17241
17242 * xdisp.c (message_with_string): Error if STRING is not a string.
17243
17244 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17245
17246 * fileio.c (choose_write_coding_system): Pass FILE arg to
17247 Vselect_safe_coding_system_function.
17248
17249 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17250
17251 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17252
17253 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17254
17255 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17256 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17257 * keymap.c (describe_command): Likewise.
17258 * minibuf.c (read_minibuf): Likewise.
17259
17260 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17261 Cast `current_column' return value to int.
17262 (back_to_previous_visible_line_start)
17263 (reseat_at_next_visible_line_start, next_element_from_buffer):
17264 Cast `indented_beyond_p' 3rd arg to float.
17265
17266 * indent.c (last_known_column): Now a float.
17267 (current_column_1, position_indentation, current_column)
17268 (string_display_width): Return float.
17269 (Fcurrent_column): Cast `current_column' return value to int.
17270 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17271 (indented_beyond_p): Third arg now a float.
17272 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17273
17274 * lisp.h (current_column): Now returns float.
17275 (indented_beyond_p): 3rd arg now a float.
17276
17277 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17278
17279 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17280 is Qcompound_text_with_extensions.
17281
17282 * xselect.c (lisp_data_to_selection_data): Always set selection
17283 type as string if x_encode_text returns streingp non-NULL.
17284
17285 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17286
17287 2002-05-30 Richard M. Stallman <rms@gnu.org>
17288
17289 * window.c (Fset_window_configuration): Correct the handling
17290 of point in current buffer, to work with multiple windows.
17291
17292 2002-05-29 Colin Walters <walters@verbum.org>
17293
17294 * lread.c (Fread_from_string): Don't depend on order of evaluation
17295 for C function parameters.
17296
17297 2002-05-28 Richard M. Stallman <rms@gnu.org>
17298
17299 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17300 way for blinked-off state and for a nonselected window.
17301
17302 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17303 instead, see if the new start pos is at beginning of line.
17304
17305 * fileio.c (Fwrite_region): If START is a string, don't
17306 make any annotations.
17307
17308 * eval.c (syms_of_eval): Doc fix.
17309
17310 2002-05-28 Colin Walters <walters@debian.org>
17311
17312 * emacs.c (USAGE1): Add --no-splash.
17313 (standard_args): Ditto.
17314
17315 2002-05-28 Colin Walters <walters@gnu.org>
17316
17317 * lread.c (readchar_count): New variable.
17318 (readchar): Increment it.
17319 (unreadchar): Decrement it.
17320 (read_multibyte): Decrement it.
17321 (Vread_with_symbol_positions): New variable.
17322 (Vread_symbol_positions_list): New variable.
17323 (read_internal_start): New function, created from Fread and
17324 Fread_from_string. Handle Vread_symbol_positions_list and
17325 Vread_with_symbol_positions.
17326 (readevalloop, Fread, Fread_from_string): Use it.
17327 (read1): Use readchar_count to add symbol positions to
17328 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17329 (syms_of_lread): DEFVAR_LISP and initialize them.
17330
17331 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17332 (substitute_object_recurse, substitute_object_in_subtree)
17333 (substitute_in_interval): Prototype.
17334 (read_multibyte): Return c if it's less than zero.
17335
17336 2002-05-28 Kim F. Storm <storm@cua.dk>
17337
17338 * fileio.c (Fread_file_name_internal): Added brute-force
17339 speed up for using predicate file-directory-p.
17340
17341 2002-05-28 Kim F. Storm <storm@cua.dk>
17342
17343 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17344 New variables.
17345 (syms_of_fileio): DEFVAR_LISP them.
17346 (read_file_name_cleanup): New unwind function.
17347 (Fread_file_name_internal): Only return completions satifying
17348 Vread_file_name_predicate. Temporarily unwind protect and rebind
17349 default-directory while checking completions against the predicate.
17350 (Fread_file_name): Added PREDICATE argument. Specbind it to
17351 Vread_file_name_predicate during completion.
17352 Call Vread_file_name_function to read the file name if non-nil.
17353
17354 * lisp.h (Fread_file_name): Now has 6 args.
17355
17356 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17357 predicate for Fread_file_name when reading directory name.
17358 Supply Qnil for predicate in other calls to Fread_file_name.
17359
17360 2002-05-26 Miles Bader <miles@gnu.org>
17361
17362 * term.c (tty_capable_p): New function.
17363 * dispextern.h (tty_capable_p): New function declaration.
17364 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17365 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17366
17367 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17368
17369 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17370 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17371 (Vwrite_region_annotate_functions): Docstring fix.
17372
17373 2002-05-23 Kim F. Storm <storm@cua.dk>
17374
17375 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17376 phys_cursor's hpos is overwritten. This is still not completely
17377 correct, as it doesn't really make sense to use hpos at all to
17378 get the cursor glyph (as that is relative to the width of the
17379 characters on the line, which may have changed during the update).
17380
17381 2002-05-22 Jason Rumney <jasonr@gnu.org>
17382
17383 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17384 Lisp_Object.
17385 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17386 Use modified enumfont_t struct.
17387
17388 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17389
17390 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17391 Handle the `hbar' cursor type.
17392 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17393
17394 * w32fns.c (Qhbar): New variable.
17395 (x_specified_cursor_type): Use it.
17396
17397 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17398
17399 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17400 now, when the address is needed.
17401
17402 2002-05-21 Colin Walters <walters@gnu.org>
17403
17404 * Makefile.in (shortlisp): Add font-core.el.
17405
17406 2002-05-20 Richard M. Stallman <rms@gnu.org>
17407
17408 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17409
17410 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17411 equivalent key bindings here.
17412
17413 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17414
17415 Change symbol structure to contain a lisp object for the symbol
17416 name:
17417 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17418 object field named "xname".
17419 (SYMBOL_NAME): New macro.
17420 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17421 name field.
17422 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17423 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17424 instead of name field.
17425 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17426 SYMBOL_NAME instead of XSYMBOL and name field.
17427 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17428 instead of XSYMBOL and name field.
17429 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17430 and SYMBOL_NAME instead of XSYMBOL and name field.
17431 * coding.c (Fread_coding_system, code_convert_region1)
17432 (code_convert_string1, code_convert_string_norecord)
17433 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17434 XSYMBOL and name field.
17435 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17436 (Fmake_variable_buffer_local, Fmake_local_variable)
17437 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17438 of XSYMBOL and name field.
17439 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17440 XSYMBOL and name field.
17441 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17442 instead of XSYMBOL and name field.
17443 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17444 XSYMBOL and name field.
17445 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17446 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17447 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17448 instead of XSYMBOL and name field.
17449 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17450 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17451 (parse_solitary_modifier, Fexecute_extended_command):
17452 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17453 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17454 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17455 of XSYMBOL and name field.
17456 (describe_command, describe_translation): Use SYMBOL_NAME and
17457 assignment instead of XSYMBOL and name field and XSETSTRING.
17458 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17459 instead of XSYMBOL and name field.
17460 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17461 name field and XSETSTRING.
17462 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17463 of XSYMBOL and name field.
17464 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17465 assignment instead of XSYMBOL and name field and XSETSTRING.
17466 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17467 XSTRING instead of XSYMBOL and name field.
17468 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17469 and XSTRING instead of XSYMBOL and name field.
17470 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17471 and XSTRING instead of XSYMBOL and name field.
17472 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17473 XSTRING instead of XSYMBOL and name field.
17474 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17475 of XSYMBOL and name field.
17476 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17477 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17478
17479 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17480
17481 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17482 and XCDR real rvalues in most configurations.
17483
17484 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17485 Don't take the address of the cdr part of a cons cell; instead, track
17486 the parent cell and call XSETCDR, or set the variable for the head
17487 of the list if we haven't started down the list yet.
17488
17489 2002-05-19 Richard M. Stallman <rms@gnu.org>
17490
17491 * doc.c (reread_doc_file): Don't ask for confirmation.
17492
17493 2002-05-18 Jason Rumney <jasonr@gnu.org>
17494
17495 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17496 (xbm_load_image): Use it.
17497 (xbm_load): Ditto.
17498 (xbm_read_bitmap_data): Reverted to xfns.c version.
17499 From David Ponce <david@dponce.com>.
17500
17501 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17502
17503 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17504 2.02 and later.
17505
17506 2002-05-16 Juanma Barranquero <lektu@terra.es>
17507
17508 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17509
17510 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17511
17512 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17513 meaningful test.
17514 (read_char_minibuf_menu_prompt): Fix typo.
17515
17516 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17517
17518 * eval.c (Fcommandp): Doc fix.
17519
17520 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17521
17522 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17523 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17524 (Fset_keymap_parent): Gcpro a bit more.
17525 (access_keymap): Gcpro around meta_map call and around the main loop.
17526 (get_keyelt): Gcpro when following indirect references.
17527 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17528 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17529 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17530 Remove useless ad-hoc remap code.
17531
17532 2002-05-13 Richard M. Stallman <rms@gnu.org>
17533
17534 * search.c (search_buffer): Give up boyer moore search if inverse
17535 translation change charset_base.
17536
17537 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17538
17539 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17540 characters is carried over from the previous block of text, adjust
17541 coding->produced to account for the extra character.
17542
17543 2002-05-11 Andreas Schwab <schwab@suse.de>
17544
17545 * coding.c (intersection): Keep the elements of the returned list
17546 in the same order as in the first list.
17547
17548 2002-05-11 Kim F. Storm <storm@cua.dk>
17549
17550 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17551 only update cmm_size if realloc actually succeeds.
17552 Testing with initial size of 2 elements revealed that using
17553 realloc on GNU/Linux would cause a random trap in xmalloc
17554 later on, so I rewrote the code to use malloc/bcopy/free instead
17555 of realloc.
17556
17557 2002-05-10 Jason Rumney <jasonr@gnu.org>
17558
17559 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17560
17561 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17562
17563 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17564 parens, to ensure correct evaluation order.
17565
17566 2002-05-10 Kim F. Storm <storm@cua.dk>
17567
17568 * keymap.c (Vemulation_mode_map_alists): New variable.
17569 (syms_of_keymap): DEFVAR_LISP it.
17570 (current_minor_maps): Process keymap alists in that list before
17571 minor-mode-overriding-map-alist and minor-mode-map-alist.
17572
17573 2002-05-09 Richard M. Stallman <rms@gnu.org>
17574
17575 * search.c (Freplace_match): Doc fix.
17576
17577 2002-05-09 Kim F. Storm <storm@cua.dk>
17578
17579 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17580 Enlarge cursor rectangle drawn around image with non-zero relief.
17581
17582 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17583 Enlarge cursor rectangle drawn around image with non-zero relief.
17584
17585 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17586 Enlarge cursor rectangle drawn around image with non-zero relief.
17587
17588 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17589
17590 * xselect.c (lisp_data_to_selection_data): Don't set selection
17591 type if comes from the Lisp object's car. If the selection
17592 contains a pure ASCII text, always return QSTRING as its type.
17593
17594 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17595
17596 * mac.c (mac-cut-function): Doc fix.
17597
17598 2002-05-05 Richard M. Stallman <rms@gnu.org>
17599
17600 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17601
17602 2002-05-04 Jason Rumney <jasonr@gnu.org>
17603
17604 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17605 for event-click-count.
17606
17607 * process.c (init_process): Only add server subfeature if we can
17608 use non-blocking I/O.
17609
17610 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17611
17612 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17613 repeatedly.
17614
17615 2002-05-03 Jason Rumney <jasonr@gnu.org>
17616
17617 * process.c (Fmake_network_process): Only support server sockets
17618 when we can make them non-blocking.
17619
17620 * s/ms-w32.h (HAVE_SELECT): Define.
17621
17622 * w32.h (FILE_NDELAY): New flag.
17623
17624 * w32.c (sys_getpeername, fcntl): New functions.
17625 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17626
17627 * w32proc.c: Include sys/file.h.
17628
17629 2002-05-03 Colin Walters <walters@verbum.org>
17630
17631 * callproc.c (Vgame_score_directory): Renamed to
17632 Vshared_game_score_directory.
17633
17634 2002-04-30 Richard M. Stallman <rms@gnu.org>
17635
17636 * s/gnu.h [emacs]: Include stdio.h.
17637 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17638
17639 * eval.c (do_autoload): Error if called while preparing to dump.
17640
17641 * fns.c (Frequire): Error if need to load while preparing to dump.
17642
17643 2002-04-28 Colin Walters <walters@verbum.org>
17644
17645 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17646 Default to "~/.emacs.d/games".
17647
17648 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17649
17650 * lread.c (openp): Change arg exec_only to predicate.
17651 (build_load_history): Use XCAR/XCDR.
17652 (Flocate_file_internal): New fun.
17653 (syms_of_lread): Defsubr it.
17654 (Fload): Update call to openp.
17655
17656 * lisp.h (openp): Update prototype.
17657
17658 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17659 * w32proc.c (sys_spawnve):
17660 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17661 * w32.c (check_windows_init_file):
17662 * sound.c (Fplay_sound_internal):
17663 * process.c (Fstart_process):
17664 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17665 * mac.c (run_mac_command):
17666 * emacs.c (init_cmdargs):
17667 * callproc.c (Fcall_process): Update call to openp.
17668
17669 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17670
17671 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17672
17673 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17674
17675 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17676 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17677
17678 2002-04-28 Richard M. Stallman <rms@gnu.org>
17679
17680 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17681
17682 * eval.c (Fcommandp): New arg for_call_interactively.
17683 * lisp.h (Fcommandp): Declare new arg.
17684
17685 2002-04-28 Jason Rumney <jasonr@gnu.org>
17686
17687 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17688
17689 * w32.c (stat, fstat): Use file index information to generate
17690 inodes for directories where available.
17691
17692 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17693
17694 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17695 [HAVE_CARBON]: Include Mac object files.
17696
17697 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17698 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17699 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17700 MAC_OSX, and MAC_OS instead of macintosh.
17701
17702 * editfns.c [MAC_OS8]: Include stdio.h.
17703
17704 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17705
17706 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17707 Apple Monaco.
17708
17709 * process.c (QCfamily, QCfilte): Declare extern.
17710 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17711 calling select.
17712
17713 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17714
17715 * tparam.c [MAC_OSX]: Don't define BC and UP.
17716
17717 * config.in [HAVE_CARBON]: Add.
17718
17719 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17720 Move here from mac/src and mac/inc.
17721
17722 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17723
17724 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17725
17726 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17727 Compute phys_cursor_width from the x position returned
17728 by x_draw_glyhs, which is cheaper.
17729 (x_display_and_set_cursor): Compute the buffer-local value
17730 of `cursor-in-non-selected-windows' only when needed.
17731
17732 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17733
17734 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17735 cursor on a stretch glyph has a width that depends on
17736 x_stretch_cursor_p.
17737
17738 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17739
17740 * abbrev.c (abbrev-start-location): Doc fix.
17741
17742 * indent.c (Fvertical_motion): Fix last change.
17743
17744 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17745
17746 * indent.c (Fvertical_motion): Move to the start of the line
17747 containing PT before moving up or down.
17748
17749 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17750
17751 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17752 case of writing a whole row, more or less analogous to the case of
17753 writing only parts of a row.
17754
17755 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17756 0 for NO_CURSOR.
17757
17758 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17759
17760 2002-04-23 Colin Walters <walters@verbum.org>
17761
17762 * buffer.c (syms_of_buffer): Doc fix.
17763
17764 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17765
17766 * xterm.c (notice_overwritten_cursor): Handle the special case
17767 of the cursor being in the first blank non-text line at the
17768 end of a window.
17769
17770 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17771 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17772 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17773 bar cursors only, to make phys_cursor_width contain what its name
17774 suggests.
17775 (notice_overwritten_cursor): Consider the cursor image erased if
17776 the output area intersects the cursor image in y-direction.
17777
17778 2002-04-23 Simon Marshall <simon@gnu.org>
17779
17780 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17781 to XC_hand2.
17782
17783 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17784
17785 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17786
17787 2002-04-22 Kim F. Storm <storm@cua.dk>
17788
17789 * textprop.c (remove_properties): Fixed trap for malformed plist.
17790
17791 2002-04-22 Richard M. Stallman <rms@gnu.org>
17792
17793 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17794
17795 * window.c (make_window): Initialize height_fixed_p,
17796 last_cursor_off_p, and p->cursor_off_p slots.
17797
17798 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17799
17800 * fns.c (use-dialog-box): Doc fix.
17801
17802 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17803
17804 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17805 variables `row', `i' and `area'.
17806 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17807 toolkit library.
17808
17809 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17810
17811 * xfaces.c (clear_font_table): Don't free the default font of
17812 a frame even if it's on another display.
17813 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17814 that could be Qt.
17815
17816 2002-04-19 Juanma Barranquero <lektu@terra.es>
17817
17818 * indent.c (Fmove_to_column): Remove unused local variable
17819 `next_boundary_byte'.
17820 (current_column_1): Likewise.
17821
17822 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17823
17824 * msdos.c (Qhbar): New variable.
17825 (syms_of_msdos): Intern and staticpro it.
17826 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17827 cursor type.
17828
17829 2002-04-19 Dave Lambert <dlambert@acm.org>
17830
17831 Theses change implement an underscore-like (`hbar') cursor.
17832
17833 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17834
17835 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17836 Handle the `hbar' cursor type.
17837 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17838
17839 * xfns.c (Qhbar): New variable.
17840 (syms_of_xfns): Intern and staticpro it.
17841 (x_specified_cursor_type): Handle `hbar' cursor.
17842
17843 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17844 not defined.
17845
17846 2002-04-18 Richard M. Stallman <rms@gnu.org>
17847
17848 * textprop.c (remove_properties): New arg LIST allows scanning
17849 either a list or a plist.
17850 (interval_has_some_properties_list): New function, like
17851 interval_has_some_properties using list instead of plist.
17852 All callers changed.
17853 (Fremove_list_of_text_properties): New function.
17854 (syms_of_textprop): Defsubr it.
17855
17856 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17857
17858 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17859
17860 2002-04-17 Juanma Barranquero <lektu@terra.es>
17861
17862 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17863
17864 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17865
17866 * window.c (coordinates_in_window): Don't report on margin area
17867 if its width is zero.
17868
17869 2002-04-16 Jason Rumney <jasonr@gnu.org>
17870
17871 * w32fns.c (Fx_file_dialog): Decode file name before using.
17872
17873 * w32term.c (construct_drag_n_drop): Likewise.
17874
17875 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17876
17877 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17878 store load-history in pure space.
17879
17880 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17881
17882 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17883
17884 * xterm.c (Qlatin_1, Qutf_8): New vars.
17885 (syms_of_xterm): Initialize them.
17886 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17887 decoding the output of X*LookupString.
17888 Always use latin-1 to decode the output of XLookupString.
17889 Try Xutf8LookupString if XmbLookupString failed.
17890
17891 * region-cache.c (new_region_cache): Use BEG.
17892
17893 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17894
17895 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17896 configuration files.
17897 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17898 returns 0.
17899
17900 2002-04-15 Andreas Schwab <schwab@suse.de>
17901
17902 * config.in: Regenerated using autoheader.
17903
17904 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17905 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17906 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17907 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17908 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17909 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17910 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17911 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17912 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17913 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17914 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17915 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17916 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17917 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17918 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17919 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17920 STACK_DIRECTION, now set by autoconf.
17921
17922 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17923
17924 * dispnew.c (marginal_area_string): Sort arguments.
17925
17926 * dispextern.h (marginal_area_string): Add prototype.
17927
17928 2002-04-13 Richard M. Stallman <rms@gnu.org>
17929
17930 * fileio.c (Finsert_file_contents):
17931 Don't call temp_output_buffer_setup--do just part, by hand.
17932
17933 * coding.c (run_pre_post_conversion_on_str):
17934 Don't call temp_output_buffer_setup--do just part, by hand.
17935
17936 * keyboard.c (command_loop_1): Don't call start_hourglass
17937 or cancel_hourglass when executing a macro.
17938
17939 * marker.c (count_markers): New function.
17940
17941 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17942 grow without limit. Move recently used elements to the front.
17943
17944 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17945
17946 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17947
17948 2002-04-12 Gerd Moellmann <gerd@gnu.org>
17949
17950 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17951 rows marginal areas.
17952 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17953 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17954
17955 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17956
17957 2002-04-12 Dave Love <fx@gnu.org>
17958
17959 * dispnew.c (marginal_area_string): New.
17960
17961 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17962 (Qleft_margin, Qright_margin): Declare.
17963 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17964
17965 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17966 note_mode_line_highlight and extended.
17967
17968 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17969 (make_lispy_event): Deal with mouse events in margins.
17970
17971 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17972
17973 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17974
17975 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17976 than deactivating the mark if tmm is set to `lambda'.
17977 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17978 Use a single event for HELP_EVENT.
17979 (Fexecute_extended_command): Save last_point_position.
17980
17981 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17982
17983 * lisp.h (Fpropertize): Add prototype.
17984
17985 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17986
17987 2002-04-10 Colin Walters <walters@verbum.org>
17988
17989 * config.in: Add HAVE_SHARED_GAME_DIR.
17990
17991 * callproc.c (Vgame_score_directory): New variable.
17992 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17993
17994 2002-04-10 Richard M. Stallman <rms@gnu.org>
17995
17996 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17997
17998 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17999
18000 * minibuf.c (read_minibuf): Use empty_string.
18001 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18002 Short-circuit the search as soon as it "failed".
18003 (Fall_completions): Allow lambda forms and lists of strings for alist.
18004 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18005 when require_match is nil.
18006 (Ftest_completion): Rename from `test_completion' and export to elisp.
18007 Call the predicate also when alist is a list.
18008 Obey Vcompletion_regexp_list.
18009 (do_completion, Fminibuffer_complete_and_exit): Use it.
18010 (Fassoc_string): Rename from `assoc_for_completion'.
18011 Allow list of strings as well and export to elisp.
18012
18013 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18014
18015 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18016
18017 2002-04-08 Juanma Barranquero <lektu@terra.es>
18018
18019 * w32.c (sys_accept): Don't hide variable `s'.
18020
18021 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18022
18023 * callint.c (Fcall_interactively): Use INTEGERP instead of
18024 NUMBERP for checking Vhistory_length.
18025
18026 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18027
18028 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18029 Doc fix to reflect it.
18030
18031 2002-04-04 Richard M. Stallman <rms@gnu.org>
18032
18033 * xdisp.c (display_mode_element): New arg RISKY.
18034 Disregard text props found or specified within a variable
18035 that isn't marked risky-local-variable.
18036 (Qrisky_local_variable): New variable.
18037 (syms_of_xdisp): Init and staticpro it.
18038
18039 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18040
18041 * undo.c (record_point): New fun.
18042 (record_delete, record_insert): Use it.
18043
18044 2002-04-03 Juanma Barranquero <lektu@terra.es>
18045
18046 * doc.c (Fdocumentation): Add missing parentheses.
18047 (Fdocumentation_property): Likewise.
18048
18049 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18050
18051 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18052 data is 0, just return nil.
18053
18054 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18055
18056 * msdos.c (syms_of_msdos): Fix last change with
18057 mouse_autoselect_window.
18058
18059 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18060
18061 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18062 mouse_autoselect_window.
18063
18064 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18065
18066 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18067 with system-specific keysyms. Use it also for unknown function keys.
18068
18069 * doc.c (reread_doc_file): Return whether reload was attempted.
18070 (Fdocumentation, Fdocumentation_property): Don't try to reload
18071 if the doc is 0 and only ask once.
18072
18073 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18074
18075 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18076
18077 * keyboard.c (read_char): If the event was Qselect_window,
18078 restore timer_idleness_start_time to its previous value.
18079
18080 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18081
18082 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18083
18084 * region-cache.c (new_region_cache): Use BEG.
18085
18086 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18087 Use BEG and BEG_BYTE.
18088
18089 * doc.c (get_doc_string): Return nil if the location is wrong.
18090 (reread_doc_file): New fun.
18091 (Fdocumentation, Fdocumentation_property):
18092 Call it if get_doc_string fails.
18093 (Fsnarf_documentation): Make it work for a dumped Emacs.
18094
18095 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18096 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18097
18098 * charset.c (Fstring): Allow 0 arguments.
18099
18100 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18101
18102 * process.c (DATAGRAM_CONN_P, list_processes_1)
18103 (Fprocess_datagram_address, Fset_process_datagram_address)
18104 (Fset_network_process_options, server_accept_connection):
18105 Fix some int/Lisp_Object confusions (thank you union types).
18106
18107 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18108
18109 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18110
18111 * w32term.c: Likewise.
18112 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18113
18114 * keyboard.c (Qselect_window): New symbol.
18115 (head_table): Use it.
18116 (keys_of_keyboard): Bound select-window event to handle-select-window.
18117 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18118
18119 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18120 (last_window): New variable.
18121 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18122 (note_mouse_movement): Remove reimplemented code in #if 0.
18123 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18124 Emacs windows.
18125
18126 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18127
18128 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18129
18130 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18131 Callers changed.
18132
18133 2002-03-30 Richard M. Stallman <rms@gnu.org>
18134
18135 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18136 loop whenever it stops making progress.
18137
18138 * widget.c (set_frame_size): Don't call change_frame_size.
18139
18140 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18141
18142 * dispnew.c (direct_output_for_insert):
18143 Call mark_window_display_accurate.
18144
18145 2002-03-29 Jason Rumney <jasonr@gnu.org>
18146
18147 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18148
18149 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18150
18151 * Makefile.in (lread.o): Depend on coding.h.
18152
18153 * lread.c (openp, Fload): Encode the file name before passing it
18154 to `stat', `access', and `emacs_open'.
18155 (openp): GCPRO the encoded file name. Don't recompute Lisp
18156 strings unnecessarily.
18157
18158 2002-03-29 Kim F. Storm <storm@cua.dk>
18159
18160 * fns.c (Flax_plist_put): Doc fix.
18161
18162 2002-03-28 Miles Bader <miles@gnu.org>
18163
18164 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18165
18166 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18167
18168 * process.c (set-network-process-options): Add usage.
18169 (make-network-process): Doc fix.
18170
18171 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18172
18173 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18174
18175 2002-03-26 Richard M. Stallman <rms@gnu.org>
18176
18177 * fns.c (Fsubstring_no_properties): New function.
18178 (Flax_plist_get, Flax_plist_put): New functions.
18179 (syms_of_fns): defsubr them.
18180
18181 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18182 don't test or alter w->update_mode_line.
18183
18184 * window.c (Fdisplay_buffer): Doc fix.
18185
18186 2002-03-24 Richard M. Stallman <rms@gnu.org>
18187
18188 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18189
18190 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18191
18192 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18193 (Fdefmacro): Handle `(declare ...)'.
18194 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18195 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18196
18197 2002-03-24 Jason Rumney <jasonr@gnu.org>
18198
18199 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18200 (xbm_file_p): Add prototypes.
18201 (xbm_format, xbm_image_p): Sync with xfns.c.
18202 (reflect_byte): New function.
18203 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18204 (xbm_load_image): Create bitmaps with a depth of 1.
18205 (init_xfns): Enable XBM images.
18206
18207 2002-03-23 Jason Rumney <jasonr@gnu.org>
18208
18209 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18210 correctly. Do not pass up_modifier to keyboard buffer.
18211
18212 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18213
18214 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18215
18216 * Makefile.in (bootstrapclean): New target.
18217 (bootstrap-temacs, bootstrap-doc): Remove.
18218 (bootstrap-emacs): Use a bog-standard `temacs'.
18219 Don't bother to build a DOC file.
18220
18221 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18222
18223 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18224 in temacs even if !CANNOT_DUMP.
18225 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18226
18227 * alloc.c (check_pure_size): Only output a warning.
18228
18229 2002-03-22 Jason Rumney <jasonr@gnu.org>
18230
18231 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18232 supported.
18233
18234 * w32term.c (zv_bits): Declare as short, for word alignment.
18235 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18236 (syms_of_w32term): Define x-use-underline-position-properties.
18237
18238 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18239 (clear_image_cache): Block input, fix logic, clear matrices in
18240 all frames that share this cache.
18241
18242 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18243
18244 * emacs.c (main): Update the Copyright year in the blurb printed
18245 by "emacs --version".
18246
18247 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18248
18249 * xterm.c (XTread_socket): If XK_ISO_Lock and
18250 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18251 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18252
18253 2002-03-21 Kim F. Storm <storm@cua.dk>
18254
18255 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18256 menu-bar bindings in keymap and local-map properties _are_ used.
18257 But try keymap property first in accordance with 2002-01-03 patch.
18258 Added comment describing why this is not always reliable.
18259 (tool_bar_items): Ditto for tool-bar.
18260
18261 2002-03-21 Jason Rumney <jasonr@gnu.org>
18262
18263 * w32fns.c (x_clear_image_1): Disable color table code.
18264
18265 2002-03-21 Kim F. Storm <storm@cua.dk>
18266
18267 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18268 removed the wrong version of the DEFUN macro; fixed it.
18269
18270 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18271 Fmember rather than Fmemq).
18272 (Fprovide): Check that subfeatures is a list.
18273
18274 * process.c (QCfeature, QCdatagram): Removed variables.
18275 (QCtype, Qdatagram): New variables.
18276 (network_process_featurep): Removed function.
18277 (Fmake_network_process): Removed :feature check.
18278 Use :type 'datagram instead of :datagram t to create a datagram
18279 socket. This allows us to add other connection types (e.g. raw
18280 sockets) later in a consistent manner.
18281 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18282 supported subfeatures for feature make-network-process.
18283 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18284 Intern and staticpro QCtype and Qdatagram.
18285 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18286
18287 * xfns.c: (QCtype): Remove duplicate declaration and
18288 initialization (is now declared in process.c).
18289
18290 * w32fns.c: (QCtype): Remove duplicate declaration and
18291 initialization (is now declared in process.c).
18292
18293 2002-03-21 Richard M. Stallman <rms@gnu.org>
18294
18295 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18296 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18297 when jumping to `fail' to avoid undoing reg changes in the
18298 last iteration of the loop.
18299 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18300
18301 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18302 Depend on process.h.
18303
18304 2002-03-20 Jason Rumney <jasonr@gnu.org>
18305
18306 Most of the following changes are still conditional on HAVE_IMAGES
18307 which is not set by default on Windows.
18308
18309 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18310
18311 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18312 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18313 (four_corners_best, x_clear_image_1, x_clear_image)
18314 (x_alloc_image_color, postprocess_image)
18315 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18316 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18317 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18318
18319 * w32gui.h (struct XImage): Define.
18320
18321 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18322 extract mouse co-ordinates.
18323
18324 2002-03-20 Jason Rumney <jasonr@gnu.org>
18325
18326 * w32.c (init_winsock): Dynamically load new server and UDP
18327 socket functions.
18328 (socket_to_fd): New function.
18329 (sys_socket): Use it.
18330 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18331 (sys_recvfrom, sys_sendto): New wrapper functions.
18332
18333 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18334 and initialization.
18335
18336 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18337
18338 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18339
18340 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18341 Don't use "sun" as a variable, it's a predefined constant on Sun
18342 machines.
18343
18344 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18345
18346 * bytecode.c (Fbyte_code): Revert last change.
18347
18348 2002-03-19 Kim F. Storm <storm@cua.dk>
18349
18350 * makefile.w32-in (LIBS): Add $(WSOCK32).
18351 From David Ponce <dponce@voila.fr>.
18352
18353 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18354
18355 * process.c (wait_reading_process_input): Move variables `pname'
18356 and `pnamelen' down where they are used.
18357
18358 * bytecode.c (Fbyte_code): Discard unused computed value to
18359 prevent gcc warning.
18360
18361 * lisp.h (Fplist_member): Add prototype.
18362
18363 2002-03-18 Kim F. Storm <storm@cua.dk>
18364
18365 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18366 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18367
18368 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18369 Remove explicit GNU_LINUX settings for datagram support.
18370
18371 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18372
18373 * process.c (Fmake_network_process): Remove unused variable `sa'.
18374 Doc fix. Add usage:.
18375 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18376
18377 2002-03-17 Richard M. Stallman <rms@gnu.org>
18378
18379 * xdisp.c (cursor_type_changed): New variable.
18380 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18381 Clear it when clearing windows_or_buffers_changed.
18382 (try_cursor_movement, redisplay_window, try_window_id)
18383 (try_window_reusing_current_matrix): Test cursor_type_changed
18384 along with windows_or_buffers_changed.
18385
18386 * window.h (cursor_type_changed): New variable.
18387
18388 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18389 not update_mode_lines, and always set it to 1.
18390
18391 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18392 if no frames needed redrawing.
18393
18394 2002-03-17 Kim F. Storm <storm@cua.dk>
18395
18396 The following changes add support for network server processes,
18397 datagram connections, and local (unix) sockets.
18398
18399 * process.h (struct Lisp_Process): New member log.
18400 Doc fix: Member command used to indicate stopped network process.
18401 Doc fix: Member childp contains plist for network process.
18402 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18403
18404 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18405 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18406 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18407 New variables.
18408 (NETCONN1_P): New macro.
18409 (DATAGRAM_SOCKETS): New conditional symbol.
18410 (datagram_address): New array.
18411 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18412 (status_message): Use concat3.
18413 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18414 for a stopped network process.
18415 (Fset_process_buffer): Update contact plist for network process.
18416 (Fset_process_filter): Ditto. Don't enable input for stopped
18417 network processes. Server must listen, even if filter is t.
18418 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18419 New functions.
18420 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18421 (Fprocess_contact): Added KEY argument. Handle datagrams.
18422 (list_processes_1): Optionally show only processes with the query
18423 on exit flag set. Dynamically adjust column widths. Omit tty
18424 column if not needed. Report stopped network processes.
18425 Identify server and datagram network processes.
18426 (Flist_processes): New optional arg `query-only'.
18427 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18428 (conv_lisp_to_sockaddr, set_socket_options)
18429 (network_process_featurep, unwind_request_sigio): New helper functions.
18430 (Fprocess_datagram_address, Fset_process_datagram_address):
18431 (Fset_network_process_options): New lisp functions.
18432 (Fopen_network_stream): Removed. Now defined in simple.el.
18433 (Fmake_network_process): New lisp function. Code is based on previous
18434 Fopen_network_stream, but heavily reworked with new property list based
18435 argument list, support for datagrams, server processes, and local
18436 sockets in addition to old client-only functionality.
18437 (server_accept_connection): New function.
18438 (wait_reading_process_input): Use it to handle incoming connects.
18439 Do not enable input on a new connection if process is stopped.
18440 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18441 (send_process): Handle datagram sockets.
18442 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18443 network process is indicated by setting command field to t .
18444 (Fprocess_send_eof): No-op if datagram connection.
18445 (Fstatus_notify): Don't read input for a stream server socket or a
18446 stopped network process.
18447 (init_process): Initialize datagram_address array.
18448 (syms_of_process): Intern and staticpro new variables, defsubr new
18449 functions.
18450
18451 2002-03-16 Jason Rumney <jasonr@gnu.org>
18452
18453 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18454 startup case.
18455
18456 2002-03-16 Richard M. Stallman <rms@gnu.org>
18457
18458 * xdisp.c (redisplay_internal, redisplay_windows):
18459 Use list_of_error to call internal_condition_case_1.
18460 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18461 so as to catch all errors with no possibility of debugger redisplay.
18462 (list_of_error): New variable.
18463 (syms_of_xdisp): Init and staticpro it.
18464
18465 * print.c (print_object): Delete `\ ' from printed rep of frame.
18466
18467 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18468
18469 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18470 until its implementation is fixed.
18471
18472 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18473
18474 * xfns.c (png_load): Remove unused variable `gamma_str'.
18475
18476 2002-03-14 Richard M. Stallman <rms@gnu.org>
18477
18478 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18479
18480 2002-03-14 Miles Bader <miles@gnu.org>
18481
18482 * intervals.c (adjust_for_invis_intang): New function.
18483 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18484 work for dealing with invisible+intangible regions. Do so before
18485 and after both forward and backward movements, to handle both
18486 front-sticky and rear-sticky cases.
18487 * textprop.c (text_property_stickiness): Function moved here from
18488 `editfns.c'.
18489 * intervals.h (text_property_stickiness): New declaration.
18490 * editfns.c (char_property_eq): Function removed.
18491 (text_property_stickiness): Function moved to `textprop.c'.
18492
18493 2002-03-13 Jason Rumney <jasonr@gnu.org>
18494
18495 * config.in: Add STRFTIME_NO_POSIX2.
18496
18497 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18498 and %OX when underlying strftime does not.
18499
18500 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18501
18502 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18503 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18504 line) to avoid annoying flicker.
18505 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18506 (XTread_socket): Mark it static.
18507
18508 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18509
18510 2002-03-13 Kim F. Storm <storm@cua.dk>
18511
18512 * puresize.h (BASE_PURESIZE): Increase to 775000.
18513
18514 2002-03-12 Juanma Barranquero <lektu@terra.es>
18515
18516 * editfns.c (syms_of_editfns): Fix typo.
18517
18518 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18519
18520 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18521 Include termopt.h for interrupt_input.
18522
18523 2002-03-11 Andreas Schwab <schwab@suse.de>
18524
18525 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18526
18527 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18528
18529 * xterm.c (note_mouse_movement): Put code for
18530 x_autoselect_window_p in #if 0.
18531
18532 * lread.c (Fload): Don't assume that message_with_string uses the
18533 string it is given like a C string.
18534
18535 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18536
18537 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18538
18539 * xterm.c (XTread_socket): Add call to x_session_check_input and
18540 x_session_have_connection.
18541 (x_initialize): Add call to x_session_initialize.
18542
18543 * termhooks.h (enum event_kind): Add save_session_event.
18544
18545 * keyboard.c: Add Emacs event save_session_event.
18546
18547 * emacs.c (main): Add call to syms_of_xsmfns.
18548
18549 * lisp.h (syms_of_xsmfns): Declare extern.
18550
18551 * config.in: Add HAVE_X_SM.
18552
18553 * Makefile.in (LIBXT): Add -lSM -lICE
18554 if HAVE_X_SM and not USE_X_TOOLKIT.
18555 (XOBJ): New file xsmfns.c added.
18556
18557 * xsmfns.c: New file for X session management.
18558
18559 2002-03-09 Jason Rumney <jasonr@gnu.org>
18560
18561 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18562 read-only when setting modified time.
18563
18564 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18565
18566 * xdisp.c (move_it_vertically_backward): At the end of the function,
18567 when moving forward by lines, treat terminal frames specially.
18568
18569 * keyboard.c (echo_char): Make sure to add a separator between
18570 keys even if echo_dash hasn't been called.
18571
18572 * xdisp.c: Use new string macros.
18573 (update_echo_area): Pass number of bytes to message3 instead of
18574 number of chars.
18575 (set_message_1): Don't access a string's size_byte directly.
18576 (decode_mode_spec_coding): Use number of bytes of eoltype string
18577 instead number of chars.
18578
18579 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18580
18581 2002-03-08 Juanma Barranquero <lektu@terra.es>
18582
18583 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18584 24-bit.
18585
18586 2002-03-06 Jason Rumney <jasonr@gnu.org>
18587
18588 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18589
18590 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18591
18592 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18593 (cancel_echoing, echo_length, echo_truncate): Changed to
18594 work with new kboard definition.
18595 (echo_now): Use message3_nolog instead of message2_nolog.
18596
18597 * alloc.c (mark_kboards): Mark echo_string.
18598
18599 * keyboard.h (ECHOBUFSIZE): Removed.
18600 (struct kboard): Member echoptr removed, member echobuf renamed
18601 to echo_string.
18602
18603 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18604 message3 instead of message2 to display the message using STRING's
18605 text properties.
18606
18607 2002-03-05 Andreas Schwab <schwab@suse.de>
18608
18609 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18610
18611 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18612
18613 * frame.c (default-frame-alist): Explain that setting it doesn't
18614 affect existing frames.
18615
18616 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18617
18618 * indent.c (skip_invisible): Fix my brain fart.
18619
18620 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18621
18622 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18623
18624 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18625 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18626 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18627 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18628 and variables to use EMACS_INT instead of just int.
18629
18630 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18631
18632 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18633
18634 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18635 environment, pass it down with corrected value.
18636
18637 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18638
18639 * lread.c (read_filtered_event): Do not call start_hourglass
18640 before returning.
18641
18642 2002-03-04 Juanma Barranquero <lektu@terra.es>
18643
18644 * w32term.c (x_display_and_set_cursor): Fix typo.
18645
18646 2002-03-03 Richard M. Stallman <rms@gnu.org>
18647
18648 * fileio.c (Fmake_temp_name): Doc fix.
18649
18650 2002-03-03 Gary Wong <gtw@gnu.org>
18651
18652 * termcap.c [!emacs]: Replace ospeed for building standalone
18653 libtermcap, for binary compatibility.
18654
18655 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18656
18657 2002-03-03 Richard M. Stallman <rms@gnu.org>
18658
18659 * xrdb.c (file_p): Rename arg `path' to `filename'.
18660
18661 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18662 only if it is an integer.
18663
18664 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18665 If png_get_sRGB gives an answer, call png_set_gamma
18666 using the default image gamma value.
18667
18668 * lread.c (read1): When reading from a file, default string to
18669 multibyte only if it has some multibyte characters.
18670
18671 * print.c (print_object): Output multibyte chars 128...255
18672 using \x even if ! print_escape_multibyte.
18673
18674 * xdisp.c (display_mode_element): Move the places where
18675 bytepos, charpos, this, and lisp_string are set.
18676 Use lisp_string to set bytepos.
18677
18678 * xdisp.c (redisplay_internal):
18679 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18680
18681 * xdisp.c (display_mode_element): Merge properties specified with
18682 :propertize onto those that come with the string.
18683
18684 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18685
18686 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18687 automatic-hscrolling. Users changed.
18688 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18689 Users changed.
18690 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18691
18692 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18693
18694 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18695
18696 2002-03-02 Kim F. Storm <storm@cua.dk>
18697
18698 * window.c (Fminibuffer_selected_window): New function.
18699 (syms_of_window): Defsubr it.
18700
18701 2002-03-01 Kim F. Storm <storm@cua.dk>
18702
18703 * window.h (struct window): New member phys_cursor_width.
18704
18705 * window.c (make_window, replace_window): Init phys_cursor_width.
18706
18707 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18708 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18709
18710 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18711 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18712
18713 * lisp.h (GCPRO6): New macro.
18714
18715 * process.c (Fopen_network_stream): Use GCPRO6.
18716
18717 2002-03-01 Kim F. Storm <storm@cua.dk>
18718
18719 * process.c (Qconnect, Qfailed): New variables.
18720 (syms_of_process): Intern and staticpro them.
18721 (Fprocess_status): Document connect and failed return values.
18722 [NON_BLOCKING_CONNECT]: New conditional.
18723 (connect_wait_mask, num_pending_connects): New variables.
18724 (status_message): Convert Qfailed status.
18725 (Fopen_network_stream): Added support for non-blocking connect.
18726 New optional args: filter, sentinel, non_blocking. Doc updated.
18727 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18728 (deactivate_process): Handle pending non-blocking connect.
18729 (wait_reading_process_input): Poll for status of non-blocking
18730 connects. Exec sentinel directly when connect succeeds.
18731 (status_notify): Don't read process output if not yet connected.
18732
18733 2002-02-28 Kim F. Storm <storm@cua.dk>
18734
18735 * window.c: (minibuf_selected_window): Renamed from
18736 Vminibuf_selected_window. Users changed.
18737 (syms_of_window): Staticpro it.
18738
18739 2002-02-26 Kim F. Storm <storm@cua.dk>
18740
18741 The following changes add a new Vminibuf_selected_window variable
18742 which is similar to Vminibuf_scroll_window, but which is only set
18743 on entry to the minibuffer (from a non-minibuffer window):
18744
18745 * window.c: (Vminibuf_selected_window): New variable.
18746 (struct save_window_data): New member minibuf_selected_window.
18747 (Fset_window_configuration): Restore Vminibuf_selected_window.
18748 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18749 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18750 (compare_window_configurations): Compare minibuf_selected_window.
18751
18752 * window.h: (Vminibuf_selected_window): Declare extern.
18753
18754 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18755 entry to minibuffer or on entry from a non-minibuffer window.
18756
18757 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18758 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18759
18760 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18761 instead of Vminibuf_scroll_window when deciding in which window
18762 the region should be highlighted. Consequently, the region remains
18763 highlighteded even when a completion buffer is also displayed.
18764
18765 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18766
18767 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18768
18769 * xselect.c (Qcompound_text_with_extensions): Renamed from
18770 Qcompound_text_no_extensions.
18771 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18772
18773 2002-02-26 Juanma Barranquero <lektu@terra.es>
18774
18775 * w32proc.c (syms_of_ntproc): Doc fix.
18776
18777 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18778
18779 * intervals.h: Include "dispextern.h" unconditionally.
18780
18781 2002-02-24 Jason Rumney <jasonr@gnu.org>
18782
18783 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18784 and disp-table.elc.
18785 (lisp): Add emacs-lisp/backquote.elc.
18786
18787 2002-02-24 Kim F. Storm <storm@cua.dk>
18788
18789 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18790 The validation of the event type was too strict as it didn't
18791 allow string events; buffer names are used in bindings for
18792 menu-bar-select-buffer (see `menu-bar-update-buffers').
18793
18794 2002-02-23 Kim F. Storm <storm@cua.dk>
18795
18796 The following changes rework my patch of 2002-02-06 which
18797 added command remapping by entering the commands directly into
18798 the keymaps. Now, command remapping uses an explicit `remap'
18799 prefix in the keymaps, i.e. [remap COMMAND].
18800
18801 * keymap.c (Qremap, remap_command_vector): New variables.
18802 (is_command_symbol): Remove function.
18803 (Fdefine_key): No longer accept a symbol for KEY.
18804 Added validation of [remap COMMAND] argument for KEY.
18805 The DEF is no longer required to be a symbol when remapping a command.
18806 (Fremap_command): New function to remap command through keymaps.
18807 (Flookup_key): Perform command remapping initiated by
18808 Fremap_command directly for speed.
18809 (Fkey_binding): Use Fremap_command for command remapping.
18810 (where_is_internal): Handle new command remapping representation.
18811 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18812 staticpro them. Defsubr Fremap_command.
18813
18814 * keymap.h (Fremap_command): Declare extern.
18815 (is_command_symbol): Remove extern.
18816
18817 * keyboard.c (command_loop_1): Use Fremap_command for command
18818 remapping; now try command remapping for all symbols.
18819
18820 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18821
18822 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18823
18824 2002-02-23 Jason Rumney <jasonr@gnu.org>
18825
18826 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18827 on the string before encoding it.
18828 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18829 after decoding it.
18830
18831 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18832
18833 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18834
18835 * w32term.c (enter_timestamp): Remove unused static variable to
18836 prevent warning.
18837
18838 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18839
18840 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18841
18842 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18843
18844 * xselect.c (selection_data_to_lisp_data): Fix last change.
18845
18846 2002-02-22 Jason Rumney <jasonr@gnu.org>
18847
18848 * w32term.h (struct w32_output): New member menu_command_in_progress.
18849
18850 * w32menu.c (menubar_selection_callback): Free the menu and
18851 clear the menu_command_in_progress flag.
18852
18853 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18854 (menu_free_timer): New variable.
18855 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18856 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18857 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18858 menu command is in progress.
18859 <WM_COMMAND>: Set the menu_command_in_progress flag.
18860 Kill any menu_free_timer that is running.
18861
18862 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18863 Call ExtTextOutA rather than ExtTextOut.
18864
18865 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18866
18867 * puresize.h (BASE_PURESIZE): Increase to 755000.
18868
18869 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18870
18871 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18872 on the string before encoding it.
18873 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18874 after decoding it.
18875
18876 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18877
18878 Support for ICCCM Extended Segments in X selections:
18879
18880 * xselect.c <Qcompound_text_no_extensions>: New variable.
18881 (syms_of_xselect): Intern and staticpro it.
18882 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18883 selection text.
18884 (lisp_data_to_selection_data): If next-selection-coding-system is
18885 compound-text-no-extensions, set the type of selection to be
18886 compound-text.
18887
18888 * xterm.h (x_encode_text): Update prototype.
18889
18890 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18891 callers changed. If SELECTIONP is non-zero, run the
18892 pre-write-conversion function before encoding the selection text.
18893
18894 2002-02-21 Kim F. Storm <storm@cua.dk>
18895
18896 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18897
18898 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18899 Correct composing of language-change event.
18900
18901 2002-02-20 Kim F. Storm <storm@cua.dk>
18902
18903 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18904 bindings at PT when building menu (the menu is not updated often
18905 enough for this to work reliable).
18906 (tool_bar_items): Likewise.
18907 (current_active_maps): Removed unused (and buggy) function.
18908
18909 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18910
18911 * xfns.c (gif_load): Use correct width and height for GIF images.
18912
18913 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18914
18915 * floatfns.c (Fatan): Accept an optional second arg and call
18916 atan2 if passed 2 args.
18917
18918 2002-02-18 Jason Rumney <jasonr@gnu.org>
18919
18920 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18921
18922 2002-02-17 Jason Rumney <jasonr@gnu.org>
18923
18924 * w32term.c (x_autoselect_window_p): New variable.
18925 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18926 (note_mouse_movement): Use it.
18927
18928 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18929
18930 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18931
18932 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18933 New variables.
18934 (syms_of_w32fns): Intern and staticpro them.
18935 (x_frame_parms) <"fullscreen">: New parameter.
18936 (x_fullscreen_move, x_set_fullscreen): New functions.
18937 (x_set_frame_parameters): Support Qfullscreen.
18938 (x_real_positions): Save x/y_pixels_diff frame params.
18939 (x_figure_window_size): Support full-screen frames.
18940 (Fx_create_frame): Default the fullscreen parameter.
18941
18942 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18943 (x_fullscreen_adjust): New functions.
18944 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18945 fullscreen. Call x_check_fullscreen_move, and set the
18946 want_fullscreen member of output_data.w32
18947 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18948
18949 * w32term.h: New enum for FULLSCREEN_* constants.
18950 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18951 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18952 (x-fullscreen-adjust): New prototype.
18953
18954 2002-02-17 Kim F. Storm <storm@cua.dk>
18955
18956 * frame.c (Vmouse_highlight): New variable.
18957 (syms_of_frame): DEFVAR_LISP it.
18958
18959 * frame.h (Vmouse_highlight): Declare extern.
18960
18961 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18962
18963 * xterm.c (disable_mouse_highlight): Removed variable.
18964 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18965 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18966 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18967 and on after keyboard input.
18968 (x_term_init): Initialize mouse_face_hidden.
18969
18970 * msdos.h (struct display_info): Add mouse_face_hidden.
18971
18972 * msdos.c (disable_mouse_highlight): Removed variable.
18973 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18974 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18975 (internal_terminal_init): Initialize mouse_face_hidden.
18976 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18977 and on after keyboard input.
18978
18979 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18980
18981 * w32term.c (disable_mouse_highlight): Removed variable.
18982 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18983 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18984 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18985 and on after keyboard input.
18986 (w32_initialize_display_info): Initialize mouse_face_hidden.
18987
18988 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18989
18990 * msdos.c (last_mouse_window): New variable.
18991 (dos_rawgetc): Fix last change--if the mouse is in the same window
18992 as recorded in last_mouse_window, don't select this window.
18993
18994 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18995
18996 * msdos.c (x_autoselect_window_p): New variable.
18997 (syms_of_msdos): Defvar it.
18998 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18999 which the last mouse movement occured, unless it is already selected.
19000
19001 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19002 New variables.
19003 (syms_of_xdisp): DEVFAR them.
19004 (hscroll_window_tree): Use automatic_hscroll_margin and
19005 Vautomatic_hscroll_step to compute the amount of window scrolling.
19006
19007 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19008
19009 * xterm.c (x-autoselect-window): New variable.
19010 (note_mouse_movement): Use it.
19011
19012 * keyboard.c: Do not include "systime.h" twice.
19013
19014 2002-02-15 Andreas Schwab <schwab@suse.de>
19015
19016 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19017
19018 * alloc.c (NSTATICS): Increase to 1280.
19019
19020 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19021
19022 * alloc.c (NSTATICS): Bump to 1026.
19023
19024 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19025 (Vx_super_keysym): New variables.
19026 (syms_of_xterm): DEFVAR_LISP them.
19027 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19028 variables to determine which keys to use for the various modifiers.
19029
19030 2002-02-13 Kim F. Storm <storm@cua.dk>
19031
19032 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19033 (mode_line_in_non_selected_windows): New variable.
19034 (syms_of_window): DEFVAR_BOOL it.
19035
19036 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19037 Use mode_line_in_non_selected_windows.
19038 (mode_line_in_non_selected_windows): Declare extern.
19039 (Vmode_line_in_non_selected_windows): Removed extern.
19040
19041 2002-02-13 Richard M. Stallman <rms@gnu.org>
19042
19043 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19044 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19045 (Fclear_this_command_keys): Doc fixes.
19046
19047 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19048 (update_face_from_frame_parameter): Increment face_change_count
19049 and windows_or_buffers_changed to force redisplay using changed faces.
19050
19051 * xdisp.c (QCpropertize): New variable.
19052 (mode_line_proptrans_alist): New variable.
19053 (display_mode_element): New arg PROPS; all calls changed.
19054 Implement this, for strings.
19055 Handle literal output of strings by sharing the
19056 main-line code for strings, using local var `literal'.
19057 Handle :propertize feature.
19058 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19059 mode_line_proptrans_alist.
19060
19061 2002-02-11 Kim F. Storm <storm@cua.dk>
19062
19063 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19064 (syms_of_window): DEFVAR_LISP it.
19065
19066 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19067 (CURRENT_MODE_LINE_FACE_ID): Use it.
19068 (Vmode_line_in_non_selected_windows): Declare extern.
19069
19070 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19071 to get mode line face.
19072
19073 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19074
19075 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19076 variables; cus-start.el doesn't need them anymore.
19077
19078 2002-02-09 Kim F. Storm <storm@cua.dk>
19079
19080 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19081 reduction. This fixes a display problem where stray newlines were
19082 inserted in the window (corrected by C-l). Clarified code (IMHO).
19083
19084 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19085
19086 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19087
19088 * xdisp.c (display_mode_lines): Fix last change.
19089
19090 2002-02-09 Jason Rumney <jasonr@gnu.org>
19091
19092 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19093 match each other.
19094 (w32_load_system_font): Prevent Cleartype fonts from loading.
19095 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19096
19097 2002-02-09 Kim F. Storm <storm@cua.dk>
19098
19099 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19100 (CURRENT_MODE_LINE_HEIGHT): Use it.
19101 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19102
19103 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19104 (pos_visible_p, handle_face_prop): Likewise.
19105 (display_mode_lines): Likewise, but for the real selected window.
19106 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19107
19108 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19109 in non-selected windows.
19110 (realize_basic_faces): Realize it.
19111 (syms_of_term): Intern and staticpro it.
19112
19113 2002-02-08 Kim F. Storm <storm@cua.dk>
19114
19115 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19116 Changed mail addresses to emacs-devel@gnu.org.
19117
19118 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19119
19120 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19121 ~user, and there's no such user, don't discard everything before ~user.
19122
19123 * floatfns.c (Fround): Doc fix.
19124
19125 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19126
19127 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19128
19129 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19130
19131 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19132
19133 2002-02-07 Kim F. Storm <storm@cua.dk>
19134
19135 * keymap.c (where_is_internal): Only check whether definition is
19136 remapped if it fulfills is_command_symbol.
19137
19138 2002-02-07 Andreas Schwab <schwab@suse.de>
19139
19140 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19141
19142 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19143
19144 2002-02-06 Kim F. Storm <storm@cua.dk>
19145
19146 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19147 defining command remapping. Doc updated.
19148 (Flookup_key): Remap command through keymap if KEY is a symbol.
19149 (is_command_symbol): New function.
19150 (Fkey_binding): Use it. New optional argument NO-REMAP.
19151 Doc updated. Callers changed. Perform command remapping via
19152 recursive call unless that arg is non-nil.
19153 (where_is_internal): New argument no_remap. Callers changed.
19154 Call recursively to find original key bindings for a remapped
19155 comand unless that arg is non-nil.
19156 (Fwhere_is_internal): New optional argument NO-REMAP.
19157 Doc updated. Callers changed. Pass arg to where_is_internal.
19158
19159 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19160 (is_command_symbol): Add prototype.
19161
19162 * keyboard.c (Vthis_original_command): New variable.
19163 (syms_of_keyboard): DEFVAR_LISP it.
19164 (command_loop_1): Set it, and perform command remapping.
19165
19166 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19167
19168 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19169
19170 2002-02-06 Jason Rumney <jasonr@gnu.org>
19171
19172 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19173
19174 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19175
19176 * charset.c (get_charset_id): Use if-else instead of ?:.
19177
19178 2002-02-06 Richard M. Stallman <rms@gnu.org>
19179
19180 * filelock.c (S_ISLNK): Define if not defined.
19181
19182 2002-02-03 Richard M. Stallman <rms@gnu.org>
19183
19184 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19185
19186 * lread.c (read1): Redesign strategy for force_multibyte and
19187 force_singlebyte. Now is_multibyte records whether read_buffer
19188 is multibyte. Encountering any multibyte character makes it so.
19189
19190 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19191
19192 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19193 with the same sequence, map that sequence to f10 rather than f0.
19194
19195 2002-02-03 Andreas Schwab <schwab@suse.de>
19196
19197 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19198 latter never being defined on GNU/Linux.
19199
19200 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19201
19202 * xfaces.c (realize_default_face): Don't set the weight and slant of
19203 the default face to Qnormal, unless these attributes are unspecified.
19204
19205 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19206
19207 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19208 Call cancel_hourglass unconditionally.
19209
19210 * eval.c (Fsignal): Remove duplicated declaration of
19211 the variable `display_hourglass_p'.
19212
19213 2002-01-31 Richard M. Stallman <rms@gnu.org>
19214
19215 * editfns.c (region_limit): Nicer error message.
19216
19217 * coding.c (decode_composition_emacs_mule):
19218 Give up if NCOMPONENT gets too large to index `component'.
19219
19220 * callint.c (check_mark): New arg to specify clearer error message.
19221 Callers changed.
19222
19223 2002-01-27 Richard M. Stallman <rms@gnu.org>
19224
19225 * minibuf.c (Fcompleting_read): Doc fix.
19226
19227 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19228
19229 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19230 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19231 Fix doc-strings.
19232
19233 2002-01-26 Richard M. Stallman <rms@gnu.org>
19234
19235 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19236
19237 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19238 and scroll_up_aggressively.
19239
19240 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19241
19242 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19243
19244 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19245
19246 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19247 (Fprevious_property_change, Fprevious_single_property_change):
19248 Stay within the narrowed-buffer boundaries.
19249
19250 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19251
19252 * term.c (Ftty_display_color_cells): New function.
19253 (syms_of_term): Defsubr it.
19254 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19255 argument name to DISPLAY. Doc fix.
19256
19257 * dispextern.h: Add prototype for set_tty_color_mode and
19258 tty_setup_colors.
19259
19260 2002-01-24 Jason Rumney <jasonr@gnu.org>
19261
19262 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19263 If region left to draw is not what was expected, mark the frame as
19264 garbaged.
19265
19266 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19267 Combine the regions returned by BeginPaint and GetUpdateRect.
19268
19269 2002-01-23 Jason Rumney <jasonr@gnu.org>
19270
19271 * w32term.c (x_update_window_begin): Only hide caret if
19272 w32_use_visible_system_caret is set.
19273 (x_update_window_end): Only show caret if
19274 w32_use_visible_system_caret is set.
19275 (syms_of_w32term): Handle SystemParametersInfo call failing.
19276
19277 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19278
19279 2002-01-22 Richard M. Stallman <rms@gnu.org>
19280
19281 * unexelf.c (unexec): Define n so as to cause compilation error
19282 for the code where people have often written n instead of nn.
19283
19284 * .gdbinit (hookpost-run): Defined.
19285
19286 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19287
19288 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19289
19290 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19291
19292 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19293 if fullscreen is being set.
19294
19295 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19296
19297 * minibuf.c (Fminibuffer_contents)
19298 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19299 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19300
19301 2002-01-21 Richard M. Stallman <rms@gnu.org>
19302
19303 * window.c (check_frame_size): Fix minimum height calculation.
19304
19305 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19306
19307 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19308 height before comparison.
19309 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19310
19311 2002-01-20 Jason Rumney <jasonr@gnu.org>
19312
19313 * w32term.c (w32_system_caret_width): Remove.
19314 (w32_use_visible_system_caret): New user flag.
19315 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19316 Windows reports a screen reader running.
19317 (x_update_window_begin): Hide the system caret.
19318 (x_update_window_end): Show the system caret.
19319 (x_display_and_set_cursor): Don't draw a cursor when
19320 w32_use_visible_system_caret is set. Do not adjust width.
19321
19322 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19323 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19324 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19325 the user requests it. Use system default width when creating.
19326 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19327
19328 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19329 New window messages.
19330
19331 2002-01-20 Richard M. Stallman <rms@gnu.org>
19332
19333 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19334
19335 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19336
19337 * doprnt.c (doprnt1): Fix typos in error call.
19338
19339 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19340
19341 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19342
19343 2002-01-20 Jason Rumney <jasonr@gnu.org>
19344
19345 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19346 that Windows returns. If a double check fails, try to guess how
19347 ExtTextOut is going to act.
19348
19349 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19350 in place of stricmp.
19351 (w32_list_synthesized_fonts): Removed.
19352 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19353 (struct enumfont_t): New element; list.
19354 (enum_font_cb2): List all style and charset variations of a font.
19355 (Fw32_select_font): New optional argument; include_proportional.
19356 Exclude vertical fonts. Exclude proportional fonts unless
19357 include_proportional is non-nil.
19358 (w32_enable_synthesized_fonts): Change to a boolean.
19359 (Fw32_send_sys_command): Doc fix.
19360
19361 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19362
19363 * dispnew.c (update_frame): Move the variable `tem' to the block
19364 where it is used.
19365
19366 2002-01-19 Jason Rumney <jasonr@gnu.org>
19367
19368 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19369 call to face-set-after-frame-default.
19370
19371 2002-01-18 Richard M. Stallman <rms@gnu.org>
19372
19373 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19374 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19375
19376 2002-01-17 Richard M. Stallman <rms@gnu.org>
19377
19378 * window.c (enlarge_window): When exceeding size of parent,
19379 directly delete all the siblings instead of trying to resize it.
19380
19381 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19382
19383 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19384
19385 2002-01-16 Henrik Enberg <henrik@enberg.org>
19386
19387 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19388
19389 2002-01-16 Kim F. Storm <storm@cua.dk>
19390
19391 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19392 is invisible. This can happen if cursor is on top line of a
19393 window, and we switch to a buffer with a header line.
19394
19395 * w32term.c (x_erase_phys_cursor): Ditto.
19396
19397 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19398
19399 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19400 `dont_resize' only when used.
19401
19402 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19403
19404 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19405
19406 * xdisp.c (display_mode_element): When computing charpos, depend
19407 on multibyteness of elt, not the text in field.
19408
19409 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19410
19411 * buffer.c (Fkill_all_local_variables):
19412 Increment `update_mode_lines' only once.
19413
19414 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19415
19416 * lisp.h (adjust_after_replace_noundo)
19417 (Fupdate_coding_systems_internal): Add prototypes.
19418
19419 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19420
19421 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19422
19423 Support for the --color command-line argument and tty-color-mode
19424 frame parameter:
19425
19426 * term.c (tty_default_color_capabilities, tty_setup_colors)
19427 (set_tty_color_mode): New functions.
19428 (term_init): Call tty_default_color_capabilities.
19429 (Qtty_color_mode_alist): New variable.
19430 (syms_of_term): Intern and staticpro it.
19431
19432 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19433 frames.
19434 (do_switch_frame): For termcap frames, switch the tty
19435 color mode as specified by the frame's parameters.
19436 (Qtty_color_mode): New variable.
19437 (syms_of_frame): Intern and staticpro it.
19438
19439 * emacs.c (USAGE2): Add the --color option.
19440 (standard_args): Ditto.
19441
19442 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19443
19444 * xterm.h (struct x_output): New members want_fullscreen,
19445 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19446 y_pixels_outer_diff.
19447 New enum for FULLSCREEN_* constants.
19448 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19449 is NULL.
19450 (x_fullscreen_adjust): Add prototype.
19451
19452 * emacs.c (USAGE2): Add the new full-screen arguments.
19453 (standard_args): Ditto.
19454
19455 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19456 New variables.
19457 (syms_of_xfns): Intern and staticpro them.
19458 (x_frame_parms) <"fullscreen">: New parameter.
19459 (x_fullscreen_move, x_set_fullscreen): New functions.
19460 (x_set_frame_parameters): Support for Qfullscreen.
19461 (x_real_positions): More accurate computation of the frame position.
19462 (x_figure_window_size): Support full-screen frames.
19463 (Fx_create_frame): Default the fullscreen parameter.
19464
19465 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19466 (XTread_socket) <Expose>: Call x_check_fullscreen.
19467 <ConfigureNotify>: Don't resize to fullscreen.
19468 Call x_check_fullscreen_move, and set the want_fullscreen member of
19469 output_data.x.
19470
19471 2002-01-13 Jason Rumney <jasonr@gnu.org>
19472
19473 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19474 for mice with more than 3 buttons.
19475
19476 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19477 (w32_read_socket): Handle new "XBUTTON" messages.
19478
19479 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19480 (syms_of_w32fns): DEFVAR_BOOL it.
19481 (w32_wnd_proc): Handle new "XBUTTON" messages.
19482
19483 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19484
19485 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19486
19487 2002-01-13 Andreas Schwab <schwab@suse.de>
19488
19489 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19490
19491 2002-01-12 Andreas Schwab <schwab@suse.de>
19492
19493 * .gdbinit (xbuffer): Remove address operator since data is now a
19494 pointer.
19495
19496 2002-01-11 Richard M. Stallman <rms@gnu.org>
19497
19498 * insdel.c (adjust_after_replace_noundo): New function.
19499
19500 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19501
19502 2002-01-09 Jason Rumney <jasonr@gnu.org>
19503
19504 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19505 when checking for multiple frames.
19506
19507 2002-01-08 Richard M. Stallman <rms@gnu.org>
19508
19509 * window.c (delete_window): Rewrite the code for changing the
19510 selected window to handle the case where WINDOW is not a leaf.
19511
19512 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19513
19514 * process.c (send_process): Set src_multibyte to 1 after the call
19515 top setup_coding_system, not before the call.
19516
19517 2002-01-07 Jason Rumney <jasonr@gnu.org>
19518
19519 * xmenu.c (set_frame_menubar, xmenu_show):
19520 (xdialog_show): Initialize wv->help to Qnil.
19521
19522 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19523 (w32_dialog_show): Initialize wv->help to Qnil.
19524
19525 2002-01-06 Jason Rumney <jasonr@gnu.org>
19526
19527 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19528
19529 * w32menu.c (w32_menu_display_help): Revert last change.
19530
19531 * xmenu.c (menu_highlight_callback): Revert last change.
19532
19533 2002-01-06 Andreas Schwab <schwab@suse.de>
19534
19535 * insdel.c (make_gap_larger): Make sure buffer size does not
19536 overflow range of int.
19537
19538 2002-01-05 Jason Rumney <jasonr@gnu.org>
19539
19540 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19541 OVERLAPS_P.
19542
19543 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19544
19545 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19546 to the left or to the right of the pointer, put it against
19547 the left screen edge.
19548 (x_frame_parms): Add missing braces around initializer.
19549
19550 * w32term.c (x_setup_relief_colors): Don't compute an image's
19551 background color if it doesn't have a Pixmap.
19552 (notice_overwritten_cursor): Don't depend on
19553 output_cursor and updated_area. Compare pixel coordinates with
19554 window's cursor pixel coordinates.
19555 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19556 Call notice_overwritten_cursor with new arg list.
19557 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19558 unconditionally.
19559 (x_draw_image_relief): Use predefined macro instead of
19560 constant when the value of `tool_bar_button_relief' is negative.
19561
19562 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19563
19564 2002-01-04 Richard M. Stallman <rms@gnu.org>
19565
19566 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19567
19568 2002-01-03 Richard M. Stallman <rms@gnu.org>
19569
19570 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19571 (Fkey_binding): Try the `keymap' property map first.
19572 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19573 minor mode bindings.
19574
19575 2002-01-03 Kim F. Storm <storm@cua.dk>
19576
19577 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19578
19579 2002-01-02 Richard M. Stallman <rms@gnu.org>
19580
19581 * keyboard.c (read_key_sequence): Handle the keymap property
19582 before minor mode maps.
19583
19584 * editfns.c (Fformat): Update thissize from field_width
19585 based on the actual width, in the string case.
19586
19587 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19588
19589 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19590 when used as truth value to prevent gcc warnings.
19591
19592 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19593 * w32proc.c: Include <config.h>.
19594
19595 2002-01-01 Andreas Schwab <schwab@suse.de>
19596
19597 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19598 not EMACS_INT, to make them compatible with DEFVAR_INT.
19599 * lisp.h (max_specpdl_size): Adjust declaration.
19600
19601 2002-01-01 Richard M. Stallman <rms@gnu.org>
19602
19603 * print.c (print_object): Test print_escape_nonascii only for
19604 unibyte strings.
19605 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19606 when outputting to a multibyte buffer.
19607
19608 2001-12-29 Richard M. Stallman <rms@gnu.org>
19609
19610 * print.c (print_object): In multibyte string, use hex escapes.
19611 Use octal only for unibyte strings.
19612 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19613
19614 * lread.c (read_escape): New arg BYTEREP for reporting whether
19615 escape forces unibyte or multibyte.
19616 (read1): When reading a string, take note of that info.
19617
19618 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19619
19620 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19621 comparison to test lisp value returned by Fget.
19622
19623 2001-12-29 Richard M. Stallman <rms@gnu.org>
19624
19625 * lisp.h (max_specpdl_size): Add declaration.
19626
19627 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19628
19629 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19630 Handle modifier bits. Correct typo in error message.
19631
19632 2001-12-28 Richard M. Stallman <rms@gnu.org>
19633
19634 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19635 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19636 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19637 Update calls to Fdefine_abbrev.
19638 (write_abbrev): Update for changed data format.
19639 Don't list "system" abbrevs.
19640 (Fexpand_abbrev): Update use count with new data format.
19641 (describe_abbrev): Update for changed data format.
19642 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19643
19644 * config.in (HAVE_MBSINIT): Add #undef.
19645
19646 * strftime.c (mbsinit): Define as no-op if not available.
19647
19648 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19649 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19650
19651 * keymap.c (Flookup_key): Error message if key has wrong data type.
19652 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19653 (exclude_key): New variable.
19654
19655 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19656
19657 * xterm.c (x_setup_relief_colors): Don't compute an image's
19658 background color if it doesn't have a Pixmap.
19659
19660 * xterm.c (notice_overwritten_cursor): Don't depend on
19661 output_cursor and updated_area. Compare pixel coordinates with
19662 window's cursor pixel coordinates.
19663 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19664 Call notice_overwritten_cursor with new arg list.
19665 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19666 unconditionally.
19667
19668 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19669 height of the cursor line to the amount to scroll.
19670
19671 2001-12-27 Richard M. Stallman <rms@gnu.org>
19672
19673 * intervals.c (set_point_both): The position after an invisible,
19674 intangible character is not an acceptable stopping point.
19675
19676 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19677
19678 * window.c (enlarge_window): In new preserve_before code, convert
19679 CURBEG from lisp object to integer before doing arithmetic.
19680
19681 2001-12-27 Richard M. Stallman <rms@gnu.org>
19682
19683 * bytecode.c (Fbyte_code): Undo previous change.
19684
19685 2001-12-26 Kim F. Storm <storm@cua.dk>
19686
19687 * keyboard.c (record_char): Ignore duplicate help-echo events only
19688 separated by mouse-movement. When tracking mouse, only record
19689 first and last mouse-movement event in same window.
19690 Don't record mouse-movement events in keyboard macros.
19691
19692 2001-12-25 Richard M. Stallman <rms@gnu.org>
19693
19694 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19695 (Fenlarge_window): New arg PRESERVE_BEFORE.
19696
19697 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19698 instead of Fstring_as_unibyte.
19699
19700 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19701
19702 The following changes remove mocklisp support:
19703
19704 * mocklisp.h, mocklisp.c: Files removed.
19705
19706 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19707 `Qmocklisp' and `Qmocklisp_arguments'.
19708 Remove prototype of syms_of_mocklisp.
19709
19710 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19711
19712 * callint.c: Do not include mocklisp.h.
19713 (Fcall_interactively): Do not test for mocklisp case.
19714
19715 * eval.c: Remove variables `Qmocklisp_arguments',
19716 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19717 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19718 Do not test for mocklisp case.
19719 (Fwhile): Remove unused variable `tem'.
19720 (syms_of_eval): Remove variable `moclisp-arguments'.
19721
19722 * data.c (wrong_type_argument): Remove mocklisp case.
19723
19724 * doc.c (Fdocumentation): Remove mocklisp case.
19725
19726 * emacs.c (main): Do not call syms_of_mocklisp.
19727
19728 2001-12-21 Richard M. Stallman <rms@gnu.org>
19729
19730 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19731 to the left or to the right of the pointer, put it against
19732 the left screen edge.
19733
19734 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19735
19736 * Makefile.in (distclean): Remove .gdbinit if we are building
19737 outside the source tree.
19738
19739 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19740
19741 * w32.c (emacs_root_dir): New function.
19742
19743 * msdos.c (emacs_root_dir): New function.
19744
19745 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19746 of the current drive as the fallback for default_directory.
19747
19748 * dired.c (file_name_completion): Run the elements of
19749 completion-ignored-extensions through ENCODE_FILE.
19750
19751 * lisp.h (scmp): Remove prototype, since it's now a static
19752 function private to dired.c.
19753
19754 2001-12-18 Richard M. Stallman <rms@gnu.org>
19755
19756 * dired.c (scmp): Function moved from minibuf.c.
19757 Delete multibyte handling--used only on encoded strings.
19758
19759 * minibuf.c (scmp): Function moved to dired.c.
19760
19761 * fns.c (merge): Add QUIT call.
19762
19763 2001-12-18 Dave Love <fx@gnu.org>
19764
19765 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19766 language/georgian.el.
19767
19768 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19769
19770 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19771 lisp/Makefile.in:DONTCOMPILE.
19772
19773 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19774
19775 * xdisp.c (window_box_height): Do not return negative values.
19776 From Gerd Moellmann <gerd@gnu.org>.
19777
19778 * keyboard.c (head_table): Add missing braces around initializer.
19779
19780 * term.c (keys): Likewise.
19781
19782 * xfns.c (x_frame_parms, visual_classes): Likewise.
19783
19784 2001-12-17 Sam Steingold <sds@gnu.org>
19785
19786 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19787 patch (COMPOSING_P, not COMPOSING).
19788
19789 2001-12-17 Richard M. Stallman <rms@gnu.org>
19790
19791 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19792
19793 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19794 before calling decode_coding.
19795
19796 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19797
19798 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19799 instead of only for COMPOSITION_DISABLED.
19800
19801 2001-12-16 Richard M. Stallman <rms@gnu.org>
19802
19803 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19804
19805 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19806
19807 * buffer.h (struct buffer): New field `display_error_modiff'.
19808 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19809
19810 * window.c (Frecenter): Clear display_error_modiff field.
19811
19812 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19813 Call redisplay_window, but not if display_error_modiff field says no.
19814 (redisplay_window_error): New function.
19815 (displayed_buffer): New variable.
19816 (redisplay_internal, redisplay_windows): Call the new functions
19817 instead of redisplay_window directly.
19818
19819 2001-12-15 Richard M. Stallman <rms@gnu.org>
19820
19821 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19822
19823 2001-12-14 Andrew Innes <andrewi@gnu.org>
19824
19825 * makefile.w32-in (EMACSLOADPATH): Define.
19826 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19827 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19828
19829 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19830
19831 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19832 parameter have a numeric value all the time.
19833
19834 * w32fns.c (x_report_frame_params): Likewise.
19835
19836 2001-12-12 Richard M. Stallman <rms@gnu.org>
19837
19838 * fileio.c (Fwrite_region): Doc fix.
19839
19840 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19841 (redisplay_internal): Call clear_image_cache only for window terminals.
19842
19843 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19844
19845 * xdisp.c (move_it_vertically_backward): Change heuristic
19846 for the case that we didn't move far enough initially.
19847
19848 * window.c (Frecenter): Simplify computation in the case of window
19849 system frames and ARG < 0; use window_box_height.
19850
19851 2001-12-11 Richard M. Stallman <rms@gnu.org>
19852
19853 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19854 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19855
19856 2001-12-11 Andrew Innes <andrewi@gnu.org>
19857
19858 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19859 arg is negative.
19860
19861 2001-12-11 Richard M. Stallman <rms@gnu.org>
19862
19863 * m/hp800.h: Split the __hpux conditional into the parts
19864 that are right for GNU/Linux too and the parts that are not.
19865 Use the former if GNU_LINUX.
19866 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19867
19868 * s/gnu-linux.h (GNU_LINUX): Defined.
19869
19870 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19871
19872 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19873 `new style' [w/`doc:' keyword].
19874
19875 2001-12-10 Jason Rumney <jasonr@gnu.org>
19876
19877 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19878 before using.
19879
19880 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19881
19882 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19883 keyword].
19884
19885 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19886
19887 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19888
19889 * s/hpux10.h (srand48): Don't undefine.
19890
19891 2001-12-09 Jason Rumney <jasonr@gnu.org>
19892
19893 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19894 Add comment to explain where the struct came from.
19895 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19896 (add_menu_item): Process pop-up menus first to avoid memory leak.
19897 (add_menu_item, w32_menu_display_help): Use `help' field as
19898 Lisp_Object.
19899 (w32_free_submenu_strings): Only free owner-drawn strings.
19900
19901 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19902
19903 * COPYING: Moved back.
19904
19905 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19906 Add parentheses around && within ||.
19907
19908 * indent.c (compute_motion): Likewise.
19909
19910 * intervals.c (merge_properties_sticky): Likewise.
19911
19912 * coding.c (setup_coding_system, shrink_encoding_region)
19913 (Fdecode_sjis_char): Likewise.
19914
19915 2001-12-07 Andreas Schwab <schwab@suse.de>
19916
19917 * xdisp.c (display_mode_element): Don't read past end of string if
19918 it ends with '%'.
19919
19920 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19921 can hold.
19922
19923 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19924 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19925 type changed to Lisp_Object.
19926 (syms_of_data): DEFVAR_LISP them.
19927
19928 2001-12-07 Richard M. Stallman <rms@gnu.org>
19929
19930 * callproc.c (init_callproc): Set Vdata_directory based on the source
19931 location whenever Emacs was run uninstalled.
19932
19933 2001-12-06 Paul Eggert <eggert@twinsun.com>
19934
19935 * config.in (HAVE_WORKING_VFORK): New #undefs.
19936 * process.c (create_process):
19937 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19938 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19939 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19940 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19941 * m/intel386.h (HAVE_VFORK): Likewise.
19942 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19943 * m/mips.h (HAVE_VFORK): Likewise.
19944 * s/freebsd.h (vfork): Remove #define.
19945 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19946 * s/usg5-4-2.h: Fix comment about vfork.
19947
19948 2001-12-06 Richard M. Stallman <rms@gnu.org>
19949
19950 * s/hpux10.h (random): Add undef.
19951 (HAVE_RANDOM): Define it just once.
19952
19953 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19954
19955 * eval.c: Undo last change: the standard syntax is not wanted.
19956
19957 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19958
19959 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19960 scroll bars of the frame before deleting the frame itself. If the
19961 frame has a widget, delete the frame with XtDestroyWidget, and do
19962 not call XDestroyWindow before that.
19963
19964 2001-12-06 Kim F. Storm <storm@cua.dk>
19965
19966 * xfns.c (x_report_frame_params): Return actual fringe widths.
19967
19968 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19969
19970 2001-12-05 Andrew Innes <andrewi@gnu.org>
19971
19972 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19973 excessively large.
19974
19975 * insdel.c (make_gap_larger): New function.
19976 (make_gap_smaller): New function.
19977 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19978 Call make_gap_smaller if arg is negative.
19979
19980 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19981
19982 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19983 Pass a dummy argument when calling interrupt_signal.
19984 (parse_menu_item): Mark disabled items before checking for empty def.
19985 (read_char_minibuf_menu_prompt): Make safety more visible.
19986 (read_key_sequence): Add a `first_unbound' variable.
19987 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19988 unbound prefix as soon as we can detect it.
19989
19990 * doc.c (Fsnarf_documentation): Add prototype.
19991 (get_doc_string): Handle negative arguments.
19992 (Fdocumentation): Use AREF and ASIZE.
19993 Move the calls to get_doc_string to a single place.
19994 Don't confuse an interactive-spec for a docstring reference.
19995 (Fdocumentation_property): Take advantage of the fact that
19996 get_doc_string now ignores the sign of the docstring position.
19997
19998 * eval.c: Use standard syntax for usage in docstrings.
19999
20000 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20001
20002 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20003
20004 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20005
20006 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20007 constant when the value of `tool_bar_button_relief' is negative.
20008
20009 2001-12-02 Richard M. Stallman <rms@gnu.org>
20010
20011 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20012 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20013
20014 * fileio.c (read_non_regular): Delete Fsignal call.
20015
20016 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20017
20018 * lisp.h (run_hook_list_with_args): Undo last change.
20019
20020 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20021
20022 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20023
20024 2001-12-01 Jason Rumney <jasonr@gnu.org>
20025
20026 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20027
20028 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20029 [!WM_MOUSELEAVE]: Define.
20030
20031 * w32menu.c (current_popup_menu, get_menu_item_info):
20032 (set_menu_item_info): New vars.
20033 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20034 (w32_menu_show): Set current_popup_menu.
20035 (add_menu_item): Allocate new strings for owner-drawn menu items
20036 and help strings.
20037 Use owner-draw for disabled menu items again.
20038 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20039 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20040
20041 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20042 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20043 <WM_EXITMENULOOP>: Free menu strings.
20044 <WM_MOUSELEAVE>: Stop tracking mouse.
20045 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20046
20047 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20048 and mouse face.
20049
20050 2001-12-01 Kim F. Storm <storm@cua.dk>
20051
20052 The following changes add left-fringe and right-fringe
20053 frame parameters to adjust fringe widths, or remove one or
20054 both fringes.
20055
20056 * frame.h (struct frame): Remove trunc_area_pixel_width and
20057 trunc_area_cols fields.
20058 (Qleft_fringe, Qright_fringe): Declare.
20059 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20060
20061 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20062 (syms_of_frame): Initialize them.
20063
20064 * window.c (coordinates_in_window): Handle separate left and right
20065 fringe widths.
20066
20067 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20068 and fringe_cols fields.
20069 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20070 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20071 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20072 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20073 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20074 (x_compute_fringe_widths): Add prototype.
20075
20076 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20077 fill fringe evenly with small dashes.
20078 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20079 clip the new ZV bitmap to avoid jitter between rows.
20080 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20081 background. Don't draw fringe bitmaps if fringe width is zero.
20082 (x_compute_fringe_widths): New function.
20083 (x_new_font, x_set_window_size_1): Use it.
20084
20085 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20086 (x_set_frame_parameters): Process `font' parameter before other
20087 parameters as fringe widths depend on it.
20088 (x_set_fringe_width): New function.
20089 (x_figure_window_size): Use x_compute_fringe_widths.
20090 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20091 parameters.
20092
20093 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20094 (EmacsFrameSetCharSize): Ditto.
20095
20096 * w32term.h: Merged changes from xterm.h.
20097 * w32term.c: Merged changes from xterm.c.
20098 * w32fns.c: Merged changes from xfns.c.
20099
20100 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20101
20102 * COPYING: Removed.
20103
20104 2001-11-29 Dave Love <fx@gnu.org>
20105
20106 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20107 extra extra slot.
20108 (detect_coding_mask): Fix call of detect_coding_iso2022.
20109
20110 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20111
20112 * fileio.c (file-name-coding-system)
20113 (default-file-name-coding-system): Doc fix (links to referenced
20114 variables added).
20115
20116 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20117
20118 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20119 Add dummy uses of gcproN variables.
20120
20121 * category.c (describe_category, describe_category_1)
20122 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20123 (syms_of_category): Don't defsubr Sdescribe_categories.
20124
20125 2001-11-28 Richard M. Stallman <rms@gnu.org>
20126
20127 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20128
20129 * Makefile.in (lispdir): New variable, referring to build dir.
20130 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20131
20132 2001-11-28 Andrew Innes <andrewi@gnu.org>
20133
20134 * w32menu.c (w32_menu_display_help): Actually add the new argument
20135 OWNER.
20136
20137 2001-11-28 Jason Rumney <jasonr@gnu.org>
20138
20139 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20140 menu items. From David Ponce <dponce@wanadoo.fr>.
20141 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20142 conditionally.
20143 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20144 help event in the owner frame's keyboard buffer.
20145
20146 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20147 (Fx_show_tip): Don't subtract last width from row width.
20148
20149 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20150 (w32_read_socket): Use EQ to compare frames.
20151
20152 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20153
20154 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20155 OVERLAPS_P.
20156
20157 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20158
20159 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20160 `gcpro3' and `gcpro4'.
20161
20162 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20163
20164 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20165
20166 * ccl.c: Use AREF and ASIZE.
20167
20168 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20169
20170 * lisp.h (run_hook_list_with_args): Remove.
20171 (LIST_END_P): Fix call to wrong_type_argument.
20172 (make_fixnum_or_float): Use EMACS_INT rather than int.
20173
20174 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20175
20176 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20177 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20178
20179 * eval.c: Use AREF and ASIZE.
20180 (Ffetch_bytecode): Add the file name to the error message.
20181
20182 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20183 which match the end of the file-name.
20184 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20185 is not a valid env var, but leave it as is instead.
20186
20187 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20188 Make nil bindings in char-tables transparent.
20189 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20190
20191 2001-11-26 Richard M. Stallman <rms@gnu.org>
20192
20193 * textprop.c (set_text_properties_1): Allow START, END in either order.
20194 Do nothing if range is empty.
20195
20196 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20197
20198 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20199 (clean): Not here.
20200
20201 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20202
20203 * textprop.c (set_text_properties_1): Clearly mark that the
20204 interval should not be empty.
20205
20206 * intervals.c (graft_intervals_into_buffer):
20207 Don't call set_text_properties_1 on an empty interval.
20208
20209 2001-11-25 Richard M. Stallman <rms@gnu.org>
20210
20211 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20212
20213 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20214 don't lose the data in it.
20215
20216 2001-11-25 Juanma Barranquero <lektu@terra.es>
20217
20218 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20219
20220 * buffer.c (Fkill_buffer): Likewise.
20221
20222 * print.c (temp_output_buffer_setup): Likewise.
20223
20224 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20225
20226 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20227
20228 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20229
20230 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20231 Niemitalo <kon@iki.fi>.
20232
20233 2001-11-25 Jason Rumney <jasonr@gnu.org>
20234
20235 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20236
20237 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20238 (Fx_show_tip): Block input during frame creation.
20239 (Fx_show_tip, Fx_hide_tip): Enable.
20240
20241 2001-11-24 Richard M. Stallman <rms@gnu.org>
20242
20243 * lread.c (Fload): Detect recursive load error for more than 3
20244 nestings of the same file.
20245 (Vrecursive_load_depth_limit): Variable deleted.
20246 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20247
20248 2001-11-24 Jason Rumney <jasonr@gnu.org>
20249
20250 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20251 mouse position if either left or top is not specified.
20252
20253 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20254 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20255 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20256 (my_create_tip_window): Assign tip_window.
20257 (x_create_tip_frame): Use same defaults as X.
20258 (compute_tip_xy): Remove unused variable. Use full screen width.
20259 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20260
20261 * w32term.c (x_after_update_window_line): Doc fix.
20262 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20263 frames.
20264 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20265
20266 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20267 for all Windowed systems.
20268
20269 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20270
20271 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20272 realized, use the initial screen colors to clear the screen.
20273
20274 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20275
20276 * textprop.c (Fset_text_properties): Remove unused variables
20277 `unchanged', `prev_changed', `s' and `len'.
20278
20279 * search.c (Freplace_match): Remove unused variable `inslen'.
20280
20281 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20282
20283 2001-11-22 Jason Rumney <jasonr@gnu.org>
20284
20285 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20286 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20287 (my_create_tip_window): New function.
20288 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20289 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20290
20291 2001-11-20 Jason Rumney <jasonr@gnu.org>
20292
20293 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20294 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20295
20296 * w32fns.c (Vw32_system_coding_system): Remove.
20297 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20298
20299 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20300
20301 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20302 after build_annotations.
20303
20304 * syntax.c (describe_syntax): Add dummy arg.
20305 (describe_syntax_1): Update call to describe_vector.
20306
20307 * category.c (describe_category): Add dummy arg.
20308 (describe_category_1): Update call to describe_vector.
20309
20310 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20311 (describe_command, describe_translation): Add dummy second param.
20312 (describe_map): Call elt_describer with two arguments.
20313 (describe_vector_princ): Add `fun' parameter.
20314 Call it instead of the hardcoded `princ'.
20315 (describe_vector): Add arg `args'.
20316 Pass it as a new second argument to elt_describer.
20317
20318 * keymap.h (describe_vector): Update prototype.
20319
20320 * frame.c: Don't include keymap.h any more.
20321 (keys_of_frame): Remove.
20322
20323 * lisp.h (keys_of_frame): Remove declaration.
20324
20325 * emacs.c (main): Don't call `keys_of_frame' any more.
20326
20327 2001-11-14 Andreas Schwab <schwab@suse.de>
20328
20329 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20330 if defined, 0 otherwise.
20331 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20332 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20333
20334 2001-11-19 Richard M. Stallman <rms@gnu.org>
20335
20336 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20337
20338 2001-11-18 Jason Rumney <jasonr@gnu.org>
20339
20340 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20341 (x_draw_bar_cursor): If the background color of the glyph under
20342 the cursor equals the frame's cursor color, use the glyph's
20343 foreground color for drawing the bar cursor.
20344 (x_after_update_window_line): Clear internal border in different
20345 circumstances.
20346 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20347 (w32_draw_relief_rect): Correct relief by 1 pixel.
20348 (x_set_glyph_string_background_width):
20349 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20350 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20351 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20352 if cursor_in_non_selected_windows is false.
20353 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20354 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20355 Notice if cursor gets overwritten.
20356 (notice_overwritten_cursor): Renamed from
20357 note_overwritten_text_cursor. Rewritten to take glyph widths
20358 into account, and to take X positions as parameters.
20359 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20360 around call to x_draw_glyphs.
20361 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20362 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20363 color to use for image glyph reliefs.
20364 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20365 (glyph_rect): Remove unused variable `area'.
20366
20367 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20368 some items.
20369 (x_set_internal_border_width): Set frame garbaged when window
20370 doesn't exist yet.
20371 (Fx_create_frame): Accept zero tool_bar_button_relief.
20372 (x_clear_image_1, four_corners_best, image_background)
20373 (image_background_transparent): New functions.
20374 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20375 (gs_format): Add `:background' entry.
20376 (lookup_image): Set IMG's background color if specified.
20377 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20378 when appropriate.
20379 (x_clear_image_1): Reset `background_valid' and
20380 `background_transparent_valid' fields.
20381 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20382 calculating it here. Set IMG's background_transparent field.
20383 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20384 (enum png_keyword_index): Add PNG_BACKGROUND.
20385 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20386 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20387 (enum gif_keyword_index): Add GIF_BACKGROUND.
20388 (enum gs_keyword_index): Add GS_BACKGROUND.
20389 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20390 Pre-calculate image background color where necessary.
20391 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20392 Use display info's n_cbits entry for screen depth.
20393 (Fx_show_tip): Remove unused variables `buffer', `top',
20394 `left', `max_width' and `max_height'.
20395
20396 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20397
20398 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20399
20400 * puresize.h (BASE_PURESIZE): Increase to 750000.
20401
20402 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20403
20404 * frame.c (Fframe_live_p): Doc fix.
20405
20406 2001-11-18 Richard M. Stallman <rms@gnu.org>
20407
20408 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20409 (message_dolog_marker3): New static variables hold three markers.
20410 (syms_of_xdisp): Initialize and staticpro them.
20411 (message_dolog): Use message_dolog_marker1..3 instead of
20412 allocating markers each time. Unchain them when done.
20413
20414 2001-11-17 Richard M. Stallman <rms@gnu.org>
20415
20416 * doc.c (Fsnarf_documentation): Doc fix.
20417
20418 2001-11-17 Andreas Schwab <schwab@suse.de>
20419
20420 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20421
20422 2001-11-17 Richard M. Stallman <rms@gnu.org>
20423
20424 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20425
20426 2001-11-17 Jason Rumney <jasonr@gnu.org>
20427
20428 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20429
20430 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20431
20432 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20433 with invalid position.
20434
20435 2001-11-16 Richard M. Stallman <rms@gnu.org>
20436
20437 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20438
20439 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20440 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20441 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20442
20443 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20444
20445 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20446
20447 * fileio.c (build_annotations): Split off the tail.
20448 (build_annotations_2): New fun. Extracted from build_annotations.
20449 (Fwrite_region): Split the call to build_annotations into two
20450 calls to build_annotations and build_annotations_2.
20451
20452 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20453
20454 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20455 clear_waiting_for_input with argument.
20456
20457 * xterm.h (x_update_cursor): Remove duplicated prototype.
20458
20459 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20460
20461 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20462
20463 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20464
20465 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20466
20467 * fileio.c (choose_write_coding_system): New fun, extracted
20468 from Fwrite_region.
20469 (Fwrite_region): Use it.
20470
20471 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20472 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20473 (ml_apply, find_handler_clause): Add prototype.
20474
20475 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20476
20477 * config.in: Add #undef HAVE_COFF_H.
20478
20479 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20480 Required for ISC 4.1.
20481
20482 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20483
20484 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20485 Andrew Wiseman <a.wiseman@btclick.com>.
20486
20487 2001-11-16 Kim F. Storm <storm@cua.dk>
20488
20489 The following changes are made to clean up the various internal
20490 references to the fringes to actually use the term `fringe' for
20491 them. Previously, they were called `flags areas', `bitmap areas',
20492 `left/right side of windows', or implicitly as `flags' or
20493 `bitmaps':
20494
20495 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20496 Comments fixed. Use renamed symbols.
20497
20498 * dispnew.c: Comment fix. Use renamed symbols.
20499
20500 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20501 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20502 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20503
20504 * msdos.c: Comment fix.
20505
20506 * w32fns.c: Use renamed symbols.
20507
20508 * w32term.c: Comment fixes. Use renamed symbols.
20509 (fringe_bitmap_type): Renamed from bitmap_type.
20510 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20511 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20512 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20513
20514 * w32term.h: Comment fixes. Use renamed symbols.
20515 (fringes_extra): Renamed from flags_areas_extra.
20516 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20517 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20518 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20519 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20520 (FRAME_X_LEFT_FRINGE_WIDTH):
20521 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20522 (FRAME_X_RIGHT_FRINGE_WIDTH):
20523 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20524
20525 * widget.c: Use renamed symbols.
20526
20527 * window.c: Comment fixes. Use renamed symbols.
20528 (coordinates-in-window-p): Doc fix.
20529
20530 * xdisp.c: Comment fixes. Use renamed symbols.
20531
20532 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20533
20534 * xfns.c: Use renamed symbols.
20535
20536 * xterm.c: Comment fixes. Use renamed symbols.
20537 (fringe_bitmap_type): Renamed from bitmap_type.
20538 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20539 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20540 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20541
20542 * xterm.h: Comment fixes. Use renamed symbols.
20543 (fringes_extra): Renamed from flags_areas_extra.
20544 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20545 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20546 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20547 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20548 (FRAME_X_LEFT_FRINGE_WIDTH):
20549 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20550 (FRAME_X_RIGHT_FRINGE_WIDTH):
20551 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20552
20553 2001-11-15 Jason Rumney <jasonr@gnu.org>
20554
20555 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20556 work for most menu items. From David Ponce
20557 <david.ponce@wanadoo.fr>.
20558
20559 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20560
20561 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20562 Some x_set_* function expect to be called even if old and new
20563 value are equal.
20564
20565 * xdisp.c (build_desired_tool_bar_string): Accept zero
20566 tool_bar_button_relief.
20567
20568 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20569
20570 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20571
20572 * xterm.c (x_draw_bar_cursor): If the background color of the
20573 glyph under the cursor equals the frame's cursor color, use
20574 the glyph's foreground color for drawing the bar cursor.
20575
20576 * dispnew.c (direct_output_forward_char): Fix character/byte
20577 position comparison.
20578
20579 2001-11-15 Miles Bader <miles@gnu.org>
20580
20581 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20582 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20583 Update arguments to find_field.
20584 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20585 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20586 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20587 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20588
20589 2001-11-14 Richard M. Stallman <rms@gnu.org>
20590
20591 * editfns.c (Fpropertize): Allow call with 1 arg.
20592
20593 * dispextern.h (image_background, image_background_transparent):
20594 Conditionalize on HAVE_X_WINDOWS.
20595
20596 2001-11-13 Richard M. Stallman <rms@gnu.org>
20597
20598 * print.c (Fprin1_to_string): Doc fix.
20599
20600 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20601
20602 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20603
20604 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20605
20606 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20607
20608 * eval.c (syms_of_eval): Doc fix.
20609
20610 * coding.c (syms_of_coding): Doc fix.
20611
20612 * doc.c (Fsnarf_documentation): Doc fix.
20613
20614 * dispnew.c (syms_of_display): Doc fix.
20615
20616 * category.c (Fget_unused_category): Doc fix.
20617
20618 * buffer.c (syms_of_buffer): Doc fixes.
20619
20620 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20621
20622 * print.c (prin1, print): Doc fix.
20623
20624 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20625
20626 * fontset.h: Remove declarations of variables
20627 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20628
20629 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20630 `Vclip_large_size_font'.
20631
20632 2001-11-13 Jason Rumney <jasonr@gnu.org>
20633
20634 * w32fns.c: Doc fix.
20635
20636 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20637
20638 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20639
20640 * fns.c: Doc fix.
20641
20642 * emacs.c: Doc fix.
20643
20644 * coding.c: Doc fix.
20645
20646 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20647 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20648 `new style' [w/`doc:' keyword].
20649
20650 2001-11-12 Richard M. Stallman <rms@gnu.org>
20651
20652 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20653 LeaveNotify events. Only FocusIn and FocusOut do that now.
20654 (x_display_and_set_cursor): Do display hollow cursors in active
20655 minibuffer windows when they are not selected.
20656
20657 2001-11-12 Jason Rumney <jasonr@gnu.org>
20658
20659 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20660 * w32term.c: Change doc-string comments to `new style'
20661 [w/`doc:' keyword]. Doc fixes.
20662
20663 * w32fns.c: Don't define max.
20664 (Fx_open_connection): Only execute once.
20665
20666 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20667
20668 * ccl.c: Change macros to use do-while block instead of if-else.
20669 Use braces to follow GNU Coding Standards.
20670
20671 2001-11-11 Richard M. Stallman <rms@gnu.org>
20672
20673 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20674
20675 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20676
20677 * insdel.c (replace_range): Use adjust_markers_for_replace
20678 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20679
20680 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20681
20682 * textprop.c (set_text_properties_1): New subroutine
20683 broken out of set_text_properties.
20684 (set_text_properties): Use set_text_properties_1.
20685
20686 * intervals.c (graft_intervals_into_buffer):
20687 Use set_text_properties_1 to clear out properties.
20688
20689 * search.c (Freplace_match): Use replace_range to insert
20690 and delete. Don't request property inheritance from
20691 surrounding text.
20692
20693 2001-11-10 Jason Rumney <jasonr@gnu.org>
20694
20695 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20696 vertical fonts. Allow them if face name is explicitly specified.
20697 Do not give up if we find a font that cannot be converted to an xlfd.
20698
20699 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20700
20701 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20702 instead of malloc/free.
20703
20704 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20705
20706 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20707 Coding Standards.
20708 (Finternal_set_lisp_face_attribute): Likewise.
20709
20710 * buffer.c (Fbury_buffer): Likewise.
20711
20712 * indent.c (current_column_1): Remove unused variable `prev_col'.
20713
20714 * coding.c (encode_coding): Use precomputed value of `src'.
20715 (encode_coding): Remove unused variable `src_end'.
20716 (code_convert_region): Remove unused variables `count'.
20717
20718 2001-11-07 Jason Rumney <jasonr@gnu.org>
20719
20720 * w32term.c (x_display_and_set_cursor): Do not move system caret
20721 if cursor_glyph is NULL.
20722
20723 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20724
20725 * keymap.c (access_keymap): Fix compilation error.
20726
20727 2001-11-07 Miles Bader <miles@gnu.org>
20728
20729 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20730
20731 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20732
20733 * intervals.c (graft_intervals_into_buffer):
20734 Remove #ifdef'd-out code.
20735 (graft_intervals_into_buffer): Remove unused variable `middle'.
20736
20737 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20738 code (eval-current-buffer).
20739 Change doc-string comments to `new style' [w/`doc:' keyword].
20740
20741 2001-11-06 Richard M. Stallman <rms@gnu.org>
20742
20743 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20744
20745 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20746
20747 * lread.c (read1): Fix behavior with nested backquoting.
20748
20749 * keyboard.c (make_lispy_event): Check integerness and fix
20750 Lisp_Object/int mixup.
20751
20752 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20753
20754 * fns.c (copy_hash_table): Remove unused variable `v'.
20755
20756 * fontset.c (fontset_font_pattern): Remove unused variable
20757 `family_registry'.
20758
20759 * indent.c (current_column_1): Remove unused variable `prev_col'.
20760
20761 2001-11-05 Richard M. Stallman <rms@gnu.org>
20762
20763 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20764
20765 * buffer.c (Fkill_buffer): Don't delete auto save file
20766 if buffer is modified.
20767
20768 2001-11-05 Andrew Innes <andrewi@gnu.org>
20769
20770 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20771 CHECK_NUMBER_CDR.
20772
20773 2001-11-05 Richard M. Stallman <rms@gnu.org>
20774
20775 * unexelf.c (unexec): Minor changes; clean up comments.
20776
20777 2001-11-05 Sam Steingold <sds@gnu.org>
20778
20779 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20780
20781 2001-11-05 Andreas Schwab <schwab@suse.de>
20782
20783 * sound.c (sound_perror): Save errno from being clobbered.
20784
20785 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20786
20787 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20788 the program image directly.
20789
20790 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20791
20792 * buffer.h (Fbuffer_local_value): Add prototype.
20793
20794 2001-11-04 Richard M. Stallman <rms@gnu.org>
20795
20796 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20797 and CHECK_BUFFER.
20798
20799 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20800 (record_char): Likewise.
20801
20802 * keyboard.c (make_lispy_event): Don't insist a drag event must
20803 move to a different buffer position. Instead, check for moving at
20804 least double_click_fuzz.
20805
20806 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20807
20808 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20809
20810 * indent.c (current_column_1, Fmove_to_column): Separate the code
20811 for display-table glyphs from the code for buffer text, to fix
20812 bugs in the former.
20813
20814 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20815
20816 * buffer.c (Fbuffer_local_value): New function.
20817 (syms_of_buffer): Defsubr it.
20818
20819 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20820 value of `cursor-in-non-selected-windows'.
20821
20822 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20823 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20824 (syms_of_xdisp): Initialize it.
20825
20826 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20827
20828 * xfns.c (Fx_create_frame): Doc fix.
20829
20830 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20831 keyword].
20832
20833 * eval.c (top_level_value, top_level_set): Remove commented and
20834 #ifdef'd-out code.
20835 (Fdefvar): Fix usage in doc-string.
20836
20837 2001-11-03 Richard M. Stallman <rms@gnu.org>
20838
20839 * xfns.c: Include unistd.h, if it exists.
20840
20841 * editfns.c: Move the include of ctype.h after unistd.h.
20842
20843 * gmalloc.c: Test BROKEN_PROTOTYPES.
20844
20845 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20846
20847 * lisp.h (CHECK_STRING_CAR): New macro.
20848 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20849 treating XCAR and XCDR as lvalues.
20850 (openp): Use CHECK_STRING_CAR.
20851 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20852
20853 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20854
20855 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20856 (SIGMASKTYPE): Define.
20857
20858 * syssignal.h (sigunblock): Don't define if already defined.
20859
20860 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20861
20862 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20863 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20864 Fix typos in comments.
20865
20866 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20867 and #ifdef'd-out code.
20868 Fix and reindent comments.
20869
20870 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20871
20872 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20873 argument `i' in macros.
20874
20875 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20876 `i' in macros.
20877
20878 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20879 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20880 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20881 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20882 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20883 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20884 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20885 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20886 in macros.
20887
20888 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20889 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20890 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20891 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20892 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20893 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20894 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20895 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20896 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20897 (remove unused second argument).
20898
20899 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20900
20901 * syntax.c (describe_syntax): New wrapper.
20902 (Finternal_describe_syntax_value): Rename from describe_syntax.
20903 Don't insert space at front and \n at the end.
20904 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20905
20906 * regex.c (re_wctype): Try to fix some warnings.
20907 (regcomp, regexec): Don't forget the __restrict.
20908
20909 2001-11-02 Richard M. Stallman <rms@gnu.org>
20910
20911 * textprop.c (Fget_char_property): Doc fix.
20912
20913 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20914
20915 * process.c (Fstart_process): Add usage to doc-string.
20916
20917 * data.c (Fsetq_default): Ditto.
20918
20919 * callint.c (Finteractive): Ditto.
20920
20921 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20922
20923 * macros.c: Don't include keymap.h any more.
20924
20925 2001-11-01 Richard M. Stallman <rms@gnu.org>
20926
20927 * data.c (Fmake_local_variable): Doc fix.
20928
20929 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20930 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20931
20932 * keymap.c (Fdescribe_buffer_bindings): Print character property
20933 bindings along with or instead of the buffer local map.
20934 Make the overriding maps override what they should.
20935
20936 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20937
20938 * window.c (grow_mini_window): Fix typo in comment.
20939
20940 2001-11-01 Gerd Moellmann <gerd@gnu.org>
20941
20942 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20943 (XTset_vertical_scroll_bar): Likewise.
20944
20945 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20946 instead of IMAGE_BACKGROUND.
20947
20948 * xfns.c (four_corners_best): Reindent.
20949
20950 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20951 Handle :box so that it is possible to specify sexprs.
20952
20953 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20954
20955 * s/hpux11.h: New file.
20956
20957 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20958
20959 * emacs.c (USAGE1): Show command line option --no-window-system
20960 instead of --no-windows in usage.
20961 (standard_args): Rename --no-windows to --no-window-system.
20962 (bug_reporting_address): Follow Emacs coding conventions.
20963
20964 * eval.c (Fcommandp): Doc fix.
20965 Change doc-string comments to `new style' [w/`doc:' keyword].
20966
20967 * frame.c (Fframe_live_p): Doc fix.
20968
20969 * buffer.c (selective-display-ellipses): Doc fix.
20970
20971 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20972
20973 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20974
20975 * xfaces.c (realize_x_face): If C is not a single-byte character,
20976 set the face's colors_copied_bitwise_p instead of the defaulted_p
20977 members which have a different meaning.
20978 (free_face_colors): Do nothing for a face whose colors have been
20979 copied bitwise.
20980
20981 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20982
20983 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20984
20985 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20986 [w/`doc:' keyword].
20987
20988 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20989
20990 * fns.c (require_unwind): Return Lisp_Object.
20991
20992 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20993
20994 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20995 (last-input-char): Revert doc-string to be the same as the
20996 doc-string of `last-input-event'.
20997
20998 * xdisp.c: Fix typos in comments.
20999
21000 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21001
21002 * window.c (grow_mini_window): Handle case that the root
21003 window is already smaller than the nominal mininum height.
21004
21005 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21006
21007 * emacs.c (main): Don't call keys_of_macros any more.
21008
21009 * lisp.h (keys_of_macros): Remove.
21010
21011 * macros.c (keys_of_macros): Remove.
21012
21013 * xfaces.c (Fface_attribute_relative_p): Declare args.
21014
21015 2001-10-30 Jason Rumney <jasonr@gnu.org>
21016
21017 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21018 (enum_font_cb2): Ignore fonts with vertical orientation.
21019
21020 2001-10-30 Richard M. Stallman <rms@gnu.org>
21021
21022 * keyboard.c (Finput_pending_p): Doc fix.
21023
21024 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21025
21026 * xterm.c (x_after_update_window_line): Don't run the code
21027 clearing in borders for rows whose visible height is 0.
21028
21029 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21030 resized_p flag is set. If not set, use the much less flickering
21031 method previously used.
21032
21033 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21034
21035 * frame.h (struct frame) <resized_p>: New member.
21036
21037 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21038 as large as the number of bytes to convert.
21039
21040 * lread.c (to_multibyte): New function.
21041 (read1): Use it.
21042
21043 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21044
21045 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21046
21047 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21048
21049 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21050 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21051 if the row's fill_line_p is set and drawing the last glyph with
21052 DRAW_IMAGE_{RAISED,SUNKEN}.
21053
21054 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21055
21056 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21057
21058 * xmenu.c: Include coding.h and charset.h.
21059 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21060 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21061 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21062 Explicitly set wv->help. Use `TRUE' rather than `True'.
21063 (menu_help_callback): Use empty_string.
21064
21065 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21066 (Fx_popup_dialog): Explicitly init f.
21067 (w32_menu_display_help): Use empty_string.
21068
21069 2001-10-29 Richard M. Stallman <rms@gnu.org>
21070
21071 * fns.c (Frequire): Detect recursive try to require the same
21072 feature 3 or more levels deep, and get error.
21073 (require_unwind): New subroutine.
21074 (require_nesting_list): New variable.
21075 (syms_of_fns): Init and staticpro it.
21076
21077 * print.c (print_object): Clarify indication of insertion type.
21078
21079 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21080
21081 * coding.c (syms_of_coding): Document that locale-coding-system is
21082 used for decoding input on X.
21083
21084 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21085
21086 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21087
21088 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21089 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21090
21091 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21092
21093 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21094 use NO_CURSOR if cursor_in_non_selected_windows is false.
21095
21096 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21097 the slant attribute if FRAME is t.
21098
21099 * xfns.c (x_set_internal_border_width): Set frame garbaged
21100 when X window doesn't exist yet.
21101
21102 * xterm.c (x_after_update_window_line): Clear internal border
21103 in different circumstances.
21104
21105 * xterm.c (XTread_socket) <KeyPress>: Don't use
21106 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21107 <handa@etl.go.jp>.
21108
21109 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21110
21111 * m/ibms390.h: New file. From Adam Thornton
21112 <athornton@sinenomine.net>.
21113
21114 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21115
21116 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21117
21118 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21119 a loop counter.
21120
21121 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21122
21123 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21124
21125 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21126 keyword].
21127 Fix typos in comments.
21128
21129 * emacs.c (bug_reporting_address): New function.
21130 Use it when displaying usage message.
21131
21132 * minibuf.c (read_minibuf): Remove unused external declaration of
21133 variable `Qread_only'.
21134
21135 * keymap.c (access_keymap): Remove unused variable `charset'.
21136
21137 2001-10-28 Miles Bader <miles@gnu.org>
21138
21139 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21140 Remove #ifdef'd-out code.
21141 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21142 (syms_of_xfaces): Initialize them.
21143
21144 2001-10-27 Jason Rumney <jasonr@gnu.org>
21145
21146 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21147 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21148 position using the system caret.
21149
21150 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21151 (w32_system_caret_height, w32_system_caret_x)
21152 (w32_system_caret_y): New variables for tracking system caret.
21153 (w32_initialize): Initialize them.
21154 (x_display_and_set_cursor): Make system caret follow the active cursor.
21155
21156 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21157 New messages types.
21158
21159 * w32term.c (note_mouse_highlight): Clear old help_echo.
21160
21161 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21162
21163 * xterm.c: Fix typo in a comment.
21164
21165 * emacs.c: Fix typos in comments.
21166 Remove unnecessary spaces.
21167 Change doc-string comments to `new style' [w/`doc:' keyword].
21168 (USAGE2): Fix typos in usage string.
21169
21170 * xterm.c: Fix typo in a comment.
21171
21172 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21173 emacs.c.
21174
21175 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21176
21177 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21178 instead of 1/2 line_height in the heuristic for skipping
21179 farther backward when target_y was not reached.
21180
21181 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21182 Display errno only if non-zero.
21183 (sound_warning): New function.
21184 (vox_configure): Don't treat failing to set sample rate as error.
21185 (various places): Improve error messages.
21186
21187 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21188
21189 * fileio.c (Faccess_file): Run the argument filename through
21190 Fexpand_file_name, before using it.
21191
21192 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21193 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21194
21195 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21196
21197 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21198
21199 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21200 Fix clearing in the case of scroll bars on the right.
21201
21202 2001-10-26 Juanma Barranquero <lektu@terra.es>
21203
21204 * w32gui.h (XImage): Add a dummy typedef.
21205
21206 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21207
21208 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21209
21210 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21211
21212 * frame.c (Fframe_parameter): Fix last change.
21213
21214 * fileio.c: Revert last change (which removed old commented-out
21215 version of expand-file-name). Add a comment that explains why
21216 this old version should not be removed.
21217
21218 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21219
21220 * frame.c (Fframe_parameter): Fix a bug whereby some
21221 ``artificial'' frame parameters, like `minibuffer' were not
21222 obtained by calling Fframe_parameters.
21223
21224 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21225 cursor differently.
21226
21227 * xdisp.c (move_it_vertically_backward): Compute line height
21228 differently. Add heuristic to try to be more compatible to 20.x.
21229
21230 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21231
21232 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21233
21234 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21235 boolean.
21236
21237 2001-10-25 Miles Bader <miles@gnu.org>
21238
21239 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21240 BG is a pointer to a structure, not a structure.
21241 (gif_format, png_format): Add missing commas.
21242
21243 2001-10-24 Richard M. Stallman <rms@gnu.org>
21244
21245 * xfaces.c (Fface_attributes_as_vector): New function.
21246 (syms_of_xfaces): Defsubr it.
21247
21248 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21249
21250 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21251 variable `area'.
21252
21253 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21254
21255 * search.c (scan_newline): Remove unused variable `selective_display'.
21256
21257 2001-10-25 Miles Bader <miles@gnu.org>
21258
21259 * dispextern.h (struct image): Add `background',
21260 `background_valid', and `background_transparent' fields.
21261 (image_background, image_background_transparent): New declarations.
21262 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21263 * xfns.c (image_background, image_background_transparent)
21264 (four_corners_best): New functions.
21265 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21266 (gs_format): Add `:background' entry.
21267 (lookup_image): Set IMG's background color if specified.
21268 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21269 when appropriate.
21270 (x_clear_image_1): Reset `background_valid' and
21271 `background_transparent_valid' fields.
21272 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21273 calculating it here. Set IMG's background_transparent field.
21274 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21275 (enum png_keyword_index): Add PNG_BACKGROUND.
21276 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21277 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21278 (enum gif_keyword_index): Add GIF_BACKGROUND.
21279 (enum gs_keyword_index): Add GS_BACKGROUND.
21280 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21281 Pre-calculate image background color where necessary.
21282 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21283 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21284 color to use for image glyph reliefs.
21285
21286 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21287
21288 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21289 in full-width rows.
21290
21291 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21292 Fix clearing of area not covered by scroll bar.
21293
21294 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21295
21296 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21297 and `real_start'.
21298 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21299 (glyph_rect): Remove unused variable `area'.
21300
21301 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21302
21303 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21304
21305 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21306 (row_containing_pos): Take additional argument DY.
21307 Treat rows ending in middle of char differently.
21308 (display_line): Handle tabs on window systems differently.
21309
21310 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21311 with additional argument.
21312
21313 * dispextern.h (row_containing_pos): Adjust prototype.
21314
21315 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21316 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21317 (try_window_id, try_window_reusing_current_matrix)
21318 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21319 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21320
21321 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21322
21323 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21324 gnuemacs).
21325 (HAVE_BOXES): Fix typo in comment.
21326 (push_menu_pane): Fix typo in comment.
21327
21328 * xdisp.c (display_prop_string_p): Remove unused local declaration
21329 of `Qwhen'.
21330 (single_display_prop_string_p): Remove unused local declarations
21331 of `Qwhen' and `Qmargin'.
21332 (string_buffer_position): Remove unused variable `around'.
21333 (store_frame_title): Remove unused variable `width'.
21334
21335 * window.c: Don't define max.
21336 (coordinates_in_window): Remove unused variable `uy'.
21337
21338 * widget.c: Don't define max.
21339
21340 * process.c: Don't define max.
21341 (create_process): Remove unused variable `buffer'.
21342
21343 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21344
21345 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21346
21347 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21348
21349 * xfaces.c (Finternal_set_lisp_face_attribute)
21350 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21351 frame is on a windowed display.
21352
21353 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21354
21355 * dispnew.c (sync_window_with_frame_matrix_rows):
21356 Fix handling of windows which aren't full-width, fix handling
21357 of marginal areas.
21358
21359 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21360
21361 2001-10-23 Andreas Schwab <schwab@suse.de>
21362
21363 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21364 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21365
21366 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21367
21368 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21369 REAL_END. Notice if cursor gets overwritten.
21370 (notice_overwritten_cursor): Take X positions as parameters.
21371 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21372 around call to x_draw_glyphs.
21373
21374 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21375
21376 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21377 instead of C) and usage.
21378
21379 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21380 of C) and usage.
21381
21382 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21383 `left', `max_width' and `max_height'.
21384
21385 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21386
21387 * xdisp.c (display_line): For a tab continued to the next line,
21388 set row's ends_in_middle_of_char_p.
21389
21390 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21391
21392 * xdisp.c (display_line): Fix computation of continuation lines
21393 width for TABs.
21394
21395 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21396
21397 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21398 `Qlaplace'.
21399
21400 * fileio.c: Remove unused code.
21401
21402 2001-10-22 Miles Bader <miles@gnu.org>
21403
21404 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21405 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21406 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21407
21408 2001-10-21 Jason Rumney <jasonr@gnu.org>
21409
21410 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21411
21412 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21413
21414 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21415 (Finsert_string): Avoid the multi-line string literals warning.
21416
21417 2001-10-22 Miles Bader <miles@gnu.org>
21418
21419 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21420 (Fdocumentation): Don't use it.
21421 (syms_of_doc): Don't initialize it.
21422
21423 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21424 * print.c (Fwith_output_to_temp_buffer): Likewise.
21425 * window.c (Fsave_window_excursion): Likewise.
21426 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21427 (Fsave_restriction): Likewise.
21428 * eval.c (Frun_hooks, Frun_hook_with_args)
21429 (Frun_hook_with_args_until_failure)
21430 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21431 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21432 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21433 (Funwind_protect, Fcondition_case): Likewise.
21434 * coding.c (Ffind_operation_coding_system): Likewise.
21435 * keyboard.c (Ftrack_mouse): Likewise.
21436
21437 2001-10-21 Miles Bader <miles@gnu.org>
21438
21439 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21440 (Fmake_hash_table): Add usage: string to doc string.
21441 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21442 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21443 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21444 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21445 (Fml_prefix_argument_loop): Likewise.
21446
21447 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21448
21449 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21450
21451 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21452 style' [w/`doc:' keyword].
21453
21454 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21455 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21456 comments to `new style' [w/`doc:' keyword].
21457
21458 2001-10-21 Jason Rumney <jasonr@gnu.org>
21459
21460 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21461
21462 * w32term.c (remember_mouse_glyph): New function.
21463 (w32_mouse_position): Use it.
21464 (note_mouse_movement): If the mouse moved off the glyph, remember
21465 its new position.
21466
21467 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21468 (w32_display_info): Add mouse_face_overlay.
21469
21470 * w32term.c (notice_overwritten_cursor): Renamed from
21471 note_overwritten_text_cursor. Rewritten to take glyph widths into
21472 account.
21473 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21474 (fast_find_string_pos): New function.
21475 (fast_find_position): Return the correct vpos. Add parameter
21476 STOP. In the final row, stop before glyphs having STOP as object.
21477 Don't consider glyphs that are not from a buffer.
21478 (fast_find_position) [0]: Add a presumably more correct version
21479 for after 21.1.
21480 (expose_window_tree, expose_frame): Don't compute intersections here.
21481 (expose_window): Do it here instead.
21482 (expose_window_tree, expose_window, expose_line): Return 1 when
21483 overwriting mouse-face.
21484 (expose_window): If W is the window currently being updated, mark
21485 the frame garbaged.
21486 (expose_frame): If mouse-face was overwritten, redo it.
21487 (x_use_underline_position_properties): New variable.
21488 (syms_of_xterm): DEFVAR_BOOL it.
21489 (x_draw_glyph_string): Add comment to use it in future.
21490 (x_draw_glyph_string): Restore clipping after drawing box.
21491 Fix a computation of the underline position.
21492 (w32_get_glyph_string_clip_rect): Minor cleanup.
21493 (x_fill_stretch_glyph_string): Remove an assertion.
21494 (x_produce_glyphs): Don't convert multibyte characters
21495 to unibyte characters in unibyte buffers.
21496 (cursor_in_mouse_face_p): New function.
21497 (x_draw_stretch_glyph_string): Use it to choose a different GC
21498 when drawing a cursor within highlighted text. Don't draw
21499 background again if it has already been drawn.
21500 (x_draw_glyph_string_box): Don't draw a full-width
21501 box just because the glyph row's full_width_p flag is set.
21502 (x_draw_glyphs): Fix computation of rightmost x for
21503 full-width rows.
21504 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21505 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21506 change bottom shadow accordingly. Some cleanup.
21507 (x_update_window_end): Handle overwritten mouse face
21508 also for tool bar windows.
21509 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21510 DRAW is DRAW_IMAGE_RAISED.
21511 (clear_mouse_face): Return 1 if text with mouse face was
21512 actually redrawn. Make the function static.
21513 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21514 optimize away highlighting if we pass over that same overlay again.
21515 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21516 to detect a case where we have to highlight a different region
21517 despite not having left the currently highlighted region.
21518 Set mouse_face_overlay in the x_display_info. Avoid changing the
21519 mouse pointer shape when show_mouse_face has already done it, or
21520 there is no need. Handle mouse-face and help-echo in strings.
21521 (glyph_rect): New function.
21522 (w32_mouse_position): Use it to raise the threshold for mouse
21523 movement event generation.
21524 (w32_initialize_display_info): Initialize the x_display_info's
21525 mouse_face_overlay.
21526 (w32_set_vertical_scroll_bar): Don't clear a zero height
21527 or width area.
21528 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21529 a widget to zero height.
21530
21531 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21532 Protect unibyte strings created by replacing their multibyte
21533 equivalents in menu_items.
21534 (w32_menu_show): Don't overwrite an item's name with its key
21535 description in case the description is a multibyte string.
21536 (single_submenu): Some cleanup.
21537
21538 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21539 (postprocess_image): New function.
21540 (lookup_image): Call it for all image types except PostScript.
21541 (x_kill_gs_process): Call postprocess_image.
21542 (tiff_error_handler, tiff_warning_handler): New functions.
21543 (tiff_load): Install them as handlers.
21544 (x_kill_gs_process): Recognize if someone has cleared the image
21545 cache under us.
21546 (valid_image_p): Protect better against invalid image
21547 specifications. Previous code could signal an error.
21548 (Fx_hide_tip, Fshow_tip): Doc fix.
21549 (Fv_max_tooltip_size): New variable.
21550 (syns_of_xfns): DEFVAR_LISP it.
21551 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21552 window buffer to *tip* right after creating the frame. Set frame's
21553 window_width. Use a maximum tooltip size specified by
21554 Vx_max_tooltip_size, if that has valid contents.
21555 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21556 Make sure the tooltip is completely visible.
21557 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21558 (Fx_create_frame): Adjust the frame's height for presence
21559 of the tool bar before calling x_figure_window_size.
21560 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21561 when the window gets smaller.
21562 (x_set_foreground_color): Set frame's cursor_pixel.
21563 (x_set_foreground_color, x_set_background_color): Cleaned up.
21564 (x_set_font): Handle case of x_new_fontset returning the same name
21565 as before, although there was a change in fontsets.
21566
21567 2001-10-21 Miles Bader <miles@gnu.org>
21568
21569 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21570 (Flogxor): Add usage: string to doc string.
21571 * charset.c (Fstring): Likewise.
21572 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21573 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21574
21575 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21576
21577 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21578
21579 * alloc.c: Reindent DEFUNs with doc: keywords.
21580
21581 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21582
21583 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21584 keyword].
21585
21586 See ChangeLog.9 for earlier changes.
21587
21588 ;; Local Variables:
21589 ;; coding: iso-2022-7bit
21590 ;; End:
21591
21592 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21593 Copying and distribution of this file, with or without modification,
21594 are permitted provided the copyright notice and this notice are preserved.
21595
21596 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4