*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
1 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
2
3 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
4 Handle :inherit property as a lisp expression.
5
6 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7
8 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
9 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
10 Qsuper, and Qmodifier_value.
11 (Vmac_control_modifier, Vmac_option_modifier)
12 (Vmac_command_modifier, Vmac_function_modifier)
13 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
14 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
15 (Vmac_charset_info_alist): Doc fixes.
16
17 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18
19 * emacs.c (main) [MAC_OSX]: Change working directory to home
20 directory if `-psn_*' option is specified.
21
22 * mac.c (DECODE_UTF_8): Remove macro.
23 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
24 created from cfstring_to_lisp.
25 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
26 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
27
28 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
29 Add prototype.
30
31 2005-11-21 Ken Raeburn <raeburn@mit.edu>
32
33 * keymap.c (shadow_lookup): Use make_number to pass a number to
34 Fsubstring.
35
36 2005-11-21 Juri Linkov <juri@jurta.org>
37
38 * puresize.h (BASE_PURESIZE): Increment to 1180000.
39
40 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
41
42 * xfaces.c (Finternal_set_lisp_face_attribute): Use
43 :ignore-defface for new frame defaults when `unspecified' is
44 supplied.
45 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
46 (merge_face_vectors): Don't do :ignore-defface overwriting here.
47 (Finternal_merge_in_global_face): Do it here.
48
49 2005-11-20 Juri Linkov <juri@jurta.org>
50
51 * charset.c (invalid_character): Use Lisp-readable syntax
52 for octal and hex. Reorder decimal, octal and hex values.
53
54 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
55
56 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
57 this type is recognised when debugging.
58
59 2005-11-19 Andreas Schwab <schwab@suse.de>
60
61 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
62 Lisp_Cons and Lisp_Float.
63
64 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
65
66 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
67 New variable.
68 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New
69 function.
70 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
71 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
72 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
73
74 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
75
76 * image.c (x_create_bitmap_from_xpm_data): Free attributes on
77 fail.
78
79 * xfaces.c (Qignore_defface): New variable.
80 (syms_of_xfaces): Provide `:ignore-defface'.
81 (IGNORE_DEFFACE_P): New macro.
82 (check_lface_attrs, lface_fully_specified_p)
83 (Finternal_set_lisp_face_attribute)
84 (Fface_attribute_relative_p, Fmerge_face_attribute): Handle
85 Qignore_defface as a possible value.
86 (merge_face_vectors): The merged face is `unspecified' if the
87 mergee specifies `:ignore-defface'.
88
89 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
90
91 * lread.c (readevalloop): Add missing GCPROs.
92
93 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
94
95 * xfns.c (xg_set_icon_from_xpm_data): New function.
96
97 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
98 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
99
100 * xterm.c (x_bitmap_icon): Use the xpm if available.
101
102 * image.c (x_create_bitmap_from_xpm_data): New function.
103 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
104
105 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
106
107 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
108
109 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
110
111 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
112
113 2005-11-15 Andreas Schwab <schwab@suse.de>
114
115 * lisp.h (struct Lisp_Cons): Make cdr a union.
116 (XCDR_AS_LVALUE): Adjust.
117 (struct Lisp_Float): Make data a union.
118 (XFLOAT_DATA): Adjust.
119
120 * alloc.c (free_float): Make free list chaining aliasing-safe.
121 (make_float): Likewise.
122 (free_cons): Likewise.
123 (Fcons): Likewise.
124 (check_cons_list): Likewise.
125 (Fmake_symbol): Likewise.
126 (allocate_misc): Likewise.
127 (free_misc): Likewise.
128 (gc_sweep): Likewise.
129
130 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
131
132 * mac.c (HASHKEY_QUERY_CACHE): New define.
133 (xrm_create_database, xrm_q_put_resource): Empty query cache.
134 (xrm_get_resource): Use query cache.
135
136 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
137 inhibit_window_system is set.
138
139 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
140
141 * macgui.h (USE_CG_TEXT_DRAWING): New define.
142 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
143 and cg_glyphs.
144
145 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
146 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
147 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
148 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
149 not used and font substitution never occurs for ASCII and Latin-1
150 characters.
151 (XLoadQueryFont): Maximum and minimum metrics are now those among
152 ASCII characters.
153 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
154 height adjustments for Courier, Helvetica, and Times.
155
156 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
157
158 2005-11-11 David Reitter <david.reitter@gmail.com>
159
160 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
161 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
162 Vmac_control_modifier / mac-control-modifier,
163 Vmac_option_modifier / mac-option-modifier,
164 Vmac_command_modifier / mac-command-modifier.
165 (mac_to_emacs_modifiers): Use the new style modifier
166 variables. Return UInt32 (modifiers are longs now.)
167 (backtranslate_modified_keycode): New function (refactoring).
168 (XTread_socket): Use new modifier variables and refactored function.
169 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
170 no dedicated meta key. Not in use anyway.)
171 (convert_fn_keycode): Map Fn-keys to their original keycode
172 using a table (english keyboard only).
173
174 2005-11-11 Kim F. Storm <storm@cua.dk>
175
176 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
177 Add post hook to "backtrace" to always dump lisp call stack to
178 increase chance of people sending it to us when reporting bugs.
179
180 * doc.c (Fsubstitute_command_keys): Doc fix.
181
182 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
183
184 * xdisp.c (handle_stop): Skip overlay string handling if
185 ignore_overlay_strings_at_pos_p is set.
186 (set_iterator_to_next): At end of display vector, set
187 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
188 string, so we skip those overlay strings at current pos.
189
190 2005-11-10 Lars Hansen <larsh@soem.dk>
191
192 * fileio.c (file-regular-p): Doc fix.
193
194 2005-11-10 Kim F. Storm <storm@cua.dk>
195
196 * alloc.c (valid_lisp_object_p): New function to validate that
197 an object is really a valid Lisp_Object.
198
199 * lisp.h (valid_lisp_object_p): Add prototype.
200
201 * print.c (safe_debug_print): New function to be called from gdb
202 to print Lisp objects; use valid_lisp_object_p to avoid crashing
203 if user tries to print something which is not a Lisp object.
204
205 * .gdbinit (pp, pp1): Use safe_debug_print.
206 (pv, pv1): New commands to print value of a lisp variable.
207
208 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
209
210 * .gdbinit (pp1): New user-defined function.
211
212 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
213
214 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
215
216 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
217 related variables for dumped executable.
218
219 * unexmacosx.c (unexec_write_zero): New function.
220 (copy_data_segment): Clear uninitialized local variables in
221 statically linked libraries.
222
223 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
224
225 2005-11-09 Juri Linkov <juri@jurta.org>
226
227 * keymap.c (shadow_lookup): If Flookup_key returns a number,
228 call it again with a sub-key-sequence, and if its return value
229 is non-nil (sub-key is bound), return nil.
230
231 2005-11-08 Kim F. Storm <storm@cua.dk>
232
233 * process.c (Fsignal_process): Recognize signal names with and
234 without SIG prefix, e.g. SIGHUP and HUP.
235
236 * search.c (search_buffer): No need to initialize base_pat.
237
238 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
239
240 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
241 Don't abuse the `mini' arg. Use the `obj' arg instead.
242
243 2005-11-04 Kim F. Storm <storm@cua.dk>
244
245 * xdisp.c (show_mouse_face): Clear mouse face to eol.
246
247 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
248
249 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
250 font-lock.elc and jit-lock.elc.
251
252 2005-11-03 Richard M. Stallman <rms@gnu.org>
253
254 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
255 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
256 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
257
258 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
259
260 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
261
262 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
263
264 * window.c (Fdisplay_buffer): Fix last change to not use
265 a dedicated window.
266
267 2005-11-01 Kim F. Storm <storm@cua.dk>
268
269 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
270 Instead, rotate the bottom angle bitmap 180 degrees to indicate
271 that the bottom row does not end in a newline.
272
273 2005-11-01 Andreas Schwab <schwab@suse.de>
274
275 * unexelf.c (unexec): Handle .plt section in BSS segment.
276
277 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
278
279 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
280
281 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
282 determine whether to consider dedicated windows as well.
283 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
284 (Fdisplay_buffer): Do consider dedicated windows in those cases where
285 we will split the window rather than reuse it.
286 Don't try to use windows on other displays.
287
288 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
289
290 * puresize.h (BASE_PURESIZE): Increment to 1170000.
291
292 2005-10-31 Romain Francoise <romain@orebokech.com>
293
294 * macfns.c: Update copyright year.
295 * m/gould.h: Likewise.
296
297 2005-10-30 Kim F. Storm <storm@cua.dk>
298
299 * xdisp.c (display_line): Restore it->current_x and call
300 extend_face_to_end_of_line when last glyph doesn't fit on line.
301 (set_glyph_string_background_width): Remove specific tests here
302 to see if face background should extend to end of line. Simplify.
303
304 2005-10-30 Richard M. Stallman <rms@gnu.org>
305
306 * alloc.c (BYTES_USED): Use uordblks, not arena.
307 (bytes_used_when_reconsidered): New variable.
308 (emacs_blocked_free): Set that.
309
310 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
311
312 * alloc.c (emacs_blocked_free): Fix typo.
313
314 2005-10-29 Richard M. Stallman <rms@gnu.org>
315
316 * data.c (Fmake_variable_frame_local): Doc fix.
317
318 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
319 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
320 controls whether to save and restore mode_line_proptrans_alist.
321 Callers changed.
322 (unwind_format_mode_line): Work with that feature.
323 (redisplay_internal): Don't call prepare_menu_bars if memory full.
324 (move_elt_to_front): New function.
325 (display_mode_element): Use move_elt_to_front.
326 Don't bother munging text props on a null string.
327 Delete obsolete elts from mode_line_proptrans_alist.
328 (decode_mode_spec): Test Vmemory_full, not spare_memory.
329 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
330
331 * lisp.h (memory_full_cons_threshold): Declare.
332 (internal_lisp_condition_case): Declare.
333
334 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
335 (Fmemory_full_p): Function deleted.
336 (syms_of_alloc): Don't defsubr it.
337 (memory_full_cons_threshold): New variable.
338 (spare_memory): Now a vector of 7 elts.
339 (buffer_memory_full): Don't set Vmemory_full here.
340 (xfree): Don't try to refill here.
341 (emacs_blocked_free): Record BYTES_USED in local var.
342 (memory_full): Now free all the slots in spare_memory.
343 (refill_memory_reserve): Allocate each slot in spare_memory.
344 (init_alloc_once): Call refill_memory_reserve.
345
346 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
347
348 * eval.c (internal_lisp_condition_case): New function.
349 (Fcondition_case): Use internal_lisp_condition_case.
350 (Feval): Test Vmemory_full and memory_full_cons_threshold.
351 (Ffuncall): Likewise.
352
353 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
354
355 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
356
357 * syntax.c (Fparse_partial_sexp): Fix docstring.
358
359 2005-10-28 Romain Francoise <romain@orebokech.com>
360
361 * puresize.h (BASE_PURESIZE): Increment to 1130000.
362
363 2005-10-28 Richard M. Stallman <rms@gnu.org>
364
365 * xfns.c (syms_of_xfns): Provide `x' as feature.
366
367 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
368
369 * editfns.c (Fformat): Don't include string padding
370 between info[n].start and info[n].end.
371
372 * alloc.c (spare_memory): No longer static.
373 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
374
375 * puresize.h (BASE_PURESIZE): Increment to 1120000.
376
377 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
378
379 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
380
381 * fringe.c (update_window_fringes): Handle case where buffer ends
382 with a newline.
383
384 2005-10-27 Kenichi Handa <handa@m17n.org>
385
386 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
387
388 2005-10-24 Kenichi Handa <handa@m17n.org>
389
390 * charset.h (charset_mule_unicode_0100_24ff)
391 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
392 Extern them.
393
394 * charset.c (charset_mule_unicode_0100_24ff)
395 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
396 New variables.
397 (Fsetup_special_charsets): Initialize them.
398
399 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
400 supported Unicode characters.
401
402 2005-10-25 Jason Rumney <jasonr@gnu.org>
403
404 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
405
406 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
407
408 * image.c [MAC_OS] (image_load_qt_1): Check image size.
409 Use GraphicsImportGetImageDescription instead of
410 GraphicsImportGetNaturalBounds.
411 [MAC_OSX] (image_load_quartz2d): Check image size.
412 [MAC_OS] (xpm_load_image): Likewise.
413
414 * macterm.c (last_mouse_glyph_frame): New var.
415 (note_mouse_movement): Say mouse moved if current frame differs
416 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
417 (XTmouse_position): Set last_mouse_glyph_frame.
418 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
419 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
420 Use EndianU16_BtoN.
421 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
422 (x_per_char_metric, XLoadQueryFont)
423 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
424 glyph bounds.
425 (mac_to_x_fontname, mac_do_list_fonts)
426 (mac_initialize_display_info): Change screen resolutions to 72dpi.
427
428 2005-10-25 Masatake YAMATO <jet@gyve.org>
429
430 * minibuf.c (Fdisplay_completion_list): Small doc fix.
431
432 2005-10-24 Kim F. Storm <storm@cua.dk>
433
434 * xterm.c: Undo 2005-10-23 change.
435 (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 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
440 last_mouse_glyph] on mouse up/down event.
441
442 * editfns.c (Fcompare_buffer_substrings): Fix last change.
443
444 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
445
446 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
447
448 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
449
450 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
451 so tool tips don't interfere with press on tool bar button.
452
453 2005-10-23 Richard M. Stallman <rms@gnu.org>
454
455 * casetab.c (Fset_case_table): Doc fix.
456
457 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
458 (readevalloop): Compute ENTIRE properly.
459 (syms_of_lread) <load-history>: Doc fix.
460
461 2005-10-21 Richard M. Stallman <rms@gnu.org>
462
463 * lread.c (Fload): Simplify gcpro structure.
464 Gcpro FOUND as well as FILE, but not EFOUND.
465 Unless preloading, record FOUND instead of FILE in Vload_history.
466 Rename repeat local FILE to MSG_FILE.
467 (syms_of_lread) <load-history>: Doc fix.
468
469 2005-10-21 Kenichi Handa <handa@m17n.org>
470
471 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
472
473 2005-10-20 Kim F. Storm <storm@cua.dk>
474
475 * buffer.c (clone_per_buffer_values): Remove unused var tem.
476 (init_buffer): Remove unused vars dotstat, pwdstat.
477
478 * ccl.c (check_ccl_update): Remove unused var vp.
479
480 * fileio.c (auto_save_error): Call SAFE_FREE.
481
482 * fns.c (Fchar_table_range): Remove unused var i.
483
484 * minibuf.c (display_completion_list_1): New wrapper function
485 for Fdisplay_completion_list.
486 (Fminibuffer_completion_help): Use it.
487
488 * term.c (encode_terminal_code): Remove unused var src_start.
489
490 * window.c (Fwindow_tree): Remove unused var alist.
491
492 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
493
494 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
495
496 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
497
498 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
499
500 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
501
502 2005-10-20 Andreas Schwab <schwab@suse.de>
503
504 * minibuf.c (Fdisplay_completion_list): Doc fix.
505
506 2005-10-19 Kim F. Storm <storm@cua.dk>
507
508 * image.c (check_image_size): Handle integer Vmax_image_size value
509 directly as max pixel value. Use default frame size for null frame.
510 (syms_of_image) <max-image-size>: Describe integer value.
511
512 2005-10-19 Romain Francoise <romain@orebokech.com>
513
514 * emacs.c (main): Update copyright year.
515
516 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
517
518 * image.c (Vmax_image_size): New variable.
519 (check_image_size): New function.
520 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
521 (gif_load, gs_load): Use it.
522 (lookup_image): Try loading again if previous load failed.
523 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
524 to display in, NULL if none.
525 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
526 argument.
527
528 2005-10-18 Richard M. Stallman <rms@gnu.org>
529
530 * search.c (Fstring_match): Doc fix.
531
532 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
533
534 * macterm.c (note_mouse_movement): Use PtInRect.
535 (XTread_socket): Also ignore mouse motion just before a button
536 release event. Don't process button release event when mouse is
537 not grabbed.
538
539 2005-10-16 Masatake YAMATO <jet@gyve.org>
540
541 * minibuf.c (Fdisplay_completion_list): Add new optional
542 argument COMMON_SUBSTRING. Bind `completion-common-substring'
543 to the optional argument during running `completion-setup-hook'.
544
545 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
546
547 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
548 Allow nil as argument.
549 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
550 for encoding arguments as UTF-16 in native byte order, no BOM.
551
552 * macfns.c (Fx_create_frame): Add debugging code.
553 (Fx_show_tip): Set frame pixel width and height.
554
555 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
556 (FRAME_NORMAL_GC): New macro.
557 (mac_draw_line, mac_clear_area, mac_clear_window)
558 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
559 (mac_draw_image_string, mac_draw_image_string_16): Rename from
560 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
561 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
562 All uses changed.
563 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
564 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
565 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
566 (mac_draw_string_16, mac_draw_image_string)
567 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
568 (mac_scroll_area): Drawing functions now take frame as destination.
569 All uses changed.
570 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
571 (x_draw_fringe_bitmap): Set clipping area in face->gc.
572
573 * macterm.h (mac_clear_area): Add extern.
574
575 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
576
577 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
578 changes for xterm.c.
579
580 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
581
582 2005-10-14 Kenichi Handa <handa@m17n.org>
583
584 * search.c (search_buffer): Give up BM search on case-fold-search
585 if one of a target character has a case-equivalence of different
586 charset even if that target charcter is an ASCII.
587
588 * casefiddle.c (casify_object): Fix for the case that case
589 conversion change the byte length.
590
591 2005-10-14 Kim F. Storm <storm@cua.dk>
592
593 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
594 (handle_one_xevent): Only clear help_echo_string; restore it if
595 note_mouse_movement didn't record any mouse movement.
596
597 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
598 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
599
600 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
601 (Fposn_at_x_y): Fix calculation of x coordinate.
602 (Fposn_at_point): Return nil if point is hscrolled out of view.
603
604 2005-10-13 Andreas Schwab <schwab@suse.de>
605
606 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
607 non-interactive mode.
608
609 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
610
611 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
612
613 2005-10-12 Kim F. Storm <storm@cua.dk>
614
615 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
616
617 2005-10-12 Romain Francoise <romain@orebokech.com>
618
619 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
620
621 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
622
623 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
624 get end of text rows. Obtain header-line/mode-line rows directly.
625
626 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Restore
627 help_echo_string if mouse is moved inside last_mouse_glyph.
628
629 2005-10-12 Kim F. Storm <storm@cua.dk>
630
631 * xdisp.c (remember_mouse_glyph): New generic version based on
632 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
633 properly handle all different window areas.
634
635 * dispextern.h (remember_mouse_glyph): Add prototype.
636
637 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
638 (note_mouse_movement, XTmouse_position): Use generic
639 remember_mouse_glyph, add last_mouse_glyph arg.
640
641 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
642 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
643 (note_mouse_movement, w32_mouse_position): Use generic
644 remember_mouse_glyph, add last_mouse_glyph arg.
645
646 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
647 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
648 (XTmouse_position): Adapt to use generic remember_mouse_glyph
649 instead of pixel_to_glyph_coords.
650
651 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
652 Fix x position for ON_TEXT when left margin width > 0.
653
654 2005-10-11 Kim F. Storm <storm@cua.dk>
655
656 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
657
658 * keyboard.c (make_lispy_position): Fix buffer calculations for
659 mouse click or movement in right fringe and the margins.
660
661 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
662
663 * image.c (fn_jpeg_stdio_src): Don't define it.
664 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
665 (our_common_init_source): Rename from `our_init_source'.
666 (our_common_term_source): Rename from `our_term_source'.
667 (our_memory_fill_input_buffer): Rename from
668 `our_fill_input_buffer'.
669 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
670 (jpeg_memory_src): Use the new names.
671 (struct jpeg_stdio_mgr): New struct.
672 (JPEG_STDIO_BUFFER_SIZE): New constant.
673 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
674 (jpeg_file_src): New functions.
675 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
676
677 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
678
679 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
680 (fm_font_family_alist): New variable.
681 (syms_of_macterm): Initialize and staticpro it.
682 (decode_mac_font_name): Replace '-' in family name with '_' if it
683 occurs just once. Lower family name.
684 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
685 All uses changed. Remove argument MF and code conversion for it.
686 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
687 to CHARSET. Parse font size. Lower family name. Return integer
688 value for status of parsing.
689 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
690 Don't use Fdowncase because family name is already lowered by
691 decode_mac_font_name.
692 (init_font_name_table): Always call decode_mac_font_name. Add
693 pair of family name and its reference to fm_font_family_alist.
694 (mac_clear_font_name_table): Clear fm_font_family_alist.
695 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
696 Lookup fm_font_family_alist to get font family reference.
697 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
698 name is already lowered by parse_x_font_name.
699
700 2005-10-11 Kim F. Storm <storm@cua.dk>
701
702 * xterm.c (glyph_rect): Return 0 if position is outside text area.
703
704 * keyboard.c (make_lispy_position): Fix buffer position calculation for
705 mouse click or movement in fringe.
706
707 2005-10-10 Jason Rumney <jasonr@gnu.org>
708
709 * xterm.c (remember_mouse_glyph): New function.
710 (note_mouse_movement): Use it to remember the current glyph if changed.
711 (XTmouse_position): Fix calculation of fake glyph under mouse.
712 Move code to calculate glyph under mouse into remember_mouse_glyph.
713
714 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
715
716 * emacs.c (USAGE3, standard_args): -nb => -nbi.
717
718 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
719
720 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
721 (next_frame, prev_frame, set_term_frame_name): Make static.
722
723 * window.c (Fwindow_tree): Fix spelling.
724
725 2005-10-09 Romain Francoise <romain@orebokech.com>
726
727 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
728
729 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
730
731 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
732 Add options -nb, --no-bitmap-icon.
733
734 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
735
736 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
737
738 * macgui.h (MAX_CLIP_RECTS): New define.
739 (struct _XGC): New member clip_region.
740 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
741 clip_rects.
742
743 * macterm.c (GC_CLIP_REGION): New macro.
744 (saved_port_clip_region): New variable.
745 (mac_begin_clip, mac_end_clip): New functions.
746 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
747 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
748 (mac_copy_area_with_mask, mac_scroll_area): Use them.
749 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
750 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
751 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
752 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
753 rectangles stored in gc.
754 (XFreeGC): Dispose of clipping region.
755 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
756 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
757 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
758 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
759 (x_draw_bar_cursor): Use them.
760 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
761 get multiple clipping rectangles.
762
763 * macterm.h (mac_term_init): Add types to extern.
764 (struct mac_output): Remove members mWP and pending_menu_activation.
765 Put members scroll_bar_foreground_pixel and
766 scroll_bar_background_pixel in #if 0.
767 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
768
769 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
770 Add debugging code.
771
772 2005-10-08 Kim F. Storm <storm@cua.dk>
773
774 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
775
776 2005-10-07 Kim F. Storm <storm@cua.dk>
777
778 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
779 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
780 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
781
782 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
783
784 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
785 to for_overlaps. Now occupy 3 bits.
786 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
787 (OVERLAPS_ERASED_CURSOR): New defines.
788 (struct redisplay_interface): Add new OVERLAPS arg to member
789 fix_overlapping_area.
790 (x_fix_overlapping_area): Add new OVERLAPS arg.
791 (get_glyph_string_clip_rects): Add extern.
792
793 * dispnew.c (redraw_overlapping_rows): Call
794 rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
795
796 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
797 for_overlaps.
798 (get_glyph_string_clip_rects): New function created from
799 get_glyph_string_clip_rect. Set clipping rectangles according to the
800 value of for_overlaps. Enable to store multiple clipping rectangles.
801 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
802 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
803 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
804 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
805 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
806 calculating clipping rectangles later. Call x_fix_overlapping_area
807 with new OVERLAPS arg to draw only erased cursor area.
808 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
809 to draw overlaps in both preceding and succeeding rows.
810
811 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
812 struct glyph_string to for_overlaps.
813
814 2005-10-04 Richard M. Stallman <rms@gnu.org>
815
816 * alloc.c (refill_memory_reserve): Conditionalize the body,
817 not the function's existence.
818
819 2005-10-04 Kim F. Storm <storm@cua.dk>
820
821 * window.c (window_split_tree): New function.
822 (Fwindow_split_tree): New defun.
823 (syms_of_window): Defsubr it.
824
825 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
826
827 * macterm.c (mac_invert_rectangle): New function.
828 (XTflash): Use it.
829
830 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
831
832 * regex.h (re_char): Don't expose it in the interface.
833 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
834
835 * regex.c (re_char): Move it back here.
836 (re_set_whitespace_regexp): Change the arg's type to not use it.
837
838 * keyboard.c (make_lispy_event): If point has moved between down and up
839 event, make it a drag, not a click, to mirror what
840 mouse-drag-region expects.
841
842 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
843
844 * lisp.h (fatal): Undo previous change.
845 * term.c (fatal): Undo previous change.
846
847 2005-10-01 Richard M. Stallman <rms@gnu.org>
848
849 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
850
851 2005-10-01 Kim F. Storm <storm@cua.dk>
852
853 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
854
855 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
856
857 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
858
859 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
860 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
861 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
862 Try ATSUI-compatible 12pt Monaco font first.
863
864 * macgui.h (struct _XCharStruct): New member valid_p.
865 (STORE_XCHARSTRUCT): Set valid_p.
866 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
867
868 * macterm.c (mac_draw_string_common, x_per_char_metric)
869 (mac_compute_glyph_string_overhangs, init_font_name_table)
870 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
871 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
872 (x_draw_glyph_string_background)
873 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
874 XDrawImageString. Always draw background and foreground separately.
875 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
876 functions for one-byte chars when using ATSUI-compatible fonts.
877 (atsu_font_id_hash) [USE_ATSUI]: New variable.
878 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
879 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
880 max_char_or_byte2 more in detail.
881 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
882
883 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
884
885 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
886 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
887
888 * unexelf.c (fatal): Fix prototype.
889
890 * term.c (fatal): Implement using varargs.
891
892 * regex.c (re_char): Move typedef ...
893 * regex.h (re_char): ... here.
894 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
895
896 * emacs.c (malloc_set_state): Fix return type.
897 (endif): Fix type.
898
899 * lisp.h (fatal): Add argument types.
900
901 * dispextern.h (fatal): Delete prototype.
902
903 * systime.h: (make_time): Prototype moved from ...
904 * editfns.c (make_time): ... here.
905
906 * editfns.c: Move systime.h include after lisp.h.
907 * dired.c:
908 * xsmfns.c:
909 * process.c: Likewise.
910
911 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
912 Add parameter types.
913 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
914 (emacs_blocked_free): Change definition to match __free_hook.
915 (emacs_blocked_malloc): Change definition to match __malloc_hook.
916 (emacs_blocked_realloc): Change definition to match __realloc_hook.
917
918 2005-09-30 Romain Francoise <romain@orebokech.com>
919
920 * minibuf.c (Fread_buffer): Follow convention for reading from the
921 minibuffer with a default value. Doc fix.
922
923 2005-09-29 Juri Linkov <juri@jurta.org>
924
925 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
926 Rename argument name `string' to `format-string'.
927 (Fformat): Doc fix.
928
929 2005-09-28 Kim F. Storm <storm@cua.dk>
930
931 * image.c (gif_load): Fix size of allocated image buffer
932 for images where a sub-image may be larger than the image's
933 total height/width specifications.
934
935 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
936
937 * macgui.h (struct _XCharStruct): Each member now takes short value.
938
939 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
940
941 * xfaces.c (lookup_derived_face): Add parameter type.
942
943 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
944
945 * marker.c (verify_bytepos): Add parameter type.
946
947 * process.c (get_operating_system_release): Move prototype ...
948
949 * systime.h (get_operating_system_release): ... here.
950
951 * xterm.c (handle_one_xevent): Refer to union field to match the
952 type required by the function definition.
953 (set_vertical_scroll_bar): Move prototype ...
954
955 * xterm.h: ... here.
956
957 * fns.c (internal_equal, seed_random): Fix prototypes.
958 (internal_equal): Add missing parameter.
959
960 2005-09-25 Richard M. Stallman <rms@gnu.org>
961
962 * keyboard.c (update_menu_bindings): Variable deleted.
963 (syms_of_keyboard): Don't defvar it.
964 (parse_menu_item): Don't test it.
965
966 2005-09-23 Richard M. Stallman <rms@gnu.org>
967
968 * editfns.c (Fformat): Explicitly test for end of format string
969 and don't use `index'.
970
971 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
972
973 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
974 Define BROKEN_GET_CURRENT_DIR_NAME.
975
976 * sysdep.c (get_current_dir_name): Also define if
977 BROKEN_GET_CURRENT_DIR_NAME.
978
979 * m/ibmrs6000.h: Test for USG5, not USG5_4.
980
981 2005-09-22 Kim F. Storm <storm@cua.dk>
982
983 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
984 (message2): Fix commentary. Ok to use alloca'ed memory.
985 Still not ok to use Lisp string data (because of GC).
986 (set_message): Add comment why GC cannot happen.
987
988 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
989
990 * macterm.c (xlfdpat_block_match_1): Fix assertion.
991 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
992 variants for a scalable font multiple times.
993
994 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
995
996 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
997 Setup slave tty options before forking.
998
999 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1000
1001 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1002 positions have been set for the frame (as is done for frames in
1003 special-display-buffer-names).
1004
1005 2005-09-19 Kim F. Storm <storm@cua.dk>
1006
1007 * editfns.c (Fformat): Don't scan past end of format string that
1008 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1009
1010 2005-09-18 Andreas Schwab <schwab@suse.de>
1011
1012 * window.h (struct window): Remove height_fixed_p, no longer set.
1013
1014 * window.c (make_window): Don't initialize height_fixed_p.
1015 (window_fixed_size_p): Don't use it.
1016
1017 2005-09-18 John Paul Wallington <jpw@pobox.com>
1018
1019 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1020
1021 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1022
1023 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1024
1025 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1026 New variables.
1027 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1028 file selection.
1029
1030 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1031
1032 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1033
1034 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1035 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1036
1037 2005-09-16 Romain Francoise <romain@orebokech.com>
1038
1039 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1040
1041 2005-09-15 Richard M. Stallman <rms@gnu.org>
1042
1043 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1044 (display_mode_element): Instead of `lisp_string' and `this',
1045 record `offset' and increment that.
1046 `last_offset' replaces `last'.
1047
1048 * Makefile.in (XMENU_OBJ): Variable deleted.
1049 (obj): Use xmenu.o unconditionally.
1050 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1051
1052 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1053
1054 2005-09-15 Kim F. Storm <storm@cua.dk>
1055
1056 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1057 (reseat_at_next_visible_line_start): Likewise (in xassert).
1058
1059 2005-09-14 Romain Francoise <romain@orebokech.com>
1060
1061 * fileio.c (write_region_inhibit_fsync): New variable.
1062 (Fwrite_region): Use it to skip call to fsync.
1063 (syms_of_fileio): Initialize it.
1064
1065 2005-09-14 Kenichi Handa <handa@m17n.org>
1066
1067 * coding.c (code_convert_region_unwind): Argument format changed.
1068 (run_pre_post_conversion_on_str): If pre-write-conversion function
1069 changed the current buffer, delete the new buffer.
1070 (run_pre_write_conversin_on_c_str): Likewise.
1071
1072 * fileio.c (Fexpand_file_name): Check multibyteness of
1073 default_directory.
1074
1075 2005-09-13 Kenichi Handa <handa@m17n.org>
1076
1077 * composite.c (compose_chars_in_text): Delete it.
1078
1079 * composite.h (compose_chars_in_text): Delete extern.
1080
1081 2005-09-13 Kim F. Storm <storm@cua.dk>
1082
1083 * print.c (print_error_message): Fix last change.
1084
1085 2005-09-12 Kim F. Storm <storm@cua.dk>
1086
1087 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1088 Unconditionally reload `ptr' and `pend' after eval.
1089
1090 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1091
1092 * print.c (print_error_message): Pass copy of caller name to
1093 message_dolog.
1094
1095 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1096
1097 2005-09-12 Kenichi Handa <handa@m17n.org>
1098
1099 * xdisp.c (display_mode_element): Be sure to make variables THIS
1100 and LISP_STRING point into a string data of ELT.
1101
1102 2005-09-12 Kim F. Storm <storm@cua.dk>
1103
1104 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1105 signal_after_change that may have GC'ed.
1106 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1107
1108 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1109 after insert while runs signal_after_change.
1110
1111 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1112 declaration to where it is used.
1113
1114 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1115
1116 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1117 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1118 know if xfree is needed instead of guessing.
1119
1120 * xterm.h (x_encode_text): Remove prototype.
1121
1122 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1123
1124 * w32term.c (x_bitmap_icon): Load small icons too.
1125
1126 2005-09-10 Romain Francoise <romain@orebokech.com>
1127
1128 * buffer.c (init_buffer): Grow buffer to add directory separator
1129 and terminal zero. Fix typos.
1130
1131 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1132
1133 * buffer.c (init_buffer): Fix error message for failed call to
1134 get_current_dir_name.
1135 (get_current_dir_name): Remove prototype.
1136
1137 * xsmfns.c: (get_current_dir_name): Remove prototype.
1138
1139 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
1140 prototype.
1141
1142 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1143 Don't #undef NULL after including blockinput.h.
1144
1145 * config.in: Regenerated.
1146
1147 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1148
1149 Remove the MAXPATHLEN limitations:
1150
1151 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1152 New function.
1153
1154 * buffer.c (init_buffer): Use it.
1155
1156 * xsmfns.c (smc_save_yourself_CB): Ditto.
1157
1158 2005-09-09 Kim F. Storm <storm@cua.dk>
1159
1160 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1161 commands that are remapped from some other command.
1162
1163 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1164 flag in disabled rows below the window.
1165
1166 * frame.h (struct frame): New member updated_p.
1167
1168 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1169 member. Remove local `updated' array and associated variables.
1170
1171 2005-09-07 Kim F. Storm <storm@cua.dk>
1172
1173 * xdisp.c (handle_display_prop): Respect overlay window property.
1174
1175 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1176 Fixes crash reported by YAMAMOTO Mitsuharu.
1177
1178 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1179
1180 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1181 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1182 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1183 (xlfdpat_block_match): New macro.
1184 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1185 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1186 (add_font_name_table_entry): Increase font_name_table_size more
1187 rapidly.
1188 (mac_c_string_match): Remove function.
1189 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1190 expression match.
1191
1192 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1193
1194 2005-09-03 Richard M. Stallman <rms@gnu.org>
1195
1196 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1197 (move_it_in_display_line_to): Stop after last char on line even
1198 on a windowing terminal, if that's the specified stop position.
1199
1200 * fns.c (Fsort): Doc fix.
1201
1202 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1203
1204 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1205
1206 * dired.c (directory_files_internal_unwind, directory_files_internal)
1207 (file_name_completion): Use a Save_Value object rather than a cons of
1208 two 16bit ints to store the DIR*.
1209 (directory_files_internal, file_name_completion): Handle both EINTR and
1210 EAGAIN consistently after `readdir'.
1211
1212 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1213
1214 * intervals.c (update_interval): Add position info in error.
1215
1216 * dispnew.c (window_to_frame_hpos, update_window):
1217 Avoid gcc warning about unused variable `f'.
1218
1219 2005-08-31 Jason Rumney <jasonr@gnu.org>
1220
1221 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1222 error, revert to using AppendMenu.
1223
1224 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1225
1226 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1227 All uses changed.
1228 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1229 cases.
1230 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1231 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1232 Use posix_pathname_to_fsspec.
1233 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1234 while we have mask.
1235
1236 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1237
1238 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1239
1240 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1241
1242 * syntax.c (update_syntax_table): Properly reproduce the special +1
1243 setting of e_property at the end of the buffer when bumping into the
1244 INTERVALS_AT_ONCE limit.
1245
1246 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1247
1248 * emacs.c (USAGE1): Fix the description of the -Q option.
1249
1250 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1251
1252 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1253
1254 2005-08-26 Kim F. Storm <storm@cua.dk>
1255
1256 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1257 Don't move PT to new window start.
1258
1259 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1260
1261 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1262 ICONIFY/DEICONIFY_EVENT.
1263
1264 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1265 Restore background color.
1266 (mac_handle_visibility_change): New function.
1267 (x_make_frame_invisible, x_iconify_frame)
1268 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1269 [USE_CARBON_EVENTS] (mac_handle_window_event)
1270 (install_window_handler): Handle visibility change events.
1271 (x_make_frame_visible): Don't reposition window if it is iconified
1272 or asked for visible before. Select and uncollapse window when it
1273 is made visible.
1274 (x_make_frame_invisible): Don't reset x_highlight_frame.
1275 (x_iconify_frame): Likewise. Make invisible frame visible before
1276 it is iconified.
1277 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1278 (do_window_update): Don't change visibility of invisible frame.
1279
1280 2005-08-22 Juri Linkov <juri@jurta.org>
1281
1282 * term.c (turn_on_face): Check for TS_set_foreground and
1283 TS_set_background depending on standout_mode. Simplify.
1284
1285 2005-08-21 Kim F. Storm <storm@cua.dk>
1286
1287 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1288 bitmaps on fully visible rows.
1289
1290 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1291 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1292 and return 0.
1293
1294 * xdisp.c (redisplay_window): Call update_window_fringes with
1295 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1296
1297 2005-08-20 Richard M. Stallman <rms@gnu.org>
1298
1299 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1300 (resize_mini_window): Set w->start, and PT, so as to display the tail
1301 end of the buffer, if it doesn't all fit.
1302
1303 2005-08-18 Kim F. Storm <storm@cua.dk>
1304
1305 * xdisp.c (calc_pixel_width_or_height): Use actual display
1306 resolution when available instead of Vdisplay_pixels_per_inch.
1307
1308 2005-08-17 Kim F. Storm <storm@cua.dk>
1309
1310 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1311
1312 * dispnew.c (buffer_posn_from_coords): Check that target row is
1313 within matrix.
1314
1315 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1316
1317 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1318 xg_set_frame_icon and call it.
1319
1320 * gtkutil.c (xg_set_frame_icon): New function.
1321
1322 * gtkutil.h (xg_set_frame_icon): Declare it.
1323
1324 2005-08-16 Kim F. Storm <storm@cua.dk>
1325
1326 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1327
1328 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1329 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1330
1331 2005-08-15 Richard M. Stallman <rms@gnu.org>
1332
1333 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1334
1335 2005-08-15 Kim F. Storm <storm@cua.dk>
1336
1337 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1338
1339 * process.c (deactivate_process, status_notify, read_process_output)
1340 (update_status, status_convert, decode_status, allocate_pty)
1341 (make_process, remove_process, list_processes_1)
1342 (create_process_1, unwind_request_sigio, read_process_output)
1343 (send_process, keyboard_bit_set): Declare static.
1344 (Fdelete_process): Simplify. Pass process to status_notify, so we
1345 don't try to read output from it.
1346 (status_notify): New arg deleting_process--don't try to read
1347 output from that process.
1348
1349 * lisp.h (deactivate_process, status_notify, read_process_output):
1350 Remove prototypes.
1351
1352 2005-08-14 Richard M. Stallman <rms@gnu.org>
1353
1354 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1355 define_image_type.
1356
1357 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1358
1359 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1360 (xg_get_image_for_pixmap): Move some code to
1361 xg_get_pixbuf_from_pix_and_mask, and call it.
1362
1363 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1364
1365 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1366 to get an GTK icon and set it with GTK functions to avoid having GTK
1367 override an icon set with just X functions.
1368
1369 2005-08-11 Richard M. Stallman <rms@gnu.org>
1370
1371 * image.c (syms_of_image): Init image_types here, and call
1372 define_image_type.
1373 (init_image): Not here.
1374
1375 2005-08-09 Richard M. Stallman <rms@gnu.org>
1376
1377 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1378
1379 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1380
1381 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1382
1383 * floatfns.c (Fexpt): Use floats for negative exponent.
1384
1385 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1386
1387 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1388 should not be there, causing menu display errors with GTK 2.6.9.
1389
1390 2005-08-07 Richard M. Stallman <rms@gnu.org>
1391
1392 * floatfns.c (Fexpt): Undo previous change.
1393
1394 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1395 so it can be used with various state vectors.
1396
1397 * emacs.c (endif): Convert -script into -scriptload.
1398 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1399
1400 * fns.c (syms_of_fns): Add `emacs' to features.
1401
1402 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1403 output newlines to scroll the old screen contents off the screen.
1404
1405 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1406
1407 * floatfns.c (Fexpt): Use floats for negative exponent.
1408 Reported by D Goel.
1409
1410 2005-08-02 Richard M. Stallman <rms@gnu.org>
1411
1412 * frame.c (Fframe_char_width): Doc fix.
1413
1414 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1415
1416 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1417 Defvar it.
1418
1419 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1420
1421 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1422 (my_create_window, my_create_tip_window): Make static.
1423
1424 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1425 (my_set_foreground_window, my_destroy_window): Make static.
1426
1427 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1428
1429 Merge gnulib getopt implementation into Emacs.
1430
1431 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1432 now part of lib-src.
1433
1434 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1435
1436 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1437
1438 2005-07-25 Jason Rumney <jasonr@gnu.org>
1439
1440 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1441 navigating menus with the keyboard.
1442
1443 2005-07-23 Richard M. Stallman <rms@gnu.org>
1444
1445 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1446
1447 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1448 gc_relative_threshold, one by one.
1449
1450 * keyboard.c (read_char): Test gc_cons_threshold.
1451 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1452
1453 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1454 gc_relative_threshold, one by one.
1455
1456 * alloc.c (gc_cons_threshold): Not static.
1457 (gc_cons_combined_threshold): Var deleted.
1458 (gc_relative_threshold): New variable.
1459 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1460 instead of gc_cons_combined_threshold.
1461
1462 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1463 (gc_cons_combined_threshold): Declaration deleted.
1464
1465 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1466
1467 * mac.c: Don't include stdlib.h or string.h.
1468 (Fdo_applescript, Fmac_file_name_to_posix)
1469 (Fmac_file_name_to_posix): Doc fixes.
1470 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1471 (Fmac_code_convert_string): Likewise.
1472 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1473 if the executable is not contained in a bundle.
1474
1475 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1476 (gray_width, gray_height): Remove defines.
1477 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1478 (gray_bitmap_bits): Remove variables.
1479 (lispy_function_keys): Remove extern.
1480 (free_frame_menubar): Add extern.
1481 (x_window_to_frame): Remove function.
1482 (unwind_create_tip_frame): Add declaration.
1483 (x_set_name_internal): New function.
1484 (x_set_name, x_set_title): Use it.
1485 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1486 (Fx_display_pixel_height, Fx_display_planes)
1487 (Fx_display_color_cells, Fx_server_max_request_size)
1488 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1489 (Fx_display_mm_height, Fx_display_mm_width)
1490 (Fx_display_backing_store, Fx_display_visual_class)
1491 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1492
1493 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1494
1495 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1496 (Fx_get_selection_internal, Fx_selection_owner_p)
1497 (Fx_selection_exists_p): Doc fixes.
1498 (syms_of_macselect) <selection-converter-alist>: Likewise.
1499
1500 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1501
1502 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1503
1504 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1505 (Fccl_execute_on_string): Likewise; add usage info.
1506
1507 * composite.c (Fcompose_region_internal)
1508 (Fcompose_string_internal):
1509 Improve argument/docstring consistency.
1510
1511 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1512 Fix typos in docstrings.
1513
1514 * textprop.c (Fnext_char_property_change)
1515 (Fprevious_char_property_change): Doc fixes.
1516
1517 * window.c (Fset_window_margins, Fset_window_fringes):
1518 Improve argument/docstring consistency.
1519
1520 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1521
1522 2005-07-21 Andreas Schwab <schwab@suse.de>
1523
1524 * eval.c (restore_stack_limits): Return a value.
1525
1526 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1527
1528 * eval.c (Fdefvar): Doc fix.
1529
1530 2005-07-20 Kim F. Storm <storm@cua.dk>
1531
1532 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1533 Use make_save_value to unwind protect stream.
1534
1535 * lread.c (Fload, load_unwind):
1536 Use make_save_value to unwind protect stream.
1537
1538 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1539
1540 * eval.c (Fprog2, Fcalled_interactively_p),
1541 (syms_of_eval) <debug-on-quit>: Doc fixes.
1542 (syms_of_eval) <max-specpdl-size>:
1543 (Finteractive_p): Fix typos in docstrings.
1544
1545 2005-07-19 Kim F. Storm <storm@cua.dk>
1546
1547 * w32fns.c (Vx_hand_shape): Variable removed.
1548 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1549
1550 2005-07-19 Kenichi Handa <handa@m17n.org>
1551
1552 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1553
1554 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1555
1556 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1557
1558 2005-07-18 Kim F. Storm <storm@cua.dk>
1559
1560 * frame.h (struct frame): New member already_hscrolled_p.
1561
1562 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1563 to avoid redisplay looping hscrolling back and forth ad infinitum.
1564
1565 2005-07-18 Juri Linkov <juri@jurta.org>
1566
1567 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1568 * keymap.c (Fminor_mode_key_binding):
1569 * macterm.c (mac-emulate-three-button-mouse):
1570 Delete duplicate duplicate words.
1571
1572 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1573
1574 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1575
1576 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1577
1578 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1579
1580 * macgui.h (struct _XGC): New struct.
1581 (GC): Use it.
1582 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1583 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1584
1585 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1586 (XSetFont): Add declaration.
1587 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1588 Remove functions.
1589 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1590 New defines.
1591 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1592 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1593 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1594 Use them.
1595 (mac_erase_rectangle): New function.
1596 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1597 (x_draw_stretch_glyph_string): Use it.
1598 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1599 (XSetBackground, XSetFont): Adjust for new GC implementation.
1600 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1601 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1602
1603 * macterm.h (struct mac_display_info): Change types of
1604 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1605 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1606
1607 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1608
1609 2005-07-16 Richard M. Stallman <rms@gnu.org>
1610
1611 * buffer.c (Fmake_overlay): Doc fix.
1612
1613 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1614
1615 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1616 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1617
1618 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1619
1620 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1621 Use Fstring_as_unibyte instead of string_make_unibyte.
1622
1623 2005-07-15 Richard M. Stallman <rms@gnu.org>
1624
1625 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1626
1627 2005-07-15 Kim F. Storm <storm@cua.dk>
1628
1629 * xdisp.c: Fix redisplay loop in last change.
1630 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1631 (move_it_vertically_backward, move_it_by_lines): Use it.
1632
1633 2005-07-14 Jason Rumney <jasonr@gnu.org>
1634
1635 * w32.c (init_environment): Default HOME directory to user's
1636 appdata directory if possible.
1637
1638 2005-07-14 Kim F. Storm <storm@cua.dk>
1639
1640 * .gdbinit (pitx): Fix output format. Print string charpos.
1641
1642 * lread.c (syms_of_lread): Initialize seen_list.
1643
1644 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1645
1646 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1647 Staticpro re_match_object.
1648
1649 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1650
1651 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1652 dereference.
1653
1654 * macterm.c (mac_window_to_frame): Remove duplicate define.
1655
1656 2005-07-14 Kenichi Handa <handa@m17n.org>
1657
1658 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1659 (code_convert_region): Adjust for the above change.
1660 (set_conversion_work_buffer): If the work buffer is already in
1661 use, generate a new buffer and return it. Otherwise return Qnil.
1662 (run_pre_post_conversion_on_str): Adjust for the above change.
1663 (run_pre_write_conversin_on_c_str): Likewise.
1664
1665 2005-07-13 Kim F. Storm <storm@cua.dk>
1666
1667 * xdisp.c (start_display): Don't reseat to next visible line start
1668 if current start position is in a string or image.
1669 (move_it_vertically_backward): Be sure to move out of strings and
1670 images when moving it2 forward.
1671 (move_it_by_lines): When moving forward, move to next buffer
1672 position if we end up in a string or image. When moving backward,
1673 count rows moved over when moving to start of current row in case
1674 row starts in middle of a string or image. Also move further
1675 backward if we end up in a string or image.
1676 (try_cursor_movement): If overlay string spans multiple lines,
1677 move backward to set cursor on start of an overlay string.
1678 (cursor_row_p): Row is ok if cursor is at newline from string, but
1679 string starts on this line (so we always position cursor at start
1680 of string).
1681
1682 * indent.c (Fvertical_motion): If start position is on an image,
1683 don't move back if we move too far (that's almost certain to happen).
1684
1685 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1686 row in minibuffer windows.
1687 (try_window): Don't check margins in minibuffer windows.
1688
1689 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1690
1691 * macterm.c: Don't include stdlib.h or composite.h.
1692 (x_use_underline_position_properties, last_mouse_press_frame)
1693 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1694 (syms_of_macterm, mac_initialize): Don't initialize them.
1695 (waiting_for_input, initial_argv, initial_argc)
1696 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1697 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1698 (extra_keyboard_modifiers): Fix type in extern.
1699 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1700 (x_scroll_bar_report_motion): Add argument types to declaration.
1701 (mac_compute_glyph_string_overhangs): Add declaration.
1702 (disable_mouse_highlight): Remove unused variable.
1703 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1704 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1705 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1706 All callers changed.
1707 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1708 timestamp.
1709 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1710 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1711 only when its width is less than the height.
1712 (XTredeem_scroll_bar): Sync with xterm.c.
1713 (font_name_table, font_name_table_size, font_name_count):
1714 Make static.
1715 (drag_and_drop_file_list): Remove variable. Previous use is now
1716 local to function.
1717 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1718 from XTread_socket.
1719 (XTread_socket): Consolidate setting of event timestamp.
1720 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1721 Support extra_keyboard_modifiers.
1722
1723 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1724 beginning with that for ASCII.
1725
1726 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1727
1728 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1729 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1730 (syms_of_alloc): Declare gc-cons-percentage.
1731
1732 * eval.c (Feval, Ffuncall):
1733 * keyboard.c (read_char):
1734 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1735
1736 * lisp.h (gc_cons_combined_threshold): Declare.
1737
1738 2005-07-12 Kim F. Storm <storm@cua.dk>
1739
1740 * coding.c (Qprocess_argument):
1741 * coding.h (Qprocess_argument): Remove unused var.
1742
1743 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1744
1745 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1746
1747 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1748 Endian.h.
1749 [!MAC_OSX] (fchmod, fchown): New functions.
1750 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1751 Use SBYTES and EndianU32_BtoN.
1752 (mac_get_object_from_code): Return 4 byte string even if argument
1753 is 0. Use make_unibyte_string and EndianU32_NtoB.
1754 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1755 (Fmac_set_file_type): Fix documents and argument declarations.
1756 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1757
1758 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1759
1760 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1761
1762 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1763
1764 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1765 Lucid if X_I18N, font otherwise.
1766
1767 2005-07-10 Steven Tamm <steventamm@mac.com>
1768
1769 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1770 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1771 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1772
1773 2005-07-10 Richard M. Stallman <rms@gnu.org>
1774
1775 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1776 (syms_of_lread): Set up eval-buffer-list.
1777 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1778
1779 2005-07-08 Richard M. Stallman <rms@gnu.org>
1780
1781 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1782
1783 2005-07-08 Kim F. Storm <storm@cua.dk>
1784
1785 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1786 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1787
1788 2005-07-07 Kim F. Storm <storm@cua.dk>
1789
1790 * window.c (Frecenter): Fix last change (set iarg before use).
1791
1792 2005-07-06 Richard M. Stallman <rms@gnu.org>
1793
1794 * window.c (Frecenter): When arg is inside the scroll margin,
1795 move it out of the margin.
1796
1797 2005-07-06 Jason Rumney <jasonr@gnu.org>
1798
1799 * w32console.c (initialize_w32_display): Detect when the console
1800 dimensions are insane, and default to 80x25 instead.
1801 (w32_use_full_screen_buffer): Default to NIL.
1802
1803 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1804
1805 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1806 VERTICAL_BORDER_FACE_ID for vertical border line.
1807 (mac_encode_char): Call check_ccl_update in advance.
1808 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1809 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1810 Don't assume that font family length is less than 32.
1811 (x_compute_min_glyph_bounds): Make static.
1812 (x_load_font): Never set fonts_changed_p to zero.
1813
1814 2005-07-04 Lute Kamstra <lute@gnu.org>
1815
1816 * Update FSF's address in GPL notices.
1817
1818 2005-07-03 Richard M. Stallman <rms@gnu.org>
1819
1820 * xdisp.c (try_window): Fix previous change in how it handles
1821 a partially-visible line or one only partly past the margin.
1822
1823 * window.c (window_scroll_pixel_based): Take account
1824 of this_scroll_margin when finding point when scrolling up.
1825
1826 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1827
1828 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1829 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1830 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1831
1832 2005-07-02 Juri Linkov <juri@jurta.org>
1833
1834 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1835 VERTICAL_BORDER_FACE_ID for vertical border line.
1836
1837 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1838
1839 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1840 fchmod so that chmod doesn't get called on MSDOS before the file
1841 is closed.
1842
1843 2005-07-01 Jason Rumney <jasonr@gnu.org>
1844
1845 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1846 workaround.
1847 (w32_initialize): Initialize it.
1848 (w32_native_per_char_metric): Allow a couple of extra pixels when
1849 Cleartype is active.
1850
1851 * w32term.c (w32_initialize): Move check for screen reader here
1852 from syms_of_w32term.
1853
1854 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1855
1856 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1857 is not zero.
1858
1859 2005-07-01 Masatake YAMATO <jet@gyve.org>
1860
1861 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1862
1863 2005-06-30 Juri Linkov <juri@jurta.org>
1864
1865 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1866 decrease x coord of vertical border by 1 pixel to not occupy text
1867 area of the right window.
1868
1869 * xterm.c (x_draw_vertical_window_border): Use foreground of
1870 VERTICAL_BORDER_FACE_ID for vertical border line.
1871
1872 * term.c (turn_on_face): In standout mode apply specified
1873 fg to bg, and specified bg to fg (this makes the logic of
1874 inversion on terminal consistent with X).
1875
1876 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1877
1878 * eval.c (user_variable_p_eh): New function.
1879 (Fuser_variable_p): Use it. Clarify docstring.
1880 Return t for aliases of user options, nil for alias loops.
1881
1882 2005-06-27 Richard M. Stallman <rms@gnu.org>
1883
1884 * eval.c (Fdefvar): Improve error message.
1885
1886 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1887
1888 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1889 change.
1890
1891 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1892
1893 * eval.c (Fdefvar): Don't try to set constant symbols.
1894
1895 2005-06-25 Richard M. Stallman <rms@gnu.org>
1896
1897 * macfns.c (Fx_show_tip): Pass new arg to try_window.
1898
1899 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
1900
1901 * xfns.c (Fx_show_tip): Pass new arg to try_window.
1902
1903 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
1904 (redisplay_window): Handle try_window reporting point in scroll margin.
1905
1906 * dispextern.h (try_window): Declare new arg.
1907
1908 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
1909 Use fchmod to copy the file modes.
1910 (Frename_file): Don't copy UID and GID here;
1911 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
1912
1913 * eval.c (call_debugger): Take full care of extending stack limits
1914 to make space for the debugger, and restore the change afterward.
1915 Bind debug-on-error to nil.
1916 (restore_stack_limits): New subroutine.
1917 (Fsignal): Extend specpdl bound along with eval depth bound,
1918 for calling edebug. Don't do either one, for calling debugger.
1919 (find_handler_clause): Don't bind debug-on-error here.
1920 Don't unbind anything either.
1921 Temporarily advance max_specpdl_size for calling
1922 internal_with_output_to_temp_buffer.
1923 (grow_specpdl): Don't alter max_specpdl_size before signaling
1924 an error.
1925 (syms_of_eval) <max-specpdl-size>: Doc fix.
1926
1927 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
1928
1929 2005-06-24 Eli Zaretskii <eliz@gnu.org>
1930
1931 * fileio.c (Frename_file): Undo last change: no need to ifdef away
1932 chown on DOS_NT platforms.
1933
1934 * w32.c (sys_chown): New function.
1935
1936 * s/ms-w32.h (chown): New; define to sys_chown.
1937
1938 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
1939
1940 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
1941 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
1942
1943 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
1944
1945 2005-06-23 Richard M. Stallman <rms@gnu.org>
1946
1947 * xdisp.c (get_next_display_element): Finish reversing the tests of
1948 Vnobreak_char_display.
1949
1950 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
1951 All uses changed.
1952 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
1953 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
1954
1955 * fileio.c (Frename_file): Preserve owner and group, if possible,
1956 when copying.
1957
1958 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
1959
1960 * abbrev.c (Funexpand_abbrev):
1961 * category.c (Fmake_category_set):
1962 * dispnew.c (Fsleep_for, Fsit_for):
1963 * editfns.c (Fsubst_char_in_region):
1964 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1965 * frame.c (make_frame_without_minibuffer):
1966 * lread.c (read_vector):
1967 * macfns.c (check_x_frame):
1968 * process.c (Fstop_process, Fcontinue_process):
1969 * search.c (Freplace_match):
1970 * syntax.c (Fstring_to_syntax):
1971 * w32fns.c (check_x_frame, check_x_display_info):
1972 * xfaces.c (x_supports_face_attributes_p):
1973 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1974
1975 * image.c (fn_png_init_io): Don't define it.
1976 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1977 (png_read_from_file): New function, based on png_read_from_memory.
1978 (png_load): Use it, instead of fn_png_init_io.
1979
1980 2005-06-23 Kim F. Storm <storm@cua.dk>
1981
1982 * search.c (Fmatch_data): Remove evaporate option.
1983 (Fset_match_data): Do not mention evaporate option in doc string.
1984 Add commentary explaining evaporate arg (for internal use only).
1985 (unwind_set_match_data): Add comment on evaporate use.
1986
1987 2005-06-22 Miles Bader <miles@gnu.org>
1988
1989 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1990 (realize_basic_faces, syms_of_xfaces): Update references to it.
1991 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1992 to `VERTICAL_BORDER_FACE_ID'.
1993 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1994
1995 2005-06-21 Juri Linkov <juri@jurta.org>
1996
1997 * dispextern.h: Add extern Qframe_set_background_mode.
1998
1999 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2000 Qframe_set_background_mode.
2001
2002 * frame.c (Fmodify_frame_parameters):
2003 Call frame-set-background-mode after changing the background color
2004 on non-window non-dos branch.
2005
2006 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2007
2008 * fns.c (Fchar_table_range):
2009 * process.c (Fmake_network_process): Fix spellings.
2010
2011 2005-06-20 Kim F. Storm <storm@cua.dk>
2012
2013 * fns.c (Fsort): Doc fix.
2014
2015 2005-06-20 Miles Bader <miles@gnu.org>
2016
2017 * xfaces.c (Qvertical_divider): New variable.
2018 (realize_basic_faces): Realize its face.
2019 (syms_of_xfaces): Initialize it.
2020
2021 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2022
2023 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2024 window-separator on ttys using `vertical-divider' face by default.
2025
2026 2005-06-17 Richard M. Stallman <rms@gnu.org>
2027
2028 * xdisp.c (get_next_display_element):
2029 Reverse test of Vshow_nonbreak_escape.
2030
2031 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2032 (Ftty_no_underline): New function.
2033 (syms_of_term): defsubr it.
2034
2035 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2036
2037 * dispnew.c (spec_glyph_lookup_face): New function.
2038 (build_frame_matrix_from_leaf_window): Use it.
2039
2040 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2041
2042 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2043
2044 2005-06-12 Richard M. Stallman <rms@gnu.org>
2045
2046 * keyboard.c (read_char): After catching a longjmp,
2047 call restore_getcjmp.
2048
2049 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2050
2051 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2052
2053 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2054
2055 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2056 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2057 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2058 events.
2059 (XTread_socket): Don't pass keyboard events with the option
2060 modifier to the system when Vmac_command_key_is_meta is nil or
2061 Vmac_option_modifier is non-nil.
2062 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2063 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2064 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2065 handler function.
2066 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2067 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2068 handler part to mac_handle_mouse_event.
2069
2070 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2071
2072 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2073 NEW-ALIAS and BASE-VARIABLE, respectively.
2074
2075 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2076
2077 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2078 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2079 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2080
2081 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2082
2083 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2084
2085 * w32term.c (x_use_underline_position_properties): New variable.
2086 (x_draw_glyph_string): Remind in a comment to change doc string of
2087 x-use-underline-position-properties if/when underline positioning
2088 is implemented.
2089 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2090 and initialize it to nil.
2091
2092 2005-06-12 Jason Rumney <jasonr@gnu.org>
2093
2094 * w32fns.c (NEWOPENFILENAME): New struct.
2095 (Fx_file_dialog): Use it to trick the system into giving us up to
2096 date dialogs on systems that are documented to support it.
2097 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2098
2099 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2100
2101 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2102 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2103
2104 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2105
2106 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2107 to CreateDIBSection to avoid a compiler warning.
2108 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2109 warning.
2110 (png_load): Cast return values of fn_png_create_read_struct and
2111 fn_png_create_info_struct, to avoid compiler warnings on W32.
2112 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2113 to avoid compiler warnings.
2114 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2115 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2116 avoid a compiler warning.
2117 (tiff_load): Cast return values of fn_TIFFOpen and
2118 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2119 to IMAGE_BACKGROUND to avoid a compiler warning.
2120 (gif_load): Cast return values of fn_DGifOpenFileName and
2121 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2122 IMAGE_BACKGROUND to avoid a compiler warning.
2123 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2124 before redefining.
2125
2126 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2127 the call to CreateDIBSection, to avoid a compiler warning.
2128
2129 2005-06-11 Jason Rumney <jasonr@gnu.org>
2130
2131 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2132 minibuffer.
2133 * macfns.c (Fx_file_dialog): Likewise.
2134
2135 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2136
2137 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2138
2139 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2140
2141 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2142 * w32fns.c (syms_of_w32fns): Fix spellings.
2143
2144 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2145
2146 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2147 `verbose'; print diagnostic messages only if it is non-zero.
2148 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2149 in the environment.
2150 (copy_executable_and_dump_data): Print section names with %.8s.
2151
2152 2005-06-10 Masatake YAMATO <jet@gyve.org>
2153
2154 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2155 when mouse_face is not given.
2156
2157 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2158
2159 * window.c (Fselect_window): Adapt call to Fselect_frame.
2160
2161 * lisp.h: Update EXFUN of Fselect_frame.
2162
2163 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2164
2165 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2166 no_enter.
2167 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2168 Adapt to above change.
2169
2170 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2171
2172 * fns.c (Fmemq, Fmaphash): Doc fixes.
2173
2174 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2175
2176 * xfaces.c (Fdisplay_supports_face_attributes_p):
2177 Fix typo in docstring.
2178
2179 2005-06-08 Steven Tamm <steventamm@mac.com>
2180
2181 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2182 used by gcc4 on intel mac.
2183
2184 2005-06-09 Kim F. Storm <storm@cua.dk>
2185
2186 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2187 in REUSE list if non-nil; free them if equal to evaporate.
2188 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2189 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2190 (restore_search_regs): Rename from restore_match_data. Uses changed.
2191 (unwind_set_match_data): New function.
2192 (record_unwind_save_match_data): New function like save-match-data.
2193
2194 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2195 (record_unwind_save_match_data): Add prototype.
2196 (restore_search_regs): Rename from restore_match_data.
2197
2198 * composite.c (compose_chars_in_text):
2199 * eval.c (do_autoload):
2200 * macmenu.c (set_frame_menubar):
2201 * process.c (read_process_output, exec_sentinel):
2202 * xmenu.c (set_frame_menubar):
2203 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2204 * w32menu.c (set_frame_menubar):
2205 Use record_unwind_save_match_data.
2206
2207 2005-06-08 Richard M. Stallman <rms@gnu.org>
2208
2209 * xdisp.c (get_next_display_element): Alter previous change:
2210 Distinguish Vshow_nonbreak_escape = t or not t.
2211 For t, use escape_glyph once again, as before previous change.
2212 Use space or hyphen for display, instead of the non-ASCII char.
2213 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2214
2215 * process.c (Fstart_process): Don't touch command_channel_p slot.
2216
2217 * process.h (struct process): Delete command_channel_p.
2218
2219 2005-06-07 Masatake YAMATO <jet@gyve.org>
2220
2221 * xdisp.c (note_mode_line_or_margin_highlight):
2222 Check the overlapping of re-rendering area to avoid flickering.
2223 (note_mouse_highlight): Call clear_mouse_face if PART
2224 is not ON_MODE_LINE nor ON_HEADER_LINE.
2225
2226 2005-06-07 Kim F. Storm <storm@cua.dk>
2227
2228 * process.c: Improve commentary for adaptive read buffering.
2229
2230 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2231
2232 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2233 if available.
2234
2235 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2236
2237 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2238 New functions for popping down menus on C-g.
2239 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2240
2241 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2242 non-static.
2243
2244 * config.in: Add HAVE_CANCELMENUTRACKING.
2245
2246 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2247
2248 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2249
2250 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2251
2252 * w32proc.c (RVA_TO_PTR): New macro.
2253
2254 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2255
2256 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2257 Depend on w32heap.h.
2258
2259 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2260
2261 * keyboard.c (command_loop_1): Update Vthis_original_command.
2262
2263 2005-06-06 Richard M. Stallman <rms@gnu.org>
2264
2265 * xmenu.c (popup_get_selection): Undo previous change.
2266
2267 2005-06-06 Juri Linkov <juri@jurta.org>
2268
2269 * xdisp.c (Qno_break_space): New variable.
2270 (syms_of_xdisp): Initialize it.
2271 (get_next_display_element): Add no-break space and soft hypen
2272 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2273 Use `no-break-space' face for no-break spaces.
2274
2275 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2276
2277 * window.c (delete_window): Handle the case where a h/vchild has
2278 a h/vchild.
2279
2280 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2281
2282 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2283 call to pfn_setsockopt, cast optval to `const char *'.
2284
2285 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2286
2287 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2288 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2289 compiler warnings.
2290
2291 * s/ms-w32.h (fileno): Don't define if already defined.
2292
2293 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2294
2295 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2296
2297 2005-06-04 Richard M. Stallman <rms@gnu.org>
2298
2299 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2300
2301 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2302
2303 * macmenu.c (cleanup_popup_menu): New function.
2304 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2305 mac_menu_show Quit:s.
2306 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2307 a dialog).
2308
2309 2005-06-04 Kim F. Storm <storm@cua.dk>
2310
2311 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2312
2313 * callproc.c (Fcall_process): Don't use alloca to gradually
2314 increase size of buf, as it effectively uses twice the necessary
2315 space on the stack. Instead, pre-allocate buf of full size, and
2316 gradually increase the read size.
2317
2318 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2319
2320 * eval.c (unbind_to): Preserve value of Vquit_flag.
2321
2322 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2323 before a button release event.
2324
2325 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2326
2327 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2328 on faces in a frame, if the argument FRAME is non-nil.
2329 Improve argument/docstring consistency.
2330
2331 2005-06-02 Kim F. Storm <storm@cua.dk>
2332
2333 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2334 (x_consider_frame_title, Fformat_mode_line): Save offset into
2335 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2336
2337 2005-06-01 Kim F. Storm <storm@cua.dk>
2338
2339 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2340
2341 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2342
2343 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2344 resolution fields for scalable fonts to 0.
2345
2346 * xfaces.c (build_scalable_font_name): Round pixel size to the
2347 nearest integer.
2348
2349 2005-06-01 Kim F. Storm <storm@cua.dk>
2350
2351 * xdisp.c (display_mode_line): Support nested calls to redisplay
2352 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2353
2354 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2355
2356 * fileio.c (Finsert_file_contents):
2357 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2358
2359 2005-05-31 Kim F. Storm <storm@cua.dk>
2360
2361 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2362 (mode_line_noprop_ptr): Rename from frame_title_*.
2363 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2364 (store_mode_line_noprop): Rename from store_frame_title.
2365 (mode_line_target): New enum to specify current output target
2366 for mode line formatting.
2367 (display_mode_element): Test it rather than frame_title_ptr and
2368 mode_line_string_list to determine where output should go.
2369 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2370 (Vmode_line_unwind_vector): New variable.
2371 (format_mode_line_unwind_data, unwind_format_mode_line):
2372 New functions for unwind protection in mode line formatting.
2373 (x_consider_frame_title): Use them and new local var 'title_start'
2374 to support nested calls to format-mode-line and redisplay.
2375 Set mode_line_target to MODE_LINE_TITLE.
2376 (Fformat_mode_line): Use them and new local var 'string_start' to
2377 support nested calls to format-mode-line and redisplay.
2378 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2379 Don't trim trailing dashes.
2380 (decode_mode_spec): Don't make infinite number of trailing dashes
2381 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2382 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2383 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2384 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2385 Initialize mode_line_target to MODE_LINE_DISPLAY.
2386
2387 2005-05-29 Richard M. Stallman <rms@gnu.org>
2388
2389 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2390
2391 2005-05-28 Masatake YAMATO <jet@gyve.org>
2392
2393 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2394 pointer to a hand cursor when hoovering over a mouse-face.
2395
2396 2005-05-27 Kenichi Handa <handa@m17n.org>
2397
2398 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2399
2400 * ccl.c: Now an element of Vccl_program_table is a vector of
2401 length 4, not 3.
2402 (ccl_get_compiled_code): New arg idx. Caller changed.
2403 Adjust for the change of Vccl_program_table.
2404 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2405 (check_ccl_update): New function.
2406 (Fregister_ccl_program): Use ASET to set an element of a vector.
2407 Adjusted for the change of Vccl_program_table.
2408
2409 * ccl.h (struct ccl_program): New member idx.
2410 (check_ccl_update): Extern it.
2411
2412 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2413
2414 * image.c (Vimage_library_alist): Move from image.el.
2415 (syms_of_image): Defvar it.
2416 (lookup_image_type): Use it.
2417
2418 * buffer.c (Fbuffer_local_value): Make argument name match its use
2419 in docstring.
2420
2421 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2422
2423 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2424 (Fposn_at_x_y): Make argument name match its use in docstring.
2425
2426 2005-05-26 Lute Kamstra <lute@gnu.org>
2427
2428 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2429
2430 2005-05-24 Masatake YAMATO <jet@gyve.org>
2431
2432 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2433 as loop sentinels.
2434
2435 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2436
2437 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2438 select frame title ("Question"/"Information").
2439 (xdialog_show): Use it.
2440
2441 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2442
2443 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2444
2445 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2446 a third argument (Qnil).
2447
2448 * lisp.h: x-popup-dialog can have three arguments.
2449
2450 * editfns.c (Fmessage_box): Use "Information" for frame title.
2451
2452 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2453
2454 * termcap.c [VMS]: Include <starlet.h>.
2455
2456 2005-05-23 Masatake YAMATO <jet@gyve.org>
2457
2458 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2459 for mouse-face. Change the type of the first argument from `window'
2460 to `Lisp_Object'.
2461 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2462 window instead of w.
2463
2464 2005-05-22 Andreas Schwab <schwab@suse.de>
2465
2466 * process.c (send_process): Move misplaced volatile.
2467
2468 2005-05-21 Richard M. Stallman <rms@gnu.org>
2469
2470 * xdisp.c (display_mode_element): If we're processing a list and
2471 padding is specified, put it after the last element.
2472
2473 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2474
2475 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2476 "superroot" on DOS_NT systems.
2477
2478 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2479
2480 * process.c (send_process): Restore the SIGPIPE handler if we
2481 catch a SIGPIPE.
2482
2483 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2484
2485 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2486 misleading comments).
2487 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2488
2489 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2490
2491 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2492 Correct the right value.
2493
2494 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2495
2496 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2497 post-command-idle-hook and post-command-idle-delay.
2498 (command_loop_1): Don't try to execute post-command-idle-hook.
2499
2500 2005-05-16 Kim F. Storm <storm@cua.dk>
2501
2502 * xdisp.c (handle_display_prop): Handle empty replacement.
2503 (handle_single_display_spec): Return -1 for empty replacement.
2504
2505 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2506
2507 * .gdbinit (pitx): Print more info about iterator.
2508
2509 2005-05-16 Andreas Schwab <schwab@suse.de>
2510
2511 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2512
2513 2005-05-14 Richard M. Stallman <rms@gnu.org>
2514
2515 * xdisp.c (message3): Call cancel_echoing.
2516
2517 * alloc.c (Fmemory_full_p): New function.
2518 (syms_of_alloc): defsubr it.
2519
2520 * process.c (send_process_trap): Unblock SIGPIPE.
2521 (send_process): Reset SIGPIPE handler before reporting error.
2522
2523 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2524
2525 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2526
2527 2005-05-13 Richard M. Stallman <rms@gnu.org>
2528
2529 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2530 (Finsert_file_contents): If we read 0 bytes from a special file,
2531 unlock the visited file if we locked it.
2532 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2533 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2534
2535 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2536
2537 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2538
2539 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2540 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2541 redisplay from being paused by them.
2542
2543 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2544 [!MAC_OSX] (target_ticks): Remove variable.
2545 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2546 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2547 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2548 event occurs before timeout, behave as if the function were interrupted.
2549 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2550 handling using Time Manager routines.
2551 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2552 New variables.
2553 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2554 (setitimer): New functions.
2555
2556 * macfns.c, macmenu.c: Don't include signal.h.
2557
2558 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2559 Rename from get_control_part_bound. All callers changed.
2560 (x_scroll_bar_clear): New function.
2561 (x_clear_frame): Use it.
2562 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2563 (x_scroll_bar_handle_click): Change type of second argument from
2564 int to ControlPartCode.
2565 (check_alarm): Remove declaration.
2566 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2567 (XTread_socket): Use ControlPartCode instead of SInt16.
2568
2569 2005-05-13 Nozomu Ando <nand@mac.com>
2570
2571 * unexmacosx.c: Include assert.h.
2572 (MACOSX_MALLOC_MULT16): New define.
2573 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2574 ptr is in unexec regions by checking it is multiple of 16.
2575 (unexec_malloc_header_t): New typedef.
2576 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2577 allocated size information in unexec_malloc_header.
2578
2579 2005-05-10 Richard M. Stallman <rms@gnu.org>
2580
2581 * xterm.c (noinclude): Add #undef.
2582
2583 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2584
2585 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2586
2587 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2588 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2589 Doc fixes.
2590
2591 * dired.c (Ffile_name_completion): Make argument name
2592 match its use in docstring.
2593
2594 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2595
2596 * eval.c (Fdefvaralias): Remove any pre-existing
2597 variable-documentation property of the alias.
2598
2599 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2600
2601 * xfns.c (start_hourglass): Do nothing when running on a tty.
2602
2603 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2604
2605 * fns.c (Fchar_table_range): Fix typos in docstring.
2606
2607 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2608
2609 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2610
2611 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2612
2613 * lread.c (Flocate_file_internal): Doc fix.
2614
2615 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2616
2617 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2618
2619 * macselect.c (x_own_selection): Accept Lisp string as result of
2620 selection converter function.
2621 (x_clear_frame_selections): Don't call x-lost-selection-functions
2622 if Emacs is not owner of the selection.
2623 (Vmac_services_selection): Put variable and initialization in
2624 #ifdef MAC_OSX.
2625 (syms_of_macselect) [MAC_OSX]: Set default value of
2626 Vmac_services_selection to PRIMARY.
2627
2628 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2629 (mac_handle_tool_bar_click): Remove unused function and declaration.
2630 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2631 (install_scroll_bar_timer, set_scroll_bar_timer)
2632 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2633 (get_control_part_bound, x_scroll_bar_handle_press)
2634 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2635 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2636 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2637 (scroll_bar_timer_event_posted_p): New variables.
2638 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2639 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2640 (x_scroll_bar_create): Set control reference with NewControl.
2641 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2642 Initialize track_top and track_height to nil.
2643 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2644 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2645 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2646 and associated window.
2647 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2648 from window config.
2649 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2650 Set track_top and track_height to nil when scroll bar size is changed.
2651 Recalculate them if they are nil.
2652 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2653 clicked control is a scroll bar.
2654 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2655 event handler functions. Don't add modifiers to scroll bar click
2656 events. Call scroll bar release handler when window is deactivated.
2657 (mac_initialize): Remove unused code for X toolkit.
2658 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2659 Initialize Vx_toolkit_scroll_bars to nil.
2660
2661 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2662 New members track_top and track_height.
2663
2664 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2665 init_process when including sys/select.h.
2666
2667 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2668
2669 * eval.c (Fdefvaralias): Doc fix.
2670
2671 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2672
2673 2005-05-05 Kim F. Storm <storm@cua.dk>
2674
2675 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2676 default value.
2677 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2678 Fix type of cursor-in-non-selected-windows.
2679
2680 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2681
2682 * mac.c: #undef init_process so not to conflict with system headers.
2683
2684 2005-05-02 Richard M. Stallman <rms@gnu.org>
2685
2686 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2687
2688 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2689
2690 * xdisp.c (Vcursor_in_non_selected_windows)
2691 (Qcursor_in_non_selected_windows): Vars deleted.
2692 (syms_of_xdisp): Don't initialize them.
2693 (get_window_cursor_type): Use cursor_in_non_selected_windows
2694 buffer slot.
2695
2696 2005-05-02 Kim F. Storm <storm@cua.dk>
2697
2698 * macros.c (executing_kbd_macro_index): Rename from
2699 executing_macro_index. All uses changed.
2700 (executing_kbd_macro_iterations): Rename from
2701 executing_macro_iterations. All uses changed.
2702 (executing_kbd_macro): Rename from executing_macro.
2703 All uses changed.
2704 (syms_of_macros): Rename Lisp var executing-macro-index to
2705 executing-kbd-macro-index.
2706
2707 * xdisp.c (move_it_in_display_line_to): Fix last change.
2708
2709 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2710
2711 * xmenu.c (Fx_popup_menu): Doc fix.
2712
2713 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2714
2715 2005-05-02 Jason Rumney <jasonr@gnu.org>
2716
2717 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2718
2719 2005-05-02 Nozomu Ando <nand@mac.com>
2720
2721 * sysselect.h: Fix typo.
2722
2723 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2724
2725 * charset.c (Fchars_in_region): Remove as obsolete.
2726
2727 2005-05-01 Kim F. Storm <storm@cua.dk>
2728
2729 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2730 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2731 glyph.
2732
2733 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2734
2735 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2736
2737 2005-05-01 Richard M. Stallman <rms@gnu.org>
2738
2739 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2740 If user cancels the menu, quit unless FOR_CLICK.
2741
2742 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2743 All uses changed.
2744 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2745 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2746 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2747 * commands.h (Vexecuting_kbd_macro): Likewise.
2748
2749 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2750
2751 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2752
2753 2005-04-30 Richard M. Stallman <rms@gnu.org>
2754
2755 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2756 property of the file name handler.
2757 (Qoperations): New variable.
2758 (syms_of_fileio): Initialize and staticpro it.
2759
2760 * xdisp.c (set_message_1): Delete xassert.
2761
2762 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2763
2764 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2765
2766 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2767
2768 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2769 before/after including Carbon.h if there is a working mktime.
2770
2771 2005-04-28 Kim F. Storm <storm@cua.dk>
2772
2773 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2774 Fix cyclic alias check. If alias loop is detected, signal
2775 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2776
2777 2005-04-28 Lute Kamstra <lute@gnu.org>
2778
2779 * eval.c (do_autoload): Record only autoloads in the autoload
2780 property of symbols.
2781
2782 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2783
2784 * emacs.c (USAGE1): Add --basic-display and --quick options.
2785
2786 2005-04-27 Kim F. Storm <storm@cua.dk>
2787
2788 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2789
2790 2005-04-26 Richard M. Stallman <rms@gnu.org>
2791
2792 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2793 (syms_of_window): Doc fixes.
2794
2795 * indent.c (Fvertical_motion): Undo previous change.
2796
2797 2005-04-26 Kenichi Handa <handa@m17n.org>
2798
2799 * fns.c (char_table_range): New function.
2800 (Fchar_table_range): Signal an error if characters in the range
2801 have inconsistent values. Don't check the parent.
2802
2803 2005-04-25 Kenichi Handa <handa@m17n.org>
2804
2805 * fontset.c (fontset_set): Fix previous change.
2806
2807 2005-04-24 Richard M. Stallman <rms@gnu.org>
2808
2809 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2810
2811 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2812
2813 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2814 of RE_TRANSLATE to int, to shut up GCC warnings.
2815
2816 * fileio.c (Fcopy_file): Doc fix.
2817 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2818 not needed.
2819
2820 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2821
2822 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2823 (SOME_MACHINE_OBJECTS): Likewise.
2824 (mac.o): Depend on ccl.h.
2825 (macselect.o): New target.
2826
2827 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2828 Call syms_of_macselect.
2829
2830 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2831
2832 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2833 (QCLIPBOARD): Remove variable.
2834 (syms_of_mac): Don't initialize it.
2835 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2836 Remove functions.
2837 (syms_of_mac): Don't defsubr them.
2838 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2839 (QHFS_plus_D, QHFS_plus_C): New variables.
2840 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2841 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2842 (cfstring_create_normalized): New functions.
2843 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2844 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2845
2846 * macterm.c (handling_window_update, terminate_flag):
2847 Remove variables.
2848 (do_window_update, do_ae_quit_application, XTread_socket):
2849 Don't use them.
2850 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2851 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2852 (init_service_handler): Move to macselect.c. Remove declarations.
2853 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2854 (Qapplication, Qabout): New variables.
2855 (syms_of_mac): Initialize them.
2856 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2857 (Qperform): New variables.
2858 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2859 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2860 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2861 (mac_store_application_menu_event, init_menu_bar): New functions.
2862 [USE_CARBON_EVENTS] (mac_handle_command_event)
2863 (init_command_handler): New functions.
2864 (mac_handle_window_event): Return noErr on window update event.
2865 (do_ae_quit_application): Call mac_store_application_menu_event.
2866 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2867 and init_menu_bar.
2868
2869 * macterm.h (x_clear_frame_selections): Add extern.
2870
2871 * macselect.c: New file for selection processing on Mac OS.
2872
2873 2005-04-23 Richard M. Stallman <rms@gnu.org>
2874
2875 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2876 (Frename_file): Pass new arg to Fcopy_file.
2877
2878 * window.c (window_size_fixed): Variable deleted.
2879 (syms_of_window): Initialize window-size-fixed to nil.
2880 But don't DEFVAR window_size_fixed.
2881
2882 2005-04-23 Andreas Schwab <schwab@suse.de>
2883
2884 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2885 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2886 use lib64 instead of lib.
2887 (_LP64) [_ARCH_PPC64]: Define if not defined.
2888
2889 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2890
2891 * s/ms-w32.h (HAVE_PWD_H): Define.
2892
2893 2005-04-22 Kenichi Handa <handa@m17n.org>
2894
2895 * fns.c (copy_sub_char_table): Explicitly copy the default value
2896 of the sub-chartable.
2897
2898 * fontset.c (fontset_set): When a sub-chartable is created,
2899 explicitly sets the defalt value.
2900
2901 2005-04-22 Kim F. Storm <storm@cua.dk>
2902
2903 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
2904 (Fsafe_plist_get): Rename to Fplist_get.
2905 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
2906 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
2907
2908 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
2909
2910 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
2911 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2912 Use Fplist_get instead of Fsafe_plist_get.
2913
2914 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
2915
2916 2005-04-21 Miles Bader <miles@gnu.org>
2917
2918 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
2919
2920 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
2921
2922 * sysdep.c: Remove reference to defunct vms-pwd.h.
2923 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
2924 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
2925
2926 * config.in: Regenerate.
2927
2928 2005-04-20 Kenichi Handa <handa@m17n.org>
2929
2930 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
2931 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
2932 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
2933
2934 * alloc.c (make_sub_char_table): Argument changed to initial
2935 value of the slots.
2936
2937 * data.c (Faref): Handle special slots used as default values of
2938 ascii, eight-bit-control, eight-bit-control. Don't ignore a
2939 default value set for a group of characters.
2940 (Faset): Signal an error if IDXVAL is not a valid character code.
2941 Make a sub-chartable with correct initial value.
2942
2943 * fns.c (Fset_char_table_range): Don't set slots used as default
2944 values for ascii, eight-bit-control, eight-bit-graphic.
2945 Don't call Faref with charset-id.
2946 (Fset_char_table_default): Document how to treat normal character
2947 argument. Handle special slots used as default values of ascii,
2948 eight-bit-control, eight-bit-control. Make a sub chartable if
2949 necessary.
2950
2951 2005-04-20 Kenichi Handa <handa@m17n.org>
2952
2953 * search.c (boyer_moore): Fix previous change.
2954
2955 2005-04-19 Kim F. Storm <storm@cua.dk>
2956
2957 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
2958 face unless last visible char and first invisible char have the
2959 same face. Also use default face if saved_face_id is undefined.
2960
2961 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2962
2963 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2964 `full_name'.
2965 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2966 mac_scriptcode member.
2967
2968 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2969 (syms_of_mac): Don't initialize them.
2970 (Vmac_charset_info_alist): New variable.
2971 (syms_of_mac): Defvar it.
2972 (create_text_encoding_info_alist): New function.
2973 (decode_mac_font_name, mac_to_x_fontname)
2974 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2975 code the correspondence among XLFD charsets, Mac script codes, and
2976 Emacs coding systems. Use Vmac_charset_info_alist and result of
2977 create_text_encoding_info_alist instead.
2978 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2979 routines also on Mac OS Classic.
2980 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2981 Use add_font_name_table_entry.
2982 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2983 specified. Derive unspecified scalable fields from specified one.
2984 (x_list_fonts): Consider Valternate_fontname_alist.
2985 (kDefaultFontSize): Change value from 9 to 12.
2986 (XLoadQueryFont): Get decoded font family, font face, and charset
2987 from x_font_name_to_mac_font_name. Set full name of loaded font.
2988 (mac_unload_font): Free `full_name' member.
2989 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2990 NULL. Copy full_name member of struct MacFontStruct to that of
2991 struct font_info.
2992
2993 2005-04-19 Kim F. Storm <storm@cua.dk>
2994
2995 * xdisp.c (handle_stop): Set saved_face_id to current face if
2996 selective_display_ellipsis_p so ellipsis will be shown in same
2997 face as preceding text.
2998 (setup_for_ellipsis): Don't set saved_face_id here.
2999 (next_element_from_display_vector): Default to saved_face_id.
3000
3001 * fns.c (Fsafe_get): New function.
3002 (syms_of_fns): Defsubr it.
3003
3004 * lisp.h (Fsafe_get): EXFUN it.
3005
3006 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3007 loops in case of bad face property lists. Limit number of face
3008 alias lookups to 10 (in case of face alias loops).
3009
3010 2005-04-18 Kim F. Storm <storm@cua.dk>
3011
3012 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3013 It replaces the corresponding member from struct window, as a
3014 window may now show multiple overlay arrows.
3015 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3016
3017 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3018 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3019
3020 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3021 rather than from window.
3022 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3023 overlay_arrow_p members.
3024 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3025 if not default.
3026
3027 * window.h (struct window): Remove member overlay_arrow_bitmap.
3028
3029 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3030
3031 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3032 Calls changed. Don't check for overlay-arrow-bitmap property here.
3033 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3034 fringe is present, return Lisp integer for bitmap (or -1 for default).
3035 Fix value of overlay-arrow-bitmap property to be a symbol, use
3036 lookup_fringe_bitmap to parse it.
3037 (display_line): Change call to overlay_arrow_at_row. Store integer
3038 return value as overlay bitmap in row rather than window.
3039 Only show overlay arrow if row displays text, or if no other overlay
3040 arrow is seen in window (if overlay marker is at point-max).
3041
3042 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3043
3044 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3045
3046 2005-04-18 Lute Kamstra <lute@gnu.org>
3047
3048 * lread.c (Vloads_in_progress): Static.
3049 * fns.c (Vloads_in_progress): Remove extern.
3050 (load_in_progress): Add extern.
3051 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3052
3053 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3054
3055 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3056
3057 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3058
3059 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3060 no frame is visible.
3061
3062 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3063
3064 * term.c (struct keys): Add support for shifted keys.
3065
3066 2005-04-16 Richard M. Stallman <rms@gnu.org>
3067
3068 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3069 (set_message): Call with_echo_area_buffer with WHICH = 0.
3070 (set_message_1): Erase the echo area buffer first thing.
3071 (echo_area_display): Don't clear echo_message_buffer.
3072
3073 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3074
3075 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3076
3077 * mac.c: Include charset.h and coding.h.
3078 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3079 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3080 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3081
3082 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3083
3084 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3085
3086 * macterm.c (x_autoselect_window_p): Remove variable.
3087 (last_window): New variable.
3088 (XTreassert_line_highlight, x_change_line_highlight):
3089 Remove declarations.
3090 (mac_focus_changed, x_detect_focus_change): New functions and
3091 declarations.
3092 (XTextExtents16, front_emacs_window): Remove function.
3093 (mac_focus_frame): New function.
3094 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3095 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3096 (x_scroll_bar_report_motion): Obtain window from control owner.
3097 (x_make_frame_invisible): Set window manager size hint.
3098 (do_mouse_moved): Remove function.
3099 (XTread_socket): Move its contents here. Generate select-window
3100 event on mouse movement if needed. Use x_detect_focus_change on
3101 activate/deactivate events. Don't deiconify frame or invalidate
3102 window rectangle when dnd items are dropped.
3103 Don't activate/deactivate root control.
3104 (frame_highlight, frame_unhighlight): Activate/deactivate root
3105 control here.
3106 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3107
3108 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3109 New extern.
3110
3111 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3112
3113 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3114 (lisp): Use it.
3115 (SOME_MACHINE_LISP): Add tooltip.
3116
3117 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3118
3119 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3120 Don't include TextEncodingConverter.h.
3121 (mac_system_script_code, Vmac_system_locale): New variables.
3122 (syms_of_mac): Defvar them.
3123 (mac_get_system_locale): New function.
3124
3125 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3126 Use ENCODE_SYSTEM to encode title bar string.
3127 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3128 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3129 Use CFStringGetSystemEncoding to get system default string encoding.
3130
3131 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3132 TextEncodingConverter.h.
3133
3134 2005-04-13 Steven Tamm <steventamm@mac.com>
3135
3136 * macterm.c (syms_of_macterm): Remove redundant definition of
3137 mac-pass-control-to-system.
3138
3139 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3140
3141 * window.c (Fset_window_configuration): Be careful when you choose
3142 among several possible points for the new_current_buffer.
3143
3144 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3145
3146 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3147 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3148 (Qlanguage_change) [MAC_OS]: New variable.
3149 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3150 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3151
3152 * macterm.c (mac_keyboard_text_encoding)
3153 (current_mac_keyboard_text_encoding): Remove variables.
3154 (XTread_socket): Store language-change event if keyboard script change
3155 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3156 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3157
3158 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3159
3160 2005-04-10 Richard M. Stallman <rms@gnu.org>
3161
3162 * emacs.c (standard_args): Rename --bare-bones to --quick.
3163 Add -D aka --basic-display.
3164
3165 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3166
3167 2005-04-09 Richard M. Stallman <rms@gnu.org>
3168
3169 * keymap.c (where_is_internal): Convert a string used as event type
3170 into "(any string)".
3171
3172 * lread.c (Vloads_in_progress): Not static.
3173 * fns.c (Vloads_in_progress): Add extern.
3174 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3175
3176 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3177
3178 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3179
3180 2005-04-09 Lute Kamstra <lute@gnu.org>
3181
3182 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3183 within the accessible part of the buffer.
3184
3185 2005-04-09 Kim F. Storm <storm@cua.dk>
3186
3187 * lread.c (readevalloop): Add args START and END as region in
3188 current buffer to read. Callers changed.
3189 When specified, narrow to this region only when reading,
3190 not during eval. Track next point to read from during eval.
3191 Also restore point to "real" buffer position before eval.
3192 (Feval_region): Don't save excursion and restriction here, and
3193 don't narrow to region. Just pass region to readevalloop.
3194 Note: Point is now preserved even when PRINTFLAG is nil.
3195
3196 2005-04-08 Kim F. Storm <storm@cua.dk>
3197
3198 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3199
3200 2005-04-06 Kim F. Storm <storm@cua.dk>
3201
3202 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3203
3204 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3205
3206 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3207 (Fmac_get_preference): Doc fix.
3208
3209 * macfns.c (Fx_create_frame, x_create_tip_frame):
3210 Add "fontset-mac" to fallback font/fontsets.
3211
3212 2005-04-04 Kim F. Storm <storm@cua.dk>
3213
3214 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3215
3216 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3217 Call it again after autoload.
3218
3219 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3220
3221 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3222 mallopt.
3223
3224 * ralloc.c (r_alloc_init): Ditto.
3225
3226 2005-04-01 Kenichi Handa <handa@m17n.org>
3227
3228 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3229 (Vascii_eqv_table): Extern them.
3230
3231 * casetab.c (set_case_table): If standard is nonzero, setup
3232 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3233
3234 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3235 not DOWNCASE_TABLE.
3236 (string_match_1): Likewise.
3237 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3238 Vascii_downcase_table.
3239 (fast_string_match_ignore_case): Likewise.
3240 (search_buffer): Fix checking of boyer-moore usability.
3241 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3242 No need of tranlating characters in PAT. Fix calculation of
3243 simple_translate.
3244
3245 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3246
3247 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3248 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3249 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3250 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3251 really work and that breaks with some versions of Xaw3d.
3252
3253 2005-03-31 Kenichi Handa <handa@m17n.org>
3254
3255 * coding.c (syms_of_coding): Fix previous change.
3256
3257 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3258
3259 * fileio.c (search_embedded_absfilename): Fix last change.
3260
3261 2005-03-25 Kenichi Handa <handa@m17n.org>
3262
3263 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3264 the docstring of coding-category-list.
3265
3266 2005-03-31 Kim F. Storm <storm@cua.dk>
3267
3268 * keyboard.c (Qmouse_fixup_help_message): New var.
3269 (syms_of_keyboard): Intern and staticpro it.
3270 (show_help_echo): Apply mouse-fixup-help-message to help string.
3271
3272 2005-03-30 Kim F. Storm <storm@cua.dk>
3273
3274 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3275
3276 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3277
3278 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3279 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3280 (Ffile_name_absolute_p): Use it.
3281 (search_embedded_absfilename): New fun, extracted from
3282 Fsubstitute_in_file_name. Use file_name_absolute_p.
3283 Free the pw data after use.
3284 (Fsubstitute_in_file_name): Use it.
3285 After cutting a prefix, re-check file-name-handler.
3286
3287 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3288
3289 * w32term.h (x_output): Add focus_state.
3290
3291 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3292 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3293
3294 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3295
3296 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3297 Use Fexit_minibuffer.
3298 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3299
3300 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3301
3302 * dired.c (Ffile_attributes): Add a missing gcpro.
3303
3304 * alloc.c (make_number): The arg can be bigger than `int'.
3305 * lisp.h (make_number): Make prototype more precise.
3306
3307 * process.c, dired.c (Vfile_name_coding_system)
3308 (Vdefault_file_name_coding_system):
3309 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3310 (Vdefault_file_name_coding_system): Remove unused declarations.
3311
3312 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3313
3314 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3315 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3316 menus fail to pop up).
3317
3318 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3319
3320 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3321 Just prepend a backslash without replacing the NBSP by an SPC.
3322
3323 2005-03-22 Kim F. Storm <storm@cua.dk>
3324
3325 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3326 * dispextern.h (lookup_derived_face): Fix prototype.
3327 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3328
3329 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3330 right-fringe face from fringe face.
3331
3332 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3333 Derive face from fringe face.
3334
3335 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3336
3337 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3338
3339 2005-03-22 David Kastrup <dak@gnu.org>
3340
3341 * textprop.c (Fnext_char_property_change)
3342 (Fprevious_char_property_change): Allow marker as limit.
3343 (Fnext_single_char_property_change)
3344 (Fprevious_single_char_property_change): Check that limit is a
3345 number in strings.
3346 (Fnext_single_char_property_change): Coerce position to integer.
3347 (Fprevious_single_char_property_change): Same here.
3348
3349 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3350
3351 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3352
3353 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3354
3355 * frame.c (Fignore_event): Remove.
3356 (syms_of_frame): Don't defsubr it.
3357
3358 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3359 redundant `ignore-event'.
3360
3361 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3362
3363 * unexec.c (write_segment, unexec): Move these functions to avoid
3364 forward references (which cause errors with "gcc -gcoff").
3365
3366 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3367
3368 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3369 that it doesn't become "tooltip". The specbind is enough.
3370
3371 * xrdb.c (x_load_resources): Use different char *helv when I18N
3372 is present.
3373
3374 2005-03-17 Kenichi Handa <handa@m17n.org>
3375
3376 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3377
3378 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3379
3380 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3381 Use xic_create_fontsetname even for non-Motif menus.
3382 Don't forget to free the fontsetname.
3383
3384 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3385
3386 2005-03-17 Richard M. Stallman <rms@gnu.org>
3387
3388 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3389
3390 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3391 (Fmake_symbolic_link): Use G to read the new file name.
3392
3393 * callint.c (Finteractive): Document G option.
3394 (Fcall_interactively): Implement G option.
3395
3396 * buffer.c (buffer_lisp_local_variables): New function,
3397 broken out from Fbuffer_local_variables.
3398 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3399
3400 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3401
3402 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3403 Always return a freshly allocated string.
3404 (xic_create_xfontset): Adjust call.
3405
3406 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3407 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3408 (dump_realized_face): Fix warning.
3409
3410 * emacs.c (Fkill_emacs): YAILOM.
3411
3412 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3413
3414 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3415
3416 * mac.c (HASHKEY_TERMINAL): Remove.
3417 (HASHKEY_MAX_NID): New macro.
3418 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3419 argument.
3420 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3421 (xrm_create_database, xrm_q_put_resource)
3422 (xrm_merge_string_database, xrm_q_get_resource_1)
3423 (xrm_q_get_resource): Change resource database representation so
3424 that it may not use multiple hash tables for a single database.
3425 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3426
3427 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3428
3429 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3430
3431 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3432 locale-coding-system, as was already done for WINDOWSNT.
3433
3434 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3435 translation for chars in the 0-255 range.
3436
3437 2005-03-16 Lute Kamstra <lute@gnu.org>
3438
3439 * floatfns.c (Ffloor): Doc fix.
3440
3441 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3442
3443 * mac.c: Include macterm.h instead of directly including Carbon.h.
3444 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3445 (Qarray, Qdictionary): New variables.
3446 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3447 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3448 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3449 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3450 in callback for CFDictionaryApplyFunction.
3451 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3452 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3453 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3454 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3455 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3456 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3457 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3458 (skip_white_space, parse_comment, parse_include_file)
3459 (parse_binding, parse_component, parse_resource_name, parse_value)
3460 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3461 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3462 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3463 New functions.
3464
3465 * macfns.c (mac_get_rdb_resource): Remove function.
3466 (x_get_string_resource): Use xrm_get_resource.
3467
3468 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3469
3470 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3471 name_list_element.
3472 (mac_make_rdb): Create resource database from preferences and
3473 argument string.
3474 (mac_term_init): Save resource database to cddr part of
3475 name_list_element.
3476
3477 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3478 (xrm_get_preference_database): Add externs.
3479 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3480 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3481 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3482
3483 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3484 defined (DARWIN) || defined (MAC_OSX)'
3485
3486 * s/darwin.h (DARWIN): Don't define.
3487
3488 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3489
3490 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3491 Remove unused variables.
3492 (syms_of_macfns): Don't initialize them. Likewise for
3493 Qface_set_after_frame_default. Defvar and initialize
3494 Vx_window_horizontal_drag_shape.
3495 (x_set_mouse_color): Change mouse pointer shape.
3496 (mac_window) [!MAC_OSX]: Create root control.
3497 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3498 (hourglass_started): New function (from xfns.c).
3499 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3500 MAC_OSX.
3501 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3502 indicator for each non-tooltip frame if needed, and show it.
3503 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3504
3505 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3506 Controls.h. Use ThemeCursor instead of CursHandle.
3507
3508 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3509 Remove functions and declarations.
3510 (mac_set_colors): Take argument for saving background color.
3511 All callers changed.
3512 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3513 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3514 background color.
3515 (x_update_end, mac_do_track_drag): Don't reset background color.
3516 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3517 Use SetThemeCursor.
3518 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3519 indicator control to the upper-right corner of the window.
3520 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3521 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3522 (do_window_update): Update controls after updating content area.
3523 (mac_handle_window_event): Remove unused extern.
3524 (XTread_socket): Check both control handle and control part code
3525 to determine whether a scroll bar is clicked. Activate/deactivate
3526 root control instead of contained scroll bar controls.
3527 (make_mac_terminal_frame): Use ThemeCursor constants.
3528
3529 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3530 New member hourglass_control.
3531 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3532 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3533
3534 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3535
3536 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3537 coincides with that in Apple X11 except `clear', `enter' on
3538 laptops, and fn + `enter' on laptops.
3539
3540 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3541
3542 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3543 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3544 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3545
3546 * xfns.c (xic_defaut_fontset): New constant.
3547 (xic_create_fontsetname): New function.
3548 Extracted from create_frame_xic. Try to generate a slightly
3549 better fontset.
3550 (xic_create_xfontset): Use it.
3551 (create_frame_xic): Simplify.
3552
3553 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3554
3555 * fileio.c (Fmake_symbolic_link): Fix last change.
3556
3557 2005-03-11 Richard M. Stallman <rms@gnu.org>
3558
3559 * fileio.c (Frename_file, Fadd_name_to_file)
3560 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3561 expand the basename of FILE relative to it.
3562
3563 2005-03-11 Kenichi Handa <handa@m17n.org>
3564
3565 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3566 before calling setup_coding_system so that autoloading of a coding
3567 system work.
3568
3569 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3570
3571 * xfns.c (hourglass_started): New function.
3572
3573 * dispextern.h: Declare hourglass_started.
3574
3575 * keyboard.c (Fexecute_extended_command): Restart hourglass
3576 after call to Fcompleting_read if already started.
3577
3578 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3579 GTK main loop is entered in xterm.c, thus doing the redraw.
3580
3581 2005-03-10 Kim F. Storm <storm@cua.dk>
3582
3583 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3584
3585 2005-03-08 Kenichi Handa <handa@m17n.org>
3586
3587 * frame.c (x_set_font): Call set_default_ascii_font if an
3588 available font is found.
3589
3590 * fontset.c (set_default_ascii_font): New function.
3591 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3592
3593 * fontset.h (set_default_ascii_font): Extern it.
3594
3595 2005-03-07 Kim F. Storm <storm@cua.dk>
3596
3597 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3598 (clear_image_cache_count): New var.
3599 (redisplay_internal): Don't clear face and image caches in the
3600 middle of redisplay; do it afterwards.
3601
3602 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3603
3604 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3605 is valid. If not, clear phys_cursor_on_p and return.
3606
3607 2005-03-07 Andreas Schwab <schwab@suse.de>
3608
3609 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3610
3611 2005-03-06 Richard M. Stallman <rms@gnu.org>
3612
3613 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3614
3615 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3616 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3617
3618 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3619
3620 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3621 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3622
3623 2005-03-05 Juri Linkov <juri@jurta.org>
3624
3625 * emacs.c (USAGE1): Replace Info node name "command arguments"
3626 with "emacs invocation".
3627 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3628 allow arguments `--color' and `MODE' to be separated by space.
3629 Add --no-blinking-cursor, -nbc.
3630 (standard_args): Add -nbc, --no-blinking-cursor.
3631
3632 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3633
3634 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3635 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3636 * fileio.c (Fexpand_file_name) [VMS]:
3637 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3638 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3639 (Fsnarf_documentation): Call munge_doc_file_name.
3640
3641 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3642
3643 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3644 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3645 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3646
3647 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3648
3649 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3650 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3651
3652 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3653
3654 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3655 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3656 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3657 (mac_clear_font_name_table): Move extern to macterm.h.
3658
3659 * macfns.c (install_window_handler): Move extern to macterm.h.
3660 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3661 valid. Don't check !NILP (dir) because it is already checked with
3662 CHECK_STRING.
3663 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3664 specifying the default location and obtaining the selected filename.
3665
3666 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3667
3668 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3669 are included via Carbon.h.
3670
3671 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3672 Define USE_CARBON_EVENTS to 1.
3673 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3674 (x_free_frame_resources): Call remove_window_handler for
3675 non-tooltip windows.
3676 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3677 via Carbon.h.
3678 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3679 (mac_do_receive_dragUPP): New variables.
3680 (mac_handle_service_event, init_service_handler): Put declarations
3681 and definitions in #ifdef MAC_OSX.
3682 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3683 drag-and-drop handler functions and register them.
3684 (remove_window_handler): New function.
3685 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3686 Use fsspec_to_posix_pathname.
3687 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3688 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3689 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3690 Set default cursors.
3691 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3692 init_service_handler or init_quit_char_handler.
3693 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3694
3695 * macterm.h (install_window_handler, remove_window_handler)
3696 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3697 (mac_clear_font_name_table): New externs.
3698
3699 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3700
3701 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3702 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3703 (Fexpand_file_name): Likewise.
3704
3705 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3706
3707 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3708 no longer special-case VMS. Add bogus return value.
3709
3710 2005-03-02 Kim F. Storm <storm@cua.dk>
3711
3712 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3713 (xassert) [!XASSERTS]: Define dummy version.
3714
3715 2005-03-02 Kim F. Storm <storm@cua.dk>
3716
3717 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3718 Reported by David Kastrup.
3719
3720 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3721
3722 * xdisp.c (get_next_display_element): Fix control and escape
3723 glyph from display vector.
3724
3725 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3726
3727 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3728
3729 2005-02-27 Richard M. Stallman <rms@gnu.org>
3730
3731 * xdisp.c (fast_find_position): Rename END to BEG.
3732 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3733
3734 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3735
3736 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3737 gtk_window_resize and x_wm_set_size_hint.
3738
3739 2005-02-25 Kim F. Storm <storm@cua.dk>
3740
3741 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3742
3743 * xdisp.c (init_from_display_pos): Don't read past end of
3744 it->overlay_strings array.
3745
3746 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3747
3748 * buffer.c (syms_of_buffer): Fix typo.
3749
3750 2005-02-23 Lute Kamstra <lute@gnu.org>
3751
3752 * buffer.c (Foverlay_buffer): Doc fix.
3753
3754 2005-02-22 Kim F. Storm <storm@cua.dk>
3755
3756 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3757 and symbol keys in alists and hash tables.
3758
3759 * xdisp.c (fast_find_position): Fix search for start of overlay.
3760
3761 2005-02-21 Kim F. Storm <storm@cua.dk>
3762
3763 * window.c (window_scroll_pixel_based): When scrolling backwards,
3764 handle partial visible line at end of window even when we hit PT.
3765
3766 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3767
3768 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3769
3770 2005-02-21 Kim F. Storm <storm@cua.dk>
3771
3772 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3773 I think those asserts are bogus if buffer contains invisible text
3774 or images.
3775
3776 2005-02-21 David Kastrup <dak@gnu.org>
3777
3778 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3779
3780 2005-02-20 Kim F. Storm <storm@cua.dk>
3781
3782 * xdisp.c (pos_visible_p): Be sure to move to the specified
3783 position. Always get the full ascent / descent of the
3784 corresponding row, to return reliable rtop and rbot values.
3785 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3786 Must look one character back, as back_to_previous_line_start
3787 returns position after the newline.
3788 (move_it_vertically_backward): Fix heuristic for when to move further
3789 back in case line_height * 2/3 is larger than window height.
3790 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3791 as it does not do anything anymore. Add arg current_matrix_p to
3792 use current matrix rather than desired matrix when set.
3793 (try_cursor_movement): Don't scroll to make cursor row fully
3794 visible if cursor didn't move. This avoids unexpected recentering
3795 in case of blinking cursor or accepting process output.
3796 Use current matrix to check cursor row visibility.
3797 (redisplay_window): Fix whether to recenter or move to top in case
3798 cursor line is taller than window height.
3799 (find_first_unchanged_at_end_row): Stop search if we reach a row
3800 which not enabled (instead of abort).
3801
3802 2005-02-18 Kim F. Storm <storm@cua.dk>
3803
3804 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3805 to be nil in a :box attribute value list; customize prints that
3806 as lisp value when no box color is specified.
3807
3808 * .gdbinit (pitx, pit): Pretty print display iterator.
3809 (prowx, prow): Pretty print glyph row.
3810 (pcursorx, pcursor): Pretty print a window cursor.
3811 (pwinx, pwin): Pretty print struct window.
3812
3813 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3814
3815 * alloc.c (BLOCK_BYTES): Harmless typo.
3816
3817 2005-02-17 Andreas Schwab <schwab@suse.de>
3818
3819 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3820 of XGetWindowProperty to avoid aliasing issues.
3821 (Fx_window_property): Likewise.
3822
3823 * xselect.c (Fx_disown_selection_internal): Use union of struct
3824 input_event and struct selection_input_event to avoid aliasing issues.
3825
3826 * xterm.c (handle_one_xevent): Use union of struct input_event and
3827 struct selection_input_event to avoid aliasing issues.
3828 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3829
3830 2005-02-17 Kim F. Storm <storm@cua.dk>
3831
3832 * dispextern.h (enum it_method): New enum.
3833 (GET_FROM_*): Its members.
3834 (struct it): Change member method from function pointer to enum.
3835
3836 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3837 (setup_for_ellipsis, handle_single_display_spec)
3838 (handle_composition_prop, next_overlay_string)
3839 (get_overlay_strings, reseat_1, reseat_to_string)
3840 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3841 (in_display_vector_p, display_line, get_next_display_element):
3842 Change it->method from function pointer to enum.
3843 (get_next_element): New array to map it->method to function.
3844 (get_next_display_element): Use it.
3845 (set_iterator_to_next): Use switch instead of if/else chain.
3846
3847 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3848
3849 * w32select.c: Summary: Thorough rework to implement Unicode
3850 clipboard operations and delayed rendering.
3851
3852 Drop last_clipboard_text and related code, keep track of
3853 ownership via clipboard_owner instead. Drop old #if0 sections.
3854
3855 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3856 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3857 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3858 (current_coding_system, current_requires_encoding)
3859 (current_num_nls, current_clipboard_type, current_lcid):
3860 New static variables.
3861
3862 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3863 (render, render_all, run_protected, lisp_error_handler)
3864 (owner_callback, create_owner, setup_config)
3865 (enum_locale_callback, cp_from_locale, coding_from_cp):
3866 New local functions.
3867
3868 (term_w32select, globals_of_w32select): New global functions.
3869
3870 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3871 clipboard_owner instead. Use delayed rendering and provide
3872 all text formats. Provide CF_LOCALE if necessary.
3873
3874 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3875 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3876 available. Force DOS line-ends for decoding.
3877
3878 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3879
3880 (syms_of_w32select): Init and register new variables.
3881
3882 * w32.h: Add prototypes for globals_of_w32select and
3883 term_w32select. Make the neighboring K&R declarations into
3884 prototypes, too.
3885
3886 * emacs.c: Include w32.h to get function prototypes.
3887 (main): Call globals_of_w32select.
3888
3889 * w32.c (term_ntproc): Call term_w32select.
3890
3891 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3892
3893 2005-02-16 Kim F. Storm <storm@cua.dk>
3894
3895 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
3896 at end of display vector.
3897
3898 2005-02-15 Richard M. Stallman <rms@gnu.org>
3899
3900 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
3901 for mode and header lines.
3902
3903 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
3904
3905 * keymap.h (describe_map_tree): Change decl.
3906
3907 * keyboard.c (command_loop_1): Always use safe_run_hooks
3908 to run Qdeferred_action_function.
3909
3910 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
3911 (describe_map, describe_vector): Likewise. When it's 1,
3912 don't omit shadowed bindings, instead mark them as shadowed.
3913
3914 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
3915 for describe_map_tree. Pass 1 for MENTION_SHADOW.
3916
3917 * data.c (Fsetq_default): Allow no arg case.
3918
3919 2005-02-14 Kenichi Handa <handa@m17n.org>
3920
3921 * coding.c (encode_coding_string): Always return a unibyte string.
3922 If NOCOPY is nonzero and there's no need of encoding, make STR
3923 unibyte directly.
3924
3925 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
3926 multibyte string, signal an error instead of aborting.
3927
3928 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
3929
3930 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
3931
3932 2005-02-12 Kim F. Storm <storm@cua.dk>
3933
3934 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
3935
3936 2005-02-10 Kim F. Storm <storm@cua.dk>
3937
3938 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
3939 if it moves outside window or it doesn't display text.
3940
3941 2005-02-09 Kim F. Storm <storm@cua.dk>
3942
3943 * undo.c (Fprimitive_undo): Check that undo function does not
3944 switch buffer.
3945
3946 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3947
3948 * xselect.c (selection_data_to_lisp_data): For the special case
3949 type == XA_ATOM, data contains array of int, not array of Atom.
3950 (x_property_data_to_lisp, selection_data_to_lisp_data):
3951 Comment update: data must be array of int for format == 32.
3952
3953 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
3954
3955 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
3956
3957 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3958
3959 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3960 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3961 convert long array returned from XGetWindowProperty to an int array.
3962 (x_set_tool_bar_lines): Check that width and height is greater than
3963 zero before clearing area.
3964
3965 * xselect.c (x_reply_selection_request): Pass long array to
3966 XChangeProperty so that 64 bit longs are handeled correctly.
3967 (x_get_window_property): If format is 32 and long is bigger than 32
3968 bits convert data from XGetWindowProperty from long array to int array.
3969 (lisp_data_to_selection_data): When the input is a vector and the
3970 format is 32, allocate a long array even if long is bigger than 32 bits.
3971 (x_fill_property_data): Use char, short and long as the man page
3972 for XChangeProperty specifies. This way the data returned is OK for
3973 both 32 and 64 bit machines.
3974 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3975 machines.
3976 (Fx_send_client_event): Undo change from 2005-02-05,
3977 x_fill_property_data now handles that case.
3978
3979 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3980 reason for the approach in the code.
3981
3982 2005-02-07 Kim F. Storm <storm@cua.dk>
3983
3984 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3985
3986 2005-02-06 Richard M. Stallman <rms@gnu.org>
3987
3988 * eval.c (Frun_hook_with_args)
3989 (Frun_hook_with_args_until_success)
3990 (Frun_hook_with_args_until_failure): Doc fixes.
3991
3992 2005-02-05 Andreas Schwab <schwab@suse.de>
3993
3994 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3995
3996 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3997
3998 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3999 the longs in a XClientMessageEvent correctly when long is 64 bits.
4000
4001 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4002
4003 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4004 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4005
4006 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4007
4008 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4009 events so the menu event comes after them. This is to prevent sit-for
4010 from exiting on buffered events directly after a menu selection,
4011 lisp code for Help => About Emacs uses sit-for.
4012
4013 * gtkutil.c (create_menus): Connect selection-done event instead of
4014 the deactivate event to deactivate_cb. This will make the last
4015 leave event come before the call to deactivate_cb, so the leave
4016 event does not make sit-for exit after a menu selection.
4017
4018 2005-02-03 Kim F. Storm <storm@cua.dk>
4019
4020 * dispnew.c (build_frame_matrix_from_leaf_window)
4021 [!GLYPH_DEBUG]: Fix xassert.
4022
4023 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4024
4025 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4026
4027 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4028
4029 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4030 the compiling OS version.
4031
4032 * macfns.c (x_create_tip_frame): Likewise.
4033
4034 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4035
4036 2005-02-03 Richard M. Stallman <rms@gnu.org>
4037
4038 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4039
4040 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4041
4042 * buffer.c (Fbury_buffer): Doc fix.
4043
4044 2005-02-02 Steven Tamm <steventamm@mac.com>
4045
4046 * macfns.c (unwind_create_frame): Fix compile error due to
4047 xassert being uncondition, but predicate is.
4048 * dispnew.c (update_window): Fix compile error due to
4049 xassert being uncondition, but predicate is.
4050
4051 2005-02-02 Miles Bader <miles@gnu.org>
4052
4053 * dispextern.h (xassert): Enable unconditionally.
4054
4055 2005-02-02 Kim F. Storm <storm@cua.dk>
4056
4057 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4058
4059 2005-02-02 Kenichi Handa <handa@m17n.org>
4060
4061 * casefiddle.c (casify_object): Enable changing characters of
4062 different byte length.
4063 (casify_region): Fix loop condition, args to replace_range_2, and
4064 update opoint_byte.
4065
4066 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4067
4068 2005-02-01 Kim F. Storm <storm@cua.dk>
4069
4070 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4071 stack before calling handle_display_prop.
4072
4073 2005-01-31 Kim F. Storm <storm@cua.dk>
4074
4075 * undo.c (Qapply): New lisp var.
4076 (syms_of_undo): Intern and staticpro it.
4077 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4078 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4079
4080 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4081
4082 2005-01-30 Jesper Harder <harder@phys.au.dk>
4083
4084 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4085 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4086
4087 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4088
4089 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4090 Increase value to 3 Meg.
4091
4092 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4093
4094 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4095 button events are not received otherwise.
4096
4097 2005-01-29 Richard M. Stallman <rms@gnu.org>
4098
4099 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4100
4101 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4102
4103 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4104
4105 * keymap.c (access_keymap): YAILOM.
4106
4107 2005-01-27 Kim F. Storm <storm@cua.dk>
4108
4109 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4110 phys cursor position and size for hollow cursor. Position is
4111 aligned with get_glyph_string_clip_rect and ensures that a hollow
4112 cursor is shown, even when the actual glyph is not visible.
4113
4114 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4115
4116 * xterm.c (x_clip_to_row): Ensure y >= 0.
4117 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4118
4119 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4120
4121 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4122
4123 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4124
4125 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4126
4127 2005-01-27 Kim F. Storm <storm@cua.dk>
4128
4129 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4130 glyph, even when row is only partially visible and actual cursor
4131 position is not visible.
4132
4133 2005-01-24 Richard M. Stallman <rms@gnu.org>
4134
4135 * xterm.c (x_error_quitter): No longer static, and moved after
4136 x_error_handler.
4137
4138 2005-01-24 Kim F. Storm <storm@cua.dk>
4139
4140 * xdisp.c (move_it_by_lines): If we move forward after going too
4141 far back, cancel move if end position is same as start position.
4142
4143 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4144
4145 * dispextern.h (struct glyph_string): New members clip_head and
4146 clip_tail.
4147
4148 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4149 region to the area between clip_head and clip_tail.
4150 (draw_glyphs): Record the area that need to be actually redrawn to
4151 the new variables clip_head and clip_tail when there are
4152 overhangs. Set values of these variables to the corresponding
4153 members in struct glyph_string. Refine x coordinates for
4154 notice_overwritten_cursor using clip_head and clip_tail.
4155
4156 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4157
4158 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4159 QDTextBounds.
4160 (x_draw_glyph_string): Don't fill the background of the successor
4161 of a glyph with a right overhang if the successor will draw a cursor.
4162 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4163 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4164
4165 2005-01-24 Kim F. Storm <storm@cua.dk>
4166
4167 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4168 direction if window height was smaller than next-screen-context-lines.
4169 Now always scroll at least one line in the requested direction.
4170 Ensure that we actually do scroll backwards when requested to do so.
4171
4172 * xdisp.c (redisplay_window): Only try to make cursor line fully
4173 visible once (to avoid redisplay loop).
4174
4175 2005-01-23 Kim F. Storm <storm@cua.dk>
4176
4177 * window.c (Fpos_visible_in_window_p): Simplify return value for
4178 partially visible rows.
4179 (window_scroll_pixel_based): Adapt to that change.
4180
4181 * window.c (window_scroll_pixel_based): Force moving to next line
4182 if scrolling doesn't move start point, e.g. if looking at tall image.
4183
4184 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4185 Clear last_height before calling line_bottom_y to get real height.
4186 Fix calculation of y.
4187
4188 2005-01-22 Steven Tamm <steventamm@mac.com>
4189
4190 * s/darwin.h: Removed PTY_ITERATION from here.
4191 (DARWIN): Define.
4192
4193 * process.c (init_process): Default process-connection-type to
4194 nil on darwin 6 or less, t if it is 7 or higher. This way the
4195 broken pty behavior is still allowed on darwin 6 for interactive
4196 processes for people that know what they are doing.
4197
4198 2005-01-22 Kim F. Storm <storm@cua.dk>
4199
4200 * window.c (auto_window_vscroll_p): New boolean.
4201 (syms_of_window): DEFVAR_BOOL it.
4202 (Fpos_visible_in_window_p): Extend return value to include RTOP
4203 and RBOT values if FULLY is nil.
4204 (window_scroll_pixel_based): Adjust vscroll for partially visible
4205 rows if auto_window_vscroll_p is set.
4206 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4207
4208 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4209 to return number of partially invisible pixels at top and bottom
4210 of the dislay row at POS.
4211
4212 * lisp.h (pos_visible_p): Fix prototype.
4213
4214 2005-01-21 Richard M. Stallman <rms@gnu.org>
4215
4216 * fileio.c (Fcopy_file): Doc fix.
4217
4218 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4219
4220 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4221 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4222 start of function for older compilers.
4223
4224 2005-01-20 Richard M. Stallman <rms@gnu.org>
4225
4226 * editfns.c (Fmessage): If arg is "", return "" (as before).
4227
4228 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4229
4230 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4231 variable.
4232
4233 2005-01-20 Steven Tamm <steventamm@mac.com>
4234
4235 * editfns.c (Voperating_system_release): Add.
4236 (init_editfns): Assign new variable operating-system-release
4237 based on call to uname if available.
4238 (get_operating_system_release): Add function to
4239 allow c-level access to operating system release.
4240
4241 * config.h: Regenerated.
4242
4243 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4244 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4245 using ptys as '7'.
4246
4247 2005-01-20 Kim F. Storm <storm@cua.dk>
4248
4249 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4250
4251 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4252 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4253
4254 * macterm.c (x_draw_glyph_string_box): Likewise.
4255
4256 * w32term.c (x_draw_glyph_string_box): Likewise.
4257
4258 * indent.c (Fvertical_motion): Temporarily disable selective display.
4259
4260 2005-01-19 Kim F. Storm <storm@cua.dk>
4261
4262 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4263 image property.
4264
4265 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4266
4267 2005-01-18 Kim F. Storm <storm@cua.dk>
4268
4269 * xdisp.c (fast_find_position): Backtrack to find first row if
4270 charpos is inside a display overlay that spans multiple lines.
4271
4272 2005-01-18 Kenichi Handa <handa@m17n.org>
4273
4274 * coding.c (decode_coding_iso2022): Translate invalid codes if
4275 translation-table is specified.
4276
4277 2005-01-18 Kim F. Storm <storm@cua.dk>
4278
4279 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4280 change. If handle_display_prop indicates newline is replaced by
4281 image or text, move back to start of relevant overlay or interval
4282 and continue scan from there. Simplify.
4283
4284 2005-01-17 Kim F. Storm <storm@cua.dk>
4285
4286 * dispnew.c (mode_line_string, marginal_area_string):
4287 Fix off-by-one error in search for glyph.
4288
4289 2005-01-16 Kim F. Storm <storm@cua.dk>
4290
4291 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4292
4293 2005-01-16 Steven Tamm <steventamm@mac.com>
4294
4295 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4296
4297 2005-01-16 Andreas Schwab <schwab@suse.de>
4298
4299 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4300
4301 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4302
4303 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4304 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4305
4306 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4307
4308 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4309 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4310 New flags for readable_events.
4311 (get_filtered_input_pending, readable_filtered_events): Remove.
4312 (tracking_off): Call readable_events and get_input_pending with
4313 flag READABLE_EVENTS_DO_TIMERS_NOW.
4314 (readable_events): Move code from old readable_filtered_events here,
4315 but check new READABLE_EVENTS_* in argument flags instead of previous
4316 two boolean arguments do_timers_now and filter_events.
4317 If we are doing mouse tracking and the mouse moved, return only if
4318 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4319 (swallow_events): Call get_input_pending with flag
4320 READABLE_EVENTS_DO_TIMERS_NOW.
4321 (get_input_pending): Move code from old get_filtered_input_pending
4322 here. Replace boolean arguments do_timers_now, filter_events with
4323 flags, and pass flags to readable_events. Document new
4324 READABLE_EVENTS_* flags.
4325 (detect_input_pending_ignore_squeezables): New function.
4326 (detect_input_pending_run_timers): Call get_input_pending with flag
4327 READABLE_EVENTS_DO_TIMERS_NOW.
4328 (Finput_pending_p): Call get_input_pending with flags
4329 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4330
4331 * dispnew.c (update_window, update_frame_1): Replace calls to
4332 detect_input_pending with detect_input_pending_ignore_squeezables
4333 so that redisplay is not paused if the event queue contains only
4334 mouse movements.
4335
4336 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4337
4338 2005-01-15 Steven Tamm <steventamm@mac.com>
4339
4340 * macterm.c (Vmac_use_core_graphics): Declare variable for
4341 mac-allow-anti-aliasing.
4342 (syms_of_macterm): DEFVAR_LISP and initialize it.
4343 (mac_draw_string_common): Use core graphics text rendering if
4344 mac-allow-anti-aliasing is enabled.
4345
4346 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4347 file name in the text box.
4348
4349 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4350
4351 * macfns.c (x_set_foreground_color, x_set_background_color):
4352 Sync with xfns.c.
4353 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4354 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4355 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4356
4357 2005-01-14 Kim F. Storm <storm@cua.dk>
4358
4359 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4360
4361 2005-01-13 Richard M. Stallman <rms@gnu.org>
4362
4363 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4364 if Voverriding_terminal_local_map is non-nil.
4365
4366 * keyboard.c (syms_of_keyboard): Doc fix.
4367
4368 2005-01-13 Kim F. Storm <storm@cua.dk>
4369
4370 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4371 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4372
4373 2005-01-12 Richard M. Stallman <rms@gnu.org>
4374
4375 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4376 face property for characters that don't specify one.
4377
4378 * fns.c (Frequire): Record in load-history unconditionally.
4379
4380 2005-01-10 Kim F. Storm <storm@cua.dk>
4381
4382 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4383
4384 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4385 Callers changed.
4386 Add support to merge with lisp face id too (if face_name is t).
4387
4388 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4389 Don't lookup lface_id from display table glyphs here; instead use
4390 merge_faces to merge the lisp face id into current face.
4391
4392 2005-01-09 Kim F. Storm <storm@cua.dk>
4393
4394 * dispextern.h (struct it): New member dpvec_face_id.
4395 (merge_into_realized_face): Add prototype.
4396
4397 * xfaces.c (merge_into_realized_face): New function. Used to
4398 merge escape-glyph face or face from display table into current face.
4399
4400 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4401 (syms_of_xdisp): DEFVAR_LISP it.
4402 (escape_glyph_face): Remove var.
4403 (redisplay_window): Don't initialize it.
4404 (setup_for_ellipsis, get_next_display_element):
4405 Set it->dpvec_face_id to -1.
4406 (get_next_display_element): Test Vshow_nonbreak_escape.
4407 Do not setup escape_glyph_face.
4408 Properly merge escape-glyph face or face from display table with
4409 current face for escape and control characters.
4410 Set it->dpvec_face_id to relevant face id instead of adding it to each
4411 element of display vector.
4412 (next_element_from_display_vector): If it->dpvec_face_id is set,
4413 use that instead of lface_id from glyph itself.
4414
4415 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4416
4417 * xterm.h (struct x_output): New member, toolbar_detached.
4418
4419 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4420 38.
4421 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4422 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4423 (xg_create_tool_bar): Initialize toolbar_detached.
4424 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4425 toolbar_detached is zero.
4426
4427 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4428
4429 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4430 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4431
4432 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4433 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4434 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4435
4436 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4437 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4438 XFLOAT_DATA to get extract number from Lisp object.
4439
4440 2005-01-07 Kim F. Storm <storm@cua.dk>
4441
4442 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4443 Set stop_charpos to current charpos instead of 0.
4444
4445 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4446
4447 * xdisp.c (Fformat_mode_line): First arg now required.
4448
4449 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4450
4451 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4452 font widths that are returned from some Japanese fonts.
4453
4454 2005-01-06 Kim F. Storm <storm@cua.dk>
4455
4456 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4457 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4458 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4459 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4460 fringe_faces array and init elements to nil.
4461 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4462 non-persistent face id.
4463 (mark_fringe_data): New function for GC.
4464
4465 * alloc.c (mark_fringe_data): Declare extern.
4466 (Fgarbage_collect): Call mark_fringe_data.
4467
4468 * alloc.c (overrun_check_free): Invalidate freed memory if
4469 XMALLOC_CLEAR_FREE_MEMORY is defined.
4470
4471 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4472
4473 * macfns.c: Include sys/param.h.
4474 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4475 and function.
4476 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4477 of filename string. Set event callback function when creating
4478 dialog boxes. Add code conversions for filenames. Don't dispose
4479 of apple event descriptor record if failed to create it.
4480
4481 * macterm.c: Include sys/param.h.
4482 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4483 kEventWindowUpdate.
4484 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4485 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4486 of FSSpec from apple event descriptor record.
4487 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4488 size of filename string.
4489 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4490 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4491 file dialog is in action.
4492 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4493 Reject only when there are no filename items. Set background color
4494 before (un)highlighting the window below the dragged items.
4495 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4496
4497 2005-01-05 Romain Francoise <romain@orebokech.com>
4498
4499 * term.c (encode_terminal_code): Fix buffer size computation.
4500
4501 2005-01-04 Richard M. Stallman <rms@gnu.org>
4502
4503 * xdisp.c (Fformat_mode_line): Doc fix.
4504
4505 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4506
4507 * alloc.c (refill_memory_reserve): Move.
4508 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4509 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4510
4511 2005-01-03 Richard M. Stallman <rms@gnu.org>
4512
4513 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4514 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4515
4516 2005-01-03 Jason Rumney <jasonr@gnu.org>
4517
4518 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4519 fontp->space_width to FONT_WIDTH so they are valid.
4520
4521 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4522 average width. Set fontp->average_width and fontp->space_width to
4523 their appropriate values.
4524
4525 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4526 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4527 fontp->space_width.
4528
4529 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4530
4531 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4532 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4533 metrics for max and min bounds.
4534 (x_load_font): Correctly calculate average font width metrics.
4535
4536 2005-01-02 Richard M. Stallman <rms@gnu.org>
4537
4538 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4539
4540 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4541
4542 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4543
4544 2004-12-31 Richard M. Stallman <rms@gnu.org>
4545
4546 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4547 Set it->ellipsis_p to 1 or 0.
4548 (display_line): Record whether row ends in mid-ellipsis.
4549 (set_cursor_from_row): If ends in ellipsis, find start of it.
4550 (cursor_row_p): If PT's at the end of the ellipsis the row
4551 ends within, don't display cursor on this row.
4552
4553 * dispextern.h (struct it): New element ellipsis_p.
4554 (struct glyph_row): New element ends_in_ellipsis_p.
4555
4556 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4557 position if we're reading from something other than the buffer.
4558
4559 * window.c (window_scroll_pixel_based): Only look at
4560 Vscroll_preserve_screen_position if the old PT can't be kept.
4561 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4562
4563 2004-12-30 Kim F. Storm <storm@cua.dk>
4564
4565 * xdisp.c (get_line_height_property): New function extracted from
4566 original calc_line_height_property.
4567 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4568 (x_produce_glyphs): Use them to handle line-height and
4569 line-spacing according to new height spec.
4570 (Qtotal): Remove.
4571 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4572
4573 2004-12-30 Kenichi Handa <handa@m17n.org>
4574
4575 * fileio.c (Finsert_file_contents): Don't use
4576 current_buffer->buffer_file_coding_system even if REPLACE is
4577 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4578
4579 * fontset.h (struct font_info): New members space_width and
4580 average_width.
4581
4582 * frame.h (struct frame): New member space_width.
4583 (FRAME_SPACE_WIDTH): New macro.
4584
4585 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4586
4587 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4588 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4589 fontp->space_width.
4590 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4591 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4592
4593 * xdisp.c (x_produce_glyphs): Calculate tab width by
4594 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4595
4596 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4597
4598 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4599 (do_ae_open_documents): Handle Xcode-style file position open events.
4600
4601 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4602
4603 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4604
4605 2004-12-29 Richard M. Stallman <rms@gnu.org>
4606
4607 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4608
4609 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4610
4611 * macfns.c (install_window_handler): Modify extern to return OSErr
4612 value.
4613 (mac_window): Handle return value of install_window_handler.
4614
4615 * macterm.c (reflect_byte): Remove function.
4616 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4617 Lookup table instead.
4618 (mac_do_font_lists): Simplify calculation of the longest
4619 nonspecial string.
4620 (init_mac_drag_n_drop): Remove function and declaration.
4621 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4622 init_mac_drag_n_drop.
4623 (mac_do_track_drag): New function and declaration.
4624 (install_window_handler): Return OSErr value.
4625 (install_window_handler) [TARGET_API_MAC_CARBON]:
4626 Register handlers for tracking/receiving drag-and-drop items.
4627 (do_ae_open_documents): Generate unibyte strings for filenames.
4628 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4629 Reject only non-filename items. Set event modifiers, and return value.
4630
4631 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4632
4633 * coding.c (decode_coding): Fix previous change.
4634
4635 2004-12-28 Richard M. Stallman <rms@gnu.org>
4636
4637 * xdisp.c (back_to_previous_visible_line_start):
4638 Don't call handle_display_prop.
4639
4640 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4641
4642 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4643 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4644 (decode_coding_iso2022, encode_designation_at_bol)
4645 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4646 (decode_coding): Constify arguments and local vars.
4647
4648 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4649
4650 * xmenu.c (popup_get_selection): Only pop down dialogs
4651 on C-g and Escape.
4652 (popup_get_selection): Remove parameter down_on_keypress.
4653 (create_and_show_popup_menu, create_and_show_dialog):
4654 Remove parameter down_on_keypress to popup_get_selection.
4655
4656 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4657
4658 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4659 (struct glyph_string): Likewise.
4660
4661 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4662 mac_initialize.
4663
4664 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4665 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4666
4667 * fns.c (vector): Change MAC_OSX to MAC_OS.
4668
4669 * frame.c (x_set_frame_parameters, x_report_frame_params)
4670 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4671 (x_set_border_width, Vdefault_frame_scroll_bars):
4672 Change HAVE_CARBON to MAC_OS.
4673
4674 * image.c [MAC_OS]: Include sys/stat.h.
4675 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4676 QuickTimeComponents.h.
4677
4678 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4679 [!MAC_OSX] (select): Use mac_wait_next_event.
4680 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4681 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4682 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4683 (mac_clear_font_name_table): Add extern.
4684 (Fmac_clear_font_name_table): New defun.
4685 (syms_of_mac): Defsubr it.
4686 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4687 [MAC_OSX] (select_and_poll_event): New function.
4688 [MAC_OSX] (sys_select): Use it.
4689 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4690 [MAC_OSX && SELECT_USE_CFSOCKET]
4691 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4692 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4693 RunLoop for simultaneously monitoring two kinds of inputs, window
4694 events and process outputs, without periodically polling.
4695
4696 * macfns.c (mac_initialized): Remove extern.
4697 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4698 xfaces.c.
4699 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4700 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4701 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4702 (mac_get_rdb_resource): New function (from w32reg.c).
4703 (x_get_string_resource): Use it.
4704 (install_window_handler): Add extern.
4705 (mac_window): New function.
4706 (Fx_create_frame): Use it instead of make_mac_frame.
4707 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4708 (Fx_open_connection, Fx_close_connection): New defuns.
4709 (syms_of_macfns): Defsubr them.
4710 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4711 Add kWindowNoUpdatesAttribute to the window attribute.
4712 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4713 (x_create_tip_frame): Don't call ShowWindow.
4714 (Fx_show_tip): Call ShowWindow.
4715 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4716 TARGET_API_MAC_CARBON'.
4717 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4718 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4719
4720 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4721 (Window): Typedef to WindowPtr and move outside `#if
4722 TARGET_API_MAC_CARBON'.
4723 (XSizeHints): New struct.
4724
4725 * macterm.c (x_update_begin, x_update_end)
4726 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4727 frame.
4728 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4729 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4730 (construct_mouse_click): Put in #if 0.
4731 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4732 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4733 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4734 (activate_scroll_bars, deactivate_scroll_bars)
4735 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4736 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4737 if the position is neither user-specified nor program-specified.
4738 (x_free_frame_resources): Free size_hints.
4739 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4740 (mac_clear_font_name_table): New function.
4741 (mac_do_list_fonts): Initialize font_name_table if needed.
4742 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4743 around mac_do_list_fonts.
4744 (mac_unload_font): New function.
4745 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4746 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4747 and definitions with #if TARGET_API_MAC_CARBON.
4748 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4749 (install_window_handler): Add decl.
4750 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4751 window. Use UpdateControls. Get the rectangle that should be
4752 updated and restrict the target of expose_frame to it.
4753 (do_grow_window): Set minimum height/width according to size_hints.
4754 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4755 (do_zoom_window): Don't use x_set_window_size.
4756 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4757 (install_window_handler): New function.
4758 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4759 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4760 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4761 GetEventDispatcherTarget inside BLOCK_INPUT.
4762 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4763 Update mouse_region when mouse is moved.
4764 (make_mac_frame): Remove.
4765 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4766 Initialize mouse pointer shapes. Change values of f->left_pos and
4767 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4768 Don't call ShowWindow.
4769 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4770 Vinvocation_name and Vsystem_name.
4771 (mac_make_rdb): New function (from w32term.c).
4772 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4773 already been opened. Don't pass argument to
4774 mac_initialize_display_info. Don't set dpyinfo->height/width.
4775 Add entries to x_display_list and x_display_name_list.
4776 (x_delete_display): New function.
4777 (mac_initialize): Don't call mac_initialize_display_info.
4778 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4779
4780 * macterm.h (check_mac): Add extern.
4781 (struct mac_output): New member size_hints.
4782 (FRAME_SIZE_HINTS): New macro.
4783 (mac_unload_font): Add extern.
4784
4785 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4786
4787 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4788
4789 2004-12-27 Richard M. Stallman <rms@gnu.org>
4790
4791 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4792 (syms_of_buffer): Don't defsubr it.
4793
4794 * process.c (list_processes_1): Set undo_list instead
4795 of calling Fbuffer_disable_undo.
4796
4797 * xdisp.c (single_display_spec_string_p): Rename from
4798 single_display_prop_string_p.
4799 (single_display_spec_intangible_p): Rename from
4800 single_display_prop_intangible_p.
4801 (handle_single_display_spec): Rename from handle_single_display_prop.
4802 Rewritten to be easier to understand.
4803
4804 Change in load-history format. Functions now get (defun . NAME),
4805 and variables get just NAME.
4806
4807 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4808
4809 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4810 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4811 (Qdefvar): Var deleted.
4812 (syms_of_eval): Don't initialze it.
4813
4814 * lread.c (syms_of_lread) <load-history>: Doc fix.
4815
4816 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4817
4818 * xmenu.c (popup_get_selection): Pop down on C-g.
4819 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4820 pops down menu on C-g.
4821 (xdialog_show): If dialog popped down and no button in the dialog was
4822 pushed, call Fsignal to quit.
4823 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4824 Fsignal to quit.
4825
4826 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4827
4828 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4829 dialogs and menus pop down.
4830
4831 2004-12-27 Kenichi Handa <handa@m17n.org>
4832
4833 * coding.c (code_convert_region): Fix calculation of `ratio'.
4834
4835 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4836
4837 * gtkutil.c (update_frame_tool_bar): Make the value of
4838 tool-bar-button-margin control margins of images in tool bar.
4839
4840 * alloc.c (check_depth): New variable.
4841 (overrun_check_malloc, overrun_check_realloc): Only add
4842 overhead and write check pattern if check_depth is 1 (to handle
4843 recursive calls). Increase/decrease check_depth in entry/exit.
4844 (overrun_check_free): Only check for overhead if check_depth is 1.
4845 Increase/decrease check_depth in entry/exit.
4846
4847 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4848
4849 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4850 before touching input_available_clear_time, to avoid accessing it
4851 from multiple threads.
4852
4853 2004-12-23 Jason Rumney <jasonr@gnu.org>
4854
4855 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4856 of JPEG library.
4857
4858 2004-12-22 Richard M. Stallman <rms@gnu.org>
4859
4860 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4861
4862 * lisp.h (Vundo_outer_limit): Fix decl.
4863
4864 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4865 Uses changed.
4866 (syms_of_undo): Initialize appropriately.
4867 (truncate_undo_list): If it's nil, there's no limit.
4868
4869 2004-12-22 Kenichi Handa <handa@m17n.org>
4870
4871 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4872
4873 2004-12-21 Richard M. Stallman <rms@gnu.org>
4874
4875 * eval.c (unwind_to_catch): Clear immediate_quit.
4876
4877 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4878 specially as `\ ' and `\-'.
4879
4880 * keyboard.c (kbd_buffer_store_event_hold):
4881 In the code for while-no-input, handle immediate_quit.
4882
4883 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4884 Call that at the very start.
4885 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4886 (syms_of_alloc): Don't define undo-limit,
4887 undo-strong-limit and undo-outer-limit here.
4888
4889 * undo.c (truncate_undo_list): Return void.
4890 Take just one argument, the buffer.
4891 Make it current, and inhibit recursive GC.
4892 Access and update the undo list directly; return void.
4893 Refer to the undo...limit variables directly.
4894 Test undo_outer_limit only after counting the whole current command.
4895 When it's exceeded, call the function in undo-outer-limit-function.
4896 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
4897 (Vundo_outer_limit_function): New variable.
4898 (syms_of_undo): Define undo-limit, undo-strong-limit
4899 and undo-outer-limit here, and undo-outer-limit-function.
4900 Doc fixes.
4901
4902 * lisp.h (truncate_undo_list): Update decl.
4903
4904 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
4905
4906 * fileio.c (Fread_file_name): Delete duplicates in
4907 file-name-history when history_delete_duplicates is true.
4908
4909 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4910
4911 * macterm.c (mac_do_list_fonts): Fix memory leak
4912
4913 2004-12-20 Richard M. Stallman <rms@gnu.org>
4914
4915 * regex.c (re_match_2_internal) <symend, wordend>:
4916 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
4917
4918 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4919
4920 * macterm.c (endif, x_font_name_to_mac_font_name):
4921 Use maccentraleurroman instead of maccentraleuropean
4922 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
4923 quickly finding a specific font without needing regexps.
4924
4925 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4926
4927 * syssignal.h: Declare main_thread.
4928 (SIGNAL_THREAD_CHECK): New macro.
4929
4930 * keyboard.c (input_available_signal): Move thread checking code
4931 to macro SIGNAL_THREAD_CHECK and call that macro.
4932 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
4933
4934 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
4935
4936 * emacs.c: Define main_thread.
4937 (main): Initialize main_thread.
4938 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
4939 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
4940
4941 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
4942
4943 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
4944
4945 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
4946
4947 * process.c (send_process_trap, sigchld_handler):
4948 Call SIGNAL_THREAD_CHECK.
4949
4950 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
4951
4952 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
4953
4954 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
4955 returning when xg_ignore_gtk_scrollbar is true.
4956
4957 2004-12-14 Kim F. Storm <storm@cua.dk>
4958
4959 * keyboard.c (read_char): Save and restore echo_string when
4960 handling input method.
4961
4962 2004-12-13 Richard M. Stallman <rms@gnu.org>
4963
4964 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4965
4966 * keyboard.c (Vthrow_on_input): New variable.
4967 (syms_of_keyboard): Defvar and initialize it.
4968 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4969
4970 * lisp.h (QUIT): Check for Vthrow_on_input.
4971 (Vthrow_on_input): Declare it.
4972
4973 2004-12-13 Kim F. Storm <storm@cua.dk>
4974
4975 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4976 vector.
4977
4978 2004-12-12 Richard M. Stallman <rms@gnu.org>
4979
4980 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4981
4982 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4983 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4984
4985 2004-12-12 Kenichi Handa <handa@m17n.org>
4986
4987 * term.c (encode_terminal_code): Fix previous change.
4988
4989 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4990
4991 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4992 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4993
4994 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4995 in macro arguments.
4996
4997 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4998 XFASTINT blindly.
4999
5000 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5001
5002 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5003
5004 * w32term.c (x_calc_absolute_position): Remove calculation of
5005 difference between inner and outer window. Don't subtract difference
5006 for left and top calculations.
5007
5008 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5009 for left and top calculations. Remove call to x_real_positions.
5010 [Bug report by Drew Adams in November]
5011 (x_check_expected_move): Do not set change_gravity to 1 when calling
5012 x_set_offset.
5013
5014 2004-12-08 Richard M. Stallman <rms@gnu.org>
5015
5016 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5017 control chars and escaped octal codes.
5018 (Qescape_glyph): New variable.
5019 (syms_of_xdisp): Initialize it.
5020 (escape_glyph_face): New variable.
5021 (redisplay_window): Initialize it.
5022
5023 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5024
5025 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5026 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5027
5028 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5029
5030 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5031 reset_malloc_hooks.
5032
5033 * keyboard.c (handle_async_input, input_available_signal):
5034 Add ! defined (SYSTEM_MALLOC) around thread code.
5035
5036 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5037
5038 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5039
5040 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5041
5042 * config.in: Regenerate.
5043
5044 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5045
5046 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5047 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5048 if not given by a mouse click to correspond with x-popup-menu
5049 documentation.
5050
5051 * config.in: Regenerate.
5052
5053 * gtkutil.c: Include signal.h and syssignal.h.
5054 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5055
5056 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5057 new variables main_thread and alloc_mutex,
5058 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5059 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5060 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5061 (UN)BLOCK_INPUT.
5062 (emacs_blocked_free, emacs_blocked_malloc)
5063 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5064 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5065 (reset_malloc_hooks): New function.
5066
5067 * lisp.h: Declare reset_malloc_hooks.
5068
5069 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5070
5071 * keyboard.c: Conditionally include pthread.h
5072 (handle_async_input, input_available_signalt): If not in the main
5073 thread, block signal, send signal to main thread and return.
5074
5075 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5076 Set current folder in file chooser if default_filename is a directory.
5077
5078 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5079
5080 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5081 Remove redundant correctness checks.
5082 (regex_compile): Fix up error codes for \{..\} expressions.
5083
5084 2004-12-05 Richard M. Stallman <rms@gnu.org>
5085
5086 * regex.c (regex_compile): Fix end-of-pattern case for space.
5087
5088 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5089
5090 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5091 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5092 crashes with invalid characters.
5093 * macmenu.c (add_menu_item): Use it.
5094 * image.c (image_load_quartz2d): Likewise.
5095 * macfns.c (x_set_name, x_set_title): Likewise.
5096 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5097 creating them each time for labels.
5098
5099 2004-12-02 Richard M. Stallman <rms@gnu.org>
5100
5101 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5102 don't use it here.
5103
5104 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5105 (interactive_p): Skip Scalled_interactively_p frames
5106 like Sinteractive_p frames.
5107 (unwind_to_catch): Clear handling_signal.
5108
5109 * data.c (Fmake_variable_buffer_local): Doc fix.
5110 (Fmake_local_variable): Doc fix.
5111
5112 * insdel.c (insert_from_string_before_markers)
5113 (insert_from_string): Don't modify buffer on empty insertion.
5114
5115 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5116
5117 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5118
5119 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5120 menu text as UTF8 fails.
5121
5122 2004-12-01 Kim F. Storm <storm@cua.dk>
5123
5124 * alloc.c: Add commentary for last change.
5125 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5126 sizeof(size_t) != 4.
5127 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5128 Use them. Also clear header and trailer of freed memory.
5129 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5130 (string_overrun_cookie): Rename from string_overrun_pattern.
5131 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5132
5133 2004-12-01 Andreas Schwab <schwab@suse.de>
5134
5135 * lisp.h: Declare string_to_multibyte.
5136
5137 2004-12-01 Kenichi Handa <handa@m17n.org>
5138
5139 * w32console.c (w32con_write_glyphs): Decide coding here.
5140 Adjusted for the change of encode_terminal_code.
5141
5142 * term.c (encode_terminal_code): Don't make it "static".
5143
5144 2004-11-30 Kenichi Handa <handa@m17n.org>
5145
5146 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5147 (encode_terminal_code): Argument changed. Encode all
5148 characters at once, and return a pointer to the result of encoding.
5149 (write_glyphs): Decide coding here. Adjusted for the above change.
5150 (insert_glyphs): Likewise.
5151 (term_init): Initialize encode_terminal_bufsize to 0.
5152
5153 * coding.c (Vcode_conversion_workbuf_name): New variable.
5154 (syms_of_coding): Initialize and staticpro it.
5155 (set_conversion_work_buffer): New function.
5156 (run_pre_post_conversion_on_str): Use it.
5157 (run_pre_write_conversin_on_c_str): New function.
5158
5159 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5160
5161 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5162
5163 * keyboard.c: Don't undef SIGIO
5164 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5165 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5166 (macfns.o): Don't depend on ccl.h.
5167 * macfns.c (mac_frame_parm_handlers): Set handlers for
5168 Qleft_fringe and Qright_fringe.
5169 * macterm.c (mac_fill_rectangle_to_pixmap)
5170 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5171 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5172 Put in #if 0.
5173 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5174 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5175 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5176 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5177 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5178 XDrawImageString. Always draw background and foreground separately.
5179 (x_draw_image_foreground): Use clipping instead of computing the
5180 intersection rectangle.
5181 (x_draw_image_glyph_string): Don't draw an image with mask to a
5182 pixmap.
5183 (x_redisplay_interface): Set flush_display_optional member to 0.
5184 (XTread_socket): Correctly reset the TEConverter
5185 object.
5186
5187 2004-11-30 Kim F. Storm <storm@cua.dk>
5188
5189 * lisp.h: New defines to enable buffer overrun checking.
5190 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5191 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5192
5193 * alloc.c: Add more checks for buffer overruns.
5194 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5195 xmalloc_overrun_check_trailer, overrun_check_malloc)
5196 overrun_check_realloc, overrun_check_free): Add.
5197 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5198 (check_sblock, allocate_string_data, compact_small_strings):
5199 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5200 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5201 (check_string_free_list): Add.
5202 (allocate_string, sweep_strings): Call check_string_free_list.
5203
5204 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5205 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5206
5207 2004-11-29 Kim F. Storm <storm@cua.dk>
5208
5209 * fns.c (concat): Use SAFE_ALLOCA.
5210
5211 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5212
5213 * sysdep.c (emacs_write): Don't use QUIT.
5214
5215 2004-11-29 Kenichi Handa <handa@m17n.org>
5216
5217 * buffer.c (init_buffer): Set current_buffer->directory to a
5218 multibyte string made by string_to_multibyte.
5219
5220 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5221
5222 2004-11-27 Andreas Schwab <schwab@suse.de>
5223
5224 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5225
5226 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5227 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5228
5229 * filelock.c (lock_file_1): Call get_boot_time early.
5230 Increase buffer size.
5231
5232 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5233
5234 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5235 is not defined.
5236
5237 2004-11-27 Kim F. Storm <storm@cua.dk>
5238
5239 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5240 marker out of doc string.
5241
5242 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5243
5244 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5245 which was not mentioned in the log.
5246
5247 2004-11-26 Kim F. Storm <storm@cua.dk>
5248
5249 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5250 angle bitmaps at top/bottom line.
5251
5252 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5253 set it when it->method is set to next_element_from_display_vector.
5254 (setup_for_ellipsis): Add LEN argument. Callers changed.
5255 Set it->saved_face_id.
5256 (get_next_display_element): Use loop instead of recursion.
5257 Set it->saved_face_id. Combine duplicate code for ctr chars.
5258 (next_element_from_display_vector): Do not set it->saved_face_id.
5259 (next_element_from_ellipsis): Use setup_for_ellipsis.
5260
5261 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5262
5263 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5264 prevent compiler warnings.
5265
5266 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5267
5268 * keyboard.c (command_loop_1): Print a message describing the key
5269 the user just pressed when this key has no binding.
5270
5271 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5272 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5273
5274 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5275
5276 2004-11-24 Richard M. Stallman <rms@gnu.org>
5277
5278 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5279
5280 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5281
5282 2004-11-24 Kim F. Storm <storm@cua.dk>
5283
5284 * xdisp.c (move_it_in_display_line_to, display_line):
5285 Restore saved_face_id also when truncate-lines or hscrolled.
5286
5287 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5288
5289 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5290 x-use-old-gtk-file-dialog.
5291
5292 * xfns.c: Define x_use_old_gtk_file_dialog.
5293 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5294 outside ifdef USE_GTK.
5295
5296 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5297
5298 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5299 Don't use XFASTINT blindly.
5300
5301 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5302
5303 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5304 in macro arguments.
5305
5306 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5307
5308 * lread.c (oblookup): Don't use XFASTINT blindly.
5309
5310 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5311 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5312
5313 2004-11-23 Kim F. Storm <storm@cua.dk>
5314
5315 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5316 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5317
5318 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5319 signal_p is zero and face name is unknown.
5320 (Fx_list_fonts): Don't signal error in lookup_named_face.
5321 (Fface_font): Signal error in lookup_named_face.
5322 (ascii_face_of_lisp_face): Likewise.
5323
5324 * dispextern.h (lookup_named_face): Fix prototype.
5325
5326 * xdisp.c (handle_single_display_prop): Don't signal error in
5327 lookup_named_face for unknown fringe face name.
5328 (highlight_trailing_whitespace): Don't signal error in
5329 lookup_named_face if trailing-whitespace face unknown.
5330 (calc_line_height_property): Don't signal error in
5331 lookup_named_face if specified face name is unknown.
5332
5333 * fringe.c (update_window_fringes): Show top row indicator if
5334 window has header-line. Don't show arrow at bob and eob
5335 if the boundary indicators are not used.
5336 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5337
5338 * window.c (set_window_buffer): Clear display_error_modiff.
5339
5340 2004-11-22 Kim F. Storm <storm@cua.dk>
5341
5342 * fringe.c (update_window_fringes): Provide sensible fall-back
5343 value for non-nil indicate-buffer-boundaries setting.
5344
5345 2004-11-22 Markus Rost <rost@ias.edu>
5346
5347 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5348
5349 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5350
5351 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5352
5353 2004-11-21 Kim F. Storm <storm@cua.dk>
5354
5355 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5356
5357 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5358 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5359
5360 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5361 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5362
5363 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5364 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5365
5366 * xdisp.c (move_it_in_display_line_to, display_line):
5367 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5368 line is continued before or in middle of element from display vector.
5369
5370 * indent.c (Fvertical_motion): Fix last change. Use another
5371 method to detect if iterator moved too far ahead after reseat.
5372
5373 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5374 expand matrix width for overflow in zero-width area.
5375 (append_glyph, append_composite_glyph, produce_image_glyph)
5376 (append_stretch_glyph): Use it to avoid loop in redisplay.
5377 (note_mode_line_or_margin_highlight): Don't let help-echo from
5378 string override help-echo from image map.
5379
5380 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5381
5382 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5383 * callint.c (Fcall_interactively): Ditto.
5384
5385 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5386
5387 * minibuf.c (Fminibuffer_complete_and_exit):
5388 Fixup the case of the completed value, for case-indep completion.
5389
5390 2004-11-20 Richard M. Stallman <rms@gnu.org>
5391
5392 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5393
5394 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5395 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5396
5397 * search.c (Vsearch_spaces_regexp):
5398 Rename from Vsearch_whitespace_regexp. All uses changed.
5399
5400 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5401
5402 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5403
5404 2004-11-19 Richard M. Stallman <rms@gnu.org>
5405
5406 * search.c (Vsearch_whitespace_regexp): New variable.
5407 (syms_of_search): Defvar it.
5408 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5409 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5410 is non-nil.
5411 (struct regexp_cache): New element whitespace_regexp.
5412 (syms_of_search): Initialize whitespace_regexp elements.
5413 (compile_pattern): Compare whitespace_regexp elements.
5414 (compile_pattern_1): Set whitespace_regexp elements.
5415
5416 * regex.c (regex_compile): Substitute whitespace_regexp
5417 for spaces, if it is nonzero.
5418 (whitespace_regexp): New variable.
5419 (re_set_whitespace_regexp): New function.
5420
5421 2004-11-19 Kim F. Storm <storm@cua.dk>
5422
5423 * indent.c (Fvertical_motion): Fix last change.
5424
5425 2004-11-18 Kim F. Storm <storm@cua.dk>
5426
5427 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5428 Instead, move back again if reseating moves too far ahead.
5429
5430 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5431
5432 * xdisp.c (message3): Call clear_message.
5433
5434 2004-11-17 Kim F. Storm <storm@cua.dk>
5435
5436 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5437
5438 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5439
5440 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5441
5442 * xmenu.c (x_menu_in_use): Remove.
5443 (x_menu_set_in_use): Also set popup_activated_flag.
5444
5445 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5446 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5447
5448 * xterm.h (x_menu_in_use): Remove.
5449
5450 2004-11-16 Richard M. Stallman <rms@gnu.org>
5451
5452 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5453 Use map-keymap-internal to implement that.
5454
5455 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5456
5457 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5458
5459 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5460 a window before using XWINDOW.
5461
5462 * window.c (make_window, Fselect_window, make_dummy_parent)
5463 (save_window_save):
5464 * frame.c (make_frame):
5465 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5466
5467 * lisp.h (NILP): Use EQ rather than XFASTINT.
5468
5469 2004-11-16 Kim F. Storm <storm@cua.dk>
5470
5471 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5472
5473 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5474 moving backwards.
5475
5476 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5477
5478 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5479
5480 2004-11-16 Kenichi Handa <handa@m17n.org>
5481
5482 * xdisp.c (display_mode_element): Fix previous change (calculate
5483 end position of substring to display correctly).
5484
5485 2004-11-16 Kim F. Storm <storm@cua.dk>
5486
5487 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5488 Reported by Andrew M. Scott.
5489
5490 2004-11-15 Kim F. Storm <storm@cua.dk>
5491
5492 * fns.c (Fsafe_plist_get): New defun.
5493 (syms_of_fns): Defsubr it.
5494
5495 * lisp.h (Fsafe_plist_get): Add EXFUN.
5496
5497 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5498 Use Fsafe_plist_get.
5499 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5500 Fix image map element parsing. Use Fsafe_plist_get.
5501
5502 2004-11-15 Richard M. Stallman <rms@gnu.org>
5503
5504 * xdisp.c (get_next_display_element): Fix previous change.
5505
5506 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5507
5508 * window.c (shrink_windows): Handle special case of one window left
5509 when trying to shrink the final reminder. Grow windows if
5510 total_removed is less than total_shrink.
5511
5512 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5513 extract pointer from arg with XSAVE_VALUE.
5514 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5515 Construct arg to record_unwind_protect with make_save_value.
5516
5517 2004-11-13 Richard M. Stallman <rms@gnu.org>
5518
5519 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5520 (get_next_display_element): Fix previous change to apply only to \n.
5521
5522 * indent.c (Fvertical_motion): Scan to PT from start of line to
5523 make iterator consistent.
5524
5525 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5526
5527 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5528
5529 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5530
5531 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5532 Record unwind with clean_up_file_dialog.
5533
5534 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5535 Declare.
5536
5537 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5538
5539 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5540
5541 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5542 (xg_file_sel_destroy): Remove.
5543 (xg_file_response_cb, pop_down_file_dialog)
5544 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5545 New functions.
5546 (xg_get_file_with_chooser, xg_get_file_with_selection):
5547 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5548 Move common code to xg_get_file_name. Return widget created.
5549 (xg_get_file_name): Set name, transient for, modal and destroy
5550 with parent here. Connect response signal to xg_file_response_cb,
5551 connect delete-event to gtk_true. Record pop_down_file_dialog
5552 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5553 (xg_create_widget): Make dialogs modal.
5554
5555 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5556 Lisp_Object.
5557 (popup_get_selection): Move unwind protect ...
5558 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5559 Move destroy of widget to pop_down_menu.
5560 (popup_widget_loop): Move unwind protect ...
5561 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5562 Move destroy of widget to pop_down_menu.
5563 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5564 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5565 x_mouse_leave and grabbed = 0 to pop_down_menu.
5566
5567 2004-11-13 Kim F. Storm <storm@cua.dk>
5568
5569 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5570 (syms_of_xdisp): DEFVAR_BOOL it.
5571 (make_cursor_line_fully_visible, try_cursor_movement)
5572 (try_window_id): Use it.
5573
5574 2004-11-12 Kim F. Storm <storm@cua.dk>
5575
5576 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5577 (struct it): New member max_extra_line_spacing.
5578 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5579 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5580 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5581 part of last line is only extra line spacing (so the text on the
5582 line is fully visible). Use helper macros.
5583 Add W arg (to use them). All callers changed.
5584 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5585 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5586
5587 * window.c (window_scroll_pixel_based, Frecenter):
5588 Use move_it_vertically_backward directly.
5589 (Frecenter): Fix calculation of new start pos for negative arg.
5590 Before, the new start pos was sometimes chosen too far back, so
5591 the last line became only partially visible, and thus would be
5592 either only semi-visible or automatically scrolled to the middle
5593 of the window by redisplay.
5594
5595 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5596 (move_it_vertically_backward): Don't recure to move further back.
5597 (move_it_vertically): Remove superfluous condition.
5598 (move_it_by_lines): Clear last_height when moved 0 lines.
5599 (resize_mini_window): Use it.max_extra_line_spacing.
5600 (display_tool_bar_line): Clear row->extra_line_spacing.
5601 (try_scrolling): Use move_it_vertically_backward directly.
5602 (redisplay_window): Likewise.
5603 (compute_line_metrics): Set row->extra_line_spacing.
5604 (display_line, display_string): Likewise.
5605 (x_produce_glyphs): Update it->max_extra_line_spacing.
5606
5607 * xmenu.c (pop_down_menu): Return nil.
5608
5609 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5610
5611 * xmenu.c (x_menu_wait_for_event): New function.
5612 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5613 to handle timers.
5614 (popup_widget_loop): Add argument do_timers.
5615 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5616 do_timers to popup_widget_loop.
5617 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5618 x_menu_wait_for_event is called by XMenuActivate.
5619 (create_and_show_popup_menu): Pass 1 for do_timers to
5620 popup_get_selection.
5621 (pop_down_menu): New function.
5622 (popup_get_selection, popup_widget_loop): Unwind protect to
5623 pop_down_menu.
5624 (popup_widget_loop): Add argument widget.
5625 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5626 argument widget to popup_widget_loop.
5627
5628 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5629
5630 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5631
5632 2004-11-09 Kim F. Storm <storm@cua.dk>
5633
5634 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5635 Fix various comments referring to XEvents instead of input events.
5636 (x_queue_event): Fix format strings.
5637 (x_stop_queuing_selection_requests): Likewise.
5638
5639 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5640 (pint2hrstr): Add extra braces to silence compiler.
5641
5642 * print.c (print_object): Fix format string.
5643
5644 * lread.c (read1): Fix next_char matching.
5645
5646 * lisp.h (Fdelete): Add EXFUN.
5647 (replace_range_2): Add prototype.
5648
5649 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5650
5651 * intervals.h (NULL_INTERVAL_P): Add separate version when
5652 ENABLE_CHECKING is not defined to silence compiler.
5653 (compare_string_intervals): Add prototype.
5654
5655 * fringe.c (destroy_fringe_bitmap): Fix return type.
5656 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5657
5658 * emacs.c (Fdump_emacs): Fix format string.
5659
5660 * doc.c: Include <ctype.h>.
5661 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5662
5663 * data.c (store_symval_forwarding): Remove unused variables.
5664
5665 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5666
5667 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5668
5669 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5670 to ${OLDXMENU}.
5671
5672 2004-11-09 Kim F. Storm <storm@cua.dk>
5673
5674 * process.c (Fmake_network_process): Remove kludge for interrupted
5675 connects on BSD. If connect is interrupted, just close socket and
5676 start over rather than sleeping and retry with same socket.
5677
5678 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5679
5680 * .cvsignore: Add buildobj.lst.
5681
5682 * doc.c: New variable Vbuild_files.
5683 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5684 file names from buildobj.lst. Only attach docstrings from files
5685 that are in Vbuild_files.
5686 (syms_of_doc): Defvar Vbuild_files.
5687
5688 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5689 and w32*.o.
5690 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5691 (mostlyclean): Rm buildobj.lst
5692
5693 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5694 is linked.
5695
5696 2004-11-09 Kim F. Storm <storm@cua.dk>
5697
5698 * fringe.c (update_window_fringes): Update fringe bitmaps if
5699 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5700 also update previous row to get rid of misc. artifacts.
5701
5702 2004-11-08 Kim F. Storm <storm@cua.dk>
5703
5704 * xdisp.c (fast_find_position): Fix start pos if header line present.
5705 (note_mouse_highlight): Clear mouse face if we move out of text area.
5706
5707 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5708
5709 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5710 Don't include <sys/time.h> explicitly.
5711 Include <stdio.h> unconditionally, not just on MacOS.
5712
5713 2004-11-08 Kenichi Handa <handa@m17n.org>
5714
5715 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5716 don't pay attention to '\' before '*'.
5717 (fontset_pattern_regexp): Change the meaning of the second arg.
5718 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5719 (check_fontset_name): Try NAME as literal at first, and if it
5720 failes, try NAME as pattern.
5721
5722 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5723
5724 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5725
5726 2004-11-07 Andreas Schwab <schwab@suse.de>
5727
5728 * lisp.h (Fmsdos_downcase_filename): Declare.
5729 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5730 * fileio.c: Likewise.
5731
5732 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5733
5734 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5735 comparisons with integers instead of Lisp_Object address.
5736 (Fmsdos_set_keyboard): Declare argument allkeys.
5737
5738 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5739
5740 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5741 int/Lisp_Object mixup.
5742
5743 * fileio.c: Ditto.
5744
5745 2004-11-06 Steven Tamm <steventamm@mac.com>
5746
5747 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5748
5749 2004-11-06 Richard M. Stallman <rms@gnu.org>
5750
5751 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5752
5753 * xfaces.c (merge_named_face): GCPRO the face_name in the
5754 named_merge_point struct that we make.
5755 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5756
5757 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5758 before deciding whether to inactivate mark.
5759
5760 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5761
5762 * config.in: Regenerate (add HAVE_GETRUSAGE).
5763 * editfns.c (Fget_internal_run_time): New function.
5764 (syms_of_data): Defsubr it.
5765 * fns.c (sxhash): As far as possible, merge calculation of
5766 hash code for symbols and strings.
5767
5768 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5769
5770 * frame.c (syms_of_frame): Fix the example in the doc string.
5771
5772 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5773
5774 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5775
5776 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5777 (create_and_show_dialog): Revert change from 2004-10-31.
5778
5779 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5780
5781 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5782
5783 2004-11-05 Kim F. Storm <storm@cua.dk>
5784
5785 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5786
5787 * fileio.c (Ffile_modes): Doc fix.
5788 (auto_save_1): Check for Ffile_modes nil value.
5789
5790 2004-11-05 Kim F. Storm <storm@cua.dk>
5791
5792 * xselect.c (struct selection_event_queue, selection_queue)
5793 (x_queue_selection_requests, x_queue_event)
5794 (x_start_queuing_selection_requests)
5795 (x_stop_queuing_selection_requests): Add new queue for selection
5796 input events to replace previous XEvent queue in xterm.c.
5797 (queue_selection_requests_unwind): Adapt to new queue.
5798 (x_reply_selection_request): Adapt to new queue.
5799 Unexpect wait_object in case of x errors (memory leak).
5800 (x_handle_selection_request, x_handle_selection_clear): Make static.
5801 (x_handle_selection_event): New function. May queue selection events.
5802 (wait_for_property_change_unwind): Use save_value instead of cons.
5803 Clear property_change_reply_object.
5804 (wait_for_property_change): Abort if already waiting.
5805 Use save_value instead of cons for unwind data.
5806 (x_handle_property_notify): Skip events already arrived, but don't
5807 free them, as "arrived" field is checked by wait_for_property_change,
5808 and it will be freed by unwind or explicit unexpect_property_change.
5809 (x_get_foreign_selection): Add to new queue.
5810 (receive_incremental_selection): Don't unexpect wait_object when done
5811 as it has already been freed by previous wait_for_property_change.
5812
5813 * xterm.h (x_start_queuing_selection_requests)
5814 (x_stop_queuing_selection_requests, x_handle_selection_request)
5815 (x_handle_selection_clear): Remove prototypes.
5816 (x_handle_selection_event): Add prototype.
5817
5818 * xterm.c (handle_one_xevent): Don't queue X selection events
5819 here, it may be too late if we start queuing after we have already
5820 stored some selection events into the kbd buffer.
5821 (struct selection_event_queue, queue, x_queue_selection_requests)
5822 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5823 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5824 (x_catch_errors_unwind): Block input around final XSync.
5825
5826 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5827
5828 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5829 (kbd_buffer_unget_event): New function.
5830 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5831 and use x_handle_selection_event.
5832 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5833
5834 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5835
5836 * xselect.c (TRACE3): New debug macro.
5837 (x_reply_selection_request): Use it.
5838 (receive_incremental_selection): In call to TRACE0, the name of
5839 a symbol is in xname.
5840
5841 2004-11-05 Kim F. Storm <storm@cua.dk>
5842
5843 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5844
5845 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5846
5847 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5848
5849 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5850
5851 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5852 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5853 * xfns.c (syms_of_xfns): ... to here.
5854
5855 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5856 it doesn't start with /.
5857
5858 2004-11-04 Kenichi Handa <handa@m17n.org>
5859
5860 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5861 treat it as a literal character.
5862
5863 2004-11-03 Kim F. Storm <storm@cua.dk>
5864
5865 * .gdbinit (ppt): New function.
5866
5867 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5868
5869 * xterm.c (x_window_to_scroll_bar): Only call
5870 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5871
5872 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5873 of save.
5874
5875 2004-11-02 Andreas Schwab <schwab@suse.de>
5876
5877 * window.c (Fscroll_right): Fix last change.
5878
5879 2004-11-02 Kim F. Storm <storm@cua.dk>
5880
5881 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5882
5883 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5884
5885 * callproc.c (Fcall_process): Block input around vfork.
5886
5887 2004-11-02 Kim F. Storm <storm@cua.dk>
5888
5889 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5890 (syms_of_eval): Defsubr it.
5891
5892 2004-11-02 Richard M. Stallman <rms@gnu.org>
5893
5894 * insdel.c (replace_range_2): New function.
5895
5896 * casefiddle.c (casify_region): Handle changes in byte-length
5897 using replace_range_2.
5898
5899 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
5900
5901 * xdisp.c (back_to_previous_visible_line_start):
5902 Subtract 1 from pos when checking previous newline for invisibility.
5903
5904 * window.c (window_scroll_pixel_based): Update preserve_y
5905 for header line if any.
5906 (Fscroll_left, Fscroll_right): Don't call interactive_p;
5907 use a new second argument instead.
5908
5909 * eval.c (Fcall_interactive_p): New function.
5910 (interactive_p): Don't test INTERACTIVE here.
5911 (Finteractive_p): Doc fix.
5912
5913 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
5914
5915 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5916
5917 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
5918 comparing font names.
5919
5920 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5921
5922 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
5923 Fx_file_dialog if only directories should be read.
5924
5925 * lisp.h: Fx_file_dialog takes 5 parameters.
5926
5927 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
5928 Add parameter only_dir_p.
5929 In Motif version, don't put DEFAULT_FILENAME in filter part of the
5930 dialog, just text field part. Do not add DEFAULT_FILENAME
5931 to list of files if it isn't there.
5932 In GTK version, pass only_dir_p parameter to xg_get_file_name.
5933
5934 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
5935 Check only_dir_p instead of comparing prompt to "Dired". When using
5936 a save dialog, add option kNavDontConfirmReplacement, change title
5937 to "Enter name", change text for save button to "Ok".
5938
5939 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
5940 Check only_dir_p instead of comparing prompt to "Dired".
5941
5942 * gtkutil.c (xg_get_file_with_chooser)
5943 (xg_get_file_with_selection): New functions, only defined ifdef
5944 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
5945 respectively.
5946 (xg_get_file_name): Add parameter only_dir_p.
5947 Call xg_get_file_with_chooser or xg_get_file_with_selection
5948 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
5949 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
5950
5951 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
5952
5953 * config.in: Rebuild (added HAVE_GTK_FILE_*).
5954
5955 2004-11-01 Kim F. Storm <storm@cua.dk>
5956
5957 * process.c (connect_wait_mask, num_pending_connects):
5958 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5959 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5960 (IF_NON_BLOCKING_CONNECT): New helper macro.
5961 (wait_reading_process_output): Only declare and use local vars
5962 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5963
5964 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5965
5966 * w32term.c (x_scroll_run): Delete region objects after use.
5967
5968 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5969
5970 * xmenu.c: Add prototypes for forward function declarations.
5971 (popup_get_selection): Remove parameter do_timers, remove call to
5972 timer_check.
5973 (create_and_show_popup_menu, create_and_show_dialog):
5974 Remove parameter do_timers from call to popup_get_selection.
5975
5976 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5977 tool_bar_items and assign the result to f->tool_bar_items if
5978 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5979 tool_bar_items to assignment of result.
5980
5981 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5982 pending_atmers is non-zero.
5983
5984 2004-10-31 Kim F. Storm <storm@cua.dk>
5985
5986 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5987
5988 2004-10-28 Will <will@glozer.net>
5989
5990 * macterm.c: Allow user to assign key modifiers to the Mac Option
5991 key via a 'mac-option-modifier' variable.
5992
5993 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5994
5995 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5996 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5997 (x_handle_selection_request, x_handle_selection_clear)
5998 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5999
6000 2004-10-28 Richard M. Stallman <rms@gnu.org>
6001
6002 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6003
6004 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6005
6006 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6007
6008 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6009 comment-starter over a 1-char one.
6010
6011 2004-10-27 Richard M. Stallman <rms@gnu.org>
6012
6013 * xdisp.c (get_next_display_element): In mode lines,
6014 treat newline and tab like other control characters.
6015
6016 * editfns.c (Fmessage): Doc fix.
6017
6018 * indent.c (vmotion): When moving up, check the newline before.
6019 Make prevline an int, not a Lisp_Object.
6020
6021 2004-10-27 Kim F. Storm <storm@cua.dk>
6022
6023 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6024 Only allocate info and discarded tables once.
6025
6026 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6027 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6028 (SAFE_FREE): Test it to determine if we need to unwind to free.
6029 Remove size arg. All users changed.
6030 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6031
6032 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6033
6034 * gtkutil.c: Put empty line between comment and function body.
6035 (xg_destroy_widgets): Rename from remove_from_container.
6036 Just destroy all widgets in list. Argument wcont removed.
6037 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6038 instead of remove_from_container.
6039 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6040 (free_frame_tool_bar): Add comment.
6041
6042 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6043 is not NULL before strcmp.
6044
6045 2004-10-26 Kim F. Storm <storm@cua.dk>
6046
6047 * callint.c (Fcall_interactively): Add 'U' code to get the
6048 up-event discarded by a previous 'k' or 'K' argument.
6049
6050 2004-10-26 David Kastrup <dak@gnu.org>
6051
6052 * buffer.c (syms_of_buffer): Fix a few typos.
6053
6054 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6055
6056 * xsmfns.c: Put empty line between comment and function body.
6057 Use two spaces before comment end.
6058
6059 2004-10-25 Kenichi Handa <handa@m17n.org>
6060
6061 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6062 PATTERN is full XLFD.
6063
6064 2004-10-24 Kenichi Handa <handa@m17n.org>
6065
6066 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6067
6068 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6069 (regex_compile): Return REG_ERANGEX if appropriate.
6070
6071 2004-10-22 Kenichi Handa <handa@m17n.org>
6072
6073 * editfns.c (Ftranslate_region_internal): New function.
6074 (syms_of_editfns): Defsubr it.
6075
6076 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6077
6078 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6079
6080 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6081
6082 * xterm.h (x_output): New member `xic_base_fontname'.
6083 (FRAME_XIC_BASE_FONTNAME): New macro.
6084 (xic_free_xfontset): Declare.
6085
6086 * xfns.c (xic_create_xfontset): Share fontsets between frames
6087 based on base_fontname.
6088 (xic_free_xfontset): New function.
6089 (free_frame_xic): Use it.
6090 (xic_set_xfontset): Ditto.
6091
6092 * xterm.c (xim_destroy_callback): Ditto.
6093
6094
6095 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6096
6097 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6098
6099 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6100
6101 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6102 XSync.
6103
6104 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6105 New variables and constant.
6106 (main): Calculate heap_bss_diff. If we are dumping and the
6107 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6108 and exec ourself again.
6109 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6110 print a warning.
6111
6112 * lastfile.c: Make my_endbss and my_endbss_static available on all
6113 platforms.
6114
6115 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6116 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6117
6118 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6119
6120 * data.c (Flocal_variable_if_set_p): Doc fix.
6121
6122 2004-10-19 Jason Rumney <jasonr@gnu.org>
6123
6124 * w32.c (init_environment): Set emacs_dir correctly when running
6125 emacs from the build directory.
6126
6127 2004-10-19 Richard M. Stallman <rms@gnu.org>
6128
6129 * editfns.c (Fdelete_and_extract_region):
6130 If region is empty, return null string.
6131
6132 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6133
6134 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6135 and canon_width.
6136 (xg_frame_cleared): Remove.
6137
6138 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6139 (xg_find_top_left_in_fixed): Remove.
6140 (xg_create_scroll_bar): Put an event box widget between
6141 the scroll bar widget and the edit widget.
6142 (xg_show_scroll_bar): Show the parent widget (the event box).
6143 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6144 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6145 Move the parent (the event box) widget inside the fixed widget.
6146 Move window clear to xterm.c.
6147
6148 * gtkutil.h (xg_frame_cleared): Remove.
6149
6150 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6151 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6152 Remove arguments left and width to xg_update_scrollbar_pos.
6153 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6154
6155 2004-10-19 Kenichi Handa <handa@m17n.org>
6156
6157 * xdisp.c (display_mode_element): Fix display of wide chars.
6158
6159 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6160
6161 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6162 gdk_window_clear and move gdk_window_process_all_updates after
6163 clear so events are sent to the X server in correct order.
6164
6165 2004-10-18 Kenichi Handa <handa@m17n.org>
6166
6167 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6168 comparing font names.
6169 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6170 (list_fontsets): Likewise.
6171
6172 * search.c (fast_string_match_ignore_case): New function.
6173
6174 * lisp.h (fast_string_match_ignore_case): Extern it.
6175
6176 2004-10-17 Kim F. Storm <storm@cua.dk>
6177
6178 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6179 than bitmap if there is not left fringe.
6180 (get_overlay_arrow_glyph_row): Also used on windows system.
6181 (display_line): Display overlay string if no left fringe.
6182
6183 2004-10-16 Jason Rumney <jasonr@gnu.org>
6184
6185 * w32fns.c (w32_font_match): Encode font name being matched.
6186
6187 2004-10-16 Richard M. Stallman <rms@gnu.org>
6188
6189 * window.c (Fspecial_display_p): Doc fix.
6190
6191 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6192
6193 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6194 Don't ignore menus, because where-is-internal already does it for us.
6195
6196 2004-10-15 Kim F. Storm <storm@cua.dk>
6197
6198 * xdisp.c (redisplay_window): Only update fringes and vertical
6199 border on window frames.
6200
6201 2004-10-14 Andreas Schwab <schwab@suse.de>
6202
6203 * m/ia64.h (DATA_SEG_BITS): Don't define.
6204
6205 2004-10-14 Kim F. Storm <storm@cua.dk>
6206
6207 * xterm.h: Include Xutil.h after keysym.h to work around bug
6208 in some X versions.
6209
6210 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6211
6212 * fns.c (map_char_table): Add missing gcpros.
6213
6214 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6215
6216 * keymap.c (get_keymap): An autoload form is not a keymap.
6217
6218 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6219
6220 2004-10-13 Kim F. Storm <storm@cua.dk>
6221
6222 * callproc.c (Fcall_process): Simplify handling of display arg.
6223 Resume `display_on_the_fly' once a coding system is determined.
6224
6225 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6226
6227 2004-10-12 Kim F. Storm <storm@cua.dk>
6228
6229 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6230 caller, such as call-process, is not going to poll for input.
6231 (calc_line_height_property): Handle case where it->object is nil.
6232
6233 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6234
6235 2004-10-12 Kenichi Handa <handa@m17n.org>
6236
6237 * xdisp.c (get_next_display_element):
6238 If unibyte_display_via_language_environment is zero, display 8-bit
6239 chars in octal in unibyte buffer.
6240
6241 2004-10-12 Kim F. Storm <storm@cua.dk>
6242
6243 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6244 are no ordinary bindings.
6245
6246 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6247
6248 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6249
6250 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6251
6252 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6253 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6254 (make_mac_frame): Add BLOCK_INPUT around the making of a
6255 terminal frame.
6256 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6257 * macgui.h (mktime): Use emacs_mktime.
6258 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6259 Make a cancel file-open dialog be like C-g.
6260 * mac.c (mktime): Use emacs_mktime.
6261 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6262 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6263
6264 2004-10-10 Kim F. Storm <storm@cua.dk>
6265
6266 * keyboard.c (timer_resume_idle): New function to resume idle
6267 timer without resetting timers on the idle list.
6268 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6269 (timer_start_idle, timer_stop_idle): Declare static.
6270 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6271
6272 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6273
6274 2004-10-08 Steven Tamm <steventamm@mac.com>
6275
6276 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6277 * macterm.c (mac_check_for_quit_char): Remove warning for using
6278 NULL where 0 should be used.
6279 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6280 objc/malloc.h
6281 * mac.c: Include time.h for Tiger compatibility.
6282
6283 2004-10-07 Kim F. Storm <storm@cua.dk>
6284
6285 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6286 windows. Update vertical line after drawing window fringes, but
6287 only if actually drawing any bitmaps--or there is no fringe.
6288
6289 * xterm.c (x_update_window_end): Likewise.
6290 * macterm.c (x_update_window_end): Likewise.
6291 * w32term.c (x_update_window_end): Likewise.
6292
6293 * fringe.c (draw_window_fringes): Return value now indicates if
6294 any fringe bitmaps were redrawn (or there are no fringes).
6295
6296 * dispextern.h (draw_window_fringes): Update prototype.
6297
6298 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6299
6300 * macfns.c (mac_get_window_bounds): Add extern.
6301 (x_real_positions): Use mac_get_window_bounds.
6302
6303 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6304 xmenu.c (YAILOM).
6305
6306 * macterm.c [!MAC_OSX]: Include Windows.h.
6307 (front_emacs_window): Rename from mac_front_window. All uses
6308 changed. Return the frontmost non-tooltip emacs window.
6309 (mac_get_window_bounds): New function.
6310 (x_calc_absolute_position): Use the difference of width and height
6311 between the inner and outer window.
6312 (x_set_offset): Specify window position by the coordinae of the
6313 outer window. Adjust the position if the title bar is completely
6314 outside the screen.
6315 (app_is_suspended, app_sleep_time): Remove unused variables.
6316 (do_app_resume, do_app_suspend): Remove their contents because
6317 window-activate/deactivate events will do the job.
6318 (do_zoom_window): Remove unused variables. Make compliant to the
6319 standard way of zooming. Set f->left_pos and f->top_pos.
6320 (XTread_socket): Don't use argument `expected'. Don't use
6321 FrontWindow to determine the clicked window. Exclude unprocessed
6322 mouseUp cases in the early stage. Add parentheses to fix operator
6323 precedence.
6324 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6325
6326 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6327
6328 * config.in: Regenerate.
6329
6330 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6331 HAVE_EXECSHIELD.
6332
6333 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6334
6335 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6336 a row if Alt or Meta has been found for that row. Also stop scanning
6337 for Keysyms for that row.
6338
6339 2004-10-04 Kim F. Storm <storm@cua.dk>
6340
6341 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6342 to list. Include overlay arrow bitmap in return value.
6343
6344 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6345 bars with fractional column width. If scroll bar separates two
6346 windows, move it towards the window it belongs to. Only update
6347 the padding area below the scroll bar widget when necessary,
6348 i.e. when scroll bar widget is created, moved, or resized.
6349
6350 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6351 while tracking/dragging mouse.
6352 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6353
6354 * window.c (coordinates_in_window): Relax check for cursor
6355 on vertial border between mode lines.
6356 (Fset_window_fringes): Do not allow negative widths.
6357 (Fset_window_scroll_bars): Likewise.
6358
6359 * .gdbinit (pp): Shorthand for p ARG + pr.
6360 (ff): New command: flush frame updates (X only).
6361
6362 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6363
6364 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6365
6366 2004-09-30 Kenichi Handa <handa@m17n.org>
6367
6368 * process.c (send_process): Free composition data.
6369
6370 * fileio.c (Finsert_file_contents): Free composition data.
6371
6372 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6373 compositions to encode.
6374 (encode_coding_string): Likewise. Free composition data.
6375
6376 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6377
6378 * coding.c (code_convert_region): Free composition data.
6379
6380 2004-09-29 Kim F. Storm <storm@cua.dk>
6381
6382 * fringe.c: Remove limit on number of bitmaps.
6383 (fringe_bitmaps, fringe_faces): Change to pointers.
6384 (max_fringe_bitmaps): New var.
6385 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6386 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6387
6388 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6389 (struct glyph_row): Reorder fringe_bitmap related fields.
6390 (struct it): Likewise.
6391
6392 * w32term.c (fringe_bmp): Change to pointer.
6393 (max_fringe_bmp): New var.
6394 (w32_define_fringe_bitmap): Expand fringe_bmp.
6395 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6396 (w32_destroy_fringe_bitmap): Likewise.
6397
6398 2004-09-29 Kim F. Storm <storm@cua.dk>
6399
6400 * fringe.c: Simplify last change.
6401 (lookup_fringe_bitmap): New function.
6402 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6403 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6404 Keep standard bitmaps in Vfringe_bitmaps.
6405 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6406 (Fset_fringe_bitmap_face): Likewise.
6407
6408 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6409 (valid_fringe_bitmap_p): Remove prototype.
6410
6411 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6412
6413 2004-09-29 Kim F. Storm <storm@cua.dk>
6414
6415 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6416 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6417
6418 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6419
6420 * fringe.c (Vfringe_bitmaps): New variable.
6421 (syms_of_fringe): DEFVAR_LISP it.
6422 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6423 Change arg to Lisp_Object and fail if not an integer.
6424 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6425 (destroy_fringe_bitmap): New functions.
6426 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6427 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6428 clear its fringe property.
6429 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6430 Fdestroy_fringe_bitmap.
6431 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6432 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6433 and set fringe property. Signal error if no free slots.
6434 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6435 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6436
6437 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6438 symbols with a fringe property.
6439
6440 2004-09-27 Kim F. Storm <storm@cua.dk>
6441
6442 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6443 Doc fix. Format may now be a symbol or alist, not a cons.
6444
6445 * fringe.c (update_window_fringes): Handle new formats of
6446 indicate-buffer-boundaries (symbol or alist). No longer
6447 allow a simple cons.
6448 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6449
6450 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6451
6452 * config.in: Rebuild.
6453
6454 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6455
6456 * config.in: Rebuild.
6457
6458 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6459
6460 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6461
6462 * xterm.c (x_term_init): Work around a bug in some X servers.
6463
6464 2004-09-18 Richard M. Stallman <rms@gnu.org>
6465
6466 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6467
6468 * xdisp.c (try_window_reusing_current_matrix):
6469 Handle the case where we reach the old displayed text,
6470 out of sync with the old line boundary.
6471
6472 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6473
6474 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6475 narrowed buffer.
6476
6477 2004-09-14 Kim F. Storm <storm@cua.dk>
6478
6479 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6480
6481 * xfaces.c (Qface_no_inherit): New var.
6482 (syms_of_xfaces): Intern and staticpro it.
6483 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6484 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6485 Don't increment face_change_count when face has non-nil
6486 face-no-inherit property.
6487
6488 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6489
6490 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6491 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6492
6493 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6494 before doing the mark_stack_check_gcpros since they're not on the stack.
6495
6496 2004-09-12 Kim F. Storm <storm@cua.dk>
6497
6498 * editfns.c (Fformat): Handle format strings with multiple text
6499 properties. Reverse text property list from the format string,
6500 so the positions are in increasing order.
6501
6502 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6503
6504 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6505 x_uncatch_errors so that possible protocol errors are delivered.
6506
6507 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6508
6509 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6510 blockinput.h.
6511 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6512 charset.h, and coding.h
6513 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6514 (term.o): Depend on window.h and keymap.h.
6515 (abbrev.o): Depend on syntax.h.
6516 (callint.o): Depend on keymap.h.
6517 (casefiddle.o): Depend on charset.h and keymap.h.
6518 (category.o): Depend on keymap.h.
6519 (coding.o): Depend on dispextern.h.
6520 (cmds.o): Depend on keyboard.h and keymap.h.
6521 (dispnew.o): Depend on indent.h and intervals.h.
6522 (doc.o): Depend on keymap.h.
6523 (editfns.o): Depend on frame.h.
6524 (emacs.o): Depend on dispextern.h.
6525 (fileio.o): Don't depend on ccl.h.
6526 (filelock.o): Depend on charset.h and coding.h.
6527 (frame.o): Depend on w32term.h and macterm.h.
6528 (insdel.o): Depend on region-cache.h.
6529 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6530 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6531 (search.o): Depend on $(INTERVALS_SRC).
6532 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6533 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6534 xterm.h, w32term.h, and macterm.h.
6535 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6536 w32term.h, and macterm.h.
6537 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6538 region-cache.h, xterm.h, w32term.h, and macterm.h.
6539 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6540 (data.o): Depend on frame.h.
6541 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6542 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6543 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6544 (intervals.o): Depend on keymap.h.
6545
6546 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6547 Add debugging print-out to termscript.
6548
6549 2004-09-09 Richard M. Stallman <rms@gnu.org>
6550
6551 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6552
6553 2004-09-08 Richard M. Stallman <rms@gnu.org>
6554
6555 * window.c (Fset_window_buffer): Doc fix.
6556
6557 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6558
6559 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6560
6561 * minibuf.c (history_delete_duplicates): New variable.
6562 (read_minibuf): Use it.
6563 (syms_of_minibuf): Create the corresponding lisp variable.
6564
6565 2004-09-08 Kim F. Storm <storm@cua.dk>
6566
6567 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6568 overlay just before point.
6569
6570 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6571
6572 * buffer.h (struct buffer): Add auto_save_file_format field.
6573 * buffer.c (reset_buffer, init_buffer_once):
6574 Handle auto_save_file_format field.
6575 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6576 `buffer-auto-save-file-format'.
6577 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6578 (build_annotations): Adapt to replacement of
6579 `auto-save-file-format' with the new buffer-local variable
6580 `buffer-auto-save-file-format'.
6581 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6582
6583 2004-09-07 Jason Rumney <jasonr@gnu.org>
6584
6585 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6586
6587 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6588 Handle Unicode menu titles.
6589
6590 2004-09-07 Kim F. Storm <storm@cua.dk>
6591
6592 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6593 property from text property or overlay strings at point.
6594
6595 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6596
6597 * xmenu.c (update_submenu_strings): YAILOM.
6598 (set_frame_menubar): Make sure last_i is initialized.
6599
6600 2004-09-03 Jason Rumney <jasonr@gnu.org>
6601
6602 * w32menu.c (_widget_value): Add lname and lkey.
6603 (digest_single_submenu): Set lname and lkey in widget_value
6604 instead of name and key.
6605 (update_submenu_strings): New function.
6606 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6607 call update_submenu_strings.
6608
6609 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6610 (digest_single_submenu, w32_menu_show): Encode menu strings as
6611 UTF-8 if Unicode API is available.
6612 (utf8to16): New function.
6613 (add_menu_item): Use it when calling Unicode API.
6614
6615 2004-09-03 Kim F. Storm <storm@cua.dk>
6616
6617 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6618 in overlay or text-property strings; set cursor on corresponding
6619 glyph rather than at end of the string.
6620
6621 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6622
6623 * macfns.c (x_real_positions): Save the current window port and
6624 set a new one before obtaining the global coordinate.
6625 Use FRAME_MAC_WINDOW.
6626 (x_set_name, x_set_title): Encode title to UTF8.
6627 Use SetWindowTitleWithCFString.
6628 (Fx_server_version): Get correct OS version.
6629
6630 * macmenu.c (add_menu_item): Remove unused variable `i'.
6631 Don't let separator items destroy refence constants of other menu items.
6632
6633 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6634 BLOCK_INPUT.
6635 (x_set_offset): Use FRAME_MAC_WINDOW.
6636
6637 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6638 nontext_cursor if it is on a scroll bar.
6639
6640 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6641 Carbon support.
6642 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6643 Use LIBS_CARBON.
6644
6645 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6646
6647 * xfns.c (x_set_name_internal): New function. Check if we shall call
6648 xfree before ENCODE_UTF_8.
6649 (x_set_name, x_set_title): Call x_set_name_internal.
6650
6651 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6652
6653 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6654 reload it.
6655
6656 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6657
6658 * macmenu.c (_widget_value): Add lname and lkey.
6659 (single_submenu): Set lname and lkey in widget_value
6660 instead of name and key.
6661 (update_submenu_strings): New function.
6662 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6663 call update_submenu_strings.
6664
6665 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6666 instead of name and key.
6667 (update_submenu_strings): New function.
6668 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6669 call update_submenu_strings.
6670
6671 * gtkutil.h (_widget_value): Added lname and lkey.
6672
6673 2004-08-30 Steven Tamm <steventamm@mac.com>
6674
6675 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6676 by using different names for inner loop variables.
6677
6678 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6679
6680 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6681 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6682
6683 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6684 tool bar items is 0.
6685
6686 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6687
6688 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6689 strings in menu items.
6690 (single_submenu): Use ENCODE_MENU_STRING
6691 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6692 button release isn't passed to event loop
6693 (add_menu_item): Use SetMenuItemWithCFString
6694
6695 2004-08-26 Steven Tamm <steventamm@mac.com>
6696
6697 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6698 tool-bar/menu click.
6699 * macfns.c (Fx_file_dialog): Implement using NavServices.
6700
6701 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6702
6703 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6704
6705 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6706 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6707 (x_top_window_to_frame): Return 0 if wdesc is None.
6708
6709 2004-08-22 Richard M. Stallman <rms@gnu.org>
6710
6711 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6712 HAVE_TERMIOS]: If there's no char for this signal, drop through
6713 and use system calls.
6714
6715 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6716
6717 2004-08-20 Kim F. Storm <storm@cua.dk>
6718
6719 * process.c (wait_reading_process_output): Rename from
6720 wait_reading_process_input. All uses changed.
6721 (wait_reading_process_output_1): Rename from
6722 wait_reading_process_input_1. All uses changed.
6723
6724 * dispnew.c (Fsleep_for): Remove obsolete code.
6725
6726 2004-08-20 Kenichi Handa <handa@m17n.org>
6727
6728 * syntax.c (skip_chars): Fix for unibyte case.
6729
6730 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6731
6732 * syntax.c (char_quoted): Mixup byte/char pos.
6733 (back_comment): Fixup globals in all cases.
6734
6735 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6736
6737 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6738 passing it to gtk_window_set_title.
6739
6740 2004-08-19 Kim F. Storm <storm@cua.dk>
6741
6742 * process.c (wait_reading_process_input): Clean up.
6743 Add wait_for_cell, wait_proc, and just_wait_proc args
6744 to avoid overloading `read_kbd' and `do_display' args.
6745 Change read_kbd arg to int. All callers changed.
6746
6747 * process.c (process_send_signal): Use CDISABLE.
6748
6749 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6750
6751 2004-08-18 Kim F. Storm <storm@cua.dk>
6752
6753 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6754 forward to wait_reading_process_input via DO_DISPLAY arg.
6755 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6756 object, only process output from that process; also inhibit
6757 running timers if DO_DISPLAY==-2.
6758
6759 2004-08-17 Kim F. Storm <storm@cua.dk>
6760
6761 * process.c (process_send_signal): Fix last change--use
6762 _POSIX_VDISABLE instead of CVDISABLE when available.
6763
6764 2004-08-16 Richard M. Stallman <rms@gnu.org>
6765
6766 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6767 Set VQUIT and VINTR chars to the standard ones if they are unset.
6768 [AIX]: Don't do that here. And don't force VINTR to standard
6769 when SIGNALS_VIA_CHARACTERS.
6770
6771 * process.c (process_send_signal)
6772 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6773 Do nothing if the character is CVDISABLE.
6774
6775 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6776
6777 * intervals.c (move_if_not_intangible):
6778 Force POSITION to be between BEGV and ZV.
6779
6780 2004-08-14 John Paul Wallington <jpw@gnu.org>
6781
6782 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6783
6784 * fileio.c (Fread_file_name): Doc fix.
6785
6786 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6787
6788 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6789
6790 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6791
6792 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6793
6794 * keyboard.c: Declare Qdisabled_command_function instead of
6795 Qdisabled_command_hook.
6796 (Fcommand_execute): Use Qdisabled_command_function instead of
6797 Qdisabled_command_hook.
6798 (syms_of_keyboard): Ditto.
6799
6800 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6801
6802 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6803 (syms_of_keymap) <key-translation-map>: Doc fixes.
6804
6805 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6806
6807 * window.c (window_list_1): YAILOM.
6808
6809 * fileio.c (make_temp_name): Handle multibyte prefixes.
6810
6811 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6812
6813 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6814 Doc fix.
6815
6816 2004-08-03 Kenichi Handa <handa@m17n.org>
6817
6818 * coding.c (decode_coding_string): Adjust coding->consumed, and
6819 etc. with shrinked_bytes.
6820
6821 2004-08-03 Kim F. Storm <storm@cua.dk>
6822
6823 * indent.c (compute_motion): Fix check for full width window
6824 in non-window case. Do not count left truncation glyph on
6825 window systems.
6826
6827 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6828
6829 * data.c (Finteractive_form): Doc fix.
6830
6831 2004-08-02 Kim F. Storm <storm@cua.dk>
6832
6833 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6834 properly accounting for continuation glyph on non-window systems.
6835 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6836 actual window width/height if TOPOS is nil, properly accounting for
6837 continuation glyphs on non-window systems, and optional header lines.
6838 (vmotion): Let compute_motion calculate actual window width.
6839
6840 * window.c (window_scroll_line_based): Let compute_motion
6841 calculate actual window width.
6842
6843 2004-08-02 Kim F. Storm <storm@cua.dk>
6844
6845 * process.c (read_process_output): Use whole read buffer.
6846 Don't trigger adaptive read buffering on errors.
6847
6848 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6849
6850 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6851
6852 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6853
6854 * callint.c (Fcall_interactively): Doc fix.
6855
6856 2004-07-30 Richard M. Stallman <rms@gnu.org>
6857
6858 * abbrev.c (Fexpand_abbrev): Undo previous change.
6859
6860 2004-07-30 Kim F. Storm <storm@cua.dk>
6861
6862 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6863
6864 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6865
6866 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6867
6868 2004-07-27 Kim F. Storm <storm@cua.dk>
6869
6870 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6871 we have ensured that the glyph fits on the current line (or returned
6872 MOVE_LINE_CONTINUED otherwise).
6873
6874 2004-07-26 Kim F. Storm <storm@cua.dk>
6875
6876 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6877 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6878 if target position is at end of display line but char is not a newline.
6879
6880 2004-07-25 Richard M. Stallman <rms@gnu.org>
6881
6882 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6883 instead of ON_VERTICAL_BORDER, when on scroll bar.
6884 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6885
6886 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6887
6888 * window.c (Fcoordinates_in_window_p):
6889 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6890
6891 * alloc.c (check_cons_list): New function (contents commented out).
6892
6893 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6894
6895 * xfaces.c (Fcolor_supported_p): Doc fix.
6896
6897 * frame.c (Fselect_frame, Fset_frame_selected_window)
6898 (Fframe_visible_p, Fraise_frame): Doc fixes.
6899
6900 2004-07-24 Richard M. Stallman <rms@gnu.org>
6901
6902 * keyboard.h (not_single_kboard_state): Declare.
6903
6904 * fileio.c (Fwrite_region): Doc fix.
6905
6906 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
6907
6908 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
6909 only when a real abbrev is present.
6910
6911 * xfns.c (x_icon_verify): New function.
6912 (Fx_create_frame): Use it.
6913
6914 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
6915
6916 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
6917
6918 2004-07-21 Kim F. Storm <storm@cua.dk>
6919
6920 * window.h (struct glyph_matrix): New members nrows_scale_factor
6921 and ncols_scale_factor.
6922
6923 * window.c (make_window): Initialize nrows_scale_factor and
6924 ncols_scale_factor members.
6925
6926 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
6927 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
6928 (required_matrix_height): Apply nrows_scale_factor.
6929 (required_matrix_width): Apply ncols_scale_factor.
6930
6931 * xdisp.c (display_line): Increment nrows_scale_factor and set
6932 fonts_changed_p if past last allocated row.
6933 (append_glyph, append_composite_glyph, produce_image_glyph)
6934 (append_stretch_glyph): Increment ncols_scale_factor and set
6935 fonts_changed_p if current area is full.
6936
6937 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6938
6939 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
6940
6941 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
6942
6943 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
6944 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
6945 (Fset_window_start, Fscroll_up, Fscroll_down)
6946 (Fother_window_for_scrolling, Fscroll_other_window)
6947 (Fsave_window_excursion, Fset_window_vscroll)
6948 (syms_of_window) <window-size-fixed>: Doc fixes.
6949
6950 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6951
6952 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
6953 ENCODE_SYSTEM for filenames.
6954
6955 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6956
6957 * mac.c (sys_select): Block input around call to
6958 ReceiveNextEvent to prevent breakage. Correctly handle
6959 blocking on event queue only by calling ReceiveNextEvent
6960 instead of select (since GUI events aren't on an fd).
6961 (sys_read): Remove function
6962 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6963
6964 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6965
6966 * mac.c (sys_select): Redo sys_select to use alarm-based
6967 polling instead of 1 sec timeouts (like solaris).
6968
6969 * macterm.c (x_make_frame_visible): Comment in polling on
6970 frame creation.
6971
6972 * keyboard.c: Undef SIGIO on Carbon
6973
6974 * atimer.c (alarm_signal_handler): Call alarm handlers after
6975 scheduling.
6976
6977 * eval.c (Feval): Remove quit_char test
6978
6979 * process.c (wait_reading_process_input): Remove clearing
6980 stdin for select call on process input.
6981
6982 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6983
6984 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6985 capitalization error in docstring.
6986
6987 2004-07-17 Juanma Barranquero <lektu@terra.es>
6988
6989 * keyboard.c (not_single_kboard_state): Do nothing unless
6990 MULTI_KBOARD is defined.
6991
6992 2004-07-17 Richard M. Stallman <rms@gnu.org>
6993
6994 * window.c (coordinates_in_window): Inside the window but outside
6995 its box to the L or R, return ON_VERTICAL_BORDER.
6996 (window_list_1): Rotate the list to start with WINDOW.
6997
6998 * print.c (print_preprocess): Test for print_depth at limit
6999 before entering in being_printed.
7000
7001 * keyboard.c (not_single_kboard_state): New function.
7002 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7003
7004 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7005 this kboard, and we delete its last frame, go to any_kboard_state.
7006
7007 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7008
7009 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7010
7011 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7012 system before passing them to OS functions for display.
7013
7014 2004-07-15 David Kastrup <dak@gnu.org>
7015
7016 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7017 Apparently fixes an abort condition.
7018
7019 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7020
7021 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7022 instead of a cons.
7023
7024 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7025
7026 * keyboard.c (echo_dash): Do nothing if there already is a dash
7027 at the end of the echo string.
7028
7029 2004-07-12 Kim F. Storm <storm@cua.dk>
7030
7031 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7032 if GC_MARK_STACK.
7033
7034 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7035
7036 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7037
7038 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7039 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7040 (Freplace_buffer_in_windows, Fset_window_buffer)
7041 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7042 (syms_of_window): Expand docstring of `display-buffer-function'.
7043
7044 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7045
7046 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7047 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7048 that time values of the type (HIGH . LOW) are considered obsolete.
7049
7050 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7051
7052 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7053 docstring.
7054
7055 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7056
7057 2004-07-06 John Paul Wallington <jpw@gnu.org>
7058
7059 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7060
7061 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7062
7063 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7064
7065 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7066 instead of CGMainDisplayID (only in OSX 10.2 and later).
7067
7068 2004-07-04 John Paul Wallington <jpw@gnu.org>
7069
7070 * fileio.c (read_file_name_completion_ignore_case): New variable.
7071 (syms_of_fileio): Declare and initialise it.
7072 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7073
7074 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7075
7076 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7077 for event.x and event.y.
7078
7079 2004-07-01 Kenichi Handa <handa@m17n.org>
7080
7081 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7082 after getting a new string by pre-write-conversion.
7083
7084 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7085
7086 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7087 (x_calc_absolute_position): Remove unused var `child'.
7088
7089 * xfaces.c (x_supports_face_attributes_p)
7090 (Fdisplay_supports_face_attributes_p): YAILOM.
7091 (tty_supports_face_attributes_p): Remove unused var `i'.
7092
7093 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7094 back_unibyte_ok.
7095
7096 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7097
7098 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7099
7100 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7101
7102 2004-06-30 Andreas Schwab <schwab@suse.de>
7103
7104 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7105 (Finit_image_library): Pass LIBRARIES through to
7106 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7107 (lookup_image_type): Pass Qnil as second argument to
7108 Finit_image_library.
7109
7110 * lisp.h (Finit_image_library): Declare.
7111
7112 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7113
7114 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7115 (XTread_socket): Send mouse button events to the toolbox
7116 dispatcher even when the mouse is grabbed. Don't process window
7117 activate events for non-Emacs windows. Replace function calls to
7118 do_window_activate and do_window_deactivate with their contents.
7119 Reset mouse grabbing status when a window is deactivated.
7120
7121 2004-06-29 Steven Tamm <steventamm@mac.com>
7122
7123 * macterm.c (mac_get_emulated_btn)
7124 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7125 support to correctly mask out modifiers.
7126
7127 2004-06-29 David Kastrup <dak@gnu.org>
7128
7129 * search.c (Fset_match_data): Allow buffer before end of list
7130 which can happen if set-match-data is using a pre-consed list.
7131
7132 2004-06-28 Steven Tamm <steventamm@mac.com>
7133
7134 * macterm.c (XTread_socket): Correctly set the frame position
7135 after the window is moved.
7136
7137 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7138
7139 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7140 gpix and gmask just before return to avoid memory leak.
7141 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7142 so insensitive and activated icons look ok.
7143
7144 2004-06-27 Jason Rumney <jasonr@gnu.org>
7145
7146 * w32fns.c (file_dialog_callback): Disable edit control if set
7147 to directories only on CDN_INITDONE message.
7148 (Fx_file_dialog): Default to directories only when prompt starts
7149 with "Dired".
7150
7151 2004-06-25 Kim F. Storm <storm@cua.dk>
7152
7153 * alloc.c (allocate_misc): Update total_free_markers.
7154 (free_misc): New function.
7155 (safe_alloca_unwind, free_marker): Use it.
7156
7157 * lisp.h (free_misc): Add prototype.
7158
7159 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7160
7161 2004-06-24 Richard M. Stallman <rms@gnu.org>
7162
7163 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7164 (syms_of_emacs): Lisp variables deleted.
7165
7166 2004-06-23 David Kastrup <dak@gnu.org>
7167
7168 * search.c (Freplace_match): Adjust the match-data more thoroughly
7169 when replacing strings in the buffer.
7170 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7171 a buffer, add the buffer as last element to the match data.
7172 (Fset_match_data): If an additional element of the match-data is a
7173 buffer, restore it to last_thing_searched.
7174 (save_search_regs): Save last_thing_searched as part of the match data.
7175 (restore_match_data): Restore it again.
7176
7177 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7178
7179 * keymap.c (Ftext_char_description): Doc fix.
7180 * doc.c (Fsnarf_documentation): Doc fix.
7181
7182 2004-06-22 Kim F. Storm <storm@cua.dk>
7183
7184 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7185
7186 * lisp.h (struct Lisp_Save_Value): New member dogc.
7187 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7188 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7189 (SAFE_FREE_LISP): New macro.
7190
7191 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7192 (make_save_value): Init new dogc member.
7193 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7194
7195 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7196 SAFE_FREE_LISP macros.
7197
7198 2004-06-22 Kim F. Storm <storm@cua.dk>
7199
7200 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7201 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7202 in that memory area are unknown to GC. Add comments.
7203
7204 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7205
7206 2004-06-21 Kim F. Storm <storm@cua.dk>
7207
7208 * lisp.h (MAX_ALLOCA): Define here.
7209 (safe_alloca_unwind): Add prototype.
7210 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7211
7212 * alloc.c (safe_alloca_unwind): New function.
7213
7214 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7215
7216 * charset.c (Fstring): Use SAFE_ALLOCA.
7217
7218 * coding.c (MAX_ALLOCA): Remove define.
7219
7220 * data.c (MAX_ALLOCA): Remove define.
7221 (Faset): Use SAFE_ALLOCA.
7222
7223 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7224
7225 * fns.c (string_make_multibyte, string_to_multibyte)
7226 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7227 (MAX_ALLOCA): Remove define.
7228 (Fbase64_encode_region, Fbase64_encode_string)
7229 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7230 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7231 memory leak if encoding fails.
7232
7233 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7234
7235 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7236
7237 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7238
7239 2004-06-20 Richard M. Stallman <rms@gnu.org>
7240
7241 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7242
7243 * search.c (match_limit): Cleaner err msg when no match data available.
7244
7245 * window.c (syms_of_window): Doc fix.
7246
7247 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7248 for Vtransient_mark_mode.
7249
7250 * buffer.c (syms_of_buffer): Doc fix.
7251
7252 2004-06-21 David Kastrup <dak@gnu.org>
7253
7254 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7255 and unbinding of `case-fold-search' according to
7256 `completion-ignore-case' around calls of string-match and
7257 predicates, respectively. Should give satisfactory performance
7258 in all relevant cases.
7259
7260 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7261
7262 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7263 clip_x/y_origin.
7264
7265 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7266
7267 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7268
7269 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7270 on Mac OSX.
7271
7272 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7273
7274 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7275
7276 2004-06-16 Kim F. Storm <storm@cua.dk>
7277
7278 * dispextern.h (Vimage_types): Remove extern.
7279
7280 2004-06-16 Miles Bader <miles@gnu.org>
7281
7282 * image.c (lookup_image_type): Initialize image type if necessary.
7283
7284 2004-06-15 Kim F. Storm <storm@cua.dk>
7285
7286 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7287 margin at top of window.
7288 (try_window_reusing_current_matrix): Calculate proper cursor position
7289 after scrolling up with non-zero scroll margin, as the old cursor
7290 position corresponds to value of PT before executing this command.
7291 (try_window_id): Consider scroll margin at bottom of window too;
7292 otherwise we fail to scroll when hl-line-mode is enabled.
7293
7294 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7295 proper format and class is a lower-case word.
7296
7297 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7298
7299 * gtkutil.c (xg_get_image_for_pixmap): New function.
7300 (xg_get_gdk_pixmap_and_mask): Remove.
7301 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7302 xg_get_gdk_pixmap_and_mask.
7303
7304 * xterm.h (struct x_display_info): Typo in comment fixed.
7305
7306 2004-06-14 Juanma Barranquero <lektu@terra.es>
7307
7308 * dispextern.h (Vimage_types): Make it conditional on
7309 HAVE_WINDOW_SYSTEM.
7310
7311 * image.c (Vimage_types): Move from xdisp.c.
7312 (Vimage_type_cache): New variable.
7313 (define_image_type): New argument indicating whether an image
7314 library was loaded; cache loaded status and return t on success,
7315 nil otherwise.
7316 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7317 (w32_delayed_load): New function to load an image library from a
7318 list of possible filenames.
7319 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7320 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7321 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7322 (Finit_image_library): New function, extracted from `init_image'.
7323 Try to initialize an image library on demand and cache whether we
7324 were successful or not.
7325 (syms_of_image): Initialize `Vimage_types' and
7326 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7327 Export `init-image-library'.
7328 (init_image): Remove initialization of all image types, except xbm
7329 and pbm.
7330
7331 * xdisp.c (Vimage_types): Delete (moved to image.c).
7332
7333 2004-06-14 Andreas Schwab <schwab@suse.de>
7334
7335 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7336 Avoid calling specbind when completion-regexp-list is empty.
7337
7338 2004-06-13 Richard M. Stallman <rms@gnu.org>
7339
7340 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7341 (re_wctype, re_iswctype, re_wctype_to_bit):
7342 Non-function definitions moved here from regex.c.
7343
7344 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7345 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7346 (re_wctype, re_iswctype, re_wctype_to_bit):
7347 Non-function definitions moved to regex.h.
7348
7349 * window.c (Fselect_window): Doc fix.
7350
7351 * syntax.c: Include regex.h.
7352 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7353 If requested, make a list of classes, then check the scanned
7354 chars for membership in them.
7355 (in_classes): New function.
7356 Doc fix.
7357
7358 * keyboard.c (cmd_error): Don't call any_kboard_state
7359 if inside a recursive edit level.
7360
7361 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7362
7363 * keyboard.c (command_loop): Call any_kboard_state before
7364 command_loop_2 when at top level.
7365
7366 2004-06-13 Andreas Schwab <schwab@suse.de>
7367
7368 * print.c (print_object): Always use %ld for printing EMACS_INT.
7369
7370 * keyboard.c (cancel_hourglass_unwind): Return a value.
7371 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7372 (Fexecute_extended_command): Likewise.
7373
7374 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7375 avoid clashes.
7376 (SYNTAX): Likewise.
7377 (SYNTAX_WITH_FLAGS): Likewise.
7378 (SYNTAX_MATCH): Likewise.
7379
7380 * syntax.c (char_quoted): Avoid warning about undefined operation.
7381 (find_defun_start): Likewise.
7382 (scan_lists): Likewise.
7383 (INC_FROM): Likewise.
7384 (scan_sexps_forward): Likewise.
7385
7386 * image.c: Include <ctype.h>.
7387
7388 * xfaces.c (face_attr_equal_p): Declare parameters.
7389
7390 2004-06-13 Kenichi Handa <handa@m17n.org>
7391
7392 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7393
7394 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7395
7396 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7397
7398 2004-06-12 Kenichi Handa <handa@m17n.org>
7399
7400 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7401 ccl_prog_stack_struct and update it.
7402 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7403 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7404 ccl->eof_ic on EOF.
7405 (ccl_debug_hook): New function.
7406 (struct ccl_prog_stack): New member eof_ic.
7407 (ccl_driver): Handle EOF in subrountine call correctly.
7408
7409 2004-06-11 Kenichi Handa <handa@m17n.org>
7410
7411 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7412
7413 2004-06-11 Kim F. Storm <storm@cua.dk>
7414
7415 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7416
7417 2004-06-11 Juanma Barranquero <lektu@terra.es>
7418
7419 * keyboard.c (Fposn_at_point): Doc fix.
7420
7421 2004-06-11 David Kastrup <dak@gnu.org>
7422
7423 * search.c (match_limit): Don't flag an error if match-data
7424 exceeding the allocated search_regs.num_regs gets requested, just
7425 return Qnil.
7426
7427 2004-06-08 Miles Bader <miles@gnu.org>
7428
7429 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7430
7431 2004-06-07 Juanma Barranquero <lektu@terra.es>
7432
7433 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7434 (Fcurrent_time_string, Fcurrent_time_zone)
7435 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7436
7437 2004-06-07 Miles Bader <miles@gnu.org>
7438
7439 * xfaces.c (struct named_merge_point): New type.
7440 (push_named_merge_point): New function.
7441 (merge_named_face): New function.
7442 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7443 Use `merge_named_face'.
7444 (merge_face_inheritance): Function removed.
7445 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7446 Add new `err_msgs' and `named_merge_points' args. Return error
7447 status. Only print error messages if ERR_MSGS is true. Don't try to
7448 do :inherit attribute validation.
7449 (merge_face_heights): Handle `unspecified' in both directions.
7450 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7451 Call `merge_face_ref' instead of `merge_face_inheritance'.
7452 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7453 (compute_char_face, face_at_buffer_position)
7454 (face_at_string_position): Call `merge_face_ref' instead of
7455 `merge_face_vector_with_property'.
7456
7457 2004-06-07 Kenichi Handa <handa@m17n.org>
7458
7459 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7460 the necessary places.
7461
7462 2004-06-07 Kim F. Storm <storm@cua.dk>
7463
7464 * process.c (Fdelete_process): Undo 2004-05-28 change.
7465 Instead, call status_notify also for network process.
7466 (status_message): Use process instead of status as arg.
7467 Give messages "deleted" or "connection broken by remote peer" for
7468 an exited network process.
7469 (status_notify): Change call to status_message.
7470 (read_process_output): Increase readmax to 4096. Do not increase
7471 buffer size for datagram channels (default is now large enough).
7472
7473 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7474
7475 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7476 problem due to newly defined variable.
7477
7478 2004-06-06 Miles Bader <miles@gnu.org>
7479
7480 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7481 immediately if non-interactive or not initialized.
7482
7483 2004-06-05 Richard M. Stallman <rms@gnu.org>
7484
7485 * minibuf.c (Fcompleting_read): Doc fix.
7486
7487 2004-06-05 Andreas Schwab <schwab@suse.de>
7488
7489 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7490
7491 2004-06-05 Juanma Barranquero <lektu@terra.es>
7492
7493 * keymap.c (Fdescribe_vector): Fix docstring.
7494 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7495
7496 2004-06-05 Miles Bader <miles@gnu.org>
7497
7498 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7499 attributes have different values than the default face.
7500
7501 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7502
7503 * xfaces.c (x_supports_face_attributes_p): Make this function
7504 conditional on HAVE_WINDOW_SYSTEM.
7505 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7506 Don't call x_supports_face_attributes_p if it was not compiled in.
7507
7508 2004-06-04 Miles Bader <miles@gnu.org>
7509
7510 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7511 from Ftty_supports_face_attributes_p.
7512 (x_supports_face_attributes_p): New function.
7513 (Ftty_supports_face_attributes_p): Function deleted.
7514 (Fdisplay_supports_face_attributes_p): New function.
7515 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7516 (face_attr_equal_p): New function.
7517 (lface_equal_p): Use it.
7518
7519 2004-06-03 Juanma Barranquero <lektu@terra.es>
7520
7521 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7522 (Vw32_color_map): Fix typo in docstring.
7523 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7524 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7525 Make argument names match their use in docstring.
7526
7527 2004-06-02 Juanma Barranquero <lektu@terra.es>
7528
7529 Work around bugs/problems with MinGW builds of graphics libraries
7530 called from MSVC builds of Emacs.
7531
7532 * image.c (lookup_image): Make pointer to img static.
7533 (png_read_from_memory): Disable "global" optimization.
7534
7535 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7536
7537 * eval.c (Fcondition_case): Fix usage. Simplify.
7538
7539 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7540
7541 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7542
7543 * macfns.c: Don't include ccl.h.
7544 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7545 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7546 TextUtils.h.
7547 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7548 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7549 display height/width.
7550 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7551 (unwind_create_tip_frame, compute_tip_xy): New functions.
7552 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7553 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7554 and last_show_tip_args.
7555
7556 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7557 (Cursor, No_Cursor): New defines.
7558 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7559 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7560
7561 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7562
7563 * macterm.c: Don't include Gestalt.h.
7564 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7565 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7566 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7567 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7568 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7569 (construct_mouse_click, XTmouse_position)
7570 (x_scroll_bar_report_motion, x_calc_absolute_position)
7571 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7572 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7573 (note_mouse_movement): Clear the mouse face and reset the pointer
7574 shape when the pointer goes outside the frame without grabbing.
7575 (mac_front_window): New function.
7576 (mac_window_to_frame): New macro.
7577 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7578 (do_window_activate, do_window_deactivate, do_app_resume)
7579 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7580 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7581 (mac_check_for_quit_char): Use mac_front_window and/or
7582 mac_window_to_frame.
7583 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7584 scroll-bar click event.
7585 (mac_define_frame_cursor): Change the pointer shape.
7586 (x_free_frame_resources): Reset tip_window to NULL when it is
7587 disposed of.
7588 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7589 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7590 (do_window_update): Don't do anything if the updated window is the
7591 tooltip window.
7592 (do_mouse_moved): Handle mouse movement events here (previously in
7593 XTread_socket). Clear the mouse face if
7594 dpyinfo->mouse_face_hidden is set.
7595 (do_os_event, do_events): Remove (now in XTread_socket).
7596 (XTread_socket): Immediately return if interrupt_input_blocked.
7597 Loop until all the events in the queue are processed.
7598 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7599 contents of do_os_event and do_events. Remove mouse movement
7600 handling (now in do_mouse_moved). Add the case where
7601 Vmouse_highlight has an integer value.
7602 (NewMacWindow): Remove.
7603 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7604 excess initializations.
7605 (make_mac_terminal_frame): Previous initializations in
7606 make_mac_frame are moved here.
7607 (mac_initialize_display_info):
7608 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7609
7610 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7611 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7612
7613 2004-05-29 Richard M. Stallman <rms@gnu.org>
7614
7615 * lisp.h (truncate_undo_list): Update decl.
7616
7617 * alloc.c (undo_outer_limit): New variable.
7618 (syms_of_alloc): Defvar it.
7619 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7620
7621 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7622
7623 * alloc.c (lisp_align_malloc): Check for base == 0
7624 regardless of HAVE_POSIX_MEMALIGN.
7625 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7626
7627 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7628
7629 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7630 (marker_blocks_pending_free): Remove.
7631 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7632 Mark the undo lists after claning them up.
7633 Don't free block in marker_blocks_pending_free.
7634 (mark_buffer): Don't mark undo_list.
7635 (gc_sweep): Sweep hash-tables and strings first.
7636 Do free marker blocks that are empty.
7637
7638 2004-05-28 Jim Blandy <jimb@redhat.com>
7639
7640 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7641 after 'case wordend'. For symbeg and symend, print to stderr,
7642 like the other cases.
7643
7644 2004-05-28 Noah Friedman <friedman@splode.com>
7645
7646 * process.c (Fdelete_process): Do not call remove_process.
7647
7648 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7649
7650 * alloc.c (struct backtrace): Remove.
7651 (Fgarbage_collect): Use the new mark_backtrace.
7652
7653 * eval.c (mark_backtrace): New function.
7654
7655 * minibuf.c (run_exit_minibuf_hook): New function.
7656 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7657 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7658
7659 2004-05-27 Kim F. Storm <storm@cua.dk>
7660
7661 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7662 over display properties, e.g. images, that replace buffer text.
7663
7664 2004-05-25 Kim F. Storm <storm@cua.dk>
7665
7666 * alloc.c (marker_blocks_pending_free): New var.
7667 (gc_sweep): Store free marker blocks on that list.
7668 (Fgarbage_collect): Free them after undo-list cleanup.
7669
7670 * process.c (wait_reading_process_input): Check connect_wait_mask
7671 before actually accepting connection in case it has already been
7672 accepted due to recursion.
7673
7674 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7675
7676 * coding.c (Fset_safe_terminal_coding_system_internal):
7677 Set suppress_error in safe_terminal_coding, not terminal_coding.
7678
7679 2004-05-22 Richard M. Stallman <rms@gnu.org>
7680
7681 * alloc.c (Fmake_string): Doc fix.
7682
7683 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7684 and the alist pairs too.
7685
7686 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7687
7688 * emacs.c (main): Update copyright year.
7689
7690 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7691
7692 * insdel.c (del_range_2, replace_range): Don't write an anchor
7693 if the gap is empty.
7694
7695 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7696 scroll-down-aggressively is small but positive, put point
7697 near the screen edge.
7698
7699 2004-05-22 Juanma Barranquero <lektu@terra.es>
7700
7701 * keymap.c (Fdefine_key): Doc fix.
7702
7703 2004-05-22 Kim F. Storm <storm@cua.dk>
7704
7705 * alloc.c (struct backtrace): Add debug_on_exit member.
7706 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7707 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7708 the removed cons cells.
7709 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7710 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7711 any cons cells pointing to unallocated stings.
7712 Do not lisp_free any marker blocks, as there may still be pointers
7713 to them from buffer undo lists at this stage of GC.
7714
7715 * keyboard.c (struct backtrace): Add debug_on_exit member.
7716 (Fcommand_execute): Clear it.
7717
7718 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7719
7720 * intervals.c (lookup_char_property): Do not prematurely return nil.
7721
7722 2004-05-19 Jim Blandy <jimb@redhat.com>
7723
7724 Add support for new '\_<' and '\_>' regexp operators, matching the
7725 beginning and end of symbols.
7726
7727 * regex.c (enum syntaxcode): Add Ssymbol.
7728 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7729 (re_opcode_t): New opcodes `symbeg' and `symend'.
7730 (print_partial_compiled_pattern): Print the new opcodes properly.
7731 (regex_compile): Parse the new operators.
7732 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7733 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7734 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7735 (re_match_2_internal): Match symbeg and symend.
7736
7737 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7738
7739 2004-05-19 Kim F. Storm <storm@cua.dk>
7740
7741 * .gdbinit (xsymbol): Fix last change.
7742
7743 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7744
7745 * .gdbinit (xprintstr): New fun.
7746 (xstring, xprintsym): Use it.
7747
7748 * w32proc.c (create_child): Use INTMASK.
7749
7750 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7751 unmarked elements of the undo list.
7752
7753 2004-05-18 David Ponce <david@dponce.com>
7754
7755 * print.c (print): Reset print_depth before to call print_object.
7756
7757 2004-05-18 Jason Rumney <jasonr@gnu.org>
7758
7759 * w32console.c: Prefix RIF functions with w32con_ to avoid
7760 namespace clash with functions in term.c and w32term.c.
7761
7762 * w32menu.c (add_menu_item, w32_menu_display_help)
7763 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7764
7765 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7766
7767 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7768
7769 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7770
7771 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7772 with make_number.
7773 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7774 with XINT.
7775
7776 2004-05-18 Kim F. Storm <storm@cua.dk>
7777
7778 * blockinput.h (INPUT_BLOCKED_P): New macros.
7779
7780 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7781 (Ftop_level): Unblock input if blocked.
7782
7783 * buffer.h (GET_OVERLAYS_AT): New macro.
7784 * msdos.c (IT_note_mouse_highlight): Use it.
7785 * textprop.c (get_char_property_and_overlay): Use it.
7786 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7787 * xfaces.c (face_at_buffer_position): Use it.
7788
7789 * print.c (print_object): Increase buf size.
7790
7791 2004-05-17 Jason Rumney <jasonr@gnu.org>
7792
7793 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7794 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7795 Lisp_Object using i member.
7796 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7797 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7798 consistently.
7799
7800 * w32proc.c (create_child): Use make_number instead of masking pid.
7801
7802 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7803 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7804 Use EQ to compare Lisp_Objects.
7805 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7806
7807 * w32term.c (w32_num_mouse_buttons): Rename from
7808 Vw32_num_mouse_buttons and make it an int.
7809
7810 * w32.c (init_environment): Use it.
7811
7812 * w32fns.c (w32_wnd_proc): Likewise.
7813
7814 * w32proc.c (w32_pipe_read_delay): Rename from
7815 Vw32_pipe_read_delay and make it an int.
7816
7817 * w32.c (_sys_read_ahead): Use it.
7818
7819 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7820
7821 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7822
7823 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7824 (key_event): Don't mix Lisp_Object and int.
7825
7826 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7827
7828 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7829 modifiers in language change event.
7830
7831 2004-05-17 Kim F. Storm <storm@cua.dk>
7832
7833 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7834 Such objects may be freed markers which still exist on an undo list.
7835
7836 2004-05-16 Juanma Barranquero <lektu@terra.es>
7837
7838 * data.c (Fset_default): Make argument names match their use in
7839 docstring.
7840
7841 2004-05-15 Andreas Schwab <schwab@suse.de>
7842
7843 * emacs.c (gdb_array_mark_flag): Define.
7844 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7845
7846 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7847
7848 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7849 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7850 defined for the MS-DOS build.
7851
7852 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7853
7854 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7855
7856 2004-05-14 Kenichi Handa <handa@m17n.org>
7857
7858 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7859
7860 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7861
7862 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7863 section to frame.c section.
7864 (Fxw_display_color_p, Fx_file_dialog): Declare if
7865 HAVE_WINDOW_SYSTEM defined.
7866
7867 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7868
7869 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7870
7871 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7872 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7873 (XTread_socket): Fix int/Lisp_Object mixup.
7874 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7875
7876 * macterm.h (struct frame, struct face, struct image)
7877 (display_x_get_resource, Fx_display_color_p)
7878 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7879 Add prototypes.
7880
7881 2004-05-14 Kim F. Storm <storm@cua.dk>
7882
7883 * process.c (wait_reading_process_input): Make reentrant.
7884 Make Available and Connecting non-static. Save and restore value
7885 of waiting_for_user_input_p.
7886
7887 2004-05-13 Kim F. Storm <storm@cua.dk>
7888
7889 * keyboard.c (mark_kboards): Don't mark x and y members
7890 that are overloaded in selection request events.
7891
7892 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7893
7894 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7895
7896 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
7897
7898 * window.c (Fdisplay_buffer, Fsplit_window)
7899 (split-height-threshold): Doc fix.
7900
7901 2004-05-13 Juanma Barranquero <lektu@terra.es>
7902
7903 * xfaces.c (Ftty_supports_face_attributes_p)
7904 (Finternal_copy_lisp_face): Fix typo in docstring.
7905 (Finternal_get_lisp_face_attribute): Fix docstring.
7906
7907 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7908
7909 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
7910
7911 2004-05-11 Steven Tamm <steventamm@mac.com>
7912
7913 * macfns.c (Fx_create_frame): Default to using tool-bar by
7914 setting tool-bar-lines to 1 in default-frame-alist.
7915
7916 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7917
7918 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
7919 (xpm_get_color_table_v, xpm_make_color_table_h)
7920 (xpm_put_color_table_h, xpm_get_color_table_h)
7921 (xpm_str_to_color_key, xpm_load_image, xpm_load)
7922 (syms_of_image): Support XPM on Carbon Emacs. Does not
7923 depend on libXpm, but only supports XPM version 3 without extensions.
7924
7925 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7926
7927 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
7928 instead of FRAME_X_P
7929
7930 2004-05-11 Kim F. Storm <storm@cua.dk>
7931
7932 * process.c (read_process_output): Grow decoding_buf when needed;
7933 this could cause a crash in allocate_string and compact_small_strings.
7934
7935 2004-04-29 Jim Blandy <jimb@redhat.com>
7936
7937 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
7938 against proper opcode.
7939
7940 2004-05-10 Juanma Barranquero <lektu@terra.es>
7941
7942 * process.c (Fstart_process): Fix docstring.
7943
7944 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
7945 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
7946 (Fsplit_char, Fchar_charset): Make argument names match their use
7947 in docstring.
7948
7949 2004-05-10 Richard M. Stallman <rms@gnu.org>
7950
7951 * print.c (print_preprocess): Use being_printed, loop_count and
7952 halftail to detect overdeep nesting and cyclic cdr chains.
7953
7954 2004-05-10 Andreas Schwab <schwab@suse.de>
7955
7956 * lisp.h (Fmake_symbolic_link): Declare.
7957
7958 * fileio.c (Frename_file): Remove extra argument in call to
7959 Fmake_symbolic_link.
7960
7961 2004-05-10 Kim F. Storm <storm@cua.dk>
7962
7963 * xdisp.c (calc_line_height_property): Use string position when
7964 object is a string.
7965
7966 2004-05-10 Kenichi Handa <handa@m17n.org>
7967
7968 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7969 inhibit-modification-hooks to t temporarily before calling
7970 Ferase_buffer.
7971
7972 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7973 inhibit-modification-hooks to t temporarily before calling
7974 Ferase_buffer.
7975
7976 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7977 inhibit-modification-hooks to t temporarily before calling
7978 Ferase_buffer.
7979
7980 * fns.c (count_combining): Delete it.
7981 (concat): Don't check combining bytes.
7982
7983 2004-05-09 Jason Rumney <jasonr@gnu.org>
7984
7985 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7986 (globals_of_w32fns): Set it.
7987
7988 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7989
7990 * data.c (Fquo): Simplify.
7991
7992 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7993
7994 * data.c (Fquo): If any argument is float, do the computation in
7995 floating point.
7996
7997 2004-05-08 Juanma Barranquero <lektu@terra.es>
7998
7999 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8000 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8001 Fix spelling of Emacs on docstring.
8002 (Fset_process_coding_system, Fprocess_coding_system)
8003 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8004 Make argument names match their use in docstring.
8005 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8006 Fix docstring.
8007
8008 * editfns.c (Finsert_buffer_substring): Make argument names match their
8009 use in docstring.
8010
8011 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8012
8013 2004-05-07 Steven Tamm <steventamm@mac.com>
8014
8015 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8016 around call to ReceiveEvent to avoid certain crashes.
8017
8018 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8019
8020 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8021 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8022 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8023 Save/restore the current graphics port and device handle when
8024 drawing into an offscreen graphics world.
8025
8026 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8027 (gif_load): Likewise.
8028
8029 2004-05-07 Juanma Barranquero <lektu@terra.es>
8030
8031 * window.c (Fset_window_buffer): Fix docstring.
8032
8033 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8034
8035 * emacs.c (main) [VMS]: Fix var ref.
8036
8037 2004-05-06 Romain Francoise <romain@orebokech.com>
8038
8039 * data.c (Fsetq_default): Fix docstring.
8040
8041 2004-05-06 Jason Rumney <jasonr@gnu.org>
8042
8043 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8044 to avoid name clash.
8045
8046 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8047
8048 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8049 (Frename_file): Handle renaming of symlinks across file systems.
8050 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8051
8052 2004-05-04 Kim F. Storm <storm@cua.dk>
8053
8054 * xdisp.c (Qtotal): New var.
8055 (syms_of_xdisp): Intern and staticpro it.
8056 (calc_line_height_property): New arg total. Set it if
8057 line-spacing property has format (total . VALUE).
8058 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8059 Handle total line-spacing property.
8060
8061 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8062
8063 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8064 "under" scroll bar when size/position changes.
8065
8066 2004-05-03 Jason Rumney <jasonr@gnu.org>
8067
8068 * makefile.nt: Remove.
8069
8070 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8071
8072 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8073 Avoid compiler warnings.
8074
8075 * Makefile.in (region-cache.o): Depend on config.h.
8076
8077 2004-05-02 Romain Francoise <romain@orebokech.com>
8078
8079 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8080 with continuation lines, too.
8081
8082 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8083
8084 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8085
8086 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8087
8088 * xdisp.c (calc_line_height_property): YAILOM (yet another
8089 int/Lisp_Object mixup).
8090
8091 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8092
8093 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8094 undo bad effect of pack(4) in some versions of system headers.
8095
8096 2004-05-01 Jason Rumney <jasonr@gnu.org>
8097
8098 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8099
8100 2004-04-30 Kim F. Storm <storm@cua.dk>
8101
8102 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8103 (syms_of_buffer) <cursor-type>: Doc fix.
8104
8105 * dispextern.h (struct it): Remove member use_default_face.
8106 Add members override_ascent, override_descent, override_boff.
8107
8108 * xdisp.c (init_iterator): Handle line-spacing float value.
8109 Initialize override_ascent member.
8110 (append_space_for_newline): Reset override_ascent.
8111 Remove use_default_face.
8112 (calc_line_height_property): New function to calculate value of
8113 line-height and line-spacing properties. Look at overlays, too.
8114 Set override_ascent, override_descent, override_boff members when
8115 using another face than the current face. Float values are now
8116 relative to the frame default font, by default; accept a cons
8117 of ratio and face name to specify value relative to a specific face.
8118 (x_produce_glyphs): Use calc_line_height_property.
8119 Use override_ascent etc. when set to handle different face heights.
8120 A negative line-spacing property value is interpreted as a total
8121 line height, rather than inter-line spacing.
8122 (note_mouse_highlight): Allocate room for 40 overlays initially.
8123
8124 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8125
8126 * data.c (Fsubr_name): New fun.
8127 (syms_of_data): Defsubr it.
8128
8129 2004-04-29 Kim F. Storm <storm@cua.dk>
8130
8131 * xdisp.c (null_glyph_slice): New var.
8132 (append_glyph, append_composite_glyph, append_stretch_glyph):
8133 Use it to initialize glyph slice.
8134
8135 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8136
8137 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8138 (on_hot_spot_p): Make sure we always return a value.
8139 (Flookup_image_map): Remove unused var ix and iy.
8140 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8141
8142 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8143
8144 * msdos.c (init_environment): If one of the TMP... environment
8145 variables is set to a drive letter without a trailing slash,
8146 append a slash.
8147
8148 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8149
8150 * editfns.c (lisp_time_argument): Provide externally.
8151
8152 * fileio.c (Fset_file_times): New function.
8153 (syms_of_fileio): Intern and staticpro it.
8154
8155 2004-04-27 Kim F. Storm <storm@cua.dk>
8156
8157 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8158 header line strings.
8159
8160 * dispextern.h (struct it): New member use_default_face.
8161
8162 * xdisp.c (Qline_height): New variable.
8163 (syms_of_xdisp): Intern and staticpro it.
8164 (append_space_for_newline): Partially undo 2004-04-25 change;
8165 add default_face_p arg, and restore callers.
8166 Clear it->use_default_face after use.
8167 (x_produce_glyphs): Set default font for ascii char if
8168 it->use_default_font is set. Change line-spacing property to set
8169 just extra line spacing. Handle new line-height property.
8170
8171 2004-04-26 Andreas Schwab <schwab@suse.de>
8172
8173 * print.c (print_object): Print non-ascii characters in bool
8174 vector representation as octal escapes.
8175
8176 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8177 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8178 bool vectors.
8179 * lread.c (read1): Likewise.
8180 * alloc.c (Fmake_bool_vector): Likewise.
8181 * data.c (Faref, Faset): Likewise.
8182 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8183 (mapcar1): Likewise.
8184
8185 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8186
8187 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8188
8189 2004-04-26 Miles Bader <miles@gnu.org>
8190
8191 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8192
8193 2004-04-26 Juanma Barranquero <lektu@terra.es>
8194
8195 * buffer.c (Fpop_to_buffer): Fix docstring.
8196
8197 2004-04-26 Steven Tamm <steventamm@mac.com>
8198
8199 * lread.c (init_lread): Don't display missing lisp directory
8200 warnings with Carbon Emacs because self-contained bundled Emacs
8201 may be built without correct installation path.
8202
8203 2004-04-25 Kim F. Storm <storm@cua.dk>
8204
8205 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8206
8207 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8208
8209 * xdisp.c (append_space_for_newline): Rename from append_space.
8210 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8211 (x_produce_glyphs): Handle line-spacing property on newline char.
8212 If value is t, adjust ascent and descent to fit current row height.
8213 If value is an integer or float, set extra_line_spacing to integer
8214 value, or to float value x current line height.
8215
8216 2004-04-23 Kenichi Handa <handa@m17n.org>
8217
8218 * fontset.c (Finternal_char_font): If POSITION is nil, return
8219 font for displaying CH with the default face.
8220
8221 2004-04-23 Juanma Barranquero <lektu@terra.es>
8222
8223 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8224
8225 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8226
8227 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8228 Don't make assumptions about the relative place of i and val.
8229 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8230
8231 2004-04-21 Kim F. Storm <storm@cua.dk>
8232
8233 * dispextern.h (struct glyph_slice): New struct.
8234 (struct glyph): New member slice.
8235 (GLYPH_SLICE_EQUAL_P): New macro.
8236 (GLYPH_EQUAL_P): Use it.
8237 (struct glyph_string): New member slice.
8238 (struct it_slice): New struct.
8239 (struct it): New member slice, add member to stack too.
8240 New member constrain_row_ascent_descent_p.
8241 (image_ascent): Add prototype.
8242
8243 * dispnew.c (buffer_posn_from_coords): Return full image width
8244 and height even for image slices (posn is relative to full image).
8245 (marginal_area_string): Adjust x0,y0 for image slice.
8246
8247 * image.c (image_ascent): Add slice arg; calculate ascent for
8248 image slice (or full image).
8249
8250 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8251 (syms_of_keyboard): Defsubr them.
8252
8253 * lisp.h (pos_visible_p): Fix prototype.
8254
8255 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8256 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8257 (x_draw_image_foreground, x_draw_image_relief)
8258 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8259 Draw sliced images.
8260
8261 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8262 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8263 (x_draw_image_foreground, x_draw_image_relief)
8264 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8265 Draw sliced images.
8266
8267 * w32term.h (image_ascent): Remove prototype.
8268
8269 * window.c (Fpos_visible_in_window_p): Return pixel position if
8270 PARTIALLY arg is non-nil. Simplify. Doc fix.
8271 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8272 to return/set vscroll in pixels.
8273
8274 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8275
8276 * xdisp.c (Qslice): New variable.
8277 (syms_of_xdisp): Intern and staticpro it.
8278 (pos_visible_p): Return pixel position in new x and y args.
8279 (init_iterator): Reset it->slice info.
8280 (handle_display_prop): Parse (slice ...) property.
8281 (push_it, pop_it): Save/restore slice info.
8282 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8283 force repositioning of tall row if window is vscrolled, as that
8284 would reset vscroll.
8285 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8286 increasing row height if row is non-empty.
8287 (fill_image_glyph_string): Copy slice info.
8288 (take_vertical_position_into_account): Simplify.
8289 (produce_image_glyph): Handle iterator slice info, setup glyph
8290 slice info. Do not force minimum line height.
8291 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8292 do not increase height (ascent/descent) of non-empty row when
8293 adding normal character glyph; instead reduce glyph ascent/descent
8294 appropriately; if row is higher than current glyph, adjust glyph
8295 descent/ascent to reposition glyph within the existing row.
8296 Likewise, when char is newline, only set ascent/descent if row is
8297 currently empty.
8298 (note_mouse_highlight): Handle hotspots with sliced image.
8299
8300 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8301 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8302 (x_draw_image_foreground, x_draw_image_relief)
8303 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8304 Draw sliced images.
8305
8306 * xterm.h (image_ascent): Remove prototype.
8307
8308 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8309
8310 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8311
8312 2004-04-20 John Paul Wallington <jpw@gnu.org>
8313
8314 * fns.c (Fassoc, Feql): Fix indentation.
8315
8316 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8317
8318 2004-04-19 John Paul Wallington <jpw@gnu.org>
8319
8320 * fns.c (Feql): New function.
8321 (syms_of_fns): Defsubr it.
8322
8323 2004-04-18 Jason Rumney <jasonr@gnu.org>
8324
8325 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8326 after closing the clipboard.
8327
8328 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8329
8330 * buffer.c (Fbuffer_base_buffer): Doc fix.
8331
8332 2004-04-17 Kim F. Storm <storm@cua.dk>
8333
8334 * keymap.c (Fkey_description): Add optional PREFIX arg.
8335 Combine prefix with KEYS to make up the full key sequence to describe.
8336 Correlate meta_prefix_char and following (simple) key to describe
8337 as meta modifier. All callers changed.
8338 (describe_map): Rename arg `keys' to `prefix'. Remove local
8339 `elt_prefix' var. Use Fkey_description with prefix instead of
8340 elt_prefix combined with Fsingle_key_description.
8341 (describe_vector): Declare static. Replace arg `elt_prefix' with
8342 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8343 if !KEYMAP_P. Use Fkey_description with prefix instead of
8344 Fsingle_key_description.
8345
8346 * keymap.h (Fkey_description): Fix prototype.
8347 (describe_vector): Remove prototype.
8348
8349 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8350
8351 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8352 (png_load): Fix calculation of transparent background color on X
8353 and W32 platforms.
8354
8355 2004-04-16 Juanma Barranquero <lektu@terra.es>
8356
8357 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8358 not too large before computing how much to scroll.
8359
8360 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8361
8362 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8363
8364 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8365
8366 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8367 Add hyperlink to Elisp manual to the docstring.
8368
8369 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8370
8371 * callint.c (fix_command): Use XDCR.
8372
8373 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8374
8375 * window.c (Fget_lru_window): Doc fix.
8376
8377 2004-04-14 Kim F. Storm <storm@cua.dk>
8378
8379 * editfns.c (Fformat): Fix allocation size of precision array.
8380
8381 * dispnew.c (update_window): Only set changed_p if
8382 scrolling_window actually did scroll.
8383 (scrolling_window): Only return 1 if we actually did scroll.
8384
8385 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8386 height to glyph height when cursor row is not fully visible.
8387 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8388 failure in case row is higher than window. Callers changed.
8389 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8390 Try to scroll partially visible, higher-than-window cursor row.
8391 (redisplay_window): Always try to scroll partially visible,
8392 higher-than-window cursor row - both initially and again with
8393 centering_position = 0.
8394 Clear desired matrix before retrying with centering_position = 0.
8395
8396 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8397
8398 * syntax.c (scan_lists): Simplify backward string scan.
8399 Fix off-by-one boundary check for string and comment fences.
8400
8401 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8402
8403 * sheap.c, unexcw.c: New files.
8404
8405 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8406
8407 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8408 base buffer has been killed. Correct the error message if the
8409 base buffer does not exist.
8410
8411 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8412
8413 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8414 Cygwin itself. Add support for Xaw3d scrollbars.
8415
8416 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8417
8418 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8419
8420 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8421 before Cygwin unexec.
8422
8423 * Makefile.in: Link changes for Cygwin unexec() support.
8424
8425 2004-04-12 Andreas Schwab <schwab@suse.de>
8426
8427 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8428
8429 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8430
8431 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8432 IGNORE argument equals NAME. Doc fix.
8433
8434 2004-04-11 Masatake YAMATO <jet@gyve.org>
8435
8436 * buffer.c (fix_start_end_in_overlays): Make overlays
8437 empty if they are backwards.
8438
8439 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8440
8441 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8442
8443 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8444
8445 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8446
8447 2004-04-06 Kim F. Storm <storm@cua.dk>
8448
8449 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8450 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8451
8452 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8453 clearing highlight.
8454
8455 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8456
8457 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8458 clearing highlight.
8459
8460 * indent.c (vmotion): Do not reserve one column for continuation
8461 marks on window frames.
8462
8463 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8464
8465 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8466 from GCC.
8467
8468 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8469
8470 * .gdbinit-union: Remove.
8471
8472 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8473 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8474 ($nonvalbits): Remove.
8475 ($valmask): Set it by calling xreload to avoid redundancy.
8476
8477 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8478 (gdb_emacs_intbits): Remove.
8479
8480 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8481
8482 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8483
8484 2004-03-30 Kenichi Handa <handa@m17n.org>
8485
8486 * editfns.c (Fformat): Fix initialization of the array info.
8487
8488 2004-03-30 Kim F. Storm <storm@cua.dk>
8489
8490 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8491 (syms_of_xterm): DEFVAR_BOOL it.
8492 (ignore_next_mouse_click_timeout): New var.
8493 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8494 Use it to filter mouse clicks following focus event.
8495
8496 2004-03-29 David Ponce <david@dponce.com>
8497
8498 * callint.c (Fcall_interactively): Fix last change.
8499
8500 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8501
8502 * eval.c (Fcommandp): Simplify.
8503
8504 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8505 Extend to handle all kinds of functions.
8506
8507 * lisp.h (Finteractive_form): Declare.
8508
8509 * callint.c (Fcall_interactively): Use it.
8510
8511 2004-03-26 Kim F. Storm <storm@cua.dk>
8512
8513 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8514 to catch errors in calc_pixel_width_or_height during redisplay.
8515
8516 2004-03-26 Masatake YAMATO <jet@gyve.org>
8517
8518 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8519
8520 * lisp.h (fix_start_end_in_overlays): Likewise.
8521
8522 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8523
8524 * editfns.c (Ftranspose_regions): Likewise.
8525
8526 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8527
8528 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8529
8530 2004-03-19 Richard M. Stallman <rms@gnu.org>
8531
8532 * s/sol2-6.h: Delete previous change.
8533
8534 2004-03-19 Kim F. Storm <storm@cua.dk>
8535
8536 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8537 to_charpos corresponds to newline in right fringe. Use local
8538 BUFFER_POS_REACHED_P macro.
8539
8540 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8541
8542 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8543 to compile on non-window system.
8544
8545 2004-03-19 Kim F. Storm <storm@cua.dk>
8546
8547 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8548
8549 * image.c (Qcenter): Move to xdisp.c.
8550
8551 * xdisp.c (Qcenter): Declare here.
8552 (syms_of_xdisp): Intern and staticpro it.
8553 (handle_single_display_prop): Allow space display property on all
8554 platforms.
8555 (display_mode_line): Set mode_line_p before displaying line.
8556 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8557 handling. Remove complex cases for fringes and scroll-bars.
8558 Add left, right, and center alignment positions. Add text (area)
8559 width/height. Return width or height for image specs.
8560 (produce_stretch_glyph): Improve handling of :align-to. Is now
8561 relative to left of text area by default, but other base offsets
8562 can be specified -- also for text lines.
8563
8564 * term.c (produce_glyphs): Handle IT_STRETCH.
8565 (produce_stretch_glyph): New function to handle space width and
8566 align-to display properties on non-window systems.
8567
8568 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8569
8570 * fileio.c (Fread_file_name): Set completion-ignore-case for
8571 case-insensitive systems.
8572
8573 2004-03-14 Masatake YAMATO <jet@gyve.org>
8574
8575 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8576 when keymap and cursor are setup.
8577
8578 2004-03-14 Steven Tamm <steventamm@mac.com>
8579
8580 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8581
8582 2004-03-14 Kim F. Storm <storm@cua.dk>
8583
8584 * dispextern.h (x_find_image_file): Add prototype.
8585
8586 * image.c (x_find_image_file): Make extern.
8587
8588 * xfns.c (x_find_image_file): Remove prototype.
8589
8590 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8591
8592 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8593
8594 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8595
8596 2004-03-12 Richard M. Stallman <rms@gnu.org>
8597
8598 * fns.c (internal_equal): New arg PROPS controls comparing
8599 text properties. All callers changed.
8600 (Fequal_including_properties): New function.
8601 (syms_of_fns): defsubr it.
8602
8603 2004-03-12 Kim F. Storm <storm@cua.dk>
8604
8605 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8606
8607 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8608 (image_background, image_background_transparent): Fix prototypes.
8609
8610 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8611
8612 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8613 (x_query_font, x_find_ccl_program, x_set_window_size)
8614 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8615 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8616 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8617
8618 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8619 (x_query_font, x_find_ccl_program, x_set_window_size)
8620 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8621 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8622 (mac_draw_line_to_pixmap): Add prototypes.
8623
8624 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8625
8626 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8627
8628 2004-03-11 Kim F. Storm <storm@cua.dk>
8629
8630 * dispextern.h: Move image related prototypes from xfns.c section
8631 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8632 HAVE_X_WINDOWS.
8633
8634 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8635 Move gtkutil.o to new GTK_OBJ list.
8636 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8637 (GTK_OBJ) [USE_GTK]: New declaration.
8638 (obj): Add $(GTK_OBJ) to list.
8639
8640 2004-03-11 Steven Tamm <steventamm@mac.com>
8641
8642 * image.c [MAC_OSX]: Include sys/stat.h.
8643
8644 * macfns.c (syms_of_macfns): Remove definitions of things now
8645 defined in image.c.
8646
8647 2004-03-11 Kim F. Storm <storm@cua.dk>
8648
8649 The following changes consolidates the identical/similar image
8650 support code previously found in xfns.c, w32fns.c, and macfns.c
8651 into a new file image.c.
8652
8653 * makefile.w32-in (OBJ1): Add image.o.
8654 ($(BLD)/image.$(O)): Add dependencies.
8655
8656 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8657 (image.o): Add dependencies.
8658
8659 * image.c: New file with consolidated image support code.
8660 (COLOR_TABLE_SUPPORT): New define to control whether
8661 color table support is available (X only).
8662 (Bitmap_Record): Common name for x_bitmap_record,
8663 w32_bitmap_record, and mac_bitmap_record.
8664 (XImagePtr): Common name for pointer to XImage or equivalent.
8665 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8666 to XImagePtr on X+MAC, and to HDC on W32.
8667 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8668 (NO_PIXMAP): Common name for "None" or equivalent.
8669 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8670 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8671 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8672 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8673 Define with suitable equivalents on W32 and MAC for code sharing.
8674 (XDrawLine): Define on MAC for code sharing.
8675 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8676 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8677 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8678 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8679 (x_reference_bitmap, x_create_bitmap_from_data)
8680 (x_create_bitmap_from_file, x_destroy_bitmap)
8681 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8682 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8683 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8684 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8685 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8686 (define_image_type, lookup_image_type, valid_image_p)
8687 (image_error, enum image_value_type, struct image_keyword)
8688 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8689 (make_image, free_image, prepare_image_for_display, image_ascent)
8690 (four_corners_best, image_background, image_background_transparent)
8691 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8692 (make_image_cache, free_image_cache, clear_image_cache)
8693 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8694 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8695 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8696 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8697 (init_image_func_pointer, image_load_quartz2d)
8698 (struct ct_color, init_color_table, free_color_table)
8699 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8700 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8701 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8702 (x_disable_image, x_build_heuristic_mask)
8703 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8704 (TIFF support, GIF support, Ghostscript support): Consolidate image
8705 code from xfns.c, w32fns.c, and macfns.c.
8706 (syms_of_image): Consolidate image related symbol setup here.
8707 (init_image): Consolidate image related initializations here.
8708
8709 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8710 and init_image. Remove call to init_xfns.
8711
8712 * macterm.h (struct mac_bitmap_record): Add file member.
8713 Not currently used, but simplifies code sharing.
8714
8715 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8716 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8717 (x_reference_bitmap, x_create_bitmap_from_data)
8718 (x_create_bitmap_from_file, x_destroy_bitmap)
8719 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8720 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8721 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8722 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8723 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8724 (define_image_type, lookup_image_type, valid_image_p)
8725 (image_error, enum image_value_type, struct image_keyword)
8726 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8727 (make_image, free_image, prepare_image_for_display, image_ascent)
8728 (four_corners_best, image_background, image_background_transparent)
8729 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8730 (make_image_cache, free_image_cache, clear_image_cache)
8731 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8732 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8733 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8734 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8735 (init_image_func_pointer, image_load_quartz2d)
8736 (struct ct_color, init_color_table, free_color_table)
8737 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8738 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8739 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8740 (x_disable_image, x_build_heuristic_mask)
8741 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8742 (TIFF support, GIF support, Ghostscript support): Merge with image
8743 code from xfns.c and macfns.c into image.c.
8744 (syms_of_xfns): Move image related symbols to image.c.
8745 (init_external_image_libraries, init_xfns): Remove; initialization
8746 moved to init_image in image.c.
8747
8748 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8749 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8750 (x_reference_bitmap, x_create_bitmap_from_data)
8751 (x_create_bitmap_from_file, x_destroy_bitmap)
8752 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8753 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8754 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8755 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8756 (define_image_type, lookup_image_type, valid_image_p)
8757 (image_error, enum image_value_type, struct image_keyword)
8758 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8759 (make_image, free_image, prepare_image_for_display, image_ascent)
8760 (four_corners_best, image_background, image_background_transparent)
8761 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8762 (make_image_cache, free_image_cache, clear_image_cache)
8763 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8764 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8765 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8766 (struct ct_color, init_color_table, free_color_table)
8767 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8768 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8769 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8770 (x_disable_image, x_build_heuristic_mask)
8771 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8772 (TIFF support, GIF support, Ghostscript support): Merge with image
8773 code from xfns.c and macfns.c into image.c.
8774 (syms_of_xfns): Move image related symbols to image.c.
8775 (init_external_image_libraries, init_xfns): Remove; initialization
8776 moved to init_image in image.c.
8777
8778 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8779 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8780 (x_reference_bitmap, x_create_bitmap_from_data)
8781 (x_create_bitmap_from_file, x_destroy_bitmap)
8782 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8783 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8784 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8785 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8786 (define_image_type, lookup_image_type, valid_image_p)
8787 (image_error, enum image_value_type, struct image_keyword)
8788 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8789 (make_image, free_image, prepare_image_for_display, image_ascent)
8790 (four_corners_best, image_background, image_background_transparent)
8791 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8792 (make_image_cache, free_image_cache, clear_image_cache)
8793 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8794 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8795 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8796 (struct ct_color, init_color_table, free_color_table)
8797 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8798 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8799 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8800 (x_disable_image, x_build_heuristic_mask)
8801 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8802 (TIFF support, GIF support, Ghostscript support): Merge with
8803 w32fns.c and macfns.c image code into image.c.
8804 (syms_of_xfns): Move image related symbols to image.c.
8805 (init_xfns): Remove; initialization moved to init_image in image.c.
8806
8807 * lisp.h (syms_of_image, init_image): Add protoypes.
8808 (init_xfns): Remove prototype.
8809
8810 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8811 (x_reference_bitmap, x_create_bitmap_from_data)
8812 (x_create_bitmap_from_file, x_destroy_bitmap)
8813 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8814 (gamma_correct) [MAC_OS]: Add prototype.
8815
8816 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8817 (x_reference_bitmap, x_create_bitmap_from_data)
8818 (x_create_bitmap_from_file, x_destroy_bitmap)
8819 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8820
8821 2004-03-09 Kenichi Handa <handa@etlken2>
8822
8823 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8824 correctly.
8825
8826 2004-03-04 Richard M. Stallman <rms@gnu.org>
8827
8828 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8829
8830 * window.c (Fdisplay_buffer): Doc fix.
8831
8832 * buffer.c (Fpop_to_buffer): Doc fix.
8833
8834 2004-03-03 Kim F. Storm <storm@cua.dk>
8835
8836 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8837
8838 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8839
8840 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8841
8842 2004-03-02 Richard M. Stallman <rms@gnu.org>
8843
8844 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8845
8846 2004-03-02 Kenichi Handa <handa@m17n.org>
8847
8848 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8849
8850 2004-03-02 Kim F. Storm <storm@cua.dk>
8851
8852 * window.h (struct window): New member overlay_arrow_bitmap.
8853
8854 * window.c (make_window): Initialize overlay_arrow_bitmap.
8855
8856 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8857 implement and integrate multiple overlay arrows with redisplay.
8858 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8859 (last_arrow_position, last_arrow_string): Replace by properties.
8860 (Qlast_arrow_position, Qlast_arrow_string)
8861 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8862 (syms_of_xdisp): Intern and staticpro them.
8863 (overlay_arrow_string_or_property, update_overlay_arrows)
8864 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8865 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8866 (redisplay_internal): Use them instead of directly accessing
8867 Voverlay_arrow_position etc. for multiple overlay arrows.
8868 (mark_window_display_accurate): Use update_overlay_arrows.
8869 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8870 (try_window_id): Use overlay_arrows_changed_p.
8871 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8872 (display_line): Use overlay_arrow_at_row to check multiple
8873 overlay arrows, and get relevant overlay-arrow-string and
8874 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8875 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8876 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8877
8878 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8879 (update_window_fringes): Remove unused code.
8880
8881 2004-03-01 Jason Rumney <jasonr@gnu.org>
8882
8883 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8884
8885 2004-03-01 Juanma Barranquero <lektu@terra.es>
8886
8887 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8888
8889 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8890
8891 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8892
8893 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8894 how many colors can be displayed.
8895
8896 2004-03-01 Kenichi Handa <handa@m17n.org>
8897
8898 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
8899 correctly.
8900
8901 2004-02-28 Kim F. Storm <storm@cua.dk>
8902
8903 * dispnew.c (update_window): Update header line also if there are
8904 no other changes in window (move code after set_cursor label).
8905
8906 * lisp.h (mark_window_display_accurate): Remove prototype.
8907
8908 * window.c (window_loop, Fforce_window_update): Force mode line
8909 updates by setting prevent_redisplay_optimizations_p and
8910 update_mode_lines.
8911
8912 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8913
8914 * xfns.c (x_window): Fix indentation.
8915
8916 * xterm.c (x_calc_absolute_position): Call x_real_positions
8917 to get WM window sizes and use those to calculate position.
8918 (x_set_offset): Remove code commented out.
8919
8920 2004-02-28 Miles Bader <miles@gnu.org>
8921
8922 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
8923
8924 2004-02-28 Kim F. Storm <storm@cua.dk>
8925
8926 * keyboard.c (kbd_buffer_store_event_hold): New function to store
8927 an event into kbd fifo, but with special handling of quit event;
8928 a quit event is saved for later, and further events are discarded
8929 until the saved quit event has been processed.
8930 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
8931 (gen_help_event): Store help event in kbd fifo.
8932 (NREAD_INPUT_EVENTS): Remove.
8933 (read_avail_input): Adapt to new read_socket_hook interface.
8934 Remove allocation and initialization of local input_event buffer,
8935 as read_socket_hook stores events directly in fifo. Allocate and
8936 initialize local hold_quit event to handle postponed quit event
8937 (and store it if set by kbd_buffer_store_event_hold).
8938
8939 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
8940 (gen_help_event): Fix prototype.
8941
8942 * macterm.c (XTread_socket): Remove bufp_r and
8943 numcharsp args. Add hold_quit arg.
8944 Rework to use just one, local, inev input_event. Store inev
8945 directly in fifo using kbd_buffer_store_event_hold.
8946
8947 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
8948 (read_input_waiting): Adapt to new read_socket_hook interface.
8949 Remove allocation and initialization of local input_event buffer,
8950 as read_socket_hook stores events directly in fifo. Allocate and
8951 initialize local hold_quit event to handle postponed quit event
8952 (and store it if set by kbd_buffer_store_event_hold).
8953
8954 * term.c (read_socket_hook): Fix arg list.
8955
8956 * termhooks.h (read_socket_hook): Fix prototype.
8957
8958 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
8959 numcharsp args. Add hold_quit arg.
8960 Rework to use just one, local, inev input_event. Store inev
8961 directly in fifo using kbd_buffer_store_event_hold.
8962
8963 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8964
8965 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8966 Add hold_quit arg. Rework to use just one, local, inev
8967 input_event. Store inev directly in fifo using
8968 kbd_buffer_store_event_hold. Update count in one place.
8969 Postpone call to gen_help_event until inev is stored; use new
8970 local do_help for this.
8971 Remove local emacs_event in handing of ButtonPress event; just use
8972 inev instead (so no reason to copy it later).
8973
8974 * xsmfns.c (x_session_check_input): Remove numchars arg.
8975
8976 * xterm.c (x_focus_changed, x_detect_focus_change):
8977 Remove numchars arg. Always store event into bufp arg.
8978 Return nothing. Callers changed accordingly.
8979 (glyph_rect): Simplify.
8980 (STORE_KEYSYM_FOR_DEBUG): New macro.
8981 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8982 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8983 (current_hold_quit) [USE_GTK]: Add.
8984 (event_handler_gdk): Adapt to new handle_one_xevent.
8985 (handle_one_xevent): Remove bufp_r and numcharsp args.
8986 Add hold_quit arg. Rework to use just one, local, inev
8987 input_event. Store inev directly in fifo using
8988 kbd_buffer_store_event_hold. Update count in one place.
8989 Postpone call to gen_help_event until inev is stored; use new
8990 local do_help for this.
8991 Simplify handling of keysyms (consolidate common code). Fix bug
8992 where count was updated with nchars instead of nbytes.
8993 Remove local emacs_event in handing of ButtonPress event; just use
8994 inev instead (so no reason to copy it later).
8995 Remove `out' label. Rename label `ret' to `done'; add various
8996 `goto done' to clarify code flow in deeply nested blocks.
8997 (x_dispatch_event): Simplify as handle_one_xevent now calls
8998 kbd_buffer_store_event itself.
8999 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9000 arg. Call handle_one_xevent with new arglist. Store event from
9001 x_session_check_input in fifo.
9002 [USE_GTK]: Setup current_hold_quit.
9003 Decrement handling_signal before unblocking input.
9004 (x_initialize) [USE_GTK]: Initialize current_count.
9005
9006 * xterm.h (x_session_check_input): Fix prototype.
9007
9008 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9009
9010 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9011
9012 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9013 macgui.h).
9014
9015 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9016
9017 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9018 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9019 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9020 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9021 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9022 (Bitmap): Remove typedef.
9023 (Pixmap): Change int to GWorldPtr.
9024
9025 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9026
9027 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9028 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9029 New #define to extract 16-bit depth color components from unsigned
9030 long representation.
9031 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9032 colors used for masks.
9033 (struct mac_display_info): Add color_p. Remove n_cbits.
9034
9035 * macfns.c: Include sys/types.h and sys/stat.h.
9036 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9037 Include QuickTime/QuickTime.h.
9038 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9039 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9040 functions defined in macterm.c.
9041 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9042 (ZPixmap): New #define for compatibility with xfns.c.
9043 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9044 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9045 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9046 New functions.
9047 (four_corners_best, x_create_x_image_and_pixmap)
9048 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9049 (x_edge_detection, init_color_table, colors_in_color_table)
9050 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9051 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9052 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9053 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9054 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9055 long mixup.
9056 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9057 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9058 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9059 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9060 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9061 (x_alloc_image_color, clear_image_cache, lookup_image)
9062 (x_find_image_file, xbm_read_bitmap_file_data)
9063 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9064 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9065 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9066 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9067 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9068 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9069 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9070 #if 0.
9071 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9072 #if 0. Free white_relief.gc and black_relief.gc.
9073 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9074 New functions (from xfns.c).
9075 (Fx_create_frame): Record unwind_create_frame.
9076 (Fxw_display_color_p): Use dpyinfo->color_p.
9077 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9078 dpyinfo->n_cbits.
9079 (Fx_display_color_cells): Use dpyinfo->n_planes;
9080 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9081 (Qheuristic, cross_disabled_images, emboss_matrix)
9082 (laplace_matrix): New variables (from xfns.c).
9083 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9084 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9085 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9086 (image_background_transparent): New function (from xfns.c).
9087 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9088 (image_load_quicktime): Add declaration.
9089 [MAC_OSX] (image_load_quartz2d): Likewise.
9090 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9091 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9092 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9093 (xbm_load_image_from_file, x_laplace_read_row)
9094 (x_laplace_write_row, pbm_read_file): Remove functions.
9095 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9096 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9097 (colors_in_color_table): Sync with xfns.c (although not used).
9098 (lookup_rgb_color): Don't lookup color table. Just do gamma
9099 correction.
9100 (COLOR_INTENSITY): New #define (from xfns.c).
9101 (x_disable_image): New function (from xfns.c).
9102 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9103 (x_build_heuristic_mask): Sync with xfns.c.
9104 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9105 (HAVE_PBM): Remove #ifdef.
9106 (pbm_load): Sync with xfns.c. Set img->width and img->height
9107 before IMAGE_BACKGROUND.
9108 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9109 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9110 Don't enclose with #if HAVE_PNG.
9111 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9112 symbol _CGImageCreateWithPNGDataProvider is defined.
9113 Otherwise use image_load_quicktime.
9114 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9115 [HAVE_PNG] (png_load): Sync with xfns.c.
9116 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9117 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9118 HAVE_JPEG.
9119 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9120 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9121 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9122 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9123 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9124 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9125 HAVE_TIFF.
9126 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9127 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9128 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9129 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9130 New functions (from xfns.c).
9131 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9132 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9133 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9134 Don't enclose with #if HAVE_GIF.
9135 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9136 animated gif. Otherwise use image_load_quicktime.
9137 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9138 gif_DrawText to avoid conflict with QuickdrawText.h.
9139 [HAVE_GIF] (gif_load): Sync with xfns.c.
9140 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9141 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9142 Ghostscript is not supported yet).
9143 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9144 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9145 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9146 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9147 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9148 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9149 HAVE_PNG. Call EnterMovies to support animated gifs.
9150 Call init_image_func_pointer to bind a symbol
9151 _CGImageCreateWithPNGDataProvider if it is defined.
9152
9153 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9154 (x_draw_bar_cursor): Sync declaration with xterm.c.
9155 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9156 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9157 graphics).
9158 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9159 (mac_draw_line_to_pixmap, XCreatePixmap)
9160 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9161 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9162 New functions.
9163 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9164 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9165 Cast bits to char *.
9166 (reflect_byte): New function (from w32fns.c).
9167 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9168 due to byte alignment.
9169 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9170 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9171 (XSetForeground): Remove static (now used in macfns.c).
9172 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9173 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9174 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9175 (x_draw_glyph_string_box, x_draw_image_foreground)
9176 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9177 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9178 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9179 Sync with xterm.c.
9180 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9181 than the xterm.c version when a strictly horizontal or vertical
9182 line is drawn.
9183 (XTset_terminal_window): Add static.
9184 (x_make_frame_visible): Add UNBLOCK_INPUT.
9185 (x_free_frame_resources): New funcion (from xterm.c).
9186 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9187 occurs in tool bar area.
9188 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9189 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9190 Initialize image cache.
9191 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9192 Enclose unused functions with #if 0.
9193 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9194 (decode_mac_font_name): New function to apply code conversions
9195 from a mac font name to an XLFD font name according to its script code.
9196 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9197 font name to a mac font name according to REGISTRY and ENCODING fields.
9198 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9199 whose name starts with `.'.
9200 (init_font_name_table): Use decode_mac_font_name. Add both
9201 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9202 of a font is smJapanese.
9203 (mac_do_list_fonts): New function to list fonts that match a given
9204 pattern.
9205 (x_list_fonts, XLoadQueryFont): Use it.
9206 (XLoadQueryFont): Set rbearing field for each variable width
9207 character to avoid needless redraw.
9208 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9209
9210 2004-02-26 Kim F. Storm <storm@cua.dk>
9211
9212 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9213 as read_socket_hook handler on X aborts if buffer is too small
9214 and W32 handler doesn't always check buffer limit.
9215
9216 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9217 right-fringe similar to a display margin image. Specifically,
9218 the characters having the fringe prop are no longer shown, and
9219 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9220 do this. Set fringe bitmap face_id in it->face_id.
9221 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9222 still realize it->face (i.e. the fringe bitmap face).
9223
9224 2004-02-25 Miles Bader <miles@gnu.org>
9225
9226 * xdisp.c (check_it): Check string/string_pos consistency.
9227 (init_iterator): Initialize string-related fields properly.
9228
9229 2004-02-11 Miles Bader <miles@gnu.org>
9230
9231 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9232
9233 2004-02-10 Miles Bader <miles@gnu.org>
9234
9235 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9236 BLOCK_INPUT can be nested, so it doesn't make much sense.
9237
9238 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9239
9240 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9241 (xbm_read_bitmap_data): Use unsigned char for image data.
9242
9243 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9244
9245 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9246
9247 2004-02-22 Jason Rumney <jasonr@gnu.org>
9248
9249 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9250 correctly over other bitmaps.
9251
9252 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9253
9254 * emacs.c (USAGE1): Split into two halves.
9255 (USAGE2): Second half of the old USAGE1.
9256 (USAGE3): Rename from USAGE2.
9257 (USAGE4): Rename from USAGE3.
9258
9259 2004-02-21 Juri Linkov <juri@jurta.org>
9260
9261 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9262 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9263 --file. Fix -f, -l. Sort options. Untabify.
9264 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9265
9266 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9267
9268 * category.c (Fdefine_category, Fcategory_docstring)
9269 (Fget_unused_category, Fset_category_table)
9270 (Fcategory_set_mnemonics): Doc fixes.
9271
9272 2004-02-20 Kim F. Storm <storm@cua.dk>
9273
9274 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9275 The following changes are relative to the 2004-01-21 revision.
9276 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9277 in one call to read_socket_hook. Value is 8.
9278 (read_avail_input): Separate and rework handling of read_socket_hook
9279 and non-read_socket_hook cases. Use smaller input_event buffer
9280 in read_socket_hook case, and repeat if full buffer is read.
9281 Use new local variable 'discard' to skip input after C-g.
9282 In non-read_socket_hook case, just use a single input_event, and
9283 call kbd_buffer_store_event on the fly for each character.
9284
9285 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9286
9287 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9288 Remove unused `gu' alternative.
9289
9290 2004-02-19 Andreas Schwab <schwab@suse.de>
9291
9292 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9293 warning.
9294
9295 2004-02-18 Kim F. Storm <storm@cua.dk>
9296
9297 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9298 Fix last change.
9299
9300 2004-02-17 Kim F. Storm <storm@cua.dk>
9301
9302 * xdisp.c (fast_find_position): Fix return value of new version;
9303 it was inverted compared to the 21.1 version.
9304 (get_window_cursor_type): Don't look at glyph if NULL.
9305 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9306
9307 * keyboard.c: Rework previous change; it didn't consider that the
9308 buf array was allocated on the stack.
9309 (prev_read): Remove variable.
9310 (read_avail_input_buf): New static event buffer array.
9311 (in_read_avail_input): New static variable to handle re-entrancy.
9312 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9313 Use in_read_avail_input to handle re-entrance; when re-entered,
9314 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9315 Do not initialize read_avail_input_buf in full here; instead assume it
9316 is always cleared on entry. To ensure that, we clear (just) the
9317 entries that were used before we return.
9318 (init_keyboard): Initialize read_avail_input_buf here.
9319
9320 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9321
9322 * cmds.c (Fend_of_line): Doc fix.
9323
9324 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9325
9326 * keyboard.c (prev_read): New static variable.
9327 (read_avail_input): Use it to zero out only those slots in buf[]
9328 that were used last time we were called.
9329
9330 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9331
9332 * Makefile.in (obj): Move fringe.o from here...
9333 (XOBJ, MAC_OBJ): ...to here.
9334
9335 2004-02-16 Stephen Eglen <stephen@gnu.org>
9336
9337 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9338
9339 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9340
9341 * data.c (Fbyteorder):
9342 * fringe.c (Fdefine_fringe_bitmap):
9343 * xdisp.c (handle_single_display_prop):
9344 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9345
9346 2004-02-16 Jason Rumney <jasonr@gnu.org>
9347
9348 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9349
9350 2004-02-15 Steven Tamm <steventamm@mac.com>
9351
9352 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9353 controlling emulation of a three button mouse with option and
9354 command keys.
9355 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9356 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9357
9358 2004-02-15 Kim F. Storm <storm@cua.dk>
9359
9360 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9361
9362 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9363 Perform byte-swapping.
9364
9365 2004-02-14 Kim F. Storm <storm@cua.dk>
9366
9367 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9368 bits from char to short to facilitate wider bitmaps.
9369 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9370 member.
9371
9372 * fringe.c (struct fringe_bitmap): Change member bits from char to
9373 short to facilitate 16 bits wide bitmaps. Modify all standard
9374 bitmaps accordingly.
9375 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9376 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9377 (draw_fringe_bitmap): Ditto.
9378 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9379 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9380 handle up to 16 bits wide bitmaps.
9381 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9382 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9383
9384 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9385 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9386 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9387
9388 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9389 so it is no longer necessary to expand them here.
9390
9391 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9392
9393 2004-02-12 Kim F. Storm <storm@cua.dk>
9394
9395 * window.c (Fwindow_fringes): Doc fix.
9396
9397 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9398
9399 * xselect.c (x_get_foreign_selection): Add new optional parameter
9400 time_stamp.
9401 (Fx_get_selection_internal): Ditto, pass time_stamp to
9402 x_get_foreign_selection.
9403
9404 * data.c (Fbyteorder): New function.
9405
9406 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9407
9408 * atimer.c: Move include stdio.h to same place as in other files.
9409
9410 * region-cache.c: Ditto.
9411
9412 * sysdep.c: Ditto.
9413
9414 * xfaces.c: Ditto.
9415
9416 2004-02-09 Sam Steingold <sds@gnu.org>
9417
9418 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9419
9420 2004-02-09 Kim F. Storm <storm@cua.dk>
9421
9422 * fringe.c: New file. Move original fringe related declarations
9423 and code from dispextern.h and xdisp.c here.
9424 Rework code to support user defined fringe bitmaps, redefining
9425 standard bitmaps, ability to overlay user defined bitmap with
9426 overlay arrow bitmap, and add faces to bitmaps.
9427 (Voverflow_newline_into_fringe): Declare here.
9428 (enum fringe_bitmap_align): New enum.
9429 (..._bits): All bitmaps are now defined without bitswapping; that
9430 is now done in init_fringe_once (if necessary).
9431 (standard_bitmaps): New array with specifications for the
9432 standard fringe bitmaps.
9433 (fringe_faces): New array.
9434 (valid_fringe_bitmap_id_p): New function.
9435 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9436 (draw_fringe_bitmap): New function which draws fringe bitmap,
9437 possibly overlaying bitmap with cursor in right fringe or the
9438 overlay arrow in the left fringe.
9439 (update_window_fringes): Do not handle overlay arrow here.
9440 Compare and copy fringe bitmap faces.
9441 (init_fringe_bitmap): New function.
9442 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9443 define and destroy user defined fringe bitmaps.
9444 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9445 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9446 (syms_of_fringe): New function. Defsubr new DEFUNs.
9447 DEFVAR_LISP Voverflow_newline_into_fringe.
9448 (init_fringe_once, init_fringe): New functions.
9449 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9450
9451 * Makefile.in (obj): Add fringe.o.
9452 (fringe.o): New dependencies.
9453
9454 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9455 bits allocated to hold a fringe number. Increase number of bits
9456 from 4 to 8 to allow user defined fringe bitmaps.
9457 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9458 left_user_fringe_face_id, right_user_fringe_bitmap,
9459 right_user_fringe_face_id.
9460 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9461 Move to new file fringe.c.
9462 (MAX_FRINGE_BITMAPS): Define here.
9463 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9464 and overlay_p. Change member which to int.
9465 (struct redisplay_interface): New members define_fringe_bitmap
9466 and destroy_fringe_bitmap.
9467 (valid_fringe_bitmap_id_p): Add prototype.
9468 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9469
9470 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9471 arrows.
9472 (update_frame): Do flush_display if force_flush_display_p to
9473 ensure display (specifically fringes) are updated in a timely
9474 manner when resizing the frame by dragging the mouse.
9475 (update_window_line): Update row if overlay arrow changed.
9476 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9477 or overlay arrow changed.
9478
9479 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9480 syms_of_fringe, and init_fringe.
9481
9482 * frame.h (struct frame): New member force_flush_display_p.
9483
9484 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9485 Add prototypes.
9486
9487 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9488 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9489 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9490 Use cursor color for displaying cursor in fringe.
9491 (x_redisplay_interface): Add null handlers for
9492 define_fringe_bitmap and destroy_fringe_bitmap functions.
9493
9494 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9495 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9496 for displaying cursor in fringe.
9497 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9498 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9499 (w32_redisplay_interface): Add them to redisplay_interface.
9500 (w32_term_init): Call w32_init_fringe instead of explicitly
9501 defining fringe bitmaps in fringe_bmp array.
9502 (x_delete_display): Call w32_reset_fringes instead of explicitly
9503 destroying fringe bitmaps in fringe_bmp array.
9504
9505 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9506 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9507 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9508 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9509 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9510 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9511 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9512 Move fringe handling vars and code to new file fringe.c.
9513 (handle_display_prop): Handle left-fringe and right-fringe
9514 display properties; store user fringe bitmaps in iterator.
9515 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9516 (clear_garbaged_frames): Set force_flush_display_p if resized.
9517 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9518 (display_line): Handle cursor in fringe at eob.
9519 (display_line): Set row user fringe bitmaps from iterator.
9520
9521 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9522 Use cursor color for displaying cursor in fringe.
9523 (x_redisplay_interface): Add null handlers for
9524 define_fringe_bitmap and destroy_fringe_bitmap functions.
9525
9526 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9527
9528 * macfns.c (Fx_change_window_property): Make doc string and
9529 parameters same as for X version.
9530
9531 * w32fns.c (Fx_change_window_property): Ditto.
9532
9533 2004-02-07 Kim F. Storm <storm@cua.dk>
9534
9535 * xdisp.c (hscroll_window_tree): Position cursor near to right
9536 margin in hscrolled window when jumping to end of line (rather
9537 than centering cursor).
9538
9539 * process.c (wait_reading_process_input): Don't do adaptive read
9540 buffering if waiting for a specific process.
9541
9542 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9543
9544 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9545 (Fread_minibuffer, Feval_minibuffer)
9546 (Fread_string, Fread_no_blanks_input)
9547 (Fcompleting_read): Doc fixes.
9548 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9549 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9550 (read_minibuf): Fix initial comment.
9551 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9552 case-fold-search to the value of completion-ignore-case when
9553 checking completion-regexp-list.
9554 (Fdisplay_completion_list): Make it handle arguments that are
9555 symbols. Doc fix.
9556
9557 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9558
9559 * xterm.h: Add declaration of free_frame_menubar.
9560
9561 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9562 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9563 (Fx_change_window_property): Add declaration of parameters type and
9564 format. Remove unused variable cons.
9565
9566 * xselect.c: Include stdio,h.
9567
9568 2004-02-05 Kenichi Handa <handa@m17n.org>
9569
9570 * fns.c (Fset_char_table_range): Fix previous change.
9571
9572 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9573
9574 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9575
9576 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9577
9578 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9579
9580 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9581 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9582
9583 2004-02-04 Kenichi Handa <handa@m17n.org>
9584
9585 * fns.c (Fset_char_table_range): Handle charsets ascii,
9586 eight-bit-control, and eight-bit-graphic correctly.
9587
9588 2004-02-03 Jason Rumney <jasonr@gnu.org>
9589
9590 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9591
9592 * w32fns.c (x_to_w32_font): Likewise.
9593
9594 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9595
9596 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9597 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9598
9599 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9600 ClientMessages.
9601
9602 * xselect.c: Include termhooks.h and X11/Xproto.h
9603 (x_check_property_data, x_fill_property_data)
9604 (x_property_data_to_lisp, mouse_position_for_drop)
9605 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9606 (Fx_send_client_event): Move here from xfns.c.
9607 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9608
9609 * xfns.c (x-send-client-message): Move to xselect.c
9610 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9611 OUTER_P.
9612 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9613 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9614 if vector_ret_p is true.
9615 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9616
9617 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9618
9619 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9620 basename of FILE relative to it, not FILE itself.
9621
9622 2004-02-02 Kenichi Handa <handa@m17n.org>
9623
9624 * coding.c (coding_restore_composition): Check invalid
9625 composition data more rigidly.
9626
9627 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9628
9629 * fileio.c (Fread_file_name_internal): Correctly handle the case
9630 where insert-default-directory is nil.
9631 (Fread_file_name): Always return an empty string if the user exits
9632 with an empty minibuffer. Adapt the docstring accordingly.
9633 (syms_of_fileio): Adapt the docstring of insert-default-directory
9634 to the change in Fread_file_name.
9635
9636 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9637
9638 * alloca.c [!alloca]: Fix the prototype for xfree.
9639
9640 2004-01-29 Kenichi Handa <handa@m17n.org>
9641
9642 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9643 (string_byte_to_char): Likewise.
9644
9645 2004-01-28 Peter Runestig <peter@runestig.com>
9646
9647 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9648
9649 2004-01-27 Steven Tamm <steventamm@mac.com>
9650
9651 * unexmacosx.c (unexec_copy): Do not copy more than was
9652 requested to prevent overwriting during unexec.
9653
9654 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9655
9656 * process.c (sigchld_handler): Add comment about not calling malloc.
9657
9658 * process.h: Add extern to synch_process_termsig.
9659
9660 2004-01-27 Steven Tamm <steventamm@mac.com>
9661
9662 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9663 Move setting of scroll bars from make_mac_frame to
9664 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9665
9666 2004-01-26 Richard M. Stallman <rms@gnu.org>
9667
9668 * search.c (Freplace_match): Handle nonexistent
9669 back-references properly.
9670
9671 2004-01-03 Richard M. Stallman <rms@gnu.org>
9672
9673 * window.c (decode_any_window): New function.
9674 (Fwindow_height, Fwindow_width, Fwindow_edges)
9675 (Fwindow_pixel_edges, Fwindow_inside_edges)
9676 (Fwindow_inside_pixel_edges): Use decode_any_window.
9677
9678 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9679
9680 * process.h: synch_process_termsig new variable.
9681
9682 * callproc.c: Define synch_process_termsig.
9683 (Fcall_process): Initiate synch_process_termsig to zero and
9684 check if non-zero and get signal name after subprocess has ended.
9685
9686 * process.c (sigchld_handler): Set synch_process_termsig
9687 if terminated by a signal. synch_process_death setting removed.
9688
9689 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9690
9691 2004-01-26 Andreas Schwab <schwab@suse.de>
9692
9693 * print.c (print_preprocess): Declare size as EMACS_INT to not
9694 lose bits.
9695 (print_object): Likewise.
9696 * alloc.c (Fpurecopy): Likewise.
9697
9698 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9699
9700 * window.c (Fwindow_minibuffer_p): Doc fix.
9701
9702 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9703
9704 * editfns.c (Fformat): Make both passes accept the same set of flags.
9705
9706 2004-01-23 Kenichi Handa <handa@m17n.org>
9707
9708 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9709 one, set buffer to OBJECT temporarily.
9710
9711 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9712
9713 * keyboard.c (kbd_buffer_gcpro): Remove.
9714 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9715 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9716 Don't initialize and/or maintain the variable any more. It was made
9717 redundant by my commit of 2003-06-15.
9718
9719 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9720
9721 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9722
9723 * lisp.h: Add undef DECL_ALIGN.
9724
9725 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9726
9727 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9728 Check interrupt_input_pending explicitly.
9729
9730 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9731
9732 * keyboard.c (handle_async_input): New fun,
9733 extracted from input_available_signal.
9734 (input_available_signal, reinvoke_input_signal): Use it.
9735
9736 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9737
9738 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9739
9740 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9741 manipulation macros for when tags are in the lower bits.
9742 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9743 (DECL_ALIGN): New macro.
9744 (DEFUN): Use it.
9745
9746 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9747
9748 * s/darwin.h (__attribute__): Remove outdated workaround.
9749
9750 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9751
9752 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9753 Don't check range of malloc address.
9754 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9755
9756 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9757
9758 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9759
9760 2004-01-19 Kenichi Handa <handa@m17n.org>
9761
9762 * fontset.c (fontset_font_pattern): Fix previous change.
9763
9764 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9765
9766 * xdisp.c (Voverflow_newline_into_fringe)
9767 (move_it_in_display_line_to, redisplay_internal)
9768 (update_window_fringes, redisplay_window, display_line, window):
9769 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9770 that it compiles without a window-system.
9771 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9772
9773 2004-01-16 Kim F. Storm <storm@cua.dk>
9774
9775 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9776
9777 * buffer.c (init_buffer_once): Set buffer_defaults and
9778 buffer_local_flags for indicate_buffer_boundaries.
9779 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9780 default- variable for it.
9781
9782 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9783 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9784 New members exact_window_width_line_p and cursor_in_fringe_p for
9785 overflowing newlines into right fringe.
9786 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9787 and indicate_bottom_line_p for buffer boundaries and scrolling.
9788 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9789 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9790 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9791 and HOLLOW_SQUARE_BITMAP.
9792 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9793 Add prototypes.
9794
9795 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9796 instead of related indicator fields.
9797 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9798 (direct_output_for_insert): Handle exact width lines like
9799 contined lines. Call update_window_fringes.
9800 (update_window): Call update_window_fringes.
9801 (scrolling_window): Don't skip desired rows with changed bitmaps.
9802 Check if fringe bitmaps changes when assigning scrolled rows.
9803
9804 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9805 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9806 (move_it_in_display_line_to): Overflow newline into fringe for
9807 rows that are exactly as wide as the window.
9808 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9809 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9810 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9811 (fringe_bitmaps): Add new bitmaps.
9812 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9813 Select proper bitmap for cursor in fringe when appropriate.
9814 Handle alignment of bitmap to top or bottom of row.
9815 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9816 done by update_window_fringes.
9817 (update_window_fringes, draw_window_fringes): New functions.
9818 (redisplay_internal): Call update_window_fringes in case only
9819 cursor row is updated.
9820 (redisplay_window): Call update_window_fringes.
9821 Explicitly call draw_window_fringes if redisplay was done using
9822 the current matrix or the overlay arrow is in the window.
9823 (try_window_reusing_current_matrix): Mark scrolled rows for
9824 fringe update (to update buffer-boundaries / scrolling icons).
9825 (find_last_unchanged_at_beg_row): Handle exact width lines line
9826 continued lines.
9827 (display_line): Overflow newline into fringe for rows that are
9828 exactly as wide as the window. Don't append space for newline
9829 in this case.
9830 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9831 in fringe as if it had been overwritten.
9832 (erase_phys_cursor): Erase cursor bitmap in fringe.
9833 (syms_of_xdisp): Mark show-trailing-whitespace and
9834 void-text-area-pointer as user options.
9835 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9836
9837 * xterm.c (x_update_window_end): Call draw_window_fringes.
9838 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9839 in row instead of actually drawing fringe bitmaps.
9840 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9841 (x_draw_window_cursor): Draw cursor in fringe.
9842
9843 * w32term.c (x_update_window_end): Call draw_window_fringes.
9844 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9845 in row instead of actually drawing fringe bitmaps.
9846 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9847 (w32_draw_window_cursor): Draw cursor in fringe.
9848
9849 * macterm.c (x_update_window_end): Call draw_window_fringes.
9850 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9851 in row instead of actually drawing fringe bitmaps.
9852 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9853 (mac_draw_window_cursor): Draw cursor in fringe.
9854
9855 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9856
9857 * xterm.c (handle_one_xevent): Don't handle characters that are part
9858 of an old style (XLookupString) compose sequence.
9859
9860 2004-01-15 Kenichi Handa <handa@m17n.org>
9861
9862 * search.c (Freplace_match): Use make_multibyte_string or
9863 make_unibyte_string according to the buffer multibyteness.
9864
9865 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9866
9867 * alloc.c (struct interval_block, struct string_block)
9868 (struct symbol_block, struct marker_block, live_string_p)
9869 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9870 Better preserve alignment for objects in blocks.
9871 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9872
9873 * lread.c (defvar_per_buffer): Remove dead declaration.
9874
9875 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9876 space size.
9877
9878 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9879
9880 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9881 if a key press should pop down. Only pop down if a key is pressed
9882 outside the menu/dialog.
9883 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9884 popup_get_selection.
9885 (create_and_show_dialog): Pass 1 for down_on_keypress to
9886 popup_get_selection.
9887
9888 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9889
9890 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9891 BLOCK/UNBLOCK_INPUT.
9892
9893 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9894
9895 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
9896 specified.
9897
9898 2004-01-08 Kenichi Handa <handa@m17n.org>
9899
9900 * editfns.c (Fformat): Fix '&' to '&&'.
9901
9902 2004-01-08 Andreas Schwab <schwab@suse.de>
9903
9904 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
9905 size if PSEUDOVECTOR_FLAG is set.
9906
9907 2004-01-07 Kenichi Handa <handa@m17n.org>
9908
9909 * charset.c (Fdeclare_equiv_charset): Fix docstring.
9910
9911 * fontset.c (fontset_ref_via_base): Fix previous change.
9912
9913 2004-01-07 Kim F. Storm <storm@cua.dk>
9914
9915 * process.c (read_process_output): Only activate adaptive
9916 buffering if we read less than 256 bytes at a time.
9917
9918 2004-01-06 Kim F. Storm <storm@cua.dk>
9919
9920 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
9921 object and image object. Return glyph width and height.
9922 (mode_line_string, marginal_area_string): Ditto.
9923
9924 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9925 (marginal_area_string): Fix prototypes.
9926
9927 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
9928 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
9929 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
9930
9931 * keyboard.c (make_lispy_position): Use modified mode_line_string,
9932 buffer_posn_from_coords, and marginal_area_string functions to
9933 include both string object and image object in the lispy position.
9934 Also add actual glyph width and height to position.
9935 (read_key_sequence): Use real buffer position from mouse
9936 event to find keymap property even when click is in marginal area.
9937
9938 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
9939 mode_line_string and marginal_area_string functions to handle
9940 both string object and image object properties.
9941
9942 2004-01-06 Andreas Schwab <schwab@suse.de>
9943
9944 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
9945 character.
9946
9947 2004-01-02 Andreas Schwab <schwab@suse.de>
9948
9949 * macterm.c (emacs_options, x_initialized, same_x_server):
9950 Remove unused (and duplicated) definitions.
9951
9952 2004-01-02 Kim F. Storm <storm@cua.dk>
9953
9954 * process.h (struct Lisp_Process): New members for adaptive read
9955 buffering: adaptive_read_buffering, read_output_delay, and
9956 read_output_skip.
9957
9958 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
9959 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9960 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9961 (process_output_delay_count, process_output_skip): New vars.
9962 (Vprocess_adaptive_read_buffering): New variable.
9963 (make_process): Initialize adaptive read buffering members.
9964 (Fstart_process): Set adaptive_read_buffering member.
9965 (deactivate_process): Cleanup adaptive read buffering.
9966 (wait_reading_process_input): Temporarily omit delayed
9967 subprocesses from the set of file descriptors to read from;
9968 adjust the select timeout if we skipped any subprocesses.
9969 (read_process_output): Increase adaptive read buffering delay if
9970 we read less than a full buffer; reduce delay when we read a
9971 full buffer.
9972 (send_process): Simplify using local Lisp_Process var.
9973 Reset adaptive read buffering delay after write.
9974 (init_process): Initialize process_output_delay_count and
9975 process_output_skip.
9976 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9977
9978 2004-01-01 Jason Rumney <jasonr@gnu.org>
9979
9980 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9981
9982 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9983
9984 * print.c (Ferror_message_string): Add hyperlink in the docstring
9985 to the definition of `signal' in the Elisp manual.
9986 * eval.c (Fsignal): Ditto.
9987
9988 2003-12-29 James Clark <jjc@jclark.com>
9989
9990 * fns.c (internal_equal): Return t for two NaN arguments.
9991
9992 2003-12-29 Richard M. Stallman <rms@gnu.org>
9993
9994 * data.c (store_symval_forwarding): Handle setting
9995 default-fill-column, etc., by changing the value in
9996 buffers that use the default.
9997
9998 * minibuf.c (Fset_minibuffer_window): Doc fix.
9999
10000 * fileio.c (choose_write_coding_system): Ignore auto_saving
10001 if using the visited file for auto saves.
10002 (Fwrite_region): Don't update SAVE_MODIFF
10003 if auto-saving in visited file.
10004
10005 2003-12-29 Kenichi Handa <handa@m17n.org>
10006
10007 * dispextern.h (face_font_available_p): Extern it.
10008
10009 * fontset.c (Voverriding_fontspec_alist): New variable.
10010 (lookup_overriding_fontspec): New function.
10011 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10012 (fontset_font_pattern): Likewise.
10013 (regulalize_fontname): New function.
10014 (Fset_fontset_font): Call regulalize_fontname.
10015 (Fset_overriding_fontspec_internal): New function.
10016 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10017 Defsubr Sset_overriding_fontspec_internal.
10018
10019 * xfaces.c (face_font_available_p): New function.
10020
10021 2003-12-28 Richard M. Stallman <rms@gnu.org>
10022
10023 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10024 or if its name is nil.
10025
10026 * buffer.c (Fkill_buffer): Don't delete auto-save file
10027 if it's the same as the visited file.
10028
10029 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10030
10031 * coding.c (Fcheck_coding_system): Doc fix.
10032
10033 2003-12-28 Kim F. Storm <storm@cua.dk>
10034
10035 * Makefile.in (eval.o): Depend on dispextern.h.
10036
10037 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10038 image glyph using image's ascent.
10039 (mode_line_string): Return image glyph as object clicked on.
10040 Adjust y0 for image glyph using image's ascent.
10041
10042 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10043 (struct glyph): New members, ascent and descent. Used to save
10044 this glyph's ascent and descent, instead of having.
10045 (struct glyph): Declare member face_id using FACE_ID_BITS.
10046 (find_hot_spot): Add prototype.
10047
10048 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10049 (QCmap): Declare extern.
10050 (make_lispy_position): When position is inside image hot-spot,
10051 use hot-spot element's id as posn element.
10052
10053 * lisp.h (IMAGEP): New macro to test for image object type.
10054 (Qimage): Declare extern.
10055
10056 * macfns.c (Qimage): Remove extern (now in lisp.h).
10057 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10058
10059 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10060
10061 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10062 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10063
10064 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10065
10066 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10067
10068 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10069 pointer types.
10070 (Qrelative_width, Qalign_to): Remove unused variables.
10071 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10072 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10073 image maps.
10074 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10075 new dx and dy args.
10076 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10077 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10078 than row's ascent and height, to get sensible height on tall rows.
10079 (build_desired_tool_bar_string): Remove Qimage extern.
10080 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10081 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10082 image glyph is alone on the last line.
10083 (append_glyph, append_composite_glyph, produce_image_glyph)
10084 (append_stretch_glyph): Set glyph's ascent and descent.
10085 (on_hot_spot_p): New function to check if position is inside an
10086 rectangular, circular, or polygon-shaped image hot-spot,
10087 (find_hot_spot): New function to search for image hot-spot.
10088 (Flookup_image_map): New defun to search for image hot-spot.
10089 (define_frame_cursor1): New aux function to determine frame pointer.
10090 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10091 Handle `pointer' text property and :pointer image property to
10092 control frame pointer shape. Detect image hot-spots for pointer
10093 and help_echo properties. Use define_frame_cursor1.
10094 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10095 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10096 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10097
10098 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10099
10100 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10101 (Qimage): Remove extern (now in lisp.h).
10102 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10103
10104 * xmenu.c (show_help_event): Remove unused code.
10105
10106 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10107 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10108 row's ascent and descent, to get a sensible height on tall rows.
10109
10110 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10111
10112 * minibuf.c (Fcompleting_read): Undo previous change.
10113
10114 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10115
10116 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10117 Arguments GCPRO'ed in call to file name handler.
10118
10119 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10120
10121 * termcap.c (tgetst1): Scan for "%pN"; if all
10122 N are continuous in [1,9], remove all "%pN".
10123
10124 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10125
10126 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10127
10128 * xfaces.c (lface_fully_specified_p): Take into account that
10129 MAC OS always have unspecified stipple.
10130
10131 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10132
10133 * tparam.c (tparam1): Add handling for `%pN', which
10134 means use param N for the next substitution.
10135
10136 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10137
10138 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10139 In case `frame' is nil, consult the selected frame.
10140 (Fcolor_supported_p): Likewise.
10141
10142 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10143
10144 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10145 Doc fixes.
10146
10147 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10148 and an integer. Adapt the introductory comment accordingly.
10149 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10150 Doc fix.
10151 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10152 read_minibuf.
10153 (Fcompleting_read): Delete code moved into read_minibuf.
10154 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10155
10156 2003-12-03 Kenichi Handa <handa@m17n.org>
10157
10158 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10159 encoding sequence.
10160
10161 2003-12-01 Kenichi Handa <handa@m17n.org>
10162
10163 * composite.c (syms_of_composite): Don't make the compostion hash
10164 table week.
10165
10166 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10167
10168 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10169 * textprop.c (Fget_char_property_and_overlay): New function.
10170 (syms_of_textprop): Defsubr it.
10171
10172 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10173
10174 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10175 to compile on terminal configuration.
10176
10177 * fileio.c (Fread_file_name): Check use_file_dialog also before
10178 calling Fx_file_dialog.
10179
10180 * fns.c (use_file_dialog): New variable.
10181 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10182
10183 2003-11-29 Kim F. Storm <storm@cua.dk>
10184
10185 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10186 (syms_of_msdos): Don't intern and staticpro them.
10187
10188 2003-11-27 Kim F. Storm <storm@cua.dk>
10189
10190 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10191 coordinates relative to glyph at posn. If glyph is an image,
10192 return that as object at posn. Callers changed.
10193 (mode_line_string, marginal_area_string): Calculate and return
10194 pixel coordinates relative to glyph. Callers changed.
10195
10196 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10197 (marginal_area_string): Fix prototypes.
10198 (window_box_left_offset, window_box_right_offset): Add prototypes.
10199
10200 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10201 Remove prototypes.
10202
10203 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10204
10205 * keyboard.c (make_lispy_position): Add x and y coordinates
10206 relative to the current glyph as 7th element of position.
10207 If glyph is an image, return it in the object element.
10208 (read_key_sequence): Skip checks for keymap property in cases
10209 where POSN_STRING is not a string (e.g. an image).
10210
10211 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10212 (Vshow_text_cursor_in_void): New variable.
10213 (glyph_to_pixel_coords): Don't use negative hpos.
10214 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10215 (append_stretch_glyph): Change ascent arg to be actual value
10216 in pixels rather than ratio to height. Callers changed.
10217 (calc_pixel_width_or_height): New aux function, implementing
10218 pixel based artihmetic for glyph widths and heights.
10219 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10220 :width, :height, :align-to, and :ascent, thus allowing these to
10221 be specified in pixels as well as multiples of characters.
10222 Don't produce stretch glyphs with zero width or height.
10223 (get_specified_cursor_type): Declare static.
10224 (get_window_cursor_type): Declare static. Add glyph arg to be
10225 able to know when cursor is on an image; always substitute
10226 hollow-box cursor for filled-box cursor on images, to avoid
10227 negative images and flicker when blinking the cursor.
10228 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10229 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10230 than vertical scroll-bar cursor in display margins.
10231 (note_mouse_highlight): Use non-text cursor rather than text
10232 cursor in fringes and over images in the text area.
10233 Use non-text cursor when mouse pointer is outside editable text,
10234 i.e. in the void after end-of-line or end-of-buffer; this was
10235 already done for W32, but is now standard for all systems --
10236 user can toggle show-text-cursor-in-void to get old behaviour.
10237 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10238 Vdisplay_pixels_per_inch.
10239
10240 2003-11-25 Andreas Schwab <schwab@suse.de>
10241
10242 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10243 EMACS_INT to not lose bits.
10244 (Ffillarray): Don't set bits beyond the size of a bool vector.
10245
10246 2003-11-25 Kim F. Storm <storm@cua.dk>
10247
10248 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10249 define this defun on systems that cannot use stderr as lvalue.
10250
10251 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10252
10253 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10254 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10255 ld's default is incompatible with unexec.
10256
10257 2003-11-23 Kim F. Storm <storm@cua.dk>
10258
10259 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10260 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10261 (Fforce_window_update): New defun.
10262 (syms_of_window): Defsubr it.
10263 (Fset_window_margins, Fset_window_fringes): Doc fix.
10264
10265 * print.c (Fredirect_debugging_output): New defun.
10266 (syms_of_print): Defsubr it.
10267
10268 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10269
10270 * fns.c (Fset_char_table_parent): Doc fix.
10271
10272 2003-11-22 Kim F. Storm <storm@cua.dk>
10273
10274 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10275 for glyph clicked on, rather than (unused) pixel positions.
10276 (mode_line_string, marginal_area_string): Change X and Y args to
10277 pointers for returning actual row/column for glyph clicked on.
10278 Simplify and optimize loops.
10279
10280 * dispextern.h (mode_line_string, marginal_area_string):
10281 Update prototypes.
10282
10283 * keyboard.c (make_lispy_position): New function for generating
10284 mouse click positions from frame and pixel coordinates.
10285 Enhanced to return buffer position and actual row/column for
10286 events outside the text area using updated mode_line_string and
10287 marginal_area_string functions.
10288 Return left-fringe and right-fringe clicks as such, rather than
10289 clicks in text area.
10290 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10291 pixel_to_glyph_coords, as we never use the results.
10292 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10293 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10294 Eliminate unused code in WHEEL_EVENT handling.
10295 (make_lispy_movement): Use make_lispy_position.
10296
10297 * window.c (coordinates_in_window): Remove redundant tests.
10298 Fix returned X pixel value for left-margin.
10299
10300 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10301 mode_line_string and marginal_area_string parameters.
10302
10303 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10304
10305 * w32.c (struct the_group, getgrgid): Add.
10306 * mac.c (struct my_group, getgrgid): Add.
10307
10308 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10309
10310 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10311
10312 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10313
10314 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10315 include in call to file name handler. Optionally translate numeric
10316 UID and GID to strings. Update docstring.
10317 (directory_files_internal): Add parameter ID-FORMAT.
10318 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10319 include in call to file name handler and call to
10320 directory_files_internal. Update Docstring.
10321 (Fdirectory_files): Add dummy parameter in call to
10322 directory_files_internal.
10323 * lisp.h (Qinteger): Add.
10324 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10325 (Ffile_attributes): Add parameter.
10326 * data.c (Qinteger): Export.
10327
10328 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10329
10330 * fns.c (Freverse, Fnreverse): Doc fixes.
10331
10332 2003-11-19 Kim F. Storm <storm@cua.dk>
10333
10334 * xdisp.c (init_iterator): Initialize it->start to position
10335 before reseating (in case start position is invisible).
10336 (init_to_row_start): Set it->start to row-start.
10337 (redisplay_window): Accept optional_new_start if start position
10338 is invisible (in which case IT_CHARPOS overshoots PT).
10339 (display_line): Setup row->start from it->start (rather than
10340 it->current which is wrong if first char on line is invisible).
10341 When done, reseat it->start to it->current (= start of next row).
10342 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10343 is only partially visible.
10344
10345 * dispextern.h (struct it): New member start.
10346
10347 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10348
10349 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10350 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10351 of block_index outside of the macro call.
10352 (Fgarbage_collect): Remove null code.
10353
10354 * m/amdx86-64.h: Don't redefine XPNTR.
10355
10356 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10357 of VALMASK.
10358
10359 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10360 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10361 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10362
10363 * lisp.h (VALMASK): Only define for non-union type.
10364 (MARKBIT): Remove.
10365 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10366 (XTYPE): Define unconditionally.
10367 (XSETTYPE): Remove one more remnant.
10368 (EQ): Define differently for the union and non-union cases.
10369 (INTMASK): New bit mask.
10370 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10371 (GC_EQ): Delegate to EQ.
10372
10373 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10374
10375 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10376
10377 * xterm.c (x_window_to_scroll_bar): Move check of display to
10378 where window_id is compared.
10379
10380 2003-11-17 Kim F. Storm <storm@cua.dk>
10381
10382 * dispextern.h (struct it): New member first_vpos.
10383
10384 * xdisp.c (start_display): Set it->first_vpos.
10385 (try_window_id): Use first_vpos to start display in first _text_
10386 line if no reusable lines at start of window with header line.
10387
10388 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10389
10390 * w32fns.c (XPutPixel):
10391 * w32bdf.c (w32_init_bdf_font):
10392 * sunfns.c (sel_read):
10393 * process.c (Fmake_network_process):
10394 * frame.c (store_frame_param):
10395 * fontset.c (Fset_fontset_font):
10396 * emacs.c (shut_down_emacs):
10397 * ccl.c (ccl_driver): Remove period at end of error message.
10398
10399 * config.in: Regenerate.
10400
10401 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10402 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10403 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10404 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10405 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10406
10407 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10408
10409 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10410 (XTmouse_position, handle_one_xevent): Pass Display* to
10411 x_window_to_scroll_bar.
10412 (x_window_to_scroll_bar): Take a Display* argument.
10413 Check that display for frame is equal to Display* argument.
10414 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10415 x_display_info_for_display instead. Use Display in xev instead
10416 of GDK_DISPLAY.
10417 (x_dispatch_event): Call x_display_info_for_display.
10418 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10419 (x_connection_closed): Call xg_display_close for GTK.
10420 (x_term_init): Call xg_display_open for additional displays.
10421 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10422 for GTK.
10423
10424 * xmenu.c (single_menu_item, mouse_position_for_popup)
10425 (x_activate_menubar): Formatting adjustments.
10426
10427 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10428 adjustments.
10429
10430 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10431 (xg_display_close, xg_create_default_cursor)
10432 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10433 handling.
10434 (xg_left_ptr_cursor): Remove.
10435 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10436 cursor here.
10437 (xg_win_to_widget): Take Display* argument, call
10438 gdk_xid_table_lookup_for_display.
10439 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10440 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10441 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10442 in FRAME_X_DISPLAY_INFO.
10443 (xg_get_scroll_id_for_window): Take Display* argument.
10444 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10445 (xg_initialize): Remove xg_left_ptr_cursor.
10446
10447 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10448 Display* argument.
10449 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10450
10451 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10452
10453 * xterm.c (x_detect_focus_change): Do not change focus frame for
10454 Enter/LeaveNotify if the current focus frame has explicit focus.
10455
10456 2003-11-14 Kim F. Storm <storm@cua.dk>
10457
10458 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10459 is active and first glyph is only partially visible.
10460
10461 2003-11-13 Kenichi Handa <handa@m17n.org>
10462
10463 * xdisp.c (select_frame_for_redisplay): New function.
10464 (redisplay_internal): Record also selected_frame for
10465 unwind_redisplay. Call select_frame_for_redisplay before
10466 redrawing each frame.
10467 (unwind_redisplay): Argument changed to a cons.
10468
10469 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10470
10471 * fns.c (Fstring_to_multibyte): Doc fix.
10472
10473 2003-11-11 Kenichi Handa <handa@m17n.org>
10474
10475 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10476
10477 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10478
10479 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10480 program specified positions.
10481
10482 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10483
10484 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10485
10486 2003-11-08 Kenichi Handa <handa@m17n.org>
10487
10488 * Makefile.in (lisp): Add kannada.el.
10489 (shortlisp): Likewise.
10490
10491 2003-11-07 Kenichi Handa <handa@m17n.org>
10492
10493 * coding.c (coding_allocate_composition_data):
10494 Reset coding->composing to COMPOSITION_NO.
10495 (coding_restore_composition): Detect invalid composition data.
10496 Give Fstring and Fvector a Lispy integer, not C int.
10497
10498 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10499
10500 * floatfns.c (Flogb): Don't use VALMASK.
10501
10502 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10503 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10504
10505 * lisp.h (XINT): Move the cast to clarify what is going on.
10506 (GCTYPEMASK, XSETTYPE): Remove.
10507 (XGCTYPE): Make it an alias of XTYPE.
10508
10509 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10510
10511 * xterm.c (x_term_init): Fix formatting.
10512
10513 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10514
10515 * gtkutil.h (xg_have_tear_offs): Declare.
10516 (xg_keep_popup, xg_did_tearoff): Remove.
10517
10518 * gtkutil.c: Remove variable xg_did_tearoff.
10519 (xg_have_tear_offs): New function.
10520 (tearoff_remove): Just decrease xg_detached_menus.
10521 (tearoff_activate): Increase xg_detached_menus and call
10522 tearoff_remove when tearoff is removed.
10523 (xg_keep_popup): Remove function.
10524 (create_menus): Give add_tearoff_p as argument to recursive
10525 call to create_menus.
10526 (xg_create_widget): Use variables instead of multiple
10527 strcmp. Tell create_menus to create tear off only for
10528 menu bar menus.
10529 (xg_update_menubar): Change title for a detached menu also.
10530 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10531 of deep_p.
10532 (xg_initialize): Initialize xg_detached_menus, remove
10533 initialization of xg_did_tearoff.
10534
10535 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10536 xg_have_tear_offs returns non-zero.
10537 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10538 call to xg_keep_popup.
10539
10540 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10541
10542 * macterm.c (XTread_socket): Handle menubar selection and grow
10543 window only for mouseDown events.
10544
10545 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10546
10547 * xterm.c (x_term_init): For GTK part, increase x_initialized
10548 to check for more than one display. Use error instead of return 0.
10549
10550 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10551
10552 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10553 (copy_dysymtab): Call it.
10554
10555 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10556
10557 * eval.c (Fdefvaralias): Doc fix.
10558
10559 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10560
10561 * data.c (Fsetplist): Doc fix.
10562
10563 2003-10-14 Lute Kamstra <lute@gnu.org>
10564
10565 * window.c (Fset_window_fringes): Clarify docstring.
10566
10567 2003-10-14 Kim F. Storm <storm@cua.dk>
10568
10569 * window.c (Fset_window_margins): Simplify arg checking.
10570
10571 2003-10-13 Richard M. Stallman <rms@gnu.org>
10572
10573 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10574 (print_partial_compiled_pattern): Replace assert with a printout.
10575 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10576
10577 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10578
10579 * window.c (Fset_window_margins): Allow only integers as args.
10580 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10581 Doc fixes.
10582
10583 2003-10-13 Lute Kamstra <lute@gnu.org>
10584
10585 * window.c (Fset_window_fringes): Elaborate docstring.
10586
10587 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10588
10589 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10590
10591 * s/darwin.h (GC_MARK_STACK): Define.
10592
10593 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10594
10595 * window.c (shrink_windows): New function.
10596 (size_window): Call shrink_windows to calculate window sizes when
10597 shrinking frame with more than one window.
10598
10599 2003-10-12 Kim F. Storm <storm@cua.dk>
10600
10601 * xdisp.c (compute_fringe_widths): Doc fix.
10602
10603 2003-10-08 Kenichi Handa <handa@m17n.org>
10604
10605 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10606
10607 2003-10-07 Kenichi Handa <handa@m17n.org>
10608
10609 * coding.c (Qcoding_system_define_form): New variable.
10610 (syms_of_coding): Intern and staticpro it.
10611 (Fcheck_coding_system): Try to autoload the definition of
10612 CODING-SYSTEM.
10613
10614 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10615
10616 * fns.c (Frequire): Doc fix.
10617
10618 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10619
10620 * xfns.c (Fx_send_client_event): New function as a base for
10621 manipulating extended window manager hints.
10622 (Fx_send_client_event): Remove unused variable s.
10623
10624 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10625 that function is removed.
10626
10627 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10628 x/y_pixels_outer_diff.
10629 (x_check_expected_move): Calculate move_offset_left/top.
10630
10631 * xterm.h (struct x_output): New members: move_offset_top/left.
10632
10633 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10634 call x_set_offset directly.
10635
10636 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10637
10638 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10639
10640 * xterm.c (x_delete_display): Free font names and font_encoder
10641 in dpyinfo->font_table.
10642
10643 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10644 Move xfree of font names to x_delete_display.
10645
10646 * xterm.h (struct x_display_info): New member, wm_type.
10647 (struct x_output): New members, expected_top/left and
10648 check_expected_move.
10649
10650 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10651 is received.
10652 (handle_one_xevent): Rename x_check_expected_move from
10653 x_check_fullscreen_move.
10654 (x_set_offset): Only add WM decoration sizes to modified_top/left
10655 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10656 (x_check_expected_move): Rename from x_check_fullscreen_move.
10657 Removed fullscreen specific code. Use check_expected_move,
10658 expected_left/top instead. Also, set wm_type.
10659 (x_term_init): Initialize wm_type to unknown.
10660
10661 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10662 sizes to move_x/y.
10663
10664 2003-10-03 Kenichi Handa <handa@m17n.org>
10665
10666 * macterm.c (x_load_font): Clear all members of FONTP before start
10667 filling them.
10668
10669 2003-10-02 Kenichi Handa <handa@m17n.org>
10670
10671 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10672 before calling find_ccl_program_func. Call find_ccl_program_func
10673 only when fontp->font_encoder is not NULL.
10674
10675 * xterm.c (x_load_font): Clear all members of FONTP before start
10676 filling them.
10677
10678 2003-10-03 John Paul Wallington <jpw@gnu.org>
10679
10680 * keymap.c (map_keymap): Don't abort when binding is a vector.
10681
10682 2003-10-02 Jason Rumney <jasonr@gnu.org>
10683
10684 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10685 Sync dependencies with Makefile.in.
10686 (alloca.o): Remove.
10687
10688 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10689 filling them.
10690
10691 * w32bdf.c (w32_load_bdf_font): Likewise.
10692
10693 2003-09-30 Richard M. Stallman <rms@gnu.org>
10694
10695 * term.c (set_tty_color_mode): Calculate current_mode_spec
10696 regardless of value of VAL.
10697
10698 * intervals.c (graft_intervals_into_buffer):
10699 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10700 Handle over_used when splitting UNDER.
10701
10702 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10703
10704 * regex.c (regex_compile): Free the stack when returning from function.
10705
10706 2003-09-28 Kenichi Handa <handa@m17n.org>
10707
10708 * fontset.c (Finternal_char_font): Change return value to
10709 cons (FONT-NAME . GLYPH-CODE).
10710
10711 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10712
10713 * term.c (tty_setup_colors): Treat any negative argument as -1.
10714
10715 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10716
10717 * process.c (send_process): Delete unused temp_buf.
10718
10719 2003-09-26 Dave Love <fx@gnu.org>
10720
10721 * xterm.c (x_bitmap_mask): Declare.
10722
10723 2003-09-25 Dave Love <fx@gnu.org>
10724
10725 * Makefile.in (fns.o): Depend on md5.h.
10726
10727 2003-09-25 Kim F. Storm <storm@cua.dk>
10728
10729 * window.c (set_window_buffer): Fix redisplay problems when
10730 switching between buffers with different display margin widths.
10731
10732 2003-09-23 Kim F. Storm <storm@cua.dk>
10733
10734 * process.c (set_socket_option): Fix :bindtodevice option.
10735 (Fset_network_process_option): Update process contact list when
10736 setting option succeeds.
10737 (Fmake_network_process): Doc fix.
10738
10739 2003-09-23 Dave Love <fx@gnu.org>
10740
10741 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10742
10743 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10744
10745 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10746 color mode is an integer number (it could be -1).
10747
10748 2003-09-22 Richard M. Stallman <rms@gnu.org>
10749
10750 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10751 in the case where OVER is longer than UNDER.
10752
10753 2003-09-22 Masatake YAMATO <jet@gyve.org>
10754
10755 * window.c (Fset_window_scroll_bars): Validate the value of
10756 `vertical_type'.
10757
10758 2003-09-21 Kim F. Storm <storm@cua.dk>
10759
10760 * frame.c (Vdefault_frame_scroll_bars): New variable.
10761 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10762 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10763 window-system default scroll bar position.
10764
10765 * window.c (Fwindow_scroll_bars): Doc fix.
10766
10767 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10768
10769 * xterm.c (x_set_offset): Take window manager decorations into account.
10770
10771 2003-09-19 Richard M. Stallman <rms@gnu.org>
10772
10773 * atimer.h: Don't include lisp.h.
10774 (P_): Define it here (as well as elsewhere).
10775
10776 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10777 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10778
10779 * data.c (Fvariable_binding_locus): New function.
10780 (syms_of_data): defsubr it.
10781 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10782
10783 2003-09-18 Dave Love <fx@gnu.org>
10784
10785 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10786
10787 * process.c (Fnetwork_interface_info): Fix type error.
10788 (Fnetwork_interface_list): Doc fix.
10789 (read_process_output, read_process_output): Delete unused var.
10790
10791 2003-09-17 Kim F. Storm <storm@cua.dk>
10792
10793 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10794 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10795 (Fnetwork_interface_info): Check that ifreq struct has required
10796 fields before accessing them; this requires that those fields are
10797 defined as macros, which may be too restrictive on some platforms,
10798 but it is better than failing on other platforms.
10799 (syms_of_process): Only defsubr above fns when included.
10800
10801 2003-09-17 Dave Love <fx@gnu.org>
10802
10803 * unexalpha.c: Don't include varargs.h.
10804
10805 2003-09-17 Kim F. Storm <storm@cua.dk>
10806
10807 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10808 for network process.
10809 (socket_options): Add `:' prefix to option names. Add optbit field.
10810 (set_socket_option): Remove no_error arg and special handling of s < 0.
10811 Return 1<<optbit for known option, 0 for unknown.
10812 Do not interpret 0 as false for boolean option (only nil).
10813 Pass failed option and value to report_file_error.
10814 (Fset_network_process_options): Replace by Fset_network_process_option.
10815 (Fset_network_process_option): New function to set just one option.
10816 (Fmake_network_process): Allow :coding arg to be a cons.
10817 Allow :server arg to be an integer specifying backlog size.
10818 Remove :options arg, and allow options to be specified directly
10819 as :KEY, VALUE pairs. Parse these options before binding socket.
10820 As before, :reuseaddr t is default for a server process, but this
10821 can now be disabled by specifying :reuseaddr nil.
10822 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10823 (init_process): Availability of network options is now checked with
10824 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10825 setup features.
10826 (syms_of_process): Fix defsubr's for the replaced functions.
10827
10828 2003-09-16 Dave Love <fx@gnu.org>
10829
10830 * Makefile.in: Depend on coding.h.
10831
10832 2003-09-14 Kim F. Storm <storm@cua.dk>
10833
10834 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10835 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10836 (syms_of_process): Defsubr them.
10837
10838 * config.in: Regenerate.
10839
10840 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10841
10842 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10843 * m/news-r6.h (XUNMARK): Remove.
10844 * m/mips.h (XUNMARK): Remove.
10845 * m/mips-siemens.h (XUNMARK): Remove.
10846 * m/iris4d.h (XUNMARK): Remove.
10847 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10848
10849 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10850
10851 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10852 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10853 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10854 (XTYPE): Use unsigned right-shift.
10855 (XMARKBIT, XMARK, XUNMARK): Remove.
10856
10857 * alloc.c (init_intervals, init_symbol, init_marker):
10858 Don't preallocate anything.
10859 (Fgarbage_collect, mark_object): Ignore the markbit.
10860
10861 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10862
10863 2003-09-08 Lute Kamstra <lute@gnu.org>
10864
10865 * xdisp.c (pint2hrstr): New function.
10866 (decode_mode_spec): Add `%i' and `%I' specs.
10867 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10868 for `mode-line-format'.
10869
10870 2003-09-07 Andreas Schwab <schwab@suse.de>
10871
10872 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10873 avoid warning.
10874
10875 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10876
10877 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10878
10879 2003-09-03 Kim F. Storm <storm@cua.dk>
10880
10881 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10882 change (superseded by 2002-08-30 change); the default blink-off
10883 cursor is now again "no cursor".
10884
10885 2003-09-01 Jason Rumney <jasonr@gnu.org>
10886
10887 * makefile.w32-in (alloca.o): Remove.
10888 (coding.o): Depend on intervals.h
10889 (emacs.o, bytecode.o): Depend on window.h
10890
10891 2003-09-01 Dave Love <fx@gnu.org>
10892
10893 * Makefile.in (alloca.o): Remove commands.
10894 (coding.o): Depend on intervals.h composite.h window.h.
10895 (emacs.o): Depend on window.h keyboard.h keymap.h.
10896 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
10897 (bytecode.o): Depend on window.h.
10898
10899 2003-08-31 Jason Rumney <jasonr@gnu.org>
10900
10901 * w32term.c (w32_per_char_metric): Allow cached metrics to be
10902 returned even when font_type is unknown.
10903
10904 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
10905
10906 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10907
10908 * xterm.c (x_term_init): Initialize new fields in x_display_info.
10909
10910 * xterm.h (struct x_display_info): Add red/green/blue_bits and
10911 *_offset.
10912
10913 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
10914 calculate pixel value.
10915
10916 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
10917
10918 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
10919 Don't tell redisplay display is accurate when it's actually been
10920 paused for pending input.
10921
10922 2003-08-29 Richard M. Stallman <rms@gnu.org>
10923
10924 * dispnew.c (adjust_glyph_matrix): Call window_box
10925 whenever W is nonzero.
10926
10927 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10928 (Fkill_local_variable, Fmake_variable_frame_local)
10929 (Flocal_variable_p, Flocal_variable_if_set_p):
10930 Use indirect_variable to trace thru variable aliases.
10931
10932 * config.in: Updated.
10933
10934 * callint.c (Fcall_interactively): Save and restore
10935 Vthis_command, Vthis_original_command, real_this_command,
10936 and current_kboard->Vlast_command.
10937
10938 * abbrev.c (Fexpand_abbrev): Insert before deleting.
10939
10940 2003-08-29 Gerd Moellmann <gerd@gnu.org>
10941
10942 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
10943
10944 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
10945
10946 * coding.c (decode_coding_iso2022): Initialize local variable c2.
10947 (decode_coding_sjis_big5): Likewise.
10948
10949 2003-08-27 Jason Rumney <jasonr@gnu.org>
10950
10951 * w32.c (sys_pipe): Protect against file descriptor overflow.
10952
10953 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
10954
10955 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
10956
10957 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
10958
10959 * xfns.c (Vgtk_version_string): New variable.
10960 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10961
10962 2003-08-24 Eli Zaretskii <eliz@gnu.org>
10963
10964 * term.c (term_init): Remove `const' from buffer_size's declaration.
10965
10966 * Makefile.in (msdos.o): Depend on intervals.h.
10967
10968 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10969
10970 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10971
10972 * xterm.h (struct x_display_info): New fields: client_leader_window
10973 and Xatom_wm_client_leader.
10974
10975 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10976 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10977
10978 * xsmfns.c (create_client_leader_window): New function.
10979 (x_session_initialize): Call create_client_leader_window, take
10980 dpyinfo as argument.
10981
10982 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10983
10984 * Makefile.in (xsmfns.o): Add more depenedencies.
10985
10986 2003-08-21 Dave Love <fx@gnu.org>
10987
10988 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10989
10990 2003-08-21 Kenichi Handa <handa@m17n.org>
10991
10992 * term.c (term_init): Fix previous change; don't rely on the
10993 length of `buffer' if TERMINFO is defined.
10994
10995 2003-08-20 Dave Love <fx@gnu.org>
10996
10997 * atimer.h: Include lisp.h.
10998
10999 * lisp.h (EMACS_LISP_H): New.
11000 (popup_activated_flag): Don't declare.
11001
11002 * alloca.c: Some merging with gnulib. Change logic and doc
11003 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11004 [DO_BLOCK_INPUT]: Don't include lisp.h.
11005 (xmalloc, xfree): Declare.
11006 (malloc): Don't declare.
11007
11008 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11009 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11010 atimer.h, blockinput.h.
11011
11012 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11013
11014 * alloca.s: Remove.
11015
11016 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11017
11018 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11019 use -lncurses.
11020
11021 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11022 FreeBSD returns something longer than 2044. Abort if the end of
11023 the buffer is overwritten.
11024
11025 2003-08-19 Miles Bader <miles@gnu.org>
11026
11027 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11028
11029 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11030
11031 * alloc.c (lisp_align_malloc): Check for memory full when
11032 allocating ablocks, which also avoids freeing a pointer into an
11033 ablocks structure.
11034
11035 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11036
11037 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11038
11039 2003-08-16 Richard M. Stallman <rms@gnu.org>
11040
11041 * editfns.c (Fencode_time): Doc fix.
11042
11043 2003-08-16 David Ponce <david@dponce.com>
11044
11045 * fileio.c (Fwrite_region): Fix conditional expression to issue
11046 the right message.
11047
11048 2003-08-16 Juri Linkov <juri@jurta.org>
11049
11050 * syntax.c (Fforward_word): Argument changed to optional.
11051 Set default value to 1.
11052
11053 2003-08-15 Kenichi Handa <handa@m17n.org>
11054
11055 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11056 what autoscaled.
11057 (best_matching_font): Once we find a better scalable font, set
11058 non_scalable_has_exact_height_p to 1.
11059 (try_font_list): Call try_alternative_families to try any family
11060 with the given registry.
11061
11062 2003-08-09 Andreas Schwab <schwab@suse.de>
11063
11064 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11065
11066 * print.c (print_string): Fix printing of multibyte string with
11067 nontrivial printcharfun.
11068
11069 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11070
11071 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11072
11073 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11074
11075 2003-07-31 Kenichi Handa <handa@m17n.org>
11076
11077 * process.c (read_process_output): Return the actually read bytes
11078 instead of the result of decoding.
11079
11080 2003-07-31 Kenichi Handa <handa@m17n.org>
11081
11082 * xterm.h (struct x_bitmap_record): New member have_mask.
11083
11084 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11085 to 0.
11086 (x_create_bitmap_from_file): Likewise.
11087 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11088 (x_destroy_all_bitmaps): Likewise.
11089 (x_create_bitmap_mask): Set have_mask member to 1.
11090
11091 2003-07-30 Richard M. Stallman <rms@gnu.org>
11092
11093 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11094
11095 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11096
11097 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11098
11099 2003-07-29 Richard M. Stallman <rms@gnu.org>
11100
11101 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11102 Conditionalize XIM code on HAVE_XIM.
11103
11104 * fns.c (Fclear_string): New function.
11105 (syms_of_fns): defsubr it.
11106
11107 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11108
11109 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11110
11111 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11112
11113 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11114
11115 * buffer.c (delete_all_overlays): New function.
11116 * buffer.h (delete_all_overlays): Declare.
11117 * coding.c (run_pre_post_conversion_on_str):
11118 * print.c (temp_output_buffer_setup):
11119 * fileio.c (Finsert_file_contents):
11120 * minibuf.c (get_minibuffer): Use it.
11121
11122 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11123
11124 * unexmacosx.c (unexec_regions_sort_compare):
11125 (unexec_regions_merge): New functions. Sort and merge unexec
11126 regions before dumping them.
11127
11128 2003-07-22 Dave Love <fx@gnu.org>
11129
11130 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11131
11132 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11133
11134 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11135 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11136 MARKBIT as the gcmarkbit for strings.
11137
11138 2003-07-21 Richard M. Stallman <rms@gnu.org>
11139
11140 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11141
11142 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11143 (syms_of_fns): Corresponding change.
11144
11145 * alloc.c (syms_of_alloc): Doc fixes.
11146
11147 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11148
11149 * s/netbsd.h: Use -Wl syntax.
11150
11151 2003-07-17 Richard M. Stallman <rms@gnu.org>
11152
11153 * xterm.c (xim_initialize): Redo 6/24 change.
11154
11155 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11156
11157 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11158 (Fswitch_to_buffer): Don't signal an error when switching to the same
11159 buffer in a dedicated window.
11160
11161 * alloc.c: Use bitmaps for cons, as was done for floats.
11162 (init_float, init_cons): Let the normal code allocate the first block.
11163 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11164 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11165 New macros.
11166 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11167 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11168 (live_cons_p): Check the pointer is not past the `conses' array.
11169 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11170 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11171 (survives_gc_p): Use CONS_MARKED_P and simplify.
11172 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11173
11174 2003-07-13 Paul Eggert <eggert@twinsun.com>
11175
11176 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11177 puts it into BSS instead, at least on Solaris 8 and 9.
11178 This is a valid optimization, and it may occur on other platforms,
11179 so Emacs should not assume that initializing a static variable to
11180 zero puts it into data.
11181 * alloc.c (pure, staticvec):
11182 Initialize these arrays to nonzero, so that they're not
11183 put into BSS by that optimization.
11184
11185 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11186
11187 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11188 (lisp_align_malloc): Use posix_memalign is available.
11189 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11190 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11191 for consistency. Update users.
11192
11193 2003-07-13 Richard M. Stallman <rms@gnu.org>
11194
11195 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11196
11197 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11198
11199 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11200 and use the Gtk+ function gtk_window_icon_from_file if available.
11201
11202 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11203 handle mask of bitmaps.
11204 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11205 mask property.
11206 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11207
11208 * xterm.h (xg_set_icon): New function.
11209
11210 2003-07-12 Paul Eggert <eggert@twinsun.com>
11211
11212 * unexelf.c (unexec): Consider a section to precede the .bss
11213 section if its addresses overlap that of .bss.
11214
11215 2003-07-12 Richard M. Stallman <rms@gnu.org>
11216
11217 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11218
11219 * config.in (HAVE_CRTIN): Add #undef.
11220 (INLINE): Really inline only if OPTIMIZE is defined.
11221
11222 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11223 END_FILES_1.
11224 (START_FILES_1, END_FILES_1): New macros (conditional).
11225 (LD_SWITCH_SYSTEM_TEMACS): Define.
11226
11227 * s/openbsd.h: Don't include bsd4-3.h.
11228 (TERMINFO): Define.
11229 (LIBS_TERMCAP): Define.
11230 (LD_SWITCH_SYSTEM): Define (two definitions).
11231
11232 * xfns.c: Include libpng/png.h instead of png.h.
11233
11234 2003-07-11 Andreas Schwab <schwab@suse.de>
11235
11236 * buffer.c (modify_overlay): Update prototype.
11237 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11238 Likewise.
11239
11240 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11241
11242 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11243 (struct interval): Move to intervals.h.
11244 (struct Lisp_Marker): Use EMACS_INT for position info.
11245 (forward_point): Remove prototype of defunct function.
11246 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11247 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11248 (syms_of_textprop, set_text_properties): Remove prototypes that are
11249 already in intervals.h.
11250
11251 * intervals.h (struct interval): Move from lisp.h.
11252 Use EMACS_INT for position and size info.
11253
11254 * coding.c: Include intervals.h for Fset_text_properties.
11255
11256 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11257 position and length information.
11258
11259 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11260
11261 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11262 position and length information.
11263
11264 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11265
11266 Change overlays_after and overlays_before so the overlays themselves
11267 are linked into lists, rather than using cons cells. After all each
11268 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11269 Lisp_Overlay for free and save up one cons cell per overlay (not
11270 to mention one indirection when traversing the list of overlay).
11271
11272 * lisp.h (struct Lisp_Overlay): New field `next'.
11273
11274 * buffer.h (struct buffer): Change overlays_before and overlays_after
11275 from Lisp lists of overlays to pointers to overlays.
11276
11277 * buffer.c (overlay_strings, recenter_overlay_lists):
11278 Fix typo in eassert in last commit.
11279 (unchain_overlay): New function.
11280 (add_overlay_mod_hooklist): Use AREF.
11281 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11282 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11283 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11284 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11285 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11286 Adjust to new type of overlays_(before|after).
11287
11288 * alloc.c (mark_object): Mark the new `next' field of overlays.
11289 (mark_buffer): Manually mark the overlays_(after|before) fields.
11290
11291 * coding.c (run_pre_post_conversion_on_str):
11292 * editfns.c (overlays_around):
11293 * xdisp.c (load_overlay_strings):
11294 * fileio.c (Finsert_file_contents):
11295 * indent.c (current_column):
11296 * insdel.c (signal_before_change, signal_after_change):
11297 * intervals.c (set_point_both):
11298 * print.c (temp_output_buffer_setup): Use new type for
11299 overlays_(before|after).
11300
11301 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11302
11303 * buffer.c (report_overlay_modification): Don't run hooks while
11304 traversing the list of overlays.
11305
11306 * buffer.h (struct buffer): Use an int for overlay_center.
11307 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11308 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11309
11310 * buffer.c (reset_buffer, recenter_overlay_lists)
11311 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11312 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11313 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11314 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11315 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11316
11317 * xdisp.c (fast_find_position): Remove unused var.
11318
11319 * cmds.c (Qexpand_abbrev): New sym.
11320 (syms_of_cmds): Initialize it.
11321 (internal_self_insert): Use it to call expand-abbrev.
11322
11323 2003-07-09 Kim F. Storm <storm@cua.dk>
11324
11325 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11326 was configured with --without-xim.
11327 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11328
11329 2003-07-07 Richard M. Stallman <rms@gnu.org>
11330
11331 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11332
11333 * alloc.c (Fgarbage_collect): Doc fix.
11334
11335 2003-07-07 Nozomu Ando <nand@mac.com>
11336
11337 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11338
11339 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11340
11341 * minibuf.c (read_minibuf): UNGCPRO before returning.
11342 (Ftry_completion, Fall_completions): Doc fix.
11343
11344 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11345 now that `floats' is not the last element of the struct any more.
11346
11347 2003-07-06 Jason Rumney <jasonr@gnu.org>
11348
11349 * w32term.h (ClipboardSequence_Proc): New type.
11350
11351 * w32fns.c (clipboard_sequence_fn): New variable.
11352 (globals_of_w32fns): Initialize it.
11353
11354 * w32select.c (last_clipboard_sequence_number): New variable.
11355 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11356 number if possible.
11357
11358 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11359
11360 * m/amdx86-64.h (MARKBIT):
11361 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11362 MARKBIT and ARRAY_MARK_FLAG any more.
11363
11364 * m/hp800.h (XSETMARKBIT):
11365 * m/sr2k.h (XSETMARKBIT):
11366 * lisp.h (XSETMARKBIT): Remove unused macro.
11367
11368 * lisp.h (mark_object): Change prototype.
11369
11370 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11371 (last_marked): Change accordingly.
11372 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11373 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11374 (mark_buffer): Update calls to mark_object.
11375
11376 * bytecode.c (mark_byte_stack):
11377 * fns.c (sweep_weak_table):
11378 * keyboard.c (mark_kboards): Update calls to mark_object.
11379
11380 2003-07-06 Jason Rumney <jasonr@gnu.org>
11381
11382 * alloc.c (struct ablock): Only include padding when there is some.
11383
11384 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11385
11386 * alloc.c (ALIGN): Add casts to simplify usage.
11387 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11388 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11389 (struct ablock, struct ablocks): New types.
11390 (free_ablock): New global var.
11391 (lisp_align_malloc, lisp_align_free): New functions.
11392 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11393 (struct float_block): Reorder and add gcmarkbits.
11394 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11395 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11396 (init_float, make_float): Use lisp_align_malloc.
11397 (free_float, live_float_p): Don't use `type' any more.
11398 (make_float): Use FLOAT_UNMARK to access to mark bit.
11399 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11400 Use FLOAT_MARKED_P to access the mark bit.
11401 (pure_alloc): Simplify use of ALIGN.
11402 (mark_object): Use FLOAT_MARK to access the mark bit.
11403 (gc_sweep): Use new macros to access the float's mark bit.
11404 (init_alloc_once): Init free_ablock.
11405
11406 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11407
11408 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11409
11410 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11411 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11412 (allocate_buffer): Move.
11413 (string_bytes): Don't mask markbit of `size_byte'.
11414 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11415 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11416 Use the `size' field of buffers (rather than the `name' field) for
11417 the mark bit, as is done for all other vectorlike objects.
11418 Use the new macros to access the mark bit of vectorlike objects.
11419
11420 2003-06-26 Richard M. Stallman <rms@gnu.org>
11421
11422 * puresize.h (BASE_PURESIZE): Increment base size.
11423
11424 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11425
11426 * xterm.c (xim_initialize): Undo previous change.
11427
11428 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11429
11430 * alloc.c (survives_gc_p): Simplify.
11431
11432 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11433
11434 * window.c (Fset_window_dedicated_p): Simplify.
11435 (display_buffer_1): Don't raise the win from which minibuf was entered.
11436 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11437 (Fminibuffer_selected_window): Simplify.
11438
11439 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11440
11441 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11442 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11443
11444 * insdel.c (check_markers, adjust_markers_for_delete)
11445 (adjust_markers_for_insert, adjust_markers_for_replace)
11446 (prepare_to_modify_buffer, RESTORE_VALUE):
11447 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11448 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11449 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11450 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11451 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11452 * editfns.c (save_excursion_restore, transpose_markers):
11453 * window.c (delete_window):
11454 * xdisp.c (message_dolog): Update for new types.
11455
11456 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11457
11458 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11459 (realize_default_face): Use default_face_done_p for the force_p
11460 argument to set_lface_from_font_name. Set default_face_done_p to one.
11461
11462 * frame.c (make_frame): Initialize default_face_done_p.
11463
11464 * frame.h (struct frame): Add default_face_done_p.
11465
11466 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11467 will be defined.
11468
11469 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11470
11471 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11472 Initialize the new field `gcmarkbit'.
11473 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11474 (mark_interval_tree): Don't mark the tree separately from the nodes.
11475 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11476 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11477 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11478
11479 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11480 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11481 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11482 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11483 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11484
11485 2003-06-24 Dave Love <fx@gnu.org>
11486
11487 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11488
11489 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11490 from gnulib.
11491
11492 2003-06-21 Richard M. Stallman <rms@gnu.org>
11493
11494 * fileio.c (Fwrite_region): Alternate messages
11495 for append and partial write.
11496
11497 * keyboard.c (read_key_sequence): When converting upcase fn key to
11498 downcase, update fkey and keytran so `backspace' gets translated.
11499
11500 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11501
11502 * process.c (wait_reading_process_input): Don't signal SIGIO
11503 in batch mode.
11504
11505 2003-06-17 Kenichi Handa <handa@m17n.org>
11506
11507 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11508 composite.h.
11509
11510 * xselect.c: Don't include charset.h, coding.h, composite.h.
11511 (Qforeign_selection): New variable.
11512 (syms_of_xselect): Intern and static it.
11513 (selection_data_to_lisp_data): Return a unibyte string made from
11514 data with `foreign-selection' text property.
11515
11516 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11517
11518 * termhooks.h (EVENT_INIT): New macro.
11519
11520 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11521
11522 * alloc.c (mark_kboards): Move to keyboard.c.
11523
11524 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11525 * xterm.c (x_dispatch_event):
11526 * xmenu.c (find_and_call_menu_selection):
11527 * xdisp.c (handle_tool_bar_click):
11528 * w32menu.c (menubar_selection_callback):
11529 * sysdep.c (kbd_input_ast, read_input_waiting):
11530 * msdos.c (dos_rawgetc):
11531 * macterm.c (mac_check_for_quit_char):
11532 * macmenu.c (menubar_selection_callback):
11533 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11534 data to kbd_buffer_store_event.
11535
11536 2003-06-15 Kim F. Storm <storm@cua.dk>
11537
11538 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11539 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11540
11541 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11542
11543 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11544
11545 2003-06-12 Kenichi Handa <handa@m17n.org>
11546
11547 * fileio.c (Fwrite_region): Save and restore restriction.
11548
11549 2003-06-12 Dave Love <fx@gnu.org>
11550
11551 * alloca.c (alloca): Declare arg as size_t.
11552
11553 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11554 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11555
11556 2003-06-11 Dave Love <fx@gnu.org>
11557
11558 * search.c (shrink_regexp_cache): Use xrealloc.
11559 (syms_of_search): Use xmalloc.
11560
11561 2003-06-10 Kim F. Storm <storm@cua.dk>
11562
11563 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11564 Adjust phys_cursor.x to be relative to window box, rather than
11565 text area before checking -- to ensure cursor is redrawn when
11566 exposing window.
11567 Note: This also fixes a similar (older) bug if display margins
11568 are present.
11569
11570 2003-06-06 Kenichi Handa <handa@m17n.org>
11571
11572 * coding.c (encoding_buffer_size): If coding->type is
11573 coding_type_ccl, double magnification on CRLF encoding.
11574
11575 2003-06-06 Jason Rumney <jasonr@gnu.org>
11576
11577 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11578 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11579
11580 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11581 Mac too.
11582
11583 2003-06-05 Dave Love <fx@gnu.org>
11584
11585 * strftime.c: Merge changes from gnulib.
11586
11587 * mktime.c (__mktime_internal): Merge changes from gnulib
11588 involving year 69 and dst2.
11589
11590 Changes to merge with gnulib version and be consistent with the
11591 autoconf test:
11592
11593 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11594 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11595 [HAVE_LOCALE_H]: Include locale.h.
11596 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11597
11598 2003-06-05 Kim F. Storm <storm@cua.dk>
11599
11600 * window.c (coordinates_in_window): Convert X and Y to window
11601 relative coordinates inside mode-line and header-line parts.
11602 Convert X and Y to margin area relative coordinates inside left
11603 and right display margin parts.
11604
11605 2003-06-05 Jason Rumney <jasonr@gnu.org>
11606
11607 * w32fns.c (add_system_logical_colors_to_map): New function.
11608 (Fx_open_connection): Use it.
11609
11610 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11611
11612 * process.c (allocate_pty): Revert part of the previous patch.
11613 (Faccept_process_output): Simplify.
11614
11615 2003-06-04 Jason Rumney <jasonr@gnu.org>
11616
11617 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11618
11619 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11620 (lispy_mouse_wheel_names): Remove.
11621 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11622 Always define drag_and_drop_syms.
11623
11624 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11625 WHEEL_EVENT events.
11626
11627 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11628
11629 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11630
11631 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11632
11633 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11634
11635 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11636 menu item label.
11637
11638 2003-06-03 Richard M. Stallman <rms@gnu.org>
11639
11640 * window.c (Fwindow_edges): Doc fix.
11641 (Fwindow_pixel_edges, Fwindow_inside_edges)
11642 (Fwindow_inside_pixel_edges): New functions.
11643 (syms_of_window): defsubr them.
11644
11645 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11646 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11647
11648 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11649
11650 * dispnew.c (Fsit_for): Don't lie about the number of args.
11651
11652 2003-06-02 Dave Love <fx@gnu.org>
11653
11654 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11655 (syms_of_callproc) <process-environment>: Doc fix.
11656
11657 * doc.c: Use HAVE_FCNTL_H, not USG5.
11658
11659 * xfaces.c (font_rescale_ratio): Fix for K&R.
11660
11661 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11662
11663 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11664
11665 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11666
11667 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11668 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11669
11670 * xterm.c (Qutf_8): Move to coding.c
11671
11672 * xmenu.c (ENCODE_MENU_STRING): New.
11673 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11674 Use it.
11675
11676 * coding.h (ENCODE_UTF_8): New.
11677 (Qutf_8): Declare.
11678
11679 * coding.c (Qutf_8): New.
11680 (syms_of_coding): Intern it.
11681
11682 * fns.c: Doc fixes.
11683
11684 2003-06-02 Kenichi Handa <handa@m17n.org>
11685
11686 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11687
11688 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11689
11690 * lread.c (openp): Make sure STR is a string.
11691
11692 2003-06-01 David Ponce <david@dponce.com>
11693
11694 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11695 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11696
11697 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11698 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11699 (discard_mouse_events): Discard WHEEL_EVENT events too.
11700 (lispy_wheel_names, wheel_syms): New.
11701 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11702 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11703 (make_lispy_event): Add WHEEL_EVENT handler.
11704
11705 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11706 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11707 WHEEL_EVENT events.
11708
11709 2003-05-31 John Paul Wallington <jpw@gnu.org>
11710
11711 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11712 timer are in lisp/emacs-lisp.
11713
11714 2003-05-31 Kenichi Handa <handa@m17n.org>
11715
11716 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11717 region when a buffer is changed to unibyte.
11718
11719 * charset.h (VALID_LEADING_CODE_P): New macro.
11720 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11721
11722 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11723 is nonzero, accept multibyte form of eight-bit-control chars.
11724 (decode_composition_emacs_mule): Likewise.
11725 (decode_coding_emacs_mule): Likewise.
11726 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11727 multibyte form of eight-bit-control chars.
11728
11729 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11730 (Finsert_file_contents): If coding-system-for-read is bound to
11731 Qauto_save_coding, use the coding system emacs-mule with special
11732 setting for recovering a file.
11733 (choose_write_coding_system): On auto saving, use the coding
11734 system emacs-mule with special setting for auto saving.
11735 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11736
11737 2003-05-30 Kenichi Handa <handa@m17n.org>
11738
11739 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11740 properly before calling ccl_driver.
11741
11742 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11743
11744 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11745 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11746 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11747
11748 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11749
11750 * xfaces.c (realize_default_face): Do not abort if lface is
11751 non-existent - reverts change from 2003-05-19.
11752
11753 2003-05-29 Kenichi Handa <handa@m17n.org>
11754
11755 * coding.c (decode_coding_iso2022): Pay attention to the byte
11756 sequence of CTEXT extended segment, and retain those bytes as is.
11757
11758 2003-05-28 Kenichi Handa <handa@m17n.org>
11759
11760 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11761 of CODING_REPLACEMENT_CHARACTER.
11762 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11763 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11764 check this flag on encoding.
11765 (encode_coding_sjis_big5):
11766 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11767 (Fset_terminal_coding_system_internal):
11768 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11769 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11770
11771 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11772 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11773 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11774
11775 2003-05-28 Richard M. Stallman <rms@gnu.org>
11776
11777 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11778
11779 * eval.c (unbind_to): Move init of this_binding to separate statement.
11780
11781 2003-05-28 Kim F. Storm <storm@cua.dk>
11782
11783 * xdisp.c (expose_window): Fix error in calculation of
11784 window relative coordinates of area to redisplay.
11785
11786 2003-05-27 Jason Rumney <jasonr@gnu.org>
11787
11788 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11789
11790 2003-05-27 David Ponce <david@dponce.com>
11791
11792 Handle W32 mouse wheel events as mouse click events, like in X.
11793
11794 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11795 MOUSE_WHEEL_EVENT anymore.
11796
11797 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11798 Scrolling down/up the mouse wheel is respectively mapped to mouse
11799 button 4 and 5.
11800 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11801 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11802 WM_MOUSEWHEEL events.
11803
11804 2003-05-27 Andreas Schwab <schwab@suse.de>
11805
11806 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11807
11808 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11809 partially visible line.
11810
11811 * alloc.c (Fgarbage_collect): Fix last change.
11812
11813 2003-05-26 John Paul Wallington <jpw@gnu.org>
11814
11815 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11816
11817 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11818
11819 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11820 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11821
11822 * window.h (window_box_text_cols): Declare.
11823
11824 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11825 (x_draw_vertical_border): Remove unused var `f'.
11826
11827 * xfaces.c (build_scalable_font_name): Remove `unused var
11828 pixel_size' warning.
11829
11830 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11831
11832 * unexelf.c (unexec): Remove `unused var n' warning.
11833
11834 * strftime.c (my_strftime_localtime_r): Remove `defined but
11835 unused' warning.
11836
11837 * process.c (allocate_pty): Remove `unused var stb' and
11838 `cp might be used uninitialized' warnings.
11839
11840 * dispnew.c (mode_line_string): Remove unused var `f'.
11841
11842 * coding.c (find_safe_codings): Remove unused var `i'.
11843
11844 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11845
11846 * buffer.c (Fkill_buffer): Remove unused var `list'.
11847
11848 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11849
11850 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11851
11852 * frame.c (make_frame): Condition want_fullscreen with
11853 HAVE_WINDOW_SYSTEM.
11854
11855 2003-05-25 Juanma Barranquero <lektu@terra.es>
11856
11857 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11858 (Fwindow_scroll_bars): Fix typo in docstring.
11859
11860 2003-05-24 Kim F. Storm <storm@cua.dk>
11861
11862 The following changes serve several purposes:
11863
11864 1) Swap the position of fringes and display margins in windows, i.e.
11865 the fringes are now displayed between the margins and the text area
11866 (by default).
11867
11868 2) Allow fringe and scroll bar parameters to be set per-buffer and
11869 per-window (like display margins). Such settings are now stored
11870 in window configurations, preserved when frames are resized, and
11871 copied when windows are split vertically or horizontally.
11872 Several bugs related to display margins have been fixed.
11873
11874 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11875
11876 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11877 rather than FRAME_WIDTH (FRAME_FONT (f)).
11878
11879 5) Introduce a consistent naming of variables, members and macros
11880 depending on whether their value is measured in pixels or in
11881 canonical columns/lines. Pixel dimensions are named *_width and
11882 *_height, while canonical columns/lines are named *_cols and
11883 *_lines. Pixel positions are named *_x and *_y, while column/line
11884 positions are named *_col and *_line.
11885
11886 6) Consolidate more of the X, W32, and MAC gui code by moving
11887 common data into struct frame, and generalize it for the non-gui
11888 case by using suitable defaults.
11889
11890 7) Cleanup and consolidate the macros controlling frame and window
11891 layout into frame.h and window.h, and generalize the use of the
11892 various window_box_* functions (enhanced to handle the new fringe
11893 position and the per-window fringe and scroll bar settings).
11894
11895 * frame.h (struct frame): Rename members height to text_lines,
11896 width to text_cols, window_height to total_lines, window_width to
11897 total_cols, new_height to new_text_lines, new_width to
11898 new_text_cols. All uses changed.
11899 (struct frame): New members which consolidate common members of
11900 x_output, w32_output, and mac_output structures: left_pos,
11901 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
11902 win_gravity, size_hint_flags, border_width, internal_border_width,
11903 line_height, fringe_cols, left_fringe_width, right_fringe_width,
11904 want_fullscreen. All uses changed.
11905 (struct frame): New member column_width contaning the canonical
11906 column width, analogue to line_height. All uses changed.
11907 (struct frame): Rename members scroll_bar_pixel_width to
11908 config_scroll_bar_width, and scroll_bar_cols to
11909 config_scroll_bar_cols. All uses changed.
11910 (struct frame): New member scroll_bar_actual_width which
11911 consolidates and renames the vertical_scroll_bar_extra member of
11912 x_output, w32_output, and mac_output structures. All uses changed.
11913 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
11914 from x/w32/macterm.h files. All uses changed. Also change code
11915 which referred to f->output_data...->pixel_height.
11916 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
11917 from x/w32/macterm.h files. All uses changed. Also change code
11918 which referred to f->output_data...->pixel_width.
11919 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
11920 Also change code which referred to f->height.
11921 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
11922 Also change code which referred to f->width.
11923 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
11924 to update new_text_lines and new_text_cols members directly.
11925 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
11926 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
11927 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
11928 FRAME_SCROLL_BAR_COLS. All uses changed.
11929 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
11930 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
11931 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
11932 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
11933 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
11934 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
11935 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
11936 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
11937 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
11938 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
11939 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
11940 Unconditionally return line_height member (it now has proper value
11941 also for non-window frames).
11942 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
11943 return new column_width member (rather than the default font width).
11944 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
11945 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
11946 from x/w32/macterm.h files. Unconditionally return corresponding
11947 member of frame structure (they now have proper values also for
11948 non-window frames).
11949 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
11950 Calculate return value from left and right widths.
11951 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
11952 internal_border_width member (has proper value for non-window frame).
11953 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
11954 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
11955 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
11956 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
11957 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
11958 consolidated from xterm.h, macterm.h, and w32term.h.
11959 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11960 consolidated from xterm.h, macterm.h, and w32term.h.
11961 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11962 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11963 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11964 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11965 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11966 consolidated from x/mac/w32term.h.
11967 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11968 consolidated from x/mac/w32term.h.
11969 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11970 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11971 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11972 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11973
11974 * window.h (struct window): Rename members left to left_col,
11975 top to top_line, height to total_lines, width to total_cols,
11976 left_margin_width to left_margin_cols, right_margin_width to
11977 right_margin_cols, orig_height to orig_total_lines, orig_top to
11978 orig_top_line. All uses changed.
11979 (struct window): New members left_fringe_width, right_fringe_width,
11980 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11981 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11982 New macros primarily used to simplify other macros.
11983 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11984 referred to XINT (w->width).
11985 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11986 referred to XINT (w->height).
11987 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11988 referred to XINT (w->width) * canon_x_unit.
11989 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11990 referred to XINT (w->height) * canon_y_unit.
11991 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11992 referred to XINT (w->left).
11993 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11994 all uses and code that referred to XINT (w->left) + XINT (w->width).
11995 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11996 referred to XINT (w->top).
11997 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11998 referred to XINT (w->top) + XINT (w->height).
11999 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12000 referred to XINT (w->left) * canon_x_unit.
12001 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12002 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12003 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12004 referred to XINT (w->top) * canon_y_unit.
12005 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12006 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12007 (WINDOW_LEFTMOST_P): New macro.
12008 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12009 All uses changed.
12010 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12011 All uses changed.
12012 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12013 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12014 Do not exclude left fringe width.
12015 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12016 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12017 Do not exclude fringe widths.
12018 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12019 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12020 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12021 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12022 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12023 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12024 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12025 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12026 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12027 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12028 New macros. Change code which referenced corresponding
12029 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12030 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12031 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12032 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12033 allow per-window scroll-bar settings.
12034 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12035 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12036 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12037 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12038 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12039 FRAME_SCROLL_BAR_WIDTH.
12040 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12041 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12042 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12043 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12044 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12045 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12046 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12047 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12048 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12049 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12050 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12051 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12052 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12053 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12054 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12055 (window_from_coordinates): Update prototype.
12056 (Fset_window_buffer): Update EXFUN.
12057 (set_window_buffer): Update prototype.
12058
12059 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12060 to window_left_col, window_top_y to window_top_line. All uses
12061 changed.
12062 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12063 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12064 internal_border_width is now set to 0 for non-window frames.
12065 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12066 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12067 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12068 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12069 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12070 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12071 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12072 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12073 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12074 Move to window.h and renamed [see window.h changes].
12075 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12076 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12077 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12078 Use WINDOW_TOTAL_LINES.
12079 (frame_update_line_height): Remove prototype.
12080
12081 * buffer.h (struct buffer): Rename members measured in columns:
12082 left_margin_width to left_margin_cols, right_margin_width to
12083 right_margin_cols. All uses changed.
12084 New members left_fringe_width, right_fringe_width,
12085 fringes_outside_margins for per-buffer fringe settings.
12086 New members scroll_bar_width and vertical_scroll_bar_type for
12087 per-buffer scroll bar settings.
12088
12089 * buffer.c (init_buffer_once): Set buffer_defaults and
12090 buffer_local_flags for new buffer-local variables
12091 left_fringe_width, right_fringe_width, fringes_outside_margins,
12092 scroll_bar_width, and vertical_scroll_bar_type.
12093 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12094 default-* variables for them.
12095
12096 * dispnew.c: Make (many) trivial substitutions for renamed and
12097 new macros in dispextern.h, frame.h and window.h.
12098 (mode_line_string): No need to adjust width for mode lines, as it
12099 is already adjusted by the caller.
12100 (marginal_area_string): Handle fringes inside/outside margins.
12101
12102 * frame.c: Make (many) trivial substitutions for renamed and
12103 new macros in dispextern.h, frame.h and window.h.
12104 (make_frame): Initialize left_fringe_width, right_fringe_width,
12105 fringe_cols, scroll_bar_actual_width, border_width,
12106 internal_border_width, column_width, line_height, x_pixels_diff,
12107 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12108 members with values suitable for a non-window frames.
12109
12110 * gtkutil.c: Make (many) trivial substitutions for renamed and
12111 new macros in dispextern.h, frame.h and window.h.
12112
12113 * indent.c: Make (few) trivial substitutions for renamed and
12114 new macros in dispextern.h, frame.h and window.h.
12115
12116 * keyboard.c: Make (many) trivial substitutions for renamed and
12117 new macros in dispextern.h, frame.h and window.h.
12118 (make_lispy_event): Use window positions returned from
12119 window_from_coordinates when constructing the lisp event for
12120 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12121 (incorrect) values locally.
12122 (make_lispy_movement): Use window positions returned from
12123 window_from_coordinates when constructing the lisp event, rather
12124 than calculating (incorrect) values locally.
12125
12126 * scroll.c: Make (some) trivial substitutions for renamed and
12127 new macros in dispextern.h, frame.h and window.h.
12128
12129 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12130 scroll-bars.
12131
12132 * sysdep.c: Make (few) trivial substitutions for renamed and
12133 new macros in dispextern.h, frame.h and window.h.
12134
12135 * term.c: Make (some) trivial substitutions for renamed and
12136 new macros in dispextern.h, frame.h and window.h.
12137
12138 * widget.c: Make (few) trivial substitutions for renamed and
12139 new macros in dispextern.h, frame.h and window.h.
12140
12141 * window.c: Make (many) trivial substitutions for renamed and
12142 new macros in dispextern.h, frame.h and window.h.
12143 (make_window): Initialize new members
12144 left_margin_cols, right_margin_cols, left_fringe_width,
12145 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12146 and vertical_scroll_bar_type.
12147 (coordinates_in_window): Adapt to new fringe/margin positions
12148 and per-window fringes and scroll-bars.
12149 Fix bug related to incorrectly adjusting coordinates by
12150 frame's internal_border_width (the effect normally negible since
12151 the internal_border_width is typically 0 or 1 pixel, but very
12152 noticeable for an internal_border_width of e.g. 25 pixels).
12153 Upon successful return (other than ON_NOTHING), the coordinates
12154 are now always properly converted to window relative for the
12155 given display element.
12156 (window_from_coordinates): Add new parameters wx and wy to
12157 return the window relative x and y position in the returned
12158 window and part. A null arg means, don't return the position.
12159 All callers changed.
12160 (adjust_window_margins): New function which may reduce the width
12161 of the display margins if a window's text area is too small after
12162 resizing or splitting windows.
12163 (size_window): Fix bug that did not account for display margin
12164 widths when checking the minimum width of a window; use
12165 adjust_window_margins.
12166 (set_window_buffer): Call Fset_window_fringes and
12167 Fset_window_scroll_bars to setup per-window elements.
12168 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12169 existing display margin, fringe widths, and scroll bar settings
12170 (e.g. after splitting a window or resizing the frame).
12171 All callers changed.
12172 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12173 (Fsplit_window): Duplicate original window's display margin,
12174 fringe, and scroll-bar settings; then call Fset_window_buffer with
12175 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12176 window to only preserve the display margins in one of the windows.
12177 When splitting horizontally, call adjust_window_margins on both
12178 windows to ensure that the text area of the new windows is non too
12179 narrow. This fixes a bug which could cause Emacs to trap if the
12180 width of the split window was less than the width of the display
12181 margins.
12182 (window_box_text_cols): Rename from window_internal_width.
12183 All uses changed. Adapt to per-window fringes and scroll bars.
12184 Fix bug that caused vertical separator to be subtracted also on
12185 window frames. Fix another bug that did not reduce the returned
12186 value by the columns used for display margins.
12187 (window_scroll_line_based): Fix bug related to scrolling too much
12188 when display margins are present (implicitly fixed by the fix to
12189 window_box_text_cols).
12190 (scroll_left, scroll_right): Fix bug related to scrolling too far
12191 by default when display margins are present (implicitly fixed by
12192 the fix to window_box_text_cols).
12193 (struct saved_window): Rename members left to left_col, top to
12194 top_line, width to total_cols, height to total_lines, orig_top to
12195 orig_top_line, orig_height to orig_total_lines. All uses changed.
12196 New members left_margin_cols, right_margin_cols,
12197 left_fringe_width, right_fringe_width, fringes_outside_margins,
12198 scroll_bar_width, and vertical_scroll_bar_type for saving
12199 per-window display elements.
12200 (Fset_window_configuration): Restore display margins, fringes,
12201 and scroll bar settings. This fixes a bug which caused display
12202 margins to be discarded when saving and restoring a window
12203 configuration.
12204 (save_window_save): Save display margins, fringes, and scroll bar
12205 settings. This fixes a bug which caused display margins to be
12206 discarded when saving and restoring a window configuration.
12207 (Fset_window_margins): Do nothing if display margins are not
12208 really changed. Otherwise, call adjust_window_margins to ensure
12209 the text area doesn't get too narrow. This fixes a bug which
12210 could cause Emacs to trap if setting display margins wider than
12211 the width of the window.
12212 (Fset_window_fringes): New defun to allow user to specifically set
12213 this window's fringe widths and position vs. display margins.
12214 (Fwindow_fringes): New defun to return window's actual fringe settings.
12215 (Fset_window_scroll_bars): New defun to allow user to specifically
12216 set this window's scroll bar width and position.
12217 (Fwindow_scroll_bars): New defun to return window's actual scroll
12218 bar settings.
12219 (compare_window_configurations): Also compare display margins,
12220 fringes, and scroll bar settings.
12221 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12222
12223 * xdisp.c: Make (many) trivial substitutions for renamed and
12224 new macros in dispextern.h, frame.h and window.h.
12225 (window_box_width): Adapt to per-window fringes and scroll bars,
12226 and new fringe vs. display margin position. Note that returned
12227 value is no longer guaranteed to be a whole multiple of the frame
12228 column width, since per-window fringes may now be any width.
12229 (window_box_left_offset): New function like window_box_left, but
12230 value is relative to left border of window (rather than frame).
12231 (window_box_right_offset): New function like window_box_right,
12232 but value is relative to left border of window.
12233 (window_box_left): Adapt to per-window fringes and scroll bars,
12234 and new fringe vs. display margin position. Simplify by using
12235 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12236 (window_box): Allow null args for unnecessary return values;
12237 change/simplify relevant callers.
12238 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12239 and new fringe vs. display margin position.
12240 Use window_box_left_offset and window_box_right_offset
12241 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12242 scroll bars, and new fringe vs. display margin position.
12243 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12244 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12245 fringe vs. display margin position.
12246 (hscroll_window_tree): Use window_box_width instead of window_box.
12247 (redisplay_window): Adapt to per-window scroll bars.
12248 (draw_glyphs): Rework to handle per-window fringes and scroll
12249 bars, and new fringe vs. display margin position.
12250 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12251 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12252 bars, and new fringe vs. display margin position. Fix bug which
12253 increased total width of full_width rows by width of scroll bars
12254 although window's total width already includes that.
12255 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12256 (expose_area): Simplify using window_box_left_offset.
12257 (x_draw_vertical_border): Handle per-window scroll bar settings,
12258 mixing windows with left, right and no scroll bars.
12259
12260 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12261 where it's used in x_list_fonts (for clarity).
12262 (frame_update_line_height): Remove unused function; functionality
12263 is now done directly when setting the default font in x_set_font.
12264
12265 * xfns.c: Make (many) trivial substitutions for renamed and
12266 new macros in dispextern.h, frame.h and window.h.
12267
12268 * xmenu.c: Make (some) trivial substitutions for renamed and
12269 new macros in dispextern.h, frame.h and window.h.
12270
12271 * xterm.h (struct x_output): Move members left_pos, top_pos,
12272 border_width, pixel_height, pixel_width, line_height,
12273 internal_border_width, vertical_scroll_bar_extra,
12274 left_fringe_width, right_fringe_width, fringe_cols,
12275 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12276 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12277 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12278 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12279 (PIXEL_WIDTH, PIXEL_HEIGHT)
12280 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12281 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12282 frame.h and renamed [see frame.h changes].
12283 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12284 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12285 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12286 and renamed [see frame.h changes].
12287
12288 * xterm.c: Make (several) trivial substitutions for renamed and
12289 new macros in dispextern.h, frame.h and window.h.
12290 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12291 (scroll_run): Adapt to new fringe position.
12292 (glyph_rect): Use window coordinates returned from
12293 window_from_coordinates rather than frame_to_window_pixel_xy.
12294 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12295 scroll-bars.
12296 (handle_one_xevent): Simplify a USE_GTK conditional.
12297 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12298 (fringes are now inside margins, i.e. always in the clipping area).
12299 All callers changed.
12300 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12301 directly, then call compute_fringe_widths. Don't call
12302 frame_update_line_height.
12303
12304 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12305 border_width, pixel_height, pixel_width, line_height,
12306 internal_border_width, vertical_scroll_bar_extra,
12307 left_fringe_width, right_fringe_width, fringe_cols,
12308 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12309 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12310 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12311 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12312 (PIXEL_WIDTH, PIXEL_HEIGHT)
12313 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12314 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12315 frame.h and renamed [see frame.h changes].
12316 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12317 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12318 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12319 and renamed [see frame.h changes].
12320
12321 * w32term.c: Make (several) trivial substitutions for renamed and
12322 new macros in dispextern.h, frame.h and window.h.
12323 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12324 (glyph_rect): Use window coordinates returned from
12325 window_from_coordinates rather than frame_to_window_pixel_xy.
12326 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12327 scroll-bars.
12328 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12329 (fringes are now inside margins, i.e. always in the clipping area).
12330 All callers changed.
12331 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12332 directly, then call compute_fringe_widths. Don't call
12333 frame_update_line_height.
12334
12335 * w32console.c: Make (few) trivial substitutions for renamed and
12336 new macros in dispextern.h, frame.h and window.h.
12337
12338 * w32fns.c: Make (many) trivial substitutions for renamed and
12339 new macros in dispextern.h, frame.h and window.h.
12340
12341 * w32menu.c: Make (few) trivial substitutions for renamed and
12342 new macros in dispextern.h, frame.h and window.h.
12343
12344 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12345 border_width, pixel_height, pixel_width, line_height,
12346 internal_border_width, vertical_scroll_bar_extra,
12347 left_fringe_width, right_fringe_width, fringe_cols,
12348 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12349 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12350 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12351 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12352 (PIXEL_WIDTH, PIXEL_HEIGHT)
12353 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12354 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12355 frame.h and renamed [see frame.h changes].
12356 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12357 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12358 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12359 and renamed [see frame.h changes].
12360
12361 * macterm.c: Make (several) trivial substitutions for renamed and
12362 new macros in dispextern.h, frame.h and window.h.
12363 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12364 (glyph_rect): Use window coordinates returned from
12365 window_from_coordinates rather than frame_to_window_pixel_xy.
12366 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12367 scroll-bars.
12368 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12369 (fringes are now inside margins, i.e. always in the clipping area).
12370 All callers changed.
12371 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12372 directly, then call compute_fringe_widths. Don't call
12373 frame_update_line_height.
12374
12375 * macfns.c: Make (several) trivial substitutions for renamed and
12376 new macros in dispextern.h, frame.h and window.h.
12377 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12378
12379 * macmenu.c: Make (few) trivial substitutions for renamed and
12380 new macros in dispextern.h, frame.h and window.h.
12381
12382 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12383 and line_height, and use corresponding new members in struct
12384 frame. All uses changed.
12385 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12386 superseeded by corresponding macros in frame.h.
12387
12388 * msdos.c: Make (several) trivial substitutions for renamed and
12389 new macros in dispextern.h, frame.h and window.h.
12390 (IT_note_mouse_highlight): Use updated window coordinates returned
12391 by window_from_coordinates, rather than adjusting them locally.
12392 (internal_terminal_init): No need to initialize line_height here;
12393 it now defaults to 1.
12394
12395 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12396
12397 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12398 dropping `down' events.
12399
12400 2003-05-24 Andreas Schwab <schwab@suse.de>
12401
12402 * coding.c (find_safe_codings): Fix last change.
12403
12404 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12405
12406 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12407
12408 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12409
12410 * xdisp.c (display_mode_element): Increase max depth.
12411 Simplify the error handling code. Use a different error string
12412 for the case where we hit the depth limit.
12413
12414 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12415
12416 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12417
12418 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12419
12420 * intervals.c (get_local_map): Don't get char-property of previous
12421 point any more: get_pos_property already does it and better.
12422
12423 2003-05-21 Dave Love <fx@gnu.org>
12424
12425 [Merged from unicode branch.]
12426
12427 * xfns.c (x_window, x_window): Use use_xim.
12428
12429 * xterm.c (use_xim): Initialize.
12430 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12431 (x_term_init): Maybe set use_xim.
12432
12433 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12434
12435 2003-05-21 Jason Rumney <jasonr@gnu.org>
12436
12437 * unexw32.c (_start): Remove _fmode initialization.
12438
12439 * emacs.c (main) [WINDOWSNT]: Move it here.
12440
12441 2003-05-20 Dave Love <fx@gnu.org>
12442
12443 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12444
12445 2003-05-19 Richard M. Stallman <rms@gnu.org>
12446
12447 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12448 as value for QCfont attribute.
12449 (realize_default_face): lface should already exist; crash if not.
12450 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12451
12452 * frame.c (Fignore_event): Doc fix.
12453
12454 2003-05-19 Kenichi Handa <handa@m17n.org>
12455
12456 * coding.c (decode_coding_string): Handle post-read-conversion
12457 even if the coding doesn't require decoding.
12458
12459 2003-05-18 Richard M. Stallman <rms@gnu.org>
12460
12461 * callproc.c (Fcall_process_region): Doc fix.
12462
12463 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12464
12465 * lread.c (Fload): Print a message if package is obsolete.
12466
12467 * window.c (Fselect_window): Add optional `norecord' arg.
12468 (select_window_1): Fold into Fselect_window.
12469 (select_window_norecord): New function.
12470 (temp_output_buffer_show): Use it. Preserve current buffer.
12471
12472 * window.h (Fselect_window): Update declaration.
12473
12474 * window.c (delete_window, Fother_window, Fset_window_configuration):
12475 * minibuf.c (read_minibuf):
12476 * macterm.c (x_new_focus_frame):
12477 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12478 * callint.c (Fcall_interactively):
12479 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12480
12481 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12482
12483 2003-05-17 David Kastrup <dak@gnu.org>
12484
12485 * process.c (read_process_output): Back out change from 2003-03-09.
12486
12487 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12488
12489 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12490
12491 * textprop.c (text_property_stickiness): New arg `buffer'.
12492
12493 * intervals.h (text_property_stickiness): New arg `buffer'.
12494 (get_pos_property): Declare.
12495
12496 * intervals.c (get_local_map): Use get_pos_property, to obey
12497 stickiness and empty overlays.
12498 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12499 (merge_properties, intervals_equal, merge_properties_sticky):
12500 Use XCAR, XCDR.
12501 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12502
12503 2003-05-17 Richard M. Stallman <rms@gnu.org>
12504
12505 * minibuf.c (read_minibuf): If buffer is empty, record the default
12506 in the history.
12507 (Fminibuffer_complete_word): When deleting the overlap, take account
12508 of its real position.
12509
12510 * fns.c (map_char_table): Fix previous change.
12511
12512 * syntax.c (find_defun_start):
12513 When open_paren_in_column_0_is_defun_start,
12514 return beginning of buffer.
12515
12516 * lisp.h (map_char_table): Declare added arg.
12517
12518 * fns.c (map_char_table): New arg TABLE gets the master table.
12519 All calls changed.
12520 Process default and inheritance, resorting to Faref if necessary.
12521
12522 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12523 (Faccessible_keymaps): Pass new arg to map_char_table.
12524
12525 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12526
12527 * casetab.c (set_case_table): Pass new arg to map_char_table.
12528
12529 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12530
12531 * lisp.h (specbinding_func): New typedef.
12532 (struct specbinding): Use specbinding_func, to put the `volatile'
12533 in the right place.
12534
12535 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12536 to avoid GCC warning.
12537
12538 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12539
12540 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12541
12542 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12543
12544 * keyboard.c (apply_modifiers): Don't fill the other cache.
12545
12546 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12547
12548 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12549
12550 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12551 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12552 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12553 (Fset_window_configuration, Fcurrent_window_configuration)
12554 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12555 (Fpos_visible_in_window_p, mark_window_cursors_off)
12556 (window_internal_height, window_internal_width, Frecenter)
12557 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12558 (replace_buffer_in_all_windows, init_window_once, init_window)
12559 (syms_of_window, keys_of_window): Move from lisp.h.
12560 * lisp.h: Move window.c declarations to window.h.
12561
12562 * bytecode.c: Include window.h.
12563 * emacs.c: Include window.h.
12564
12565 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12566 (keyremap): Add `parent' field.
12567 (keyremap_step): Use it. Remove `parent' argument.
12568 (read_key_sequence): Setup and use the new `parent' field.
12569
12570 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12571
12572 * keyboard.c (adjust_point_for_property): Ensure termination.
12573
12574 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12575
12576 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12577 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12578 duplicated handling of function-key-map and key-translation-map
12579 in read_key_sequence.
12580 (read_key_sequence): Use them.
12581
12582 * keyboard.c (adjust_point_for_property): Try harder to move point
12583 to the non-sticky end of an invisible property.
12584
12585 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12586 property intangible as well.
12587
12588 2003-05-10 Andreas Schwab <schwab@suse.de>
12589
12590 * xmenu.c (single_menu_item): Change last parameter to void* to
12591 avoid warning.
12592
12593 2003-05-09 Richard M. Stallman <rms@gnu.org>
12594
12595 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12596 Bind Qinhibit_modification_hooks to t so there will be no GC.
12597 Rename local `tem' to `save_deactivate_mark'.
12598
12599 * eval.c (specpdl_ptr): Declare volatile.
12600 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12601 before doing the work of unbinding it.
12602
12603 * lisp.h (struct specbinding): Declare elements volatile.
12604 (specpdl_ptr): Declare volatile.
12605
12606 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12607
12608 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12609 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12610
12611 2003-05-08 Dave Love <fx@gnu.org>
12612
12613 * coding.c (Vlast_coding_system_used): Doc fix.
12614
12615 2003-05-07 Jason Rumney <jasonr@gnu.org>
12616
12617 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12618 when system does not support them.
12619
12620 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12621
12622 * fileio.c (Qwrite_region_annotate_functions): New var.
12623 (build_annotations): Use it to process the global part of the hook.
12624 (syms_of_fileio): Init and staticpro it.
12625
12626 * keyboard.c (safe_run_hooks_error): Display a message instead of
12627 silently ignoring the error.
12628
12629 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12630
12631 * keyboard.c (input_available_signal): Mark static.
12632 (menu_bar_items): Use map_keymap.
12633 (menu_bar_one_keymap): Remove.
12634 (menu_bar_item): Adjust arglist (for use in map_keymap).
12635 Properly hide a second binding when not both are keymaps.
12636
12637 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12638 (single_keymap_panes): Use it and map_keymap.
12639 (single_menu_item): Use skp as well.
12640
12641 * keymap.h (map_keymap_function_t): New type.
12642 (map_keymap): Declare.
12643
12644 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12645 (map_keymap_call, Fmap_keymap): New functions.
12646 (syms_of_keymap): Defsubr map-keymap.
12647
12648 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12649
12650 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12651 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12652 ..._with_mnemonic functions for menu items.
12653
12654 2003-05-01 Kenichi Handa <handa@m17n.org>
12655
12656 * coding.c (coding_system_accept_latin_extra_p): Delete this
12657 function.
12658 (find_safe_codings): Pay attention to
12659 the property tranlsation-table-for-encode of each codings.
12660 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12661
12662 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12663
12664 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12665
12666 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12667
12668 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12669
12670 * lisp.h (CHECK): Wrap args in parenthesis.
12671 (specbind): Fix doc: symbol = Qnil is not supported any more.
12672
12673 * bytecode.c (Fbyte_code) <unwind-protect>:
12674 Use Fprogn rather than 0 and Qnil.
12675
12676 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12677 `double', and `triple' modifiers as well.
12678
12679 2003-04-30 Richard M. Stallman <rms@gnu.org>
12680
12681 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12682
12683 * alloc.c (abort_on_gc): New variable.
12684 (Fgarbage_collect): Abort if abort_on_gc is set.
12685
12686 * lisp.h (abort_on_gc): Add decl.
12687
12688 * eval.c (Fsignal): Clear abort_on_gc.
12689
12690 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12691 Reinit FORMAT_START and END before second scan.
12692
12693 * xdisp.c (move_it_vertically_backward): Do the final big else
12694 even if nlines is 0.
12695
12696 * xdisp.c (redisplay_internal): Finish the per-frame loop
12697 even if redisplay is suspended by input.
12698
12699 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12700
12701 * macterm.c (x_list_fonts): Return all fonts that match if
12702 maxnames = -1.
12703
12704 2003-04-25 Kenichi Handa <handa@m17n.org>
12705
12706 * syntax.c (skip_chars): Fix previous change.
12707
12708 2003-04-24 Kenichi Handa <handa@m17n.org>
12709
12710 * syntax.c (skip_chars): Make the code faster by using the common
12711 technique of *p, *stop, and *endp.
12712
12713 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12714
12715 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12716 tool_bar_items so GTK tool bar expose callback does not access items
12717 being updated.
12718
12719 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12720
12721 * eval.c (Fapply): Undo last change and add a comment about why.
12722
12723 2003-04-18 Miles Bader <miles@gnu.org>
12724
12725 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12726 pickier PARSE_MULTIBYTE_SEQ.
12727
12728 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12729
12730 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12731 Use XCDR, XCAR, CONSP.
12732 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12733 (Fapply): Remove unnecessary GCPRO.
12734
12735 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12736
12737 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12738
12739 * buffer.h: Don't hardcode BEG==1.
12740
12741 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12742
12743 2003-04-16 Richard M. Stallman <rms@gnu.org>
12744
12745 * xdisp.c (try_window, try_window_reusing_current_matrix):
12746 When at end of window, set window_end_pos to Z-ZV.
12747
12748 * buffer.c (Foverlay_recenter): Doc fix.
12749
12750 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12751
12752 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12753
12754 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12755
12756 * macterm.c (mac_check_for_quit_char): Don't check more often than
12757 once a second.
12758
12759 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12760
12761 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12762 specially, so that they can't hide an implicit switch-frame event.
12763 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12764 (head_table): Use switch-frame as event_kind for select-window.
12765 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12766
12767 * editfns.c (Fformat): Lisp_Object/int mixup.
12768 (format2): Remove unused var numargs.
12769
12770 2003-04-11 Kenichi Handa <handa@m17n.org>
12771
12772 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12773 (Qafter_insert_file_set_coding): New variable.
12774 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12775 for after-insert-file-adjust-coding-function.
12776 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12777 instead of Vafter_insert_file_adjust_coding_function.
12778
12779 2003-04-11 Kenichi Handa <handa@m17n.org>
12780
12781 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12782
12783 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12784 string. Callers changed.
12785
12786 2003-04-10 Kenichi Handa <handa@m17n.org>
12787
12788 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12789 (syms_of_fileio): Declare it as a lisp variable.
12790 (Finsert_file_contents):
12791 Call Vafter_insert_file_adjust_coding_function before calling
12792 decode-format.
12793
12794 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12795
12796 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12797 get GtkAdjustment as widget now is a GtkRange.
12798
12799 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12800 GtkRange to avoid memory leak.
12801
12802 2003-04-09 Kenichi Handa <handa@m17n.org>
12803
12804 * xfaces.c (Vface_font_rescale_alist): New variable.
12805 (struct font_name): New member rescale_ratio.
12806 (font_rescale_ratio): New function.
12807 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12808 (better_font_p): On comparing point sized, pay attention to
12809 recale_ratio member of fonts.
12810 (build_scalable_font_name): Reflect font->rescale_ratio in the
12811 font name.
12812 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12813
12814 * lread.c (read1): Before calling index, check if the 2nd
12815 arguemnt is in ASCII range.
12816
12817 2003-04-08 Richard M. Stallman <rms@gnu.org>
12818
12819 * fileio.c (Ffile_symlink_p): Doc fix.
12820
12821 * editfns.c (Fformat): Translate positions of text properties
12822 in the format string to apply them to the result.
12823
12824 * fileio.c (Finsert_file_contents): Doc fix.
12825 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12826
12827 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12828
12829 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12830
12831 2003-04-08 Steven Tamm <steventamm@mac.com>
12832
12833 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12834 that self-contained application finds libexec files.
12835
12836 2003-04-08 Kenichi Handa <handa@m17n.org>
12837
12838 * coding.c (code_convert_region_unwind):
12839 Set Vlast_coding_system_used to the argument.
12840 (code_convert_region): If post-read-conversion function changed
12841 the value of last-coding-sytem, keep the new value in
12842 coding->symbol so that it won't be overridden.
12843 (run_pre_post_conversion_on_str): Likewise.
12844 (coding_system_accept_latin_extra_p): New function.
12845 (find_safe_codings): Pay attention to characters registered in
12846 latin-extra-code-table.
12847
12848 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12849
12850 * Makefile.in (md5.o): Add missing dependency info.
12851
12852 2003-04-06 Richard M. Stallman <rms@gnu.org>
12853
12854 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12855
12856 * marker.c (verify_bytepos): New function.
12857
12858 * intervals.c (set_intervals_multibyte_1): When becoming
12859 multibyte, adjust right and left child sizes to a whole set of
12860 characters. If an interval gets zero total-length, delete it.
12861 If an interval consists of just its children, delete one of them.
12862
12863 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12864 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12865
12866 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12867 All calls deleted.
12868 (lisp_malloc): Do the work here directly.
12869
12870 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12871
12872 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12873 char tables.
12874
12875 2003-04-04 Kenichi Handa <handa@m17n.org>
12876
12877 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12878 destructively change "%S" to "%s".
12879
12880 2003-04-03 Miles Bader <miles@gnu.org>
12881
12882 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12883 always set.
12884
12885 2003-04-01 Dave Love <fx@gnu.org>
12886
12887 * xfns.c (xpm_lookup_color): Grok "opaque".
12888
12889 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12890
12891 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12892 parent window ID.
12893
12894 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12895
12896 * macterm.h (struct mac_output): Define x_pixels_diff and
12897 y_pixels_diff.
12898
12899 2003-03-31 Juanma Barranquero <lektu@terra.es>
12900
12901 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
12902 blockinput.h and files included from it.
12903
12904 2003-03-31 Kim F. Storm <storm@cua.dk>
12905
12906 The following changes consolidates the common code related to
12907 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
12908 files into frame.c.
12909
12910 * frame.c: Include blockinput.h.
12911 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
12912 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
12913 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
12914 related vars here.
12915 (struct frame_parm_table, frame_parms): New table for describing
12916 frame parameters and their associated Q-variable.
12917 The order of the parameters corresponds to the sequence of the
12918 frame_parm_handlers table in redisplay_interface.
12919 (x_fullscreen_move, x_set_frame_parameters)
12920 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
12921 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
12922 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12923 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
12924 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
12925 Generic functions for processing of frame parameters.
12926 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
12927 (display_x_get_resource, x_get_resource_string): Functions for
12928 generic access to X resources.
12929 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12930 (x_default_parameter, Fx_parse_geometry): Functions for generic
12931 access to frame parameters.
12932 (x_figure_window_size): Generic calculation of frame size.
12933 Fixed to add space needed for tool bar. Also setup size_hint_flags.
12934 (syms_of_frame): Intern and staticpro frame parameter variables.
12935 Defvar_lisp Vx_resource_class and Vx_resource_name here.
12936 Defsubr Sx_get_resource and Sx_parse_geometry.
12937
12938 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
12939 parameter related vars defined in frame.c.
12940 (EMACS_CLASS): Define here.
12941 (enum FULLSCREEN_*): Define here.
12942 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
12943 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
12944 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
12945 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
12946 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
12947 (x_set_visibility, x_set_autoraise, x_set_autolower)
12948 (x_set_unsplittable, x_set_vertical_scroll_bars)
12949 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
12950 (x_figure_window_size): Add prototypes.
12951
12952 * dispextern.h (frame_parm_handler): New typedef.
12953 (struct redisplay_interface): New member frame_parm_handlers.
12954 (enum resource_types): Move declaration here.
12955 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
12956 (x_default_parameter): Add prototypes.
12957
12958 * window.c: Remove extern decl for frame parameter vars.
12959 (change_window_heights): New generic function;
12960 replaces x_change_window_heights. All users changed.
12961
12962 * window.h (change_window_heights): Add prototype.
12963
12964 * xfaces.c: Remove extern decl for frame parameter vars.
12965
12966 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12967 (struct w32_display_info): Fix type of xrdb member.
12968 (enum FULLSCREEN_*): Remove.
12969 Remove prototypes for generic functions (in frame.h).
12970
12971 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12972 parameters now defined in frame.h and frame.c.
12973 (Vx_resource_name): Remove. Use generic var.
12974 (enum x_frame_parms): Remove (bogus, unused enum).
12975 (check_x_display_info): Make non-static (for frame.c).
12976 (struct x_frame_parm_table, x_frame_parms): Remove.
12977 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12978 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12979 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12980 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12981 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12982 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12983 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12984 Remove. Use generic functions instead.
12985 (enum resource_types): Remove.
12986 (x_set_scroll_bar_default_width): New global function (for frame.c).
12987 (Fx_create_frame): Depend on x_figure_window_size to add space for
12988 toolbar and setup size_hint_flags.
12989 (x_frame_parm_handlers): New table for redisplay_interface.
12990 (syms_of_xfns): Don't intern/staticpro removed vars.
12991
12992 * xterm.c: Remove unnecessary extern declarations.
12993 (x_fullscreen_adjust): Remove. Use generic instead.
12994 (x_redisplay_interface): Add x_frame_parm_handlers member.
12995
12996 * w32gui.h (XrmDatabase): New (dummy) typedef.
12997
12998 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12999 (struct w32_display_info): Fix type of xrdb member.
13000 (enum FULLSCREEN_*): Remove.
13001 (x_fullscreen_adjust): Remove prototype.
13002
13003 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13004 parameters now defined in frame.h and frame.c.
13005 (Vx_resource_name): Remove. Use generic var.
13006 (enum x_frame_parms): Remove (bogus, unused enum).
13007 (check_x_display_info): Make non-static (for frame.c).
13008 (struct x_frame_parm_table, x_frame_parms): Remove.
13009 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13010 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13011 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13012 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13013 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13014 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13015 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13016 Remove. Use generic functions instead.
13017 (enum resource_types): Remove.
13018 (x_set_scroll_bar_default_width): New global function (for frame.c).
13019 (Fx_create_frame): Depend on x_figure_window_size to add space for
13020 toolbar and setup size_hint_flags.
13021 (w32_frame_parm_handlers): New table for redisplay_interface.
13022 (syms_of_w32fns): Don't intern/staticpro removed vars.
13023
13024 * w32term.c: Remove unnecessary extern declarations.
13025 (x_fullscreen_adjust): Remove. Use generic instead.
13026 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13027
13028 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13029
13030 * macgui.h (XrmDatabase): New (dummy) typedef.
13031
13032 * macterm.h (EMACS_CLASS): Remove.
13033 (struct mac_display_info): Add xrdb member.
13034 (struct mac_output): Add want_fullscreen member.
13035
13036 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13037 parameters now defined in frame.h and frame.c.
13038 (Vx_resource_name): Remove. Use generic var.
13039 (check_x_display_info): Make non-static (for frame.c).
13040 (struct x_frame_parm_table, x_frame_parms): Remove.
13041 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13042 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13043 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13044 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13045 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13046 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13047 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13048 Remove. Use generic functions instead.
13049 (enum resource_types): Remove.
13050 (x_set_scroll_bar_default_width): New global function (for frame.c).
13051 (mac_frame_parm_handlers): New table for redisplay_interface.
13052 (syms_of_macfns): Don't intern/staticpro removed vars.
13053
13054 * macterm.c: Remove unnecessary extern declarations.
13055 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13056
13057 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13058 included from it (atimer.h and systime.h).
13059
13060 2003-03-30 Andreas Schwab <schwab@suse.de>
13061
13062 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13063 parameters for shift_glyphs_for_insert.
13064
13065 * macterm.c (x_redisplay_interface): Add missing entry for
13066 draw_vertical_window_border.
13067
13068 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13069
13070 * fileio.c (Fexpand_file_name): In the no-handler case, after
13071 expanding, look again for a handler and invoke it. This is needed
13072 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13073 expansion produces "/user@host:/bar/../baz" which needs to be
13074 expanded again for the finame result "/user@host:/baz".
13075
13076 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13077
13078 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13079 of area to be redrawn for better performance.
13080
13081 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13082
13083 * xterm.c (take_vertical_position_into_account): Remove.
13084 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13085 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13086 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13087 (x_set_toolkit_scroll_bar_thumb): Simplify.
13088 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13089 (XTread_socket): Remove unused var.
13090 (x_make_frame_invisible): Replace goto with else.
13091
13092 * xdisp.c (set_vertical_scroll_bar): New fun.
13093 (redisplay_window): Use it.
13094
13095 2003-03-26 Richard M. Stallman <rms@gnu.org>
13096
13097 * xdisp.c (update_tool_bar): Recompute tool bar if
13098 update_mode_lines is set. Set w->update_mode_line
13099 only if the tool bar contents actually change.
13100 (update_menu_bar): Undo previous change.
13101
13102 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13103
13104 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13105 (xg_frame_set_char_size): Calculate scroll bar width before frame
13106 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13107 (xg_separator_p): Check for all documented separator types.
13108 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13109 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13110
13111 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13112 so tool bar gets updated.
13113
13114 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13115
13116 * data.c (store_symval_forwarding): Re-instate part of the code
13117 that was deleted with too much enthusiasm.
13118
13119 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13120
13121 * data.c (store_symval_forwarding): Delete special read-only
13122 hack for type == -1, since we now use ->constant instead.
13123 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13124
13125 * buffer.c (overlays_in): Declare static.
13126 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13127 `constant' field rather than the variable's `type' field.
13128
13129 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13130
13131 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13132
13133 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13134
13135 * fns.c [MAC_OSX]: Do not redefine vector.
13136
13137 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13138
13139 * macgui.h: Remove definition of No_Cursor.
13140
13141 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13142
13143 * xdisp.c: Define No_Cursor.
13144 (x_write_glyphs, notice_overwritten_cursor)
13145 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13146 (note_mouse_highlight): Remove Mac-specific code.
13147 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13148
13149 2003-03-24 John Paul Wallington <jpw@gnu.org>
13150
13151 * xdisp.c (redisplay_window): If mini window's buffer is not
13152 empty, then redisplay it like other windows.
13153
13154 2003-03-23 Kim F. Storm <storm@cua.dk>
13155
13156 * w32term.c (w32_draw_window_cursor): Fix last change.
13157
13158 2003-03-23 Kenichi Handa <handa@m17n.org>
13159
13160 * alloc.c (make_string_from_bytes, make_specified_string):
13161 Add `const' for the arg CONTENTS.
13162
13163 * lisp.h (make_string_from_bytes, make_specified_string):
13164 Prototypes adjusted.
13165
13166 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13167
13168 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13169
13170 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13171 (XG_SB_RANGE): New define.
13172
13173 * gtkutil.c (xg_fixed_handle_expose): New function.
13174 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13175 expose events.
13176 (xg_update_scrollbar_pos): Take two more arguments, left and width
13177 of scroll bar including borders.
13178 Clear left and right part outside scroll bar separately as some
13179 themes have bars that are not an even number of pixels.
13180 Don't set reallocate_redraws, don't call
13181 gdk_window_process_all_updates.
13182 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13183 so no need to change it. Calculate size and value with XG_SB_RANGE.
13184
13185 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13186 Pass left and width of scroll bar including borders to
13187 xg_update_scrollbar_pos.
13188
13189 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13190
13191 * Makefile.in: Make sure space precedes end-of-line backslashes.
13192
13193 2003-03-22 Kim F. Storm <storm@cua.dk>
13194
13195 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13196 Add generic versions here. Remove system specific versions
13197 defined elsewhere.
13198
13199 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13200 Add prototypes.
13201
13202 * xterm.h (STORE_NATIVE_RECT): New macro.
13203
13204 2003-03-21 Kim F. Storm <storm@cua.dk>
13205
13206 * xdisp.c (get_glyph_string_clip_rect):
13207 Use FRAME_INTERNAL_BORDER_WIDTH.
13208
13209 * dispextern.h (struct redisplay_interface): Add active_p
13210 argument to draw_window_cursor member. All uses changed.
13211
13212 2003-03-21 Kim F. Storm <storm@cua.dk>
13213
13214 The following changes consolidate code related to writing and
13215 inserting glyphs, exposing frame, the tool bar, the mouse face,
13216 the output cursor, and help echo from xterm.c, w32term.c and
13217 macterm.c into xdisp.c. It also generalizes the use of the
13218 window_part enum instead of using numeric values throughout.
13219
13220 * xdisp.c: Consolidate gui-independent code here.
13221 Include keymap.h.
13222 (Qhelp_echo): Import.
13223 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13224 (help_echo_string, help_echo_window, help_echo_object)
13225 (previous_help_echo_string, help_echo_pos): Declare here.
13226 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13227 (estimate_mode_line_height): Define here. Handle windowing
13228 systems directly (without using estimate_mode_line_height_hook).
13229 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13230 (update_window_cursor, update_cursor_in_window_tree)
13231 (fast_find_position, fast_find_string_pos)
13232 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13233 (expose_area, expose_line, expose_overlaps, expose_window)
13234 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13235 declared static as they are only used locally in xdisp.c.
13236 (draw_glyphs): Rename from x_draw_glyphs and make static.
13237 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13238 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13239 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13240 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13241 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13242 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13243 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13244 (note_mouse_highlight, x_clear_window_mouse_face)
13245 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13246 (x_intersect_rectangles): New generic functions for use by xdisp.c
13247 and GUI front-ends.
13248 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13249 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13250
13251 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13252 (NativeRectangle): Generic typedef for rectangle type.
13253 (enum window_part): Move here from window.c.
13254 (struct redisplay_interface): New members flush_display_optional,
13255 define_frame_cursor, clear_frame_area, draw_window_cursor,
13256 draw_vertical_window_border, shift_glyphs_for_insert.
13257 Rename member clear_mouse_face to clear_window_mouse_face.
13258 (estimate_mode_line_height_hook): Remove hook.
13259 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13260 (tool_bar_item_info): Remove prototype.
13261 (help_echo_string, help_echo_window, help_echo_object)
13262 (previous_help_echo_string, help_echo_pos)
13263 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13264 (x_stretch_cursor_p, output_cursor): Declare extern.
13265 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13266 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13267 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13268 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13269 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13270 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13271 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13272 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13273 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13274 Add prototypes.
13275 (mode_line_string, marginal_area_string): Fix prototypes.
13276
13277 * window.c (enum window_part): Move to dispextern.h.
13278 (coordinates_in_window): Use enum window_part member names
13279 instead of numbers to describe return value.
13280 (struct check_window_data): Change part member to window_part.
13281 (check_window_containing): Return window_part unaltered.
13282 (window_from_coordinates): Change part arg from int to enum
13283 window_part. Allow part arg to be null. All users changed.
13284
13285 * window.h (window_from_coordinates): Fix prototype.
13286
13287 * term.c (estimate_mode_line_height): Move to xdisp.c.
13288
13289 * keyboard.c (make_lispy_event): Use enum window_part.
13290
13291 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13292 window_part instead of int in arg list. Users changed.
13293
13294 * xterm.h (No_Cursor): Declare as None for X.
13295 (struct mac_output): Replace member cross_cursor by hand_cursor.
13296
13297 * xterm.c: Remove consolidated defines and code.
13298 (BETWEEN): Remove unused macro.
13299 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13300 (x_define_frame_cursor, x_clear_frame_area)
13301 (x_draw_window_cursor): New X-specific functions for RIF.
13302 (x_redisplay_interface): Add new members.
13303
13304 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13305
13306 * w32term.h (struct w32_output): Remove cross_cursor member.
13307
13308 * w32term.c: Remove consolidated defines and code.
13309 (BETWEEN): Remove unused macro.
13310 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13311 (w32_define_frame_cursor, w32_clear_frame_area)
13312 (w32_draw_window_cursor): New W32-specific functions for RIF.
13313 (w32_redisplay_interface): Add new members.
13314
13315 * w32gui.h (No_Cursor): Define as 0 for W32.
13316 (XRectangle): Add X compatible rectangle type.
13317 (NativeRectangle): Declare as RECT for W32.
13318 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13319
13320 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13321
13322 * w32console.c: Remove consolidated defines and code.
13323
13324 * msdos.h (Display_Info): Add generic typedef.
13325
13326 * msdos.c: Remove consolidated defines and code.
13327 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13328
13329 * macterm.h (struct mac_output): Replace member cross_cursor by
13330 hand_cursor.
13331 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13332
13333 * macterm.c: Remove consolidated defines and code.
13334 (BETWEEN): Remove unused macro.
13335 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13336 (mac_define_frame_cursor, mac_clear_frame_area)
13337 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13338 (x_redisplay_interface): Add new members.
13339
13340 * macgui.h (No_Cursor): Define as 0 for Mac.
13341 (XRectangle): Add X compatible rectangle type.
13342 (NativeRectangle): Declare as Rect for Mac.
13343 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13344
13345 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13346 (x_set_cursor_color): Use x_display_and_set_cursor.
13347
13348 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13349 included from it. Add dependency on keymap.h.
13350
13351 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13352
13353 2003-03-21 Kenichi Handa <handa@m17n.org>
13354
13355 * fileio.c (Fexpand_file_name): Fix previous change.
13356
13357 2003-03-19 Kenichi Handa <handa@m17n.org>
13358
13359 * fileio.c (Ffile_name_directory): Reconstruct file name by
13360 make_specified_string.
13361 (Ffile_name_nondirectory, Ffile_name_as_directory)
13362 (Fdirectory_file_name, Fexpand_file_name)
13363 (Fsubstitute_in_file_name): Likewise.
13364 (Fread_file_name): Compare decoded homedir with DIR and
13365 DEFAULT_FILENAME.
13366
13367 * alloc.c (make_specified_string): If NCHARS is negative, count
13368 the number of characters.
13369
13370 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13371
13372 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13373 all widgets.
13374
13375 * gtkutil.h: Removed xg_ignore_next_thumb.
13376
13377 2003-03-18 Kenichi Handa <handa@m17n.org>
13378
13379 * coding.c (Vchar_coding_system_table): Remove this variable.
13380 (Vcoding_system_safe_chars): New variable.
13381 (intersection): Remove this function.
13382 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13383 all codings in SAFE_CODINGS.
13384 (Ffind_coding_systems_region_internal): Adjust for the change of
13385 find_safe_codings. Get generic coding systems from
13386 Vcoding_system_safe_chars.
13387 (Fdefine_coding_system_internal): New function.
13388 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13389 Initialize and staticpro Vcoding_system_safe_chars.
13390
13391 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13392
13393 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13394 equal old values before updating.
13395
13396 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13397
13398 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13399
13400 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13401
13402 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13403 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13404 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13405 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13406 (xg_create_scroll_bar): Pass bar to button event callback.
13407 (xg_find_top_left_in_fixed): New function.
13408 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13409 whole scroll bar area. Get old position with
13410 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13411 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13412 dragging is in progress. Calculate whole as for Motif.
13413 Remove code that saved last values. Call gtk_range functions to
13414 set scroll bar sizes.
13415
13416 * gtkutil.h: Removed xg_ignore_next_thumb.
13417
13418 2003-03-17 Juanma Barranquero <lektu@terra.es>
13419
13420 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13421 and files included from it.
13422
13423 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13424
13425 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13426 multiple occurrences of the same keymap under different prefixes.
13427 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13428
13429 2003-03-16 Jason Rumney <jasonr@gnu.org>
13430
13431 * w32gui.h: Use HDC for Display.
13432
13433 * w32term.c (w32_encode_char): Prevent double-byte chars from
13434 crashing Emacs.
13435
13436 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13437 as binary.
13438
13439 2003-03-16 Juanma Barranquero <lektu@terra.es>
13440
13441 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13442
13443 2003-03-16 Kim F. Storm <storm@cua.dk>
13444
13445 The following changes consolidate some of the gui-independent
13446 parts of the processing and drawing of "glyph strings" from
13447 xterm.c, w32term.c, and macterm.c into xdisp.c.
13448
13449 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13450 21 bits (this reduces number of faces from 4M to 2M).
13451 Replace W32 specific w32_font_type member (2 bits) by generic
13452 font_type member (3 bits) for portability.
13453 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13454 (enum draw_glyphs_face): Define here.
13455 (struct glyph_string): Define here. Merge W32 and X versions.
13456 (struct redisplay_interface): New members per_char_metric,
13457 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13458 (VCENTER_BASELINE_OFFSET): Define here.
13459 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13460 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13461
13462 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13463 (dump_glyph_string): Moved here.
13464 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13465 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13466 (fill_composite_glyph_string, fill_glyph_string)
13467 (fill_image_glyph_string, fill_stretch_glyph_string)
13468 (left_overwritten, left_overwriting, right_overwritten)
13469 (right_overwriting, get_char_face_and_encoding)
13470 (set_glyph_string_background_width, compute_overhangs_and_x)
13471 (append_glyph, append_composite_glyph, produce_image_glyph)
13472 (take_vertical_position_into_account, append_stretch_glyph)
13473 (produce_stretch_glyph): New generic functions (based on X version).
13474 Call platform specific functions through rif.
13475 (INIT_GLYPH_STRING): New macro, hides W32 details.
13476 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13477 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13478 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13479 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13480 (notice_overwritten_cursor):
13481 Generic functions exported to platform modules. Users changed.
13482
13483 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13484 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13485 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13486 New macros for consolidated code.
13487
13488 * xterm.c: Remove consolidated defines and code.
13489 (x_per_char_metric, x_encode_char)
13490 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13491 (x_redisplay_interface): Add new members.
13492
13493 * w32gui.h (Display): Add dummy typedef for consolidation.
13494 (XChar2b): Define alias for wchar_t for consolidation.
13495 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13496
13497 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13498 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13499 New macros for consolidation.
13500
13501 * w32term.c: Remove consolidated defines and code.
13502 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13503 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13504 (w32_per_char_metric): Change font_type arg to int for RIF.
13505 (w32_encode_char): Return int according to RIF requirements.
13506 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13507 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13508 x_get_glyph_overhangs.
13509 (w32_redisplay_interface): Add new members.
13510
13511 * macgui.h (XChar2b): Move typedef here for consolidation.
13512 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13513
13514 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13515 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13516 consolidation.
13517
13518 * macterm.c: Remove consolidated defines and code.
13519 (mac_per_char_metric): New function for RIF.
13520 (mac_encode_char): Adapt to new RIF requirements.
13521 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13522 (x_redisplay_interface): Add new members.
13523
13524 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13525
13526 * keymap.c (Vmenu_events): New var.
13527 (syms_of_keymap): Initialize it.
13528 (where_is_internal): Check more carefully what is a menu event.
13529
13530 2003-03-14 Richard M. Stallman <rms@gnu.org>
13531
13532 * lread.c (read1): After #!, exit loop on eof.
13533
13534 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13535
13536 * gtkutil.h: Add declaration for xg_frame_cleared.
13537
13538 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13539
13540 * gtkutil.c (struct xg_last_sb_pos): New structure.
13541 (handle_fixed_child): New function.
13542 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13543 and force a redraw on them.
13544 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13545 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13546 so we can avoid unneeded redraws.
13547 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13548 and force a redraw on the scroll bar.
13549 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13550 if xg_last_sb_pos shows the positions are up to date.
13551 (xg_frame_cleared): New function.
13552
13553 2003-03-13 Kenichi Handa <handa@m17n.org>
13554
13555 * coding.c (Fdetect_coding_region): Fix docstring.
13556 (Fdetect_coding_string): Fix docstring.
13557
13558 2003-03-13 Andreas Schwab <schwab@suse.de>
13559
13560 * gtkutil.c: Add prototype for create_menus.
13561
13562 * data.c (long_to_cons): Fix type of top.
13563
13564 * xselect.c (selection_data_to_lisp_data): Use int instead of
13565 long for an integer of size 4.
13566
13567 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13568 (xg_tool_bar_help_callback): Likewise.
13569
13570 2003-03-12 Andreas Schwab <schwab@suse.de>
13571
13572 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13573
13574 2003-03-12 Kim F. Storm <storm@cua.dk>
13575
13576 The following changes consolidate the fringe handling from
13577 xterm.c, w32term.c, and macterm.c into xdisp.c.
13578
13579 * xdisp.c: Consolidate fringe handling code here.
13580 (left_bits, right_bits, continued_bits, continuation_bits)
13581 (ov_bits, zv_bits): Define fringe bitmaps.
13582 (fringe_bitmaps): New array holding fringe bitmaps.
13583 (draw_fringe_bitmap): Draw a specific bitmap; call display
13584 specific drawing routine via rif->draw_fringe_bitmap.
13585 (draw_row_fringe_bitmaps): Generic replacement for
13586 x_draw_row_fringe_bitmaps; all callers changed.
13587 (compute_fringe_widths): Generic replacement for
13588 x_compute_fringe_widths; all callers changed.
13589
13590 * dispextern.h (enum fringe_bitmap_type): Define here.
13591 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13592 (fringe_bitmaps): Declare extern.
13593 (struct redisplay_interface): New member draw_fringe_bitmap.
13594 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13595
13596 * xterm.c: Remove generic fringe code.
13597 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13598 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13599
13600 * w32term.c: Remove generic fringe code.
13601 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13602 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13603
13604 * macterm.c: Remove generic fringe code.
13605 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13606 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13607
13608 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13609
13610 * print.c (Fprin1_to_string): Return unibyte string if possible.
13611
13612 2003-03-09 David Kastrup <dak@gnu.org>
13613
13614 * process.c (read_process_output): We have allocated enough space
13615 for readmax and carryover, so actually use the alloted space.
13616
13617 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13618
13619 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13620 toolkit scrollbar click.
13621
13622 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13623 for USE_GTK.
13624 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13625 also.
13626 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13627 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13628
13629 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13630
13631 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13632 (xg_tool_bar_item_expose_callback): New function.
13633 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13634 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13635 on the tool bar widget.
13636 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13637 to expose on the tool bar item widgets.
13638
13639 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13640
13641 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13642 struct image* when deciding to update (struct image* may have been
13643 deleted from the image cache).
13644
13645 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13646 the event isn't for a frame (i.e. for dialogs).
13647
13648 2003-03-07 Kenichi Handa <handa@m17n.org>
13649
13650 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13651 composition components reaches the limit, terminate composing.
13652 (COMPOSITION_OK): New macro.
13653 (detect_coding_iso2022): Use it if an escape sequence for
13654 composition is found.
13655 (coding_restore_composition): Adjust the number of composition
13656 components if it is not sane.
13657
13658 2003-03-06 Juanma Barranquero <lektu@terra.es>
13659
13660 * w32term.h (struct w32_display_info): Add xrdb member to support
13661 passing resources via -xrm on Windows.
13662
13663 * w32term.c (w32_make_rdb): New function.
13664 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13665 struct. Delete leftover code.
13666
13667 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13668 for resources passed on the command line.
13669
13670 * w32reg.c (w32_get_rdb_resource): New function.
13671 (x_get_string_resource): Use it, so resources passed with -xrm
13672 supercede the ones in the registry.
13673
13674 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13675
13676 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13677 instead of x_top_window_to_frame.
13678
13679 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13680
13681 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13682 when restarting Emacs.
13683
13684 2003-03-03 Richard M. Stallman <rms@gnu.org>
13685
13686 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13687 to run kill-buffer-query-functions.
13688 (Qkill_buffer_query_functions): New var.
13689 (syms_of_buffer): Init and staticpro it.
13690
13691 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13692
13693 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13694
13695 2003-02-25 Kim F. Storm <storm@cua.dk>
13696
13697 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13698 If centering point failed to make whole line visible and vscroll
13699 is non-zero, disable vscroll and try centering point again.
13700
13701 * lread.c (read1): Accept `single space' syntax like (? x).
13702
13703 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13704
13705 * keyboard.c (cancel_hourglass_unwind): Surround with
13706 #ifdef HAVE_X_WINDOWS
13707
13708 2003-02-25 Kenichi Handa <handa@m17n.org>
13709
13710 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13711 process only when "subprocesses" is defined.
13712
13713 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13714
13715 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13716
13717 2003-02-24 Juanma Barranquero <lektu@terra.es>
13718
13719 * callint.c (fix_command): Declare as static void and move before
13720 Fcall_interactively.
13721
13722 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13723 (syms_of_xdisp): Don't initialize Qwhen.
13724
13725 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13726
13727 * keyboard.c (cancel_hourglass_unwind): New function.
13728 (command_loop_1): Cancel hourglass with unwind-protect.
13729
13730 2003-02-23 Richard M. Stallman <rms@gnu.org>
13731
13732 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13733 Detect (when ... (region-beginning)) etc.
13734 (Fcall_interactively): Call fix_command.
13735 (Qif, Qwhen): New variables.
13736 (syms_of_callint): Init and staticpro them.
13737
13738 * regex.c (print_partial_compiled_pattern): Output to stderr.
13739
13740 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13741
13742 * dired.c (directory_files_internal): Don't expand directory.
13743 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13744 instead. From Lars Hansen <larsh@math.ku.dk>.
13745
13746 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13747
13748 * fns.c (string_to_multibyte): Remove unused var i.
13749 (Flanginfo): Fix int/Lisp_Object mixup.
13750 (void_call2): New fun.
13751 (Fmap_char_table): Use it in place of call2.
13752
13753 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13754
13755 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13756
13757 * keymap.c (copy_keymap_1): Make it static.
13758
13759 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13760
13761 2003-02-22 David Ponce <david@dponce.com>
13762
13763 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13764
13765 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13766
13767 * process.h: Removed subtty field from struct Lisp_Process.
13768
13769 * process.c (create_process): Remove setting of subtty.
13770 (emacs_get_tty_pgrp): New function.
13771 (Fprocess_running_child_p, process_send_signal):
13772 Call emacs_get_tty_pgrp instead of ioctl.
13773 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13774
13775 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13776
13777 * keymap.c (Fdefine_key): Doc fix.
13778
13779 2003-02-21 Juanma Barranquero <lektu@terra.es>
13780
13781 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13782
13783 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13784 POLLING_PROBLEM_IN_SELECT.
13785
13786 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13787 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13788
13789 * s/hpux10-20.h: New file.
13790
13791 * process.c (wait_reading_process_input):
13792 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13793
13794 2003-02-20 Kenichi Handa <handa@m17n.org>
13795
13796 * fontset.c (check_fontset_name): If NAME is nil, return the
13797 default fontset.
13798 (override_font_info): New function.
13799 (Fset_fontset_font): Document that NAME nil means the default fontset.
13800 (Ffontset_info): If FONTSET is not the default fontset, merge
13801 FONTSET onto the copy of the default fontset, and work on that
13802 copy. Document that NAME nil means the default fontset.
13803 (Ffontset_font): Document that NAME nil means the default fontset.
13804
13805 * process.c (setup_process_coding_systems): If the process's
13806 in/out descriptor is -1, do nothing.
13807
13808 2003-02-19 Andreas Schwab <schwab@suse.de>
13809
13810 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13811 Add prototypes.
13812
13813 2003-02-19 Kenichi Handa <handa@m17n.org>
13814
13815 * xfaces.c (try_alternative_families): Try all scalable fonts if
13816 Vscalable_fonts_allowed is not Qt.
13817
13818 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13819
13820 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13821
13822 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13823
13824 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13825 names.
13826
13827 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13828 (sorted_font_list): Move allocation of struct font_name to
13829 x_face_list_fonts.
13830 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13831 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13832
13833 2003-02-18 Kim F. Storm <storm@cua.dk>
13834
13835 * lread.c (read1): Fix last change.
13836 "`" is not always special. Allow "?" after a character constant.
13837
13838 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13839
13840 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13841
13842 2003-02-18 Andreas Schwab <schwab@suse.de>
13843
13844 * window.c (window_scroll_pixel_based): Move outside a
13845 multi-glyph character before setting new window start.
13846
13847 * xdisp.c (in_display_vector_p): New function.
13848 * dispextern.h (in_display_vector_p): Declare.
13849
13850 2003-02-18 Kim F. Storm <storm@cua.dk>
13851
13852 * lread.c (read1): Fix and relax read syntax.
13853 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13854 Only recognize "," after dotted-pair dot if inside backquote.
13855 Never include "`" or "," (inside backquote) in a symbol.
13856 Allow dotted-pair dot after a character constant.
13857 Allow "`" and "," (inside backquote) after a character constant.
13858
13859 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13860
13861 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13862 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13863 icons. Set name of tool bar to emacs-toolbar.
13864 (update_frame_tool_bar): Connect expose event to
13865 xg_tool_bar_expose_callback.
13866
13867 2003-02-17 Richard M. Stallman <rms@gnu.org>
13868
13869 * keyboard.c (this_command_key_count_reset): New variable.
13870 Initiatize to 0 where this_command_key_count is set.
13871 (read_char): Save and restore this_command_key_count_reset
13872 around input method code.
13873 (read_char): If this_command_key_count_reset, echo reread commands.
13874 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13875
13876 2003-02-17 Kenichi Handa <handa@m17n.org>
13877
13878 * fns.c (string_to_multibyte): Always return a multibyte string.
13879
13880 2003-02-16 Jason Rumney <jasonr@gnu.org>
13881
13882 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13883 Negative max_fonts parameter means list all.
13884
13885 2003-02-14 Dave Love <fx@gnu.org>
13886
13887 * fns.c (Flanginfo): Doc fix.
13888
13889 2003-02-13 Kim F. Storm <storm@cua.dk>
13890
13891 * lread.c (read_escape): Interpret \s as a SPACE character, except
13892 for \s-X in a character constant which still is the super modifier.
13893 (read1): Signal an `invalid read syntax' error if a character
13894 constant is immediately followed by a digit or symbol character.
13895
13896 * search.c (Fmatch_data): Doc fix. Explicitly state that
13897 match-data is undefined if last search failed.
13898
13899 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
13900 All uses changed.
13901
13902 2003-02-12 Juanma Barranquero <lektu@terra.es>
13903
13904 * eval.c (Fdefmacro): Fix typo.
13905
13906 2003-02-12 Kim F. Storm <storm@cua.dk>
13907
13908 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
13909 macro is a string, convert meta modifiers in string when copying
13910 the string into a vector.
13911
13912 2003-02-11 Kim F. Storm <storm@cua.dk>
13913
13914 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
13915
13916 2003-02-11 Kenichi Handa <handa@m17n.org>
13917
13918 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
13919
13920 2003-02-10 Kim F. Storm <storm@cua.dk>
13921
13922 * process.c: Doc fixes.
13923 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
13924
13925 2003-02-10 Kenichi Handa <handa@m17n.org>
13926
13927 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
13928
13929 * process.c (QCfilter_multibyte): New variable.
13930 (setup_process_coding_systems): New function.
13931 (Fset_process_buffer, Fset_process_filter):
13932 Call setup_process_coding_systems.
13933 (Fstart_process): Initialize the member `filter_multibyte' of
13934 struct Lisp_Process.
13935 (create_process): Call setup_process_coding_systems.
13936 (Fmake_network_process): New keyward `:filter-multibyte'.
13937 Initialize the member `filter_multibyte' of struct Lisp_Process.
13938 Call setup_process_coding_systems.
13939 (server_accept_connection): Call setup_process_coding_systems.
13940 (read_process_output): If the process has a filter, decide the
13941 multibyteness of a string to given to the filter by
13942 `filter_multibyte' member of the process. If the process doesn't
13943 have a filter and the result of conversion is unibyte, use
13944 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
13945 multibyte form.
13946 (Fset_process_coding_system): Call setup_process_coding_systems.
13947 (Fset_process_filter_multibyte): New function.
13948 (Fprocess_filter_multibyte_p): New function.
13949 (syms_of_process): Intern and staticpro QCfilter_multibyte.
13950 Defsubr Sset_process_filter_multibyte and
13951 Sprocess_filter_multibyte_p.
13952
13953 * process.h (struct Lisp_Process): New member filter_multibyte.
13954
13955 * lisp.h (setup_process_coding_systems): Add prototype.
13956
13957 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
13958 process, update coding systems for the process.
13959
13960 2003-02-09 Kenichi Handa <handa@m17n.org>
13961
13962 * fns.c (string_to_multibyte): New function.
13963 (Fstring_to_multibyte): New function.
13964 (syms_of_fns): Defsubr it.
13965
13966 2003-02-08 Andreas Schwab <schwab@suse.de>
13967
13968 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13969 instead of the substitution.
13970
13971 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13972
13973 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13974
13975 * xmenu.c (menu_position_func): Adjust menu popup position so that
13976 the menu is fully visible.
13977
13978 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13979
13980 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13981 (x_make_frame_invisible, x_wm_set_icon_position):
13982 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13983
13984 * xfns.c (x_set_name, x_set_title): Ditto.
13985
13986 2003-02-04 Richard M. Stallman <rms@gnu.org>
13987
13988 * keyboard.c (echo_now): Update before_command_echo_length.
13989 (Freset_this_command_lengths): Reset this_command_key_count etc.
13990 immediately rather than arranging to do it later.
13991 (before_command_key_count_1, before_command_echo_length_1)
13992 (before_command_restore_flag): Vars deleted.
13993 (add_command_key): Don't handle before_command_restore_flag.
13994 (read_char, record_menu_key): Don't update before_command_key_count or
13995 before_command_echo_length.
13996 (read_char): Don't handle before_command_restore_flag.
13997
13998 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13999 in direct-output clauses if it wouldn't be called in the ordinary case.
14000
14001 2003-02-04 Kim F. Storm <storm@cua.dk>
14002
14003 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14004
14005 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14006
14007 * gtkutil.c (remove_from_container): Copying list is not needed.
14008 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14009 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14010 on list returned from gtk_container_get_children to avoid memory leak.
14011
14012 2003-02-01 Jason Rumney <jasonr@gnu.org>
14013
14014 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14015 local malloc.
14016 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14017 definitions in xpm.h.
14018 (init_xpm_functions): New function.
14019 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14020 (init_external_image_libraries): Try to load libXpm.dll.
14021
14022 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14023 timestamp.
14024
14025 2003-01-31 Dave Love <fx@gnu.org>
14026
14027 * syntax.c (Fskip_chars_forward)
14028 (open-paren-in-column-0-is-defun-start): Doc fix.
14029
14030 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14031
14032 * fileio.c: Support // at start of name for Cygwin (just added proper
14033 preprocessor tests).
14034
14035 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14036
14037 * Makefile.in: Use @EXEEXT@ for Cygwin.
14038
14039 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14040
14041 * s/cygwin.h: Added for Cygwin port.
14042
14043 2003-01-31 Juanma Barranquero <lektu@terra.es>
14044
14045 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14046 when including gif_lib.h.
14047 (init_gif_functions, init_tiff_functions): New functions.
14048 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14049 Windows. Disable color table lookups. Call library functions
14050 through pointers determined at runtime.
14051 (init_external_image_libraries): Try to load libungif.dll and
14052 libtiff.dll.
14053
14054 2003-01-31 Kenichi Handa <handa@m17n.org>
14055
14056 * xdisp.c (SKIP_GLYPHS): New macro.
14057 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14058
14059 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14060
14061 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14062
14063 2003-01-30 Dave Love <fx@gnu.org>
14064
14065 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14066 (Fgarbage_collect): Use them.
14067 (init_alloc, syms_of_alloc): Set them up.
14068
14069 2003-01-30 Juanma Barranquero <lektu@terra.es>
14070
14071 * w32fns.c (init_external_image_libraries): Add missing operator.
14072
14073 2003-01-29 Jason Rumney <jasonr@gnu.org>
14074
14075 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14076 an alternative name for jpeg.dll.
14077
14078 2003-01-29 Kenichi Handa <handa@m17n.org>
14079
14080 * xdisp.c (set_cursor_from_row): Pay attention to string display
14081 properties.
14082
14083 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14084
14085 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14086 <escape>.
14087 (keycode_to_xkeysym_table): Reformat and add more comments.
14088 (XTread_socket): Drop special case for backspace.
14089
14090 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14091
14092 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14093 values in old-style RGB specs.
14094
14095 2003-01-27 Juanma Barranquero <lektu@terra.es>
14096
14097 * w32fns.c (init_external_image_libraries): Try alternate names for the
14098 jpeg dll.
14099
14100 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14101
14102 * gtkutil.c (create_dialog, xg_separator_p)
14103 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14104 before calling strcmp or strlen.
14105
14106 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14107
14108 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14109 and handle image load failure.
14110
14111 2003-01-26 Jason Rumney <jasonr@gnu.org>
14112
14113 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14114 New functions.
14115 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14116 Disable color table lookups. Call jpeg library functions
14117 through pointers determined at runtime.
14118 (init_external_image_libraries): Try to load jpeg.dll.
14119
14120 2003-01-25 Richard M. Stallman <rms@gnu.org>
14121
14122 * lisp.h: Declare format2 instead of format1.
14123
14124 * fileio.c (barf_or_query_if_file_exists):
14125 Call format2 instead of format1.
14126
14127 * editfns.c (format2): New function, replaces format1
14128 but takes exactly two Lisp Objects as format args.
14129
14130 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14131
14132 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14133
14134 * xterm.h: Change to return value of x_dispatch_event to int.
14135
14136 * xterm.c (x_filter_event): New function.
14137 (event_handler_gdk, XTread_socket): Call x_filter_event.
14138 (x_dispatch_event): Change to return value of finish.
14139 (event_handler_gdk): Use return value from x_dispatch_event.
14140
14141 * xfns.c (x_window): Call create_frame_xic for GTK version to
14142 initialize input methods.
14143
14144 * gtkutil.h: Add (void) prototypes.
14145
14146 * gtkutil.c (create_menus): Remove code that puts the help menu to
14147 the right.
14148
14149 2003-01-25 Jason Rumney <jasonr@gnu.org>
14150
14151 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14152 [HAVE_PNG]: Sync with xfns.c version.
14153 (png_load): Adjust colors for Windows. Use Windows
14154 bitmaps. Disable color table lookups.
14155 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14156 (init_png_functions): New function.
14157 (png_read_from_memory, png_load): Call png library functions
14158 through pointers determined at runtime.
14159 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14160 (init_external_image_libraries): New function.
14161 (init_xfns): Call it.
14162
14163 2003-01-24 Andreas Schwab <schwab@suse.de>
14164
14165 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14166
14167 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14168
14169 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14170 of static initializer.
14171
14172 2003-01-24 Dave Love <fx@gnu.org>
14173
14174 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14175 architectures.
14176
14177 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14178 Use __alignof__.
14179
14180 2003-01-24 Kenichi Handa <handa@m17n.org>
14181
14182 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14183 It it is nonzero, don't pretend that an invisible area doesn't exist.
14184 (command_loop_1): Call adjust_point_for_property with proper
14185 second arg.
14186
14187 2003-01-22 Jason Rumney <jasonr@gnu.org>
14188
14189 Sync changes with xterm.c and xfns.c.
14190
14191 * w32term.c (x_draw_glyph_string_foreground)
14192 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14193
14194 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14195 phys_cursor's hpos is overwritten. This is still not completely
14196 correct, as it doesn't really make sense to use hpos at all to
14197 get the cursor glyph (as that is relative to the width of the
14198 characters on the line, which may have changed during the update).
14199
14200 * w32term.c (notice_overwritten_cursor): Handle the special case
14201 of the cursor being in the first blank non-text line at the
14202 end of a window.
14203
14204 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14205 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14206 Compute from the x position returned by x_draw_glyphs.
14207
14208 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14209 except for NO_CURSOR and system caret, to make phys_cursor_width
14210 contain what its name suggests.
14211 (notice_overwritten_cursor): Consider the cursor image erased if
14212 the output area intersects the cursor image in y-direction.
14213
14214 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14215 note_mode_line_highlight and extend.
14216
14217 * w32term.c (last_window): New variable.
14218 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14219 (note_mouse_movement): Remove reimplemented code in #if 0.
14220
14221 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14222 not update_mode_lines, and always set it to 1.
14223
14224 2003-01-21 Jason Rumney <jasonr@gnu.org>
14225
14226 * w32fns.c (IDC_HAND): Define it if system headers don't.
14227
14228 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14229
14230 * w32term.h (struct w32_output): New member hand_cursor.
14231 (WM_EMACS_SETCURSOR): New message definition.
14232
14233 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14234 function w32_define_cursor.
14235 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14236 position, change member name output_data.x to output_data.w32 and
14237 add function w32_define_cursor.
14238 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14239 and change member name output_data.x to output_data.w32.
14240 (w32_initialize_display_info):
14241 Setup dpyinfo->vertical_scroll_bar_cursor.
14242
14243 * w32fns.c (Vx_hand_shape): New variable.
14244 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14245 WM_EMACS_SETCURSOR.
14246 (x-create-frame): Setup Cursor types.
14247
14248 2003-01-21 David Ponce <david@dponce.com>
14249
14250 * w32term.c (w32_encode_char): For DIM=1 charset, set
14251 ccl->reg[2] to -1 before calling ccl_driver.
14252 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14253 <handa@m17n.org> on 2002-09-30.)
14254 (w32_draw_relief_rect): Declare all args.
14255 (w32_define_cursor): New.
14256
14257 * w32fns.c (w32_load_cursor): New function.
14258 (w32_init_class): Use it.
14259 (x_put_x_image): Declare all args.
14260
14261 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14262
14263 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14264
14265 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14266
14267 * gtkutil.c: Must include stdio.h before termhooks.h
14268
14269 2003-01-21 Dave Love <fx@gnu.org>
14270
14271 * alloc.c (Fgc_status): Print zombie list.
14272 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14273 Fix assignment of zombies.
14274 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14275 Don't take car of non-cons.
14276
14277 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14278
14279 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14280
14281 2003-01-20 David Ponce <david@dponce.com>
14282
14283 * w32menu.c (digest_single_submenu): Declare all args.
14284
14285 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14286 changes in xmenu.c:
14287
14288 (parse_single_submenu): Use individual keymap's prompt
14289 string as pane name, if there is one.
14290 (set_frame_menubar): Save menu_items_n_panes from each call to
14291 parse_single_submenu and use it when calling digest_single_submenu.
14292
14293 2003-01-20 Steven Tamm <steventamm@mac.com>
14294
14295 * macterm.c (XTread_socket): Check for valid, visible window
14296 before sending a scroll-wheel event.
14297
14298 2003-01-20 Richard M. Stallman <rms@gnu.org>
14299
14300 * xdisp.c (redisplay_window): If mini window's buffer is not
14301 a minibuffer, then redisplay it like other windows.
14302
14303 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14304
14305 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14306 external tool bar before setting tool bar height.
14307
14308 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14309
14310 * xterm.c (handle_one_xevent): Surround popup_activated
14311 with #ifdef:s for non-toolkit version.
14312
14313 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14314 (gtkutil.o): New file.
14315 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14316 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14317
14318 * gtkutil.c: New file for GTK version.
14319
14320 * gtkutil.h: New file for GTK version.
14321
14322 * xterm.h: Add xt_or_gtk_widget.
14323 Include gtk files for USE_GTK.
14324 (struct x_output): Add toolbar_height.
14325 (struct x_output): Add GTK widgets and Gdk size_hints.
14326 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14327 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14328 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14329
14330 * xterm.c: Include gtkutil.h for USE_GTK.
14331 (free_frame_menubar): Declare extern void for USE_GTK.
14332 (note_mouse_highlight): Check popup_activated for USE_GTK.
14333 (xt_action_hook): Don't compile if USE_GTK.
14334 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14335 (xg_scroll_callback): New function.
14336 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14337 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14338 for USE_GTK.
14339 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14340 xg_show_scroll_bar for USE_GTK.
14341 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14342 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14343 (event_handler_gdk): New function for USE_GTK.
14344 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14345 (handle_one_xevent): Make sure widget is mapped before
14346 calling x_real_positions for USE_GTK.
14347 (XTread_socket): Add GTK event loop for USE_GTK.
14348 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14349 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14350 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14351 (x_iconify_frame): Add code for USE_GTK.
14352 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14353 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14354 is in gtkutil.c.
14355 (x_term_init): Add initialization for GTK.
14356 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14357
14358 * xmenu.c: Include gtkutil.h for USE_GTK.
14359 (Fx_popup_menu): Use current position if x and y is NIL.
14360 (single_menu_item, single_menu_item, Fx_popup_dialog):
14361 Check for USE_GTK.
14362 (popup_widget_loop): New function for USE_GTK.
14363 (x_activate_menubar): Add code for USE_GTK.
14364 (popup_activate_callback, popup_deactivate_callback)
14365 (menu_highlight_callback, menubar_selection_callback):
14366 Add USE_GTK versions.
14367 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14368 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14369 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14370 is in gtkutil.c.
14371 (popup_selection_callback): New version for USE_GTK.
14372 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14373 one USE_X_TOOLKIT version.
14374 (xmenu_show): Call create_and_show_popup_menu.
14375 (dialog_selection_callback): New version for USE_GTK.
14376 (create_and_show_dialog): New fuction, one USE_GTK version and
14377 one USE_X_TOOLKIT version.
14378 (xdialog_show): Call create_and_show_dialog.
14379
14380 * xfns.c: Include gtkutil for USE_GTK.
14381 (x_window_to_frame, x_any_window_to_frame)
14382 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14383 (x_top_window_to_frame): Add code for USE_GTK.
14384 (x_set_background_color): Call xg_set_background_color for GTK.
14385 (x_set_menu_bar_lines): Check for USE_GTK.
14386 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14387 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14388 (x_window): Call xg_create_frame_widgets for USE_GTK.
14389 (Fx_create_frame): Check for USE_GTK
14390 (Fx_file_dialog): New implementation for USE_GTK.
14391
14392 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14393 (update_menu_bar): Add check for USE_GTK.
14394 (update_tool_bar): Add check for USE_GTK and external tool bar.
14395 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14396 (redisplay_internal): Add check for USE_GTK and popup_activated.
14397 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14398 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14399 (display_menu_bar): Add check for USE_GTK
14400
14401 * lisp.h (Vx_resource_name): Declare extern.
14402
14403 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14404 for USE_GTK.
14405 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14406
14407 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14408 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14409 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14410
14411 * fileio.c (Fread_file_name): Add check for USE_GTK.
14412
14413 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14414 Add check for USE_GTK.
14415
14416 * config.in: Added HAVE_GTK
14417
14418 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14419
14420 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14421
14422 * charset.h (Funibyte_char_to_multibyte): Export.
14423
14424 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14425
14426 * xmenu.c (mouse_position_for_popup): New function.
14427 (Fx_popup_menu): Call mouse_position_for_popup for X and
14428 mouse_position_hook for others.
14429
14430 2003-01-17 Kim F. Storm <storm@cua.dk>
14431
14432 * editfns.c (Finsert): Mention `string-make-multibyte' and
14433 `string-as-multibyte' in doc string.
14434
14435 2003-01-17 Kenichi Handa <handa@m17n.org>
14436
14437 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14438
14439 * editfns.c (Fformat): Convert an unibyte char argument that is
14440 formatted by "%c" to multibyte if the total result must be a
14441 multibyte string.
14442
14443 2003-01-16 Kim F. Storm <storm@cua.dk>
14444
14445 * process.c (set-process-filter): Document unibyte/multibyte-ness
14446 of string argument.
14447
14448 2003-01-16 Kenichi Handa <handa@m17n.org>
14449
14450 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14451
14452 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14453 (re_search_2): Likewise.
14454
14455 2003-01-15 Kenichi Handa <handa@m17n.org>
14456
14457 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14458 buffer is unibyte.
14459
14460 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14461
14462 * fns.c (Fsubstring): Clarify doc string.
14463
14464 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14465 (Fprevious_char_property_change)
14466 (Fnext_single_char_property_change)
14467 (Fprevious_single_char_property_change, Fnext_property_change)
14468 (Fnext_single_property_change, Fprevious_property_change)
14469 (Fprevious_single_property_change, Fadd_text_properties)
14470 (Fput_text_property, Fset_text_properties)
14471 (Fremove_text_properties, Fremove_list_of_text_properties)
14472 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14473
14474 2003-01-14 Kim F. Storm <storm@cua.dk>
14475
14476 * process.h (struct Lisp_Process): New member plist replaces old
14477 member private_vars. All uses changed.
14478
14479 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14480 (QCplist): Rename from QCvars. Change all uses.
14481 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14482 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14483 (syms_of_process): Intern, staticpro, defsubr these.
14484 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14485
14486 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14487
14488 * m/delta.h: Remove (obsolete).
14489
14490 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14491
14492 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14493 behaviour in front of symlinks.
14494 (Fdelete_file): Raise an error on directories.
14495
14496 2003-01-13 Dave Love <fx@gnu.org>
14497
14498 * fns.c (Freverse): Use QUIT.
14499
14500 2003-01-13 Richard M. Stallman <rms@gnu.org>
14501
14502 * minibuf.c (minibuffer_completion_contents):
14503 Error if point is inside prompt.
14504
14505 * keyboard.c (command_loop_1): Don't redisplay directly
14506 if there's a post-command-hook.
14507
14508 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14509 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14510
14511 2003-01-12 Kim F. Storm <storm@cua.dk>
14512
14513 * process.h (struct Lisp_Process): New member private_vars.
14514
14515 * process.c (QCvars): New variable.
14516 (syms_of_process): Intern and staticpro it.
14517 (Fset_process_contact): Removed function.
14518 (Fprocess_variable, Fset_process_variable): New functions.
14519 (syms_of_process): Defsubr them.
14520 (Fstart_process): Initialize private_vars plist to nil.
14521 (Fmake_network_process): New arg :vars to setup the private
14522 variables for new network process.
14523 (server_accept_connection): Copy server's private variables to
14524 client process.
14525
14526 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14527 crashes). Code rewritten and simplified. Now directly aligns the
14528 pointer and recalculates pure_bytes_used, rather than aligning the
14529 size and adjusting the pointer.
14530
14531 2003-01-11 Kim F. Storm <storm@cua.dk>
14532
14533 * process.c (Fset_process_contact): New function.
14534 (syms_of_process): defsubr it.
14535 (make-network-process): Update doc.
14536
14537 2003-01-10 Andreas Schwab <schwab@suse.de>
14538
14539 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14540 Reported by Berthold Gunreben <b.gunreben@web.de>.
14541
14542 2003-01-10 Dave Love <fx@gnu.org>
14543
14544 * composite.c (syms_of_composite): Make composition_hash_table weak.
14545
14546 2003-01-09 Kim F. Storm <storm@cua.dk>
14547
14548 * process.c (Fmake_network_process): Convert new port number
14549 to host byte order for `:service t' case. From Mario Lang.
14550
14551 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14552
14553 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14554 instead of XtAppProcessEvent.
14555
14556 * xterm.c (handle_one_xevent): New function.
14557 (x_dispatch_event): New function.
14558 (XTread_socket): Call handle_one_xevent.
14559
14560 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14561
14562 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14563 call XQueryPointer to get coordinates.
14564 (popup_get_selection): Do not set popup_activated_flag to zero,
14565 let popup_deactivate_callback do that. Needed for Motif.
14566 Call x_dispatch_event instead of XtDispatchEvent.
14567 (xmenu_show): Calculate root coordinate from frame top/left position.
14568
14569 2003-01-08 Kim F. Storm <storm@cua.dk>
14570
14571 * process.c (server_accept_connection): Fix recording of new
14572 connection's local address in :local property of contact info.
14573 (Fmake_network_process): Record local network address for new
14574 client processes in :local property of contact info.
14575 (format-network-address): Add arg OMIT-PORT. Change callers.
14576
14577 2003-01-07 Dave Love <fx@gnu.org>
14578
14579 * Makefile.in (fns.o): Depend on coding.h.
14580
14581 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14582
14583 * minibuf.c (Fread_variable): Doc fix.
14584
14585 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14586 use the same test as for custom-variable-p.
14587
14588 2003-01-05 Richard M. Stallman <rms@gnu.org>
14589
14590 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14591 Count LAST_LINE_MISFIT in scroll margin for end of window.
14592 Move label too_near_end before setting SCROLL_MARGIN_POS.
14593 Set LAST_LINE_MISFIT before jumping there.
14594
14595 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14596 scroll_conservatively case. If scrolling that much doesn't change
14597 STARTP, move it down one line.
14598
14599 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14600 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14601
14602 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14603 selected frame.
14604
14605 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14606 (syms_of_keymap): Staticpro them.
14607 (Fapropos_internal): Initialize them and clear them out.
14608 Don't GCPRO them.
14609
14610 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14611 Doc fixes.
14612
14613 * lisp.h: New misc type Lisp_Save_Value.
14614 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14615 (XSAVE_VALUE): New macro.
14616 (struct Lisp_Save_Value): New data type.
14617 (union Lisp_Misc): Add u_save_value alternative.
14618 (make_save_value): Declare.
14619
14620 * alloc.c (make_save_value): New function.
14621
14622 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14623 (x_catch_errors_unwind): Call XSync.
14624
14625 2003-01-01 Richard M. Stallman <rms@gnu.org>
14626
14627 * window.c (window_scroll_pixel_based): Partially undo last change.
14628
14629 * keyboard.c (command_loop_1): Call adjust_point_for_property
14630 in direct action cases for Qforward_char and Qbackward_char.
14631 Set already_adjusted so it won't be done twice.
14632
14633 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14634
14635 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14636 type definition of size_t.
14637
14638 2003-01-02 Steven Tamm <steventamm@mac.com>
14639
14640 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14641 distinguish Carbon GUI builds from X11 builds on darwin.
14642
14643 2002-12-30 Steven Tamm <steventamm@mac.com>
14644
14645 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14646 to default to t.
14647
14648 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14649
14650 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14651
14652 2002-12-28 Steven Tamm <steventamm@mac.com>
14653
14654 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14655 allow building in a different directory than source. Uses some
14656 GNU Make extensions, but there is no other make on Mac OS X.
14657
14658 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14659
14660 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14661 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14662 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14663 (Fstring_to_number): Mention the returned value in the doc strings.
14664
14665 2002-12-23 Richard M. Stallman <rms@gnu.org>
14666
14667 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14668 <scroll-down-aggressively>: Doc fix.
14669
14670 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14671 string as pane name, if there is one.
14672 (set_frame_menubar): Save menu_items_n_panes from each call to
14673 parse_single_submenu and use it when calling digest_single_submenu.
14674
14675 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14676 Don't try to make last line fully visible if it is past end of window.
14677
14678 2002-12-22 Steven Tamm <steventamm@mac.com>
14679
14680 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14681 (mac_menu_show): Add support for hierarchical popup menus.
14682 (add_menu_item): Remove indentation support.
14683 (fill_submenu, fill_menu): Create hierarchical menus
14684 instead of using indentation.
14685
14686 2002-12-22 Richard M. Stallman <rms@gnu.org>
14687
14688 * xdisp.c (try_cursor_movement): Don't call try_window here.
14689 (redisplay_window): Never redisplay minibuffer when inactive.
14690
14691 * window.c (select_window_1): Undo 9/21 change.
14692
14693 2002-12-22 Steven Tamm <steventamm@mac.com>
14694
14695 * macterm.c (XTread_socket): Call KeyTranslate for control and
14696 meta to deal correctly shifted non-alpha characters, like C-S-5
14697 being treated like C-%. Do not look for shift key to deal
14698 with masking off control-key with mac-reverse-ctrl-meta.
14699
14700 2002-12-21 Richard M. Stallman <rms@gnu.org>
14701
14702 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14703 If it is non-nil, run timers. Use an unwind-protect to requeue
14704 the events that were read ahead.
14705 (popup_get_selection_unwind): New subroutine.
14706 (popup_get_selection_queue): File-scope variable now holds that queue.
14707 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14708 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14709 Use an unwind-protect to pop down the dialog box.
14710 (xdialog_show_unwind): New subroutine implements that.
14711
14712 * xdisp.c (row_containing_pos): Change exit test using last_y.
14713 (try_window_id): Abort if row_containing_pos returns null.
14714
14715 * lread.c (load_error_handler): New function.
14716 (Fload): Handle errors in Fsubstitute_in_file_name.
14717 Don't expect Fsignal to return.
14718
14719 * eval.c: Errors and throws work right with interrupt blocking.
14720 (struct catchtag): New elt interrupt_input_blocked.
14721 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14722 (internal_catch, Fcondition_case, internal_condition_case)
14723 (internal_condition_case_1, internal_condition_case_2): Save it.
14724 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14725
14726 * editfns.c (Fformat): Add parens.
14727
14728 * dired.c (file_name_completion): Fix that change.
14729 Delete special quit-handling code; just use QUIT.
14730
14731 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14732
14733 * dired.c (file_name_completion): Close directory on error
14734 just as in directory_files_internal.
14735
14736 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14737
14738 * window.c (Fset_window_configuration): Set old_point to correct
14739 value when new_current_buffer == current_buffer.
14740
14741 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14742
14743 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14744 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14745 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14746
14747 These changes were in part based upon suggestions made by Peter
14748 'Luna' Runestig [peter@runestig.com].
14749
14750 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14751 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14752 (g_b_init_get_sid_identifier_authority ): Add several static
14753 global variables.
14754
14755 * w32.c (globals_of_w32): New function. Used to initialize those
14756 global variables that must always be initialized on startup even
14757 when the global variable initialized is non zero. Its primary
14758 purpose at this time is to set the global variables
14759 g_b_init_is_windows_9x, g_b_init_open_process_token,
14760 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14761 g_b_init_get_sid_identifier_authority to 0 on startup.
14762 Called from main.
14763
14764 * w32.c (is_windows_9x): Perform initialization only if
14765 g_b_init_is_windows_9x is equal to 0. On initialization set
14766 g_b_init_is_windows_9x equal to 1.
14767
14768 * w32.c (open_process_token): Perform initialization only if
14769 g_b_init_open_process_token is equal to 0. On initialization set
14770 g_b_init_open_process_token equal to 1.
14771
14772 * w32.c (get_token_information): Perform initialization only if
14773 g_b_init_get_token_information is equal to 0. On initialization
14774 set g_b_init_get_token_information equal to 1.
14775
14776 * w32.c (lookup_account_sid): Perform initialization only if
14777 g_b_init_lookup_account_sid is equal to 0. On initialization
14778 set g_b_init_lookup_account_sid equal to 1.
14779
14780 * w32.c (get_sid_identifier_authority): Perform initialization
14781 only if g_b_init_get_sid_identifier_authority is equal to 0.
14782 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14783
14784 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14785 those global variables that must always be initialized on startup
14786 even when the global variable initialized is non zero.
14787 Its primary purpose at this time is to initialize the global variable
14788 track_mouse_event_fn.
14789
14790 * w32fns.c (w32_wnd_proc): Remove initialization of
14791 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14792
14793 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14794
14795 * w32menu.c (globals_of_w32menu): New function. Used to
14796 initialize those global variables that must always be initialized
14797 on startup even when the global variable initialized is non zero.
14798 Its primary purpose at this time is to initialize the global
14799 variables get_menu_item_info and set_menu_item_info.
14800
14801 * w32menu.c (initialize_frame_menubar): Remove initialization of
14802 get_menu_item_info and set_menu_item_info.
14803
14804 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14805
14806 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14807 Declare them.
14808
14809 * emacs.c (main): Call globals_of_w32 prior to calling
14810 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14811 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14812 is defined.
14813
14814 * w32term.c (x_update_window_begin): Fix Windows API error
14815 detected by BoundsChecker. Test to determine if
14816 w32_system_caret_hwnd is NULL prior to attempting to use
14817 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14818
14819 * w32term.c (x_update_window_end): Fix Windows API error
14820 detected by BoundsChecker. Test to determine if
14821 w32_system_caret_hwnd is NULL prior to attempting to use
14822 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14823
14824 2002-12-17 Kenichi Handa <handa@m17n.org>
14825
14826 * coding.c (coding_system_require_warning): New variable.
14827 (syms_of_coding): DEFVAR it.
14828
14829 * coding.h (coding_system_require_warning): Extern it.
14830
14831 * fileio.c (choose_write_coding_system): Even if
14832 Vcoding_system_for_write is non-nil, if
14833 coding_system_require_warning is nonzero, call
14834 Vselect_safe_coding_system_function.
14835
14836 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14837
14838 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14839 (lisp): Add font-core.
14840
14841 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14842
14843 * textprop.c (text_read_only): New arg `propval'.
14844 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14845 (verify_interval_modification): Use text_read_only's new arg.
14846
14847 2002-12-13 Kenichi Handa <handa@m17n.org>
14848
14849 * coding.c (Funencodable_char_position): Set pend correctly.
14850
14851 2002-12-12 Jason Rumney <jasonr@gnu.org>
14852
14853 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14854 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14855 Be more careful about when help_events are generated.
14856
14857 2002-12-12 Steven Tamm <steventamm@mac.com>
14858
14859 * macterm.c (mac_check_for_quit_char): Correctly set the
14860 modifiers of the event to 0.
14861 * mac.c (sys_select): Duplicate rfds before calling select to
14862 ensure that rfds survive the while loop.
14863
14864 2002-12-11 Kim F. Storm <storm@cua.dk>
14865
14866 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14867 row_containing_pos returned NULL.
14868
14869 2002-12-10 Steven Tamm <steventamm@mac.com>
14870
14871 * mac.c (sys_read): Fix sys_read to not call select if IO is
14872 non-blocking.
14873 (sys_select): Fix sys_select to not use a timeout larger than
14874 the one given.
14875
14876 2002-12-10 Juanma Barranquero <lektu@terra.es>
14877
14878 * editfns.c (Fformat): Use alloca, not _alloca.
14879
14880 2002-12-09 Richard M. Stallman <rms@gnu.org>
14881
14882 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14883 as the last thing.
14884
14885 2002-12-09 Dave Love <fx@gnu.org>
14886
14887 * s/sol2-8.h: Removed. (Not necessary.)
14888
14889 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14890
14891 * editfns.c (Fformat): Handle precision in string conversion
14892 specifiers like libc functions do (ie, print at most that many
14893 characters).
14894
14895 2002-12-08 Richard M. Stallman <rms@gnu.org>
14896
14897 * xdisp.c (row_containing_pos): Check more carefully
14898 whether charpos is really in the row before returning it.
14899
14900 2002-12-07 Steven Tamm <steventamm@mac.com>
14901
14902 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
14903
14904 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
14905 each stack frame. This may change as it could be time consuming.
14906
14907 * macterm.c (mac_check_for_quit_char, quit_char_comp)
14908 (init_quit_char_handler, mac_determine_quit_char_modifiers)
14909 (mac_initialize): Add code to check for pressing of quit_char
14910 in the OS event queue.
14911
14912 * mac.c (sys_select): Call mac_check_for_quit_char every second
14913 while blocking on select.
14914
14915 * mac.c (sys_read): Use sys_select to test for input first
14916 before calling read, to allow C-g to break.
14917
14918 2002-12-07 Richard M. Stallman <rms@gnu.org>
14919
14920 * minibuf.c (Fcompleting_read): Doc fix.
14921
14922 * lread.c (syms_of_lread) <load-history>: Doc fix.
14923
14924 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
14925
14926 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
14927 autoload.
14928
14929 * data.c (Fdefalias): Record in load-history redefining an autoload.
14930
14931 * alloca.c: Undo ifdef change accidentally made on 12-04.
14932
14933 2002-12-06 Francesco Potorti` <pot@gnu.org>
14934
14935 * xfns.c (png_load): Avoid double gamma correction for PNG images.
14936
14937 2002-12-04 Richard M. Stallman <rms@gnu.org>
14938
14939 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
14940
14941 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
14942
14943 * alloca.c: Don't use #error.
14944
14945 2002-12-03 Dave Love <fx@gnu.org>
14946
14947 * buffer.c (Qucs_set_table_for_input): New.
14948 (Fget_buffer_create): Use it.
14949 (Qset_buffer_major_mode_hook): Deleted.
14950 (Fset_buffer_major_mode): Revert previous change.
14951 (init_buffer_once): Intern ucs-set-table-for-input.
14952 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
14953 Add &Qucs_set_table_for_input.
14954
14955 2002-12-03 Andreas Schwab <schwab@suse.de>
14956
14957 * callint.c (Fcall_interactively): Use next_event only if less
14958 than key_count.
14959
14960 2002-12-02 Andrew Choi <akochoi@shaw.ca>
14961
14962 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14963 names to 255 characters.
14964
14965 * macterm.c (XTread_socket): If all frames have been collapsed,
14966 expand the first one before handling drag-and-drop events.
14967
14968 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14969 which is detected by autoconf.
14970
14971 2002-12-01 Steven Tamm <steventamm@mac.com>
14972
14973 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14974 offset in two hints table to allow prebinding to be redone and
14975 allow the executable to be stripped.
14976
14977 2002-11-29 Dave Love <fx@gnu.org>
14978
14979 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14980 already provided.
14981
14982 2002-11-29 Richard M. Stallman <rms@gnu.org>
14983
14984 * xdisp.c (start_display): Check more intelligently for
14985 whether the line is continued.
14986 (move_it_vertically_backward): Clear it->continuation_lines_width.
14987
14988 2002-11-28 Dave Love <fx@gnu.org>
14989
14990 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14991 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14992
14993 2002-11-27 Steven Tamm <steventamm@mac.com>
14994
14995 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14996 more descriptive error output from lread.c:Fload upon most require
14997 cycles during boostrapping.
14998
14999 2002-11-27 Jason Rumney <jasonr@gnu.org>
15000
15001 * fileio.c (Finsert_file_contents): Give a more appropriate error
15002 for files bigger than 2Gb when off_t is 32 bit.
15003
15004 * dired.c (Ffile_attributes): Don't return negative file sizes for
15005 files bigger than 2Gb when off_t is 32 bit.
15006
15007 2002-11-27 Dave Love <fx@gnu.org>
15008
15009 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15010
15011 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15012 Test GETPGRP_VOID instead.
15013 [BSD_TERMIOS]: Remove definitions (never used).
15014
15015 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15016 Don't define.
15017 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15018
15019 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15020
15021 2002-11-25 Jason Rumney <jasonr@gnu.org>
15022
15023 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15024 supported.
15025
15026 2002-11-25 Dave Love <fx@gnu.org>
15027
15028 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15029
15030 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15031
15032 2002-11-25 Andreas Schwab <schwab@suse.de>
15033
15034 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15035
15036 2002-11-24 Steven Tamm <steventamm@mac.com>
15037
15038 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15039 determine the size of pointers alloced in unexed space instead
15040 of using possibly invalid emacs_zone pointers. This fixes the
15041 binary incompatibility problems caused by updates to libSystem.B.
15042
15043 2002-11-24 Richard M. Stallman <rms@gnu.org>
15044
15045 * search.c (Fstring_match): Doc fix.
15046
15047 * callint.c (Fcall_interactively): If a command fails because
15048 `*' detects a read-only buffer, but RECORD_FLAG is set,
15049 record it anyway if the args don't actually do tty input.
15050
15051 2002-11-22 Dave Love <fx@gnu.org>
15052
15053 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15054
15055 * keyboard.c (interrupt_signal): Provide forward declaration.
15056 (kbd_buffer_store_event): Don't declare interrupt_signal.
15057
15058 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15059
15060 2002-11-21 Richard M. Stallman <rms@gnu.org>
15061
15062 * eval.c (interactive_p): Skip any number of bytecode
15063 and special form frames, in any order.
15064
15065 2002-11-20 Jason Rumney <jasonr@gnu.org>
15066
15067 * w32fns.c (convert_mono_to_color_image): New function.
15068 (xbm_load, xbm_load_image): Use it when foreground or background
15069 is explicitly set.
15070
15071 2002-11-19 Dave Love <fx@gnu.org>
15072
15073 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15074
15075 2002-11-18 Jason Rumney <jasonr@gnu.org>
15076
15077 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15078 (XPutPixel): Swap blue and red.
15079 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15080 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15081 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15082 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15083
15084 2002-11-18 Dave Love <fx@gnu.org>
15085
15086 * m/orion105.h (HAVE_ALLOCA): Don't define.
15087
15088 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15089
15090 * m/intel386.h: Don't include alloca.h or define alloca.
15091
15092 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15093 malloc, realloc, calloc.
15094
15095 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15096 (bcmp): Don't define.
15097
15098 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15099
15100 * m/amdahl.h: Don't define LIB_STANDARD.
15101
15102 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15103
15104 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15105
15106 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15107 Don't include alloca.h.
15108
15109 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15110
15111 * regex.c (_GNU_SOURCE): Don't define.
15112
15113 * process.c (_GNU_SOURCE): Don't define.
15114
15115 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15116
15117 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15118
15119 * s/sol2-8.h: Include sol2-6.h.
15120
15121 2002-11-18 Miles Bader <miles@gnu.org>
15122
15123 * dispextern.h (struct face): Add `overstrike' field.
15124 * xterm.c (x_draw_glyph_string_foreground)
15125 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15126 * xfaces.c (load_face_font): Set `face->overstrike' based on
15127 result from choose_face_font.
15128 (best_matching_font, choose_face_font): Add `needs_overstrike'
15129 argument, and use it to return whether overstriking is desirable
15130 for this face/font combo.
15131 (set_font_frame_param: Pass new argument to choose_face_font.
15132
15133 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15134
15135 This change is my fix for the following entry in etc/PROBLEMS:
15136 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15137 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15138
15139 * w32.c: Added wrapper functions around the win32 API functions
15140 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15141 GetSidIdentifierAuthority. These wrapper functions serve two
15142 purposes:
15143 1. They ensure that the wrapped function can never be called
15144 when Emacs is running on an operating system on which they are
15145 not supported (Microsoft Windows 95 / 98 / ME).
15146 2. They call the wrapped functions via function pointers rather
15147 than calling them directly. This avoids taking advantage of the
15148 undocumented fact that although these functions are not supported
15149 in the 9x branch of Microsoft Windows, the functions do exist in
15150 the version of advapi32.dll that is found in the 9x branch of
15151 Microsoft Windows.
15152
15153 * w32.c (init_user_info): Replace the calls to the win32 API
15154 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15155 and GetSidIdentifierAuthority with calls to the newly added
15156 wrapper functions.
15157
15158 * w32.h: Added extern declarations for the following functions:
15159 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15160 syms_of_w32menu, and void syms_of_fontset.
15161
15162 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15163 function pointer track_mouse_event_fn in the handler for the
15164 WM_SETFOCUS message.
15165
15166 * w32menu.c (initialize_frame_menubar): Add code to
15167 reinitialize the function pointers set_menu_item_info and
15168 get_menu_item_info.
15169
15170 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15171
15172 * sound.c: Added a partial implementation of play-sound-internal
15173 for Microsoft Windows. Added various #ifdef / #else / #endif
15174 code blocks to separate the code that will compile under
15175 Microsoft Windows from the code that is specific to GNU/Linux.
15176 Moved several blocks of code around to make this separation of code
15177 into Windows compatible and GNU/Linux compatible code blocks easier.
15178
15179 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15180
15181 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15182 added support for play-sound-internal under Windows would be
15183 included in the build of Emacs.
15184
15185 2002-11-16 Jason Rumney <jasonr@gnu.org>
15186
15187 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15188
15189 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15190
15191 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15192
15193 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15194 (adjust_point_for_property): Move out of display and invisible even if
15195 we were already inside before (in case a property was added while
15196 we weren't looking). Be more careful when handling invisible props.
15197 Skip invisible text as if it really wasn't there at all.
15198
15199 2002-11-15 Jason Rumney <jasonr@gnu.org>
15200
15201 * w32term.c (x_draw_image_foreground)
15202 (w32_draw_image_foreground_1): Use standard copy and invert
15203 operations to draw images.
15204
15205 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15206 depth of 1.
15207 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15208 (XPutPixel): Don't invert bits here.
15209
15210 2002-11-15 Jason Rumney <jasonr@gnu.org>
15211
15212 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15213 (w32_draw_image_foreground_1): Handle image masks.
15214 (x_draw_image_glyph_string): Don't BitBlt transparently.
15215
15216 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15217 (x_from_xcolors): Adjust RGB values for W32.
15218 (image_background, image_background_transparent)
15219 (postprocess_image, x_to_xcolors, x_disable_image)
15220 (x_build_heuristic_mask): Adapt for W32 and enable.
15221 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15222 (xbm_load): Remove unused variable.
15223
15224 2002-11-14 Richard M. Stallman <rms@gnu.org>
15225
15226 * buffer.c (syms_of_buffer): Doc fix.
15227
15228 2002-11-14 Dave Love <fx@gnu.org>
15229
15230 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15231
15232 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15233 * xmenu.c (unuse_menu_items, digest_single_submenu):
15234 * xfns.c (x_put_x_image):
15235 * xdisp.c (message2_nolog, set_message):
15236 * undo.c (record_point):
15237 * terminfo.c (tparam):
15238 * syntax.c (scan_sexps_forward):
15239 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15240 * composite.c (update_compositions):
15241 * cm.c (calccost, cmgoto):
15242 * charset.c (c_string_width): Declare all args (per C99).
15243
15244 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15245
15246 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15247 Don't declare.
15248
15249 * emacs.c (main) [!VMS]: Avoid third arg.
15250
15251 * fns.c (Fcopy_sequence): Doc fix.
15252 (Fmap_char_table): Cast `call2'.
15253
15254 2002-11-14 Francesco Potorti` <pot@gnu.org>
15255
15256 * s/sol2-8.h: New file.
15257
15258 2002-11-14 Kim F. Storm <storm@cua.dk>
15259
15260 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15261 dependency on `risky-local-variable' and the :propertize form.
15262
15263 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15264
15265 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15266
15267 * syntax.c (scan_sexps_forward): Undo last patch.
15268 Use a more obvious fix: check eob before updating the syntax table.
15269
15270 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15271
15272 * syntax.c (scan_sexps_forward): Update syntax table before reading
15273 a char rather than after so we don't update the table past eob.
15274
15275 2002-11-09 Dave Love <fx@gnu.org>
15276
15277 * buffer.c (Fset_buffer_major_mode): Fix last change.
15278
15279 * regex.c (regexec): Fix pmatch declaration.
15280
15281 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15282
15283 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15284 to self-inserting characters.
15285 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15286
15287 * coding.c (Vtranslation_table_for_input): New.
15288 (syms_of_coding): DEFVAR it.
15289
15290 2002-11-08 Juanma Barranquero <lektu@terra.es>
15291
15292 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15293 window.
15294
15295 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15296
15297 * process.c (Fformat_network_address): Remove unused locals p,
15298 cp, and i.
15299
15300 2002-11-06 Dave Love <fx@gnu.org>
15301
15302 * buffer.c (Qset_buffer_major_mode_hook): New.
15303 (Fset_buffer_major_mode): Use it.
15304
15305 2002-11-06 Richard M. Stallman <rms@gnu.org>
15306
15307 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15308 and stop_polling.
15309
15310 * process.c (wait_reading_process_input):
15311 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15312 Avoid initialization for auto Lisp_Object var.
15313
15314 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15315
15316 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15317
15318 2002-11-05 Richard M. Stallman <rms@gnu.org>
15319
15320 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15321
15322 * callint.c (Fcall_interactively): New local filter_specs.
15323 (Fcall_interactively): Check for progn as well as let.
15324 Add a gcpro.
15325 (Qprogn): New variable.
15326 (syms_of_callint): Staticpro and init Qprogn.
15327
15328 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15329
15330 * lread.c (Feval_buffer): Doc fix.
15331
15332 2002-11-04 Dave Love <fx@gnu.org>
15333
15334 * keyboard.c (read_char): Always translate iff
15335 Vkeyboard_translate_table is a char table and c is valid.
15336
15337 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15338 and fix C types.
15339
15340 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15341
15342 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15343
15344 * editfns.c (get_pos_property): Don't hardcode Qfield.
15345
15346 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15347 overlays. Also handle `invisible' prop.
15348
15349 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15350
15351 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15352 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15353
15354 2002-11-01 Andreas Schwab <schwab@suse.de>
15355
15356 * editfns.c (Fmessage): Revert last change to properly handle %%.
15357
15358 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15359
15360 * xmenu.c (unuse_menu_items): New fun.
15361 (menu_items_inuse): New var.
15362 (syms_of_xmenu): Initialize it.
15363 (init_menu_items): Use it to detect re-entrance.
15364 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15365 (Fx_popup_menu): Remove spurious XSETFRAME.
15366
15367 * editfns.c (find_field): Make an exception for nil fields.
15368
15369 2002-11-01 Dave Love <fx@gnu.org>
15370
15371 * m/gec63.h: Deleted.
15372
15373 2002-10-31 Dave Love <fx@gnu.org>
15374
15375 * xterm.c (XTread_socket): Fix last change.
15376 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15377
15378 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15379
15380 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15381
15382 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15383
15384 * editfns.c (overlays_around, get_pos_property): New funs.
15385 (find_field): Use them.
15386 Also be careful not to modify POS before its last use.
15387 (Fmessage): Don't Fformat if there's nothing to format.
15388
15389 2002-10-30 Dave Love <fx@gnu.org>
15390
15391 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15392 [HAVE_PTY_H]; Include pty.h.
15393
15394 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15395
15396 * xterm.c (Qeql): Declare.
15397 (Vx_keysym_table): New.
15398 (syms_of_xterm): Initialize it.
15399 (XTread_socket): Use it. Deal with ASCII keysyms.
15400 (XSetIMValues) [HAVE_X11R6]: Prototype.
15401
15402 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15403 (lispy_kana_keys): Comment out.
15404 (make_lispy_event) [XK_kana_A]: Comment out.
15405 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15406 Fix sprintf call.
15407
15408 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15409 regexp.h change).
15410 (TERMINFO, LIBS_TERMCAP): Define.
15411
15412 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15413 (bcmp): Define conditional on HAVE_BCMP.
15414 (NO_SIOCTL_H): Don't define.
15415 (TIOCSIGSEND): Don't make conditional on IRIX6.
15416
15417 * s/sol2-5.h: Don't include strings.h.
15418 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15419
15420 * s/irix6-0.h (IRIX6): Don't define.
15421 (bcopy, bcmp, bzero): Don't undef.
15422
15423 * s/irix6-5.h: Don't include strings.h.
15424 (IRIX6): Don't define.
15425 (bcopy, bcmp, bzero): Don't undef.
15426
15427 * syntax.c (Fforward_comment): Doc fix.
15428
15429 2002-10-29 Kim F. Storm <storm@cua.dk>
15430
15431 * process.c (Fsignal_process): Allow PROCESS to be specified by
15432 name in addition to pid (as integer or string).
15433
15434 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15435
15436 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15437 environments.
15438
15439 2002-10-27 Kim F. Storm <storm@cua.dk>
15440
15441 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15442
15443 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15444
15445 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15446
15447 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15448
15449 2002-10-26 Richard M. Stallman <rms@gnu.org>
15450
15451 * editfns.c (Fformat): Detect invalid format letters for floats.
15452
15453 2002-10-25 Kenichi Handa <handa@m17n.org>
15454
15455 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15456 (x_set_title): Likewise.
15457
15458 2002-10-25 Juanma Barranquero <lektu@terra.es>
15459
15460 * macgui.h:
15461 * w32gui.h: Remove definition of XColor.
15462
15463 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15464
15465 2002-10-24 Kim F. Storm <storm@cua.dk>
15466
15467 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15468 Callers changed (supply dummy arg).
15469
15470 * lisp.h (get_window_cursor_type): Update prototype.
15471
15472 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15473 get_window_cursor_type to track system caret.
15474
15475 2002-10-24 Kim F. Storm <storm@cua.dk>
15476
15477 * process.c (Fformat_network_address): New function.
15478 (syms_of_process): Defsubr it.
15479 (list_processes_1): Use it to format :local/:remote address if
15480 service/host is not set; before Emacs would crash in that case.
15481 (Fmake_network_process): Don't use Ffind_operation_coding_system
15482 to setup coding system if host or service is not set.
15483
15484 2002-10-23 Juanma Barranquero <lektu@terra.es>
15485
15486 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15487
15488 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15489 COLORREF.
15490
15491 * macgui.h:
15492 * w32gui.h: Add definition of XColor.
15493
15494 * macfns.c:
15495 * w32fns.c:
15496 * xfaces.c: Remove definition of XColor.
15497
15498 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15499
15500 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15501
15502 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15503 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15504 window if it is dedicated.
15505 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15506 (Vspecial_display_function): Update docstring.
15507
15508 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15509 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15510 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15511
15512 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15513
15514 * casefiddle.c (casify_region): Don't treat a prefix char as part
15515 of a word when at the beginning.
15516
15517 2002-10-17 Juanma Barranquero <lektu@terra.es>
15518
15519 * lread.c (syms_of_lread): Fix typos.
15520
15521 2002-10-17 Dave Love <fx@gnu.org>
15522
15523 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15524
15525 2002-10-16 Richard M. Stallman <rms@gnu.org>
15526
15527 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15528
15529 2002-10-14 Juanma Barranquero <lektu@terra.es>
15530
15531 * w16select.c (syms_of_win16select): Fix docstring for
15532 `selection-coding-system'.
15533
15534 * w32select.c (syms_of_w32select): Likewise.
15535
15536 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15537
15538 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15539 a backslash-quoted char.
15540 (scan_lists, scan_sexps_forward): Pacify the compiler.
15541
15542 2002-10-13 Richard M. Stallman <rms@gnu.org>
15543
15544 * window.c (window_scroll): Set immediate_quit.
15545
15546 * print.c (print): When backquote form is the car of a list,
15547 output in old style. Use old_backquote_output to output all
15548 comma forms inside it in old style too.
15549
15550 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15551
15552 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15553
15554 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15555 batch mode).
15556
15557 * lread.c (Fload): Doc fix (load-suffixes).
15558
15559 2002-10-10 Steven Tamm <steventamm@mac.com>
15560
15561 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15562 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15563 Also switch the default to Qnil from Qt.
15564
15565 2002-10-08 Kenichi Handa <handa@m17n.org>
15566
15567 * coding.c (code_convert_region): When we need more GAP for
15568 conversion, pay attention to the case that coding->produced is not
15569 greater than coding->consumed.
15570
15571 2002-10-07 Richard M. Stallman <rms@gnu.org>
15572
15573 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15574
15575 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15576
15577 * macmenu.c (mac_menu_show): Add j to count menu items; match
15578 menu_item_selection to it to find selected item.
15579
15580 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15581
15582 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15583 cases. The correct fix is to pass ReparentNotify to Xt.
15584 The shell widget interprets ConfigureNotify differently depending
15585 on if it has been reparented or not.
15586
15587 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15588
15589 * editfns.c (Fformat_time_string): Doc fix.
15590
15591 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15592
15593 * fns.c (Flength): Doc fix.
15594
15595 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15596
15597 * keyboard.c (keyremap): New struct.
15598 (read_key_sequence): Use it: globally replace keytran_foo with
15599 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15600 keytran_next and fkey_next to just `next'.
15601
15602 2002-10-04 Steven Tamm <steventamm@mac.com>
15603
15604 * macterm.c (keycode_to_xkeysym_table): Change return to be
15605 treated like an X keysym.
15606
15607 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15608
15609 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15610 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15611 This is to also handle x/y changes that occur because of a resize.
15612
15613 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15614
15615 * frame.c (Vdelete_frame_functions): New variable.
15616 (syms_of_frame): Initialize and defvar it.
15617 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15618 it when frame's `tooltip' parameter is non-nil.
15619
15620 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15621
15622 * w32fns.c (x_create_tip_frame): Likewise.
15623
15624 * macfns.c (x_create_tip_frame): Likewise.
15625
15626 2002-09-30 Kenichi Handa <handa@m17n.org>
15627
15628 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15629 -1 before calling ccl_driver.
15630
15631 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15632 Only when it is non-nil, handle composition sequence.
15633 (setup_coding_system) <0>: Don't force composition handling.
15634
15635 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15636
15637 2002-09-29 Richard M. Stallman <rms@gnu.org>
15638
15639 * search.c (Freplace_match): Adjust match data for the substitution
15640 just made in the buffer.
15641
15642 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15643 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15644
15645 2002-09-27 Richard M. Stallman <rms@gnu.org>
15646
15647 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15648 (read_char): Use them. Do all exits thru the end of the function.
15649
15650 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15651
15652 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15653 is nil.
15654
15655 2002-09-26 Richard M. Stallman <rms@gnu.org>
15656
15657 * regex.h (__restrict_arr): Don't define if already defined.
15658
15659 * coding.c (run_pre_post_conversion_on_str):
15660 Save and restore Vdeactivate_mark.
15661
15662 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15663
15664 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15665
15666 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15667
15668 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15669 nonzero, try face's family at first. Otherwise try FAMILY at first.
15670 (choose_face_font): If C is a single byte char or latin-1, call
15671 try_font_list with PREFER_FACE_FAMILY 1.
15672
15673 2002-09-21 Richard M. Stallman <rms@gnu.org>
15674
15675 * window.c (select_window_1): Don't select frame.
15676 Set frame's selected window only when frame itself is selected.
15677 (Fselect_window): Doc fix.
15678
15679 2002-09-18 Kim F. Storm <storm@cua.dk>
15680
15681 * process.c (make-network-process): Doc fix (there is no
15682 network-server-log-function hook).
15683
15684 2002-09-18 Richard M. Stallman <rms@gnu.org>
15685
15686 * print.c (print): Clear out the unused parts of Vprint_number_table.
15687 (syms_of_print): Doc fix for `print-number-table'.
15688
15689 * unexelf.c (unexec): Undo previous change.
15690
15691 2002-09-17 Andreas Schwab <schwab@suse.de>
15692
15693 * m/alpha.h [LINUX]: Don't define DATA_START.
15694
15695 2002-09-16 Dave Love <fx@gnu.org>
15696
15697 * unexelf.c (unexec): Deal with .got, reinstating change from
15698 25-08-1999.
15699
15700 2002-09-13 Richard M. Stallman <rms@gnu.org>
15701
15702 * s/sol2-6.h (UNEXEC): Comment out definition.
15703
15704 * unexsol.c (unexec): Don't downcase first letter of error msg.
15705
15706 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15707
15708 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15709
15710 * unexsol.c: Include buffer.h, charset.h, coding.h.
15711
15712 2002-09-11 Richard M. Stallman <rms@gnu.org>
15713
15714 * unexsol.c: Don't use report_file_error; do it by hand
15715 using dlerror.
15716
15717 * process.c (wait_reading_process_input, both versions):
15718 Before calling turn_on_atimers, call stop_polling.
15719
15720 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15721
15722 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15723 we go to too_near_end, call clear_glyph_matrix.
15724 (redisplay_window): After make_cursor_line_fully_visible,
15725 call clear_glyph_matrix and bypass `goto done'.
15726
15727 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15728 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15729
15730 2002-09-10 Richard M. Stallman <rms@gnu.org>
15731
15732 * fileio.c (Fdo_auto_save): Catch error making directory.
15733 Only call push_message if we need to.
15734 At the same time, make an unwind-protect to pop it.
15735 Rename local message_p to old_message_p.
15736 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15737 (do_auto_save_unwind): Don't call pop_message.
15738
15739 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15740
15741 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15742
15743 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15744
15745 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15746
15747 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15748
15749 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15750 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15751 (re_match_2_internal): Be more careful with infinite loops.
15752
15753 2002-09-10 Kim F. Storm <storm@cua.dk>
15754
15755 * macros.c (end_kbd_macro): New function.
15756 (Fend_kbd_macro): Use it.
15757
15758 * macros.h (end_kbd_macro): Declare extern.
15759
15760 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15761 end and save it instead of discarding it.
15762
15763 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15764
15765 * s/sol2-6.h: Fix typo. Add comment.
15766
15767 2002-09-09 Richard M. Stallman <rms@gnu.org>
15768
15769 * regex.c (regnum_t): Use signed int, not unsigned int.
15770
15771 * s/sol2-6.h: New file.
15772
15773 * s/sol2-5.h (UNEXEC): Definition deleted.
15774
15775 2002-09-08 Kim F. Storm <storm@cua.dk>
15776
15777 * macros.c (executing_macro_index): Change type to EMACS_INT.
15778 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15779
15780 * macros.h (executing_macro_index): Change type to EMACS_INT.
15781
15782 2002-09-06 Richard M. Stallman <rms@gnu.org>
15783
15784 * casetab.c (set_case_table): Make canon table point to eqv table.
15785
15786 2002-09-06 Juanma Barranquero <lektu@terra.es>
15787
15788 * coding.c (syms_of_coding): Fix spacing.
15789
15790 * composite.c (Fcompose_region_internal)
15791 (Fcompose_string_internal): Likewise.
15792
15793 * data.c (Flsh): Likewise.
15794
15795 * fontset.c (Fset_fontset_font): Likewise.
15796
15797 * macfns.c (Fx_server_max_request_size): Likewise.
15798
15799 * w16select.c (syms_of_win16select): Likewise.
15800
15801 * w32select.c (syms_of_w32select): Likewise.
15802
15803 * xselect.c (syms_of_xselect): Likewise.
15804
15805 2002-09-05 Richard M. Stallman <rms@gnu.org>
15806
15807 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15808 call EXTEND_RANGE_TABLE and return a proper value.
15809 (set_image_of_range): Don't call set_image_of_range_1
15810 if no TRANSLATE or if range includes all of Latin-1.
15811 Only call it for the Latin-1 part of the range.
15812 For other cases, make two separate ranges,
15813 one for the original specified characters and one for
15814 their case-conversions.
15815
15816 2002-09-04 Richard M. Stallman <rms@gnu.org>
15817
15818 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15819
15820 * window.c (displayed_window_lines): Correct for one-off bug
15821 in HEIGHT on non-window displays.
15822
15823 * regex.c (set_image_of_range_1): New function.
15824 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15825 Return a value to indicate running out of memory.
15826 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15827 (extend_range_table_work_area): New subroutine.
15828 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15829 Different calling conventions, and used from set_image_of_range{,_1}.
15830 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15831
15832 2002-09-04 Juanma Barranquero <lektu@terra.es>
15833
15834 * makefile.w32-in: All dependencies updated.
15835
15836 2002-09-01 Richard M. Stallman <rms@gnu.org>
15837
15838 * unexsol.c: New file.
15839
15840 * xfns.c (Qbox): Declare external, don't define.
15841
15842 * xdisp.c (redisplay_window) <force-start case>:
15843 If point is on semi-visible last line, reposition
15844 it at previous line.
15845
15846 * alloc.c (display_malloc_warning): Use display-warning.
15847 (malloc_warning_1): Function deleted.
15848
15849 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15850
15851 * lread.c (read1): Handle #! by skipping the line.
15852
15853 2002-08-31 Richard M. Stallman <rms@gnu.org>
15854
15855 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15856 Don't include LDFLAGS.
15857 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15858
15859 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15860
15861 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15862 member of x_display_info unless we compile for some window system.
15863
15864 2002-08-31 Kim F. Storm <storm@cua.dk>
15865
15866 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15867 (get_window_cursor_type): Don't use them.
15868 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15869
15870 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15871
15872 * xdisp.c (get_next_display_element): Fix previous change.
15873
15874 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15875
15876 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15877 (expose_window): Use it to fix the display of overlapping
15878 rows (merge code from xterm.c).
15879
15880 * macfns.c (Qbox): Add extern declaration.
15881
15882 2002-08-30 Juanma Barranquero <lektu@terra.es>
15883
15884 * w32fns.c (Qbox): Make extern.
15885 (syms_of_w32fns): Remove initialization of Qbox.
15886
15887 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15888
15889 * xfns.c (Fx_open_connection): Fix error message.
15890
15891 2002-08-30 Kim F. Storm <storm@cua.dk>
15892
15893 The following changes consolidates the handling of the cursor
15894 type in xdisp.c, moving duplicate code and functionality from
15895 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
15896
15897 * frame.h (enum text_cursor_kinds): Consolidated here.
15898 Added DEFAULT_CURSOR value.
15899 (struct frame) <desired_cursor, cursor_width>
15900 <blink_off_cursor, blink_off_cursor_width>: New fields.
15901 Consolidated from output_x, output_w32 and output_mac structs.
15902 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15903 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
15904
15905 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
15906 Variables consolidated here.
15907 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
15908 (Vcursor_in_non_selected_windows): Renamed from
15909 cursor_in_non_selected_windows and changed to Lisp_Object.
15910 (syms_of_xdisp): Define and staticpro new and moved variables.
15911 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
15912 consolidated here. Recognize Qhollow setting.
15913 (set_frame_cursor_types): New function to set frame cursor types
15914 based on the frame parameters.
15915 (get_window_cursor_type): New function to calculate new cursor
15916 type and width for the specified window. Based on duplicated
15917 code consolidated here.
15918 Enhancements: cursor-in-non-selected-windows may be a cursor type,
15919 check buffer-local alternate-cursor-type and blink-cursor-alist
15920 before using built-in blink off methods.
15921
15922 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
15923
15924 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
15925 (get_specified_cursor_type, get_window_cursor_type)
15926 (set_frame_cursor_types): Added prototypes.
15927
15928 * macfns.c (x_specified_cursor_type): Removed.
15929 (x_set_cursor_type): Use set_frame_cursor_types.
15930 (Qbar, Qbox): Removed.
15931 (syms_of_macfns): Don't intern or staticpro them.
15932
15933 * macterm.c (x_specified_cursor_type): Remove prototype.
15934 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15935 (x_display_and_set_cursor): Use get_window_cursor_type.
15936 Remove unused local variables cursor_non_selected, active_cursor.
15937 Redraw cursor if hbar cursor width changes.
15938 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
15939
15940 * macterm.h (enum text_cursor_kinds): Removed.
15941 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
15942 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15943 (FRAME_DESIRED_CURSOR): Macro removed.
15944
15945 * w32fns.c (Vblink_cursor_alist): Removed.
15946 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15947 (syms_of_w32fns): Don't intern, staticpro, or define them.
15948 (x_specified_cursor_type): Removed.
15949 (x_set_cursor_type): Use set_frame_cursor_types.
15950
15951 * w32term.c (x_specified_cursor_type): Remove prototype.
15952 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15953 (x_display_and_set_cursor): Use get_window_cursor_type.
15954 Remove unused local variables cursor_off_state.
15955 Redraw cursor if hbar cursor width changes.
15956 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
15957
15958 * w32term.h (enum text_cursor_kinds): Removed.
15959 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15960 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15961 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15962 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15963 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15964 w32_highlight_frame.
15965
15966 * xfns.c (Vblink_cursor_alist): Removed.
15967 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15968 (syms_of_xfns): 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 * xterm.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
15978 * xterm.h (enum text_cursor_kinds): Removed.
15979 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15980 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15981 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15982 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15983 (x_specified_cursor_type): Remove prototype.
15984
15985 2002-08-28 Richard M. Stallman <rms@gnu.org>
15986
15987 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15988 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15989 (Vblink_cursor_alist): New variable.
15990 (syms_of_w32fns): Initialize and defvar it.
15991 (x_specified_cursor_type): Recognize Qbox for filled box.
15992 Exceptions are hollow boxes.
15993 (Qbox, Qhollow): New variables.
15994 (syms_of_w32fns): Initialize and staticpro them.
15995
15996 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15997 New macros.
15998 (struct w32_output): New fields blink_off_cursor,
15999 blink_off_cursor_width.
16000 (FRAME_CURSOR_WIDTH): New macro.
16001
16002 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16003 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16004
16005 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16006 for bar cursor.
16007
16008 * w32term.c (expose_overlaps): New function.
16009 (expose_window): Use it to fix the display of overlapping rows.
16010
16011 2002-08-28 Simon Josefsson <jas@extundo.com>
16012
16013 * xfns.c (Fx_open_connection): Improve help when X connection
16014 fails, xhost is insecure and xauth is better.
16015
16016 2002-08-28 Juanma Barranquero <lektu@terra.es>
16017
16018 * makefile.w32-in: Add missing dependencies on w32term.h and
16019 composite.h.
16020
16021 * emacs.c (USAGE1): Add missing newline.
16022
16023 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16024
16025 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16026
16027 2002-08-27 Richard M. Stallman <rms@gnu.org>
16028
16029 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16030 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16031 (Vblink_cursor_alist): New variable.
16032 (syms_of_xfns): Initialize and defvar it.
16033 (x_specified_cursor_type): Recognize Qbox for filled box.
16034 Exceptions are hollow boxes.
16035 (Qbox, Qhollow): New variables.
16036 (syms_of_xfns): Initialize and staticpro them.
16037
16038 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16039 New macros.
16040 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16041
16042 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16043 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16044
16045 * emacs.c (main): Handle --script.
16046 (USAGE1): Mention --script.
16047 (standard_args): Define sort order for --script.
16048
16049 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16050
16051 * xdisp.c (redisplay_updating_p): Variable removed.
16052 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16053 New variables.
16054 (init_iterator): Don't free realized faces if
16055 inhibit_free_realized_faces is set.
16056 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16057 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16058 initialize Qinhibit_free_realized_faces.
16059
16060 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16061 when iterator is adding glyphs to a glyph matrix.
16062
16063 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16064
16065 * xdisp.c (get_next_display_element): In unibyte case, don't use
16066 octal form for such eight-bit characters that can be converted to
16067 multibyte char.
16068
16069 2002-08-26 Kim F. Storm <storm@cua.dk>
16070
16071 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16072 foreground and background colors. From Joe Buehler.
16073
16074 2002-08-26 Miles Bader <miles@gnu.org>
16075
16076 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16077
16078 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16079
16080 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16081 defined instead of MAC_OSX.
16082
16083 * s/darwin.h (select): Define select to sys_select only if
16084 HAVE_CARBON is defined.
16085 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16086 (DONT_REOPEN_PTY): #def it.
16087
16088 * macterm.c (XTread_socket): Remove code to call
16089 SendEventToEventTarget for keys with command modifiers when
16090 mac_command_key_is_meta is nil.
16091
16092 2002-08-24 Andreas Schwab <schwab@suse.de>
16093
16094 * eval.c (Fdefvar): Fix last change.
16095
16096 2002-08-23 Richard M. Stallman <rms@gnu.org>
16097
16098 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16099 Record variables in load history as (defvar . VAR).
16100 (Fdefvar): Don't record in load history if no initial value.
16101 (Qdefvar): New variable.
16102 (syms_of_eval): Init and staticpro it.
16103
16104 * lread.c (syms_of_lread): Doc fix.
16105 (build_load_history): Use Fmember to see if a definition
16106 is already in the Vload_history element.
16107
16108 * process.c (Fstart_process): Remove /: from program name.
16109
16110 * emacs.c (decode_env_path): Don't add /: if file name handler
16111 has a `safe-magic' property.
16112
16113 * callproc.c (Fcall_process): Remove /: from program name.
16114
16115 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16116
16117 * regex.c (PATFETCH): Remove the translating fetch.
16118 (PATFETCH_RAW): Rename to PATFETCH.
16119 (set_image_of_range): New fun.
16120 (SET_RANGE_TABLE_WORK_AREA): Use it.
16121 (regex_compile): Don't translate the pattern chars so eagerly.
16122 Only do it when inserting an `exactn' bytecode or when handling
16123 a char-range.
16124 (mutually_exclusive_p): Avoid empty statement.
16125
16126 2002-08-22 Kim F. Storm <storm@cua.dk>
16127
16128 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16129 end up on a partially visible line; this reverts a specific part
16130 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16131 display error which has been reported several times now.
16132 However it introduces the problem that changes was supposed to fix.
16133 See my comments in the source if you want to debug this further.
16134
16135 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16136
16137 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16138
16139 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16140
16141 * msdos.c (croak): Add `void' to definition.
16142
16143 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16144 Don't define them, they are defined in msdos.c.
16145
16146 * mem-limits.h [MSDOS]: Declare etext.
16147
16148 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16149 `const' since CORRECT_DIR_SEPS modifies its target.
16150
16151 2002-08-19 Kim F. Storm <storm@cua.dk>
16152
16153 * keyboard.c (Fclear_this_command_keys): Add optional arg
16154 KEEP-RECORD to avoid clearing lossage when we just want to clear
16155 the current key sequence (kmacro needs this).
16156
16157 2002-08-19 Kenichi Handa <handa@localhost>
16158
16159 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16160
16161 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16162 cons, return Qnil.
16163
16164 2002-08-17 Richard M. Stallman <rms@gnu.org>
16165
16166 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16167
16168 * sysdep.c [!VMS]: Include sys/files.h.
16169
16170 * editfns.c (save_restriction_restore): Defend from unchained marker.
16171
16172 * buffer.c (overlays_at): Handle extending vec uniformly.
16173 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16174
16175 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16176
16177 * mac.c (init_mac_osx_environment): New function.
16178
16179 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16180
16181 2002-08-14 Kim F. Storm <storm@cua.dk>
16182
16183 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16184 executing macro before appending to it (when used from Lisp).
16185 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16186 which is called prior to each iteration of macro (for kmacro.el).
16187 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16188
16189 * lisp.h (Fexecute_kbd_macro): Update prototype.
16190
16191 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16192
16193 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16194
16195 * xselect.c (QUTF8_STRING): New variable.
16196 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16197 (x_atom_to_symbol): Likewise.
16198 (x_get_local_selection): New argument local_request. If it is
16199 nonzero, call handler_fn with the second arg nil.
16200 (x_handle_selection_request): Call x_get_local_selection with
16201 local_request 0.
16202 (lisp_data_to_selection_data): Don't encode the string here.
16203 (Fx_get_selection_internal): Call x_get_local_selection with
16204 local_request 1.
16205 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16206
16207 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16208
16209 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16210
16211 2002-08-13 Richard M. Stallman <rms@gnu.org>
16212
16213 * minibuf.c (Fminibufferp): New function.
16214 (syms_of_minibuf): Defsubr it.
16215 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16216
16217 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16218
16219 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16220
16221 2002-08-12 Richard M. Stallman <rms@gnu.org>
16222
16223 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16224 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16225 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16226 already.
16227
16228 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16229
16230 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16231
16232 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16233 (Vmac_pass_command_to_system): New variable.
16234 (Vmac_pass_control_to_system): New variable.
16235 (do_mouse_moved): Check wp with is_emacs_window.
16236 (XTread_socket): Check window_ptr with is_emacs_window.
16237 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16238 events back to Mac Toolbox for processing, depending on values of
16239 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16240 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16241 Vmac_pass_control_to_system.
16242
16243 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16244
16245 * coding.c (unencodable_char_position): New function.
16246 (Funencodable_char_position): New function.
16247 (syms_of_coding): Defsubr Funencodable_char_position.
16248
16249 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16250
16251 * mac.c (sys_select) [MAC_OSX]: New function.
16252
16253 * macterm.c (MakeMeTheFrontProcess): New function.
16254 (mac_initialize): Call MakeMeTheFrontProcess.
16255
16256 * s/darwin.h: Define select to sys_select.
16257
16258 2002-08-09 Richard M. Stallman <rms@gnu.org>
16259
16260 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16261
16262 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16263
16264 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16265 end of the buffer.
16266
16267 2002-08-08 Ken Raeburn <raeburn@mit.edu>
16268
16269 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16270
16271 * puresize.h (BASE_PURESIZE): Increase to 910000.
16272
16273 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16274
16275 * coding.c (Ffind_operation_coding_system): For write-region, if
16276 VISIT is a filename, make it the target.
16277
16278 2002-08-07 Richard M. Stallman <rms@gnu.org>
16279
16280 * alloc.c (mark_object): Detect long lists for debugging.
16281 (mark_object_loop_halt): New variable.
16282
16283 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16284
16285 * data.c (Fmake_variable_frame_local): Doc fix.
16286
16287 2002-08-01 David Ponce <david@dponce.com>
16288
16289 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16290 (malloc_widget_value, free_widget_value)
16291 (w32_free_submenu_strings): Use them.
16292
16293 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16294 (push_menu_pane, push_menu_item, single_keymap_panes)
16295 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16296 (single_submenu, set_frame_menubar)
16297 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16298
16299 (Fx_popup_menu): Don't show pop up menu until preceding one is
16300 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16301
16302 * w32menu.c: Changes adapted from xmenu.c
16303 (set_frame_menubar): First parse all submenus,
16304 then make widget_value trees from them.
16305 Don't allocate any widget_value objects
16306 until we are done with the parsing.
16307 (parse_single_submenu): New function.
16308 (digest_single_submenu): New function.
16309 (single_submenu): Function deleted, replaced by those two.
16310
16311 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16312
16313 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16314 returns a valid window pointer before proceeding for keyDown and
16315 autoKey events.
16316
16317 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16318
16319 * macterm.c (USE_CARBON_EVENTS): New macro.
16320 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16321 (x_iconify_frame): Call CollapseWindow.
16322 (Vmac_reverse_ctrl_meta): New variable.
16323 (Vmac_wheel_button_is_mouse_2): New variable.
16324 (init_mac_drag_n_drop): New function.
16325 (mac_do_receive_drag): New function.
16326 (mac_handle_service_event): New function.
16327 (init_service_handler): New function.
16328 (mac_to_emacs_modifiers): New function.
16329 (mac_event_to_emacs_modifiers): New function.
16330 (mac_get_mouse_btn): New function.
16331 (mac_convert_event_ref): New function.
16332 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16333 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16334 mac_get_mouse_btn.
16335 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16336
16337 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16338 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16339 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16340 TOOL_BAR_EVENT for MAC_OS as well.
16341 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16342 as for WINDOWS_NT.
16343 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16344
16345 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16346
16347 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16348
16349 * xdisp.c (forward_to_next_line_start): Fix a condition that
16350 lead to a newline being skipped.
16351
16352 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16353
16354 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16355
16356 2002-08-01 Richard M. Stallman <rms@gnu.org>
16357
16358 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16359
16360 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16361
16362 * macfns.c: #undef init_process before #define-ing it.
16363
16364 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16365 HAVE_CARBON is defined.
16366
16367 2002-07-31 Richard M. Stallman <rms@gnu.org>
16368
16369 * xmenu.c (set_frame_menubar): First parse all submenus,
16370 then make widget_value trees from them.
16371 Don't allocate any widget_value objects
16372 until we are done with the parsing.
16373 (parse_single_submenu): New function.
16374 (digest_single_submenu): New function.
16375 (single_submenu): Function deleted, replaced by those two.
16376
16377 2002-07-30 Juanma Barranquero <lektu@terra.es>
16378
16379 * w32proc.c (syms_of_ntproc): Fix docstring of
16380 `w32-get-true-file-attributes'.
16381
16382 2002-07-28 Richard M. Stallman <rms@gnu.org>
16383
16384 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16385 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16386
16387 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16388
16389 * keyboard.c (make_lispy_event):
16390 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16391 Explicitly clear up_modifier in event->modifiers.
16392
16393 2002-07-27 Richard M. Stallman <rms@gnu.org>
16394
16395 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16396
16397 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16398 for bar cursor.
16399
16400 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16401
16402 * coding.c (detect_coding_iso2022): While checking a byte sequence
16403 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16404 it in the normal loop.
16405
16406 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16407
16408 * xterm.c (expose_overlaps): New function.
16409 (expose_window): Use it to fix the display of overlapping rows.
16410
16411 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16412
16413 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16414
16415 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16416 since it only depends on XUINT.
16417
16418 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16419 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16420 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16421 Macros deleted.
16422
16423 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16424 its value over other approaches.
16425 * sysdep.c (start_of_data): Don't define the function if a macro
16426 form has been defined.
16427
16428 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16429
16430 * xdisp.c (redisplay_updating_p): New variable.
16431 (init_iterator): Don't free realized faces when
16432 redisplay_updating_p is set.
16433 (redisplay_internal): Set redisplay_updating_p while updating
16434 the display.
16435
16436 2002-07-23 Richard M. Stallman <rms@gnu.org>
16437
16438 * editfns.c (Fmessage): Treat "" like nil.
16439
16440 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16441
16442 * xdisp.c (face_before_or_after_it_pos):
16443 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16444
16445 2002-07-22 Juanma Barranquero <lektu@terra.es>
16446
16447 * callproc.c (init_callproc) [DOS_NT]:
16448 Initialize Vshared_game_score_directory to nil.
16449 (syms_of_callproc) [DOS_NT]: Likewise.
16450
16451 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16452
16453 * xdisp.c (display_line): Replace an abort with xassert.
16454
16455 2002-07-21 Richard M. Stallman <rms@gnu.org>
16456
16457 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16458 and END_UNCHANGED when setting buffer_unchanged_p.
16459 Use current_matrix_up_to_date_p to decide whether to use
16460 try_cursor_movement.
16461
16462 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16463
16464 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16465
16466 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16467 Set to nil if dir does not exist.
16468 (syms_of_callproc): Init unconditionally and simply.
16469
16470 * buffer.c (Fbuffer_list): Doc fix.
16471
16472 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16473
16474 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16475
16476 * buffer.c (mmap_realloc): When shrinking, make sure number of
16477 pages to unmap is rounded towards zero.
16478
16479 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16480 (XSETINT): Deleted.
16481
16482 * m/att3b.h (XINT): Don't define.
16483 (VALBITS, VALMASK, XTYPE): Deleted.
16484 (DATA_SEG_BITS): Define.
16485 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16486 ARRAY_MARK_FLAG): Deleted.
16487 (DATA_SEG_BITS): Define.
16488 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16489 (DATA_SEG_BITS): Define.
16490
16491 2002-07-20 Richard M. Stallman <rms@gnu.org>
16492
16493 * print.c (print_error_message): New args CONTEXT and CALLER.
16494 Calls changed.
16495
16496 * lisp.h (print_error_message): Declare new args.
16497
16498 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16499 and CONTEXT to print_error_message, don't print them here.
16500 For a Quit, don't use Vsignaling_function.
16501 Call message_log_maybe_newline.
16502
16503 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16504
16505 2002-07-20 Kim F. Storm <storm@cua.dk>
16506
16507 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16508
16509 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16510
16511 * bytecode.c (struct byte_stack): Pointers into byte string now
16512 point to const.
16513 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16514 const.
16515 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16516 * coding.c (encode_eol, detect_coding, detect_eol):
16517 (decode_coding, encode_coding, detect_coding_system):
16518 Source strings now treated as const.
16519 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16520 modify Lisp string contents.
16521 * coding.h (decode_coding, encode_coding, detect_coding,
16522 detect_eol): Declarations updated.
16523 * composite.c (compose_chars_in_text): Treat Lisp string contents
16524 as const.
16525 * dispnew.c (safe_bcopy): Source pointer now points to const.
16526 * lisp.h (STRING_COPYIN): New macro.
16527 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16528 (internal_with_output_to_temp_buffer): Declarations updated.
16529 * print.c (temp_output_buffer_setup):
16530 (internal_with_output_to_temp_buffer): Buffer name argument is now
16531 pointer to const.
16532 * sound.c (struct sound_device): Function pointer field "write"
16533 buffer argument now points to const.
16534 (vox_write): Buffer argument points to const.
16535 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16536 contents as const.
16537 * sysdep.c (emacs_write): Buffer pointer now const.
16538 * term.c (encode_terminal_code): Buffer pointer now const.
16539 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16540 (x_face_list_fonts, x_update_menu_appearance):
16541 (hash_string_case_insensitive): Treat Lisp string contents as const.
16542
16543 2002-07-19 Juanma Barranquero <lektu@terra.es>
16544
16545 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16546
16547 * fileio.c (syms_of_fileio): Likewise.
16548 (Ffile_name_as_directory): Fix argument name in docstring.
16549 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16550
16551 2002-07-18 Richard M. Stallman <rms@gnu.org>
16552
16553 * data.c (Fdefalias): Doc fix.
16554
16555 2002-07-17 Dave Love <fx@gnu.org>
16556
16557 * intervals.h (text_property_stickiness): Use P_.
16558
16559 * ccl.c: Remove `emacs' conditionals.
16560 (ccl_backtrace_table): Fix size spec.
16561 (ccl_driver): Fix type errors.
16562
16563 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16564
16565 * alloc.c (xstrdup, make_string, make_unibyte_string)
16566 (make_multibyte_string, build_string): String pointer args now
16567 point to const.
16568 * charset.c (find_charset_in_text, c_string_width):
16569 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16570 * fileio.c (report_file_error):
16571 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16572 (count_combining_before, count_combining_after, insert_1_both):
16573 (insert, insert_and_inherit, insert_string):
16574 (insert_before_markers, insert_before_markers_and_inherit):
16575 * lread.c (intern, oblookup, hash_string):
16576 * minibuf.c (temp_echo_area_glyphs):
16577 * search.c (fast_c_string_match_ignore_case):
16578 * sysdep.c (emacs_open, set_file_times):
16579 * xfaces.c (xstricmp):
16580 * xdisp.c (store_frame_title, string_char_and_length):
16581 (message_dolog, message2, message2_nolog, set_message): Likewise.
16582 (set_message_1): Cast message string argument to const pointer.
16583 * editfns.c (general_insert_function): Insertion function now
16584 takes pointer to const for input data.
16585 * charset.h (find_charset_in_text, c_string_width):
16586 (parse_str_as_multibyte): Declarations updated.
16587 * dispextern.h (xstricmp): Declaration updated.
16588 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16589 (count_size_as_multibyte, count_combining_before):
16590 (count_combining_after, insert_1, insert_1_both, message_dolog):
16591 (insert, insert_and_inherit, insert_before_markers)
16592 (insert_before_markers_and_inherit, set_message, message2):
16593 (message2_dolog, build_string, make_string, make_unibyte_string):
16594 (make_multibyte_string, intern, oblookup, report_file_error):
16595 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16596 (emacs_open, xstrdup): Declarations updated.
16597 * systime.h (set_file_times): Declaration updated.
16598
16599 * charset.c (find_charset_in_text, lisp_string_width): Use const
16600 for pointer to lisp string data.
16601 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16602 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16603 * coding.c (Ffind_coding_systems_region_interval):
16604 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16605 (Fmake_directory_internal, Fdelete_directory):
16606 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16607 * fontset.c (font_family_registry, fs_query_fontset):
16608 (list_fontsets):
16609 * frame.c (Fframe_parameter):
16610 * keyboard.c (cmd_error_internal):
16611 * keymap.c (Fdescribe_buffer_bindings):
16612 * lread.c (complete_filename_p, openp):
16613 * minibuf.c (Fminibuffer_complete_word):
16614 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16615 (face_before_or_after_it_pos, next_element_from_string):
16616 (get_overlay_arrow_glyph_row, display_mode_element):
16617 (decode_mode_spec_coding):
16618 * xterm.c (same_x_server): Likewise.
16619
16620 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16621 settings of non-existent fields.
16622
16623 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16624 copy a lisp value.
16625
16626 * lread.c (Fintern_soft): Use string macros instead of
16627 Lisp_String fields.
16628 * keyboard.c (echo_char, parse_modifiers_uncached):
16629 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16630 * textprop.c (validate_interval_range, interval_of): Likewise.
16631
16632 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16633
16634 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16635 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16636 XSTRING()->size_byte.
16637
16638 * lisp.h (SDATA, SREF): Produce rvalue.
16639 (SSET): New macro.
16640 * alloc.c (make_event_array): Use SSET for storing into a string.
16641 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16642 a string.
16643 * casefiddle.c (casify_object): Use SSET.
16644 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16645 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16646 address of string contents.
16647 * data.c (Faref): Use SDATA.
16648 (Faset): Use SDATA, SSET.
16649 * dired.c (directory_files_internal): Use SSET.
16650 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16651 (Fread_file_name): Use SREF, SSET.
16652 * fns.c (concat): Use SSET.
16653 (concat, Fdelete): Use SDATA.
16654 * insdel.c (insert_from_string_1): Use SDATA.
16655 * keyboard.c (Fevent_convert_list): Use SREF.
16656 * lread.c (Fload): Use SDATA, SSET.
16657 * macfns.c (validate_x_resource_name): Use SSET.
16658 * process.c (status_message): Use SSET.
16659 * search.c (wordify): Use SDATA.
16660 (Freplace_match): Use SREF.
16661 * w32fns.c (validate_x_resource_name): Use SSET.
16662 * xfns.c (validate_x_resource_name): Use SSET.
16663 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16664
16665 2002-07-16 Richard M. Stallman <rms@gnu.org>
16666
16667 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16668
16669 * xdisp.c (reconsider_clip_changes):
16670 Don't test prevent_redisplay_optimizations_p.
16671 (redisplay_internal): Test prevent_redisplay_optimizations_p
16672 along with clip_changed in some cases.
16673 (try_window_id): Likewise.
16674 (redisplay_window): New local var buffer_unchanged_p.
16675
16676 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16677
16678 * process.c (create_process): Test USG_SUBTTY_WORKS.
16679 (process_send_signal): Clean up handling of GID.
16680 Detect errors in ioctls meant to set GID.
16681
16682 * window.c (temp_output_buffer_show):
16683 Don't set prevent_redisplay_optimizations_p.
16684
16685 2002-07-15 Juanma Barranquero <lektu@terra.es>
16686
16687 * eval.c (Fdefvaralias): Add docstring argument.
16688
16689 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16690
16691 * lisp.h (STRING_INTERVALS): Produce rvalue.
16692 (STRING_SET_INTERVALS): New macro.
16693 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16694 * fns.c (Fstring_as_multibyte): Likewise.
16695 * intervals.c (balance_possible_root_interval, delete_interval)
16696 (create_root_interval, copy_intervals_to_string): Likewise.
16697 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16698 instead of 0.
16699
16700 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16701
16702 * lisp.h (STRING_SET_CHARS): New macro.
16703 (SCHARS, SBYTES): Produce rvalues.
16704 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16705 * fns.c (concat): Likewise.
16706 * lread.c (read_vector): Likewise.
16707
16708 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16709 (STRING_SET_UNIBYTE): New macro.
16710 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16711 length of -1) changed to use STRING_SET_UNIBYTE.
16712 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16713 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16714 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16715 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16716 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16717 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16718 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16719 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16720 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16721 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16722 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16723 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16724 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16725 unchanged for now.
16726
16727 2002-07-13 Kim F. Storm <storm@cua.dk>
16728
16729 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16730
16731 2002-07-12 Richard M. Stallman <rms@gnu.org>
16732
16733 * fileio.c (Fwrite_region): Doc fix.
16734
16735 * print.c (print_error_message): Don't handle Vsignaling_function here.
16736
16737 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16738 (command_loop_1): Avoid certain actions after memory-full error.
16739
16740 * eval.c (Fsignal): Don't call cancel_hourglass.
16741 For a memory-full error, don't call Vsignal_hook_function
16742 and don't set Vsignaling_function.
16743
16744 * process.c (process_send_signal): Add abort call.
16745
16746 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16747
16748 * keymap.c (Fkey_binding): Fix typo.
16749
16750 2002-07-11 Richard M. Stallman <rms@gnu.org>
16751
16752 * alloc.c (Vmemory_full): New variable.
16753 (Vmemory_signal_data): Rename from memory_signal_data.
16754 Uses changed.
16755 (syms_of_alloc): Defvar them.
16756 (memory_full, buffer_memory_full): Set Vmemory_full.
16757
16758 * lisp.h (Vmemory_full): Add declaration.
16759 (current_column, indented_beyond_p): Change declaration.
16760
16761 * indent.c (last_known_column): Declare as double, not float.
16762 (current_column, current_column_1, string_display_width)
16763 (position_indentation): Return `double'.
16764 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16765
16766 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16767 (back_to_previous_visible_line_start)
16768 (reseat_at_next_visible_line_start, next_element_from_buffer):
16769 Use `double', not `float', when calling indented_beyond_p.
16770
16771 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16772
16773 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16774
16775 2002-07-11 Juanma Barranquero <lektu@terra.es>
16776
16777 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16778 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16779 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16780 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16781 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16782 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16783
16784 2002-07-10 Juanma Barranquero <lektu@terra.es>
16785
16786 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16787 All callers changed.
16788
16789 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16790
16791 * data.c (Fdefalias): Add an optional `docstring' argument.
16792 (set_internal, Fsetq_default): Use XCAR/XCDR.
16793
16794 * composite.c (HASH_VALUE, HASH_KEY):
16795 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16796
16797 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16798
16799 * callproc.c (Fcall_process): Fix previous change.
16800
16801 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16802
16803 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16804 Add support for hash-tables.
16805 (Ftry_completion): Return t even if the string appears multiple times.
16806
16807 * fns.c (Fnconc): Use XCDR.
16808 (Fprovide): Use CONSP and XCDR.
16809 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16810 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16811 (Fmake_hash_table): Accept `:size nil'.
16812 (Fmakehash): Delete: moved to subr.el.
16813 (syms_of_fns): Don't defsubr makehash.
16814
16815 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16816 (HASH_TABLE_SIZE): Move from fns.c.
16817
16818 2002-07-07 Richard M. Stallman <rms@gnu.org>
16819
16820 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16821 Instead just return 0 when there is something to be done.
16822 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16823 retry scrolling as if cursor were off the bottom.
16824 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16825 return CURSOR_MOVEMENT_MUST_SCROLL.
16826 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16827 go to try_to_scroll.
16828
16829 * buffer.c (Fbuffer_local_value): Store current value into its binding
16830 so we get the up-to-date value for the binding that is loaded.
16831
16832 * eval.c (Fdefmacro): Doc fix.
16833
16834 2002-07-05 Dave Love <fx@gnu.org>
16835
16836 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16837 correctly.
16838
16839 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16840 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16841 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16842 CCL_LookupCharConstTbl.
16843 (syms_of_ccl): Defvar translation-hash-table-vector.
16844
16845 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16846
16847 * xdisp.c: Remove unused variable `face'.
16848
16849 2002-07-04 Juanma Barranquero <lektu@terra.es>
16850
16851 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16852 obsolescence information.
16853
16854 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16855
16856 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16857 pattern. Search cache first.
16858 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16859 for Japanese font.
16860 (XLoadQueryFont): Use it.
16861
16862 2002-07-02 Richard M. Stallman <rms@gnu.org>
16863
16864 * keymap.c (Fdefine_key): Doc fix.
16865
16866 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16867
16868 2002-07-02 Juanma Barranquero <lektu@terra.es>
16869
16870 * keymap.c (syms_of_keymap): Fix typo.
16871
16872 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16873
16874 * s/darwin.h: Define POSIX_SIGNALS.
16875
16876 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16877 and FSRefMakePath to convert FSSpec returned with Apple Event to
16878 Posix pathname.
16879 (mac_initialize) [TARGET_API_MAC_CARBON]:
16880 Call init_required_apple_events and disable the `Quit' menu item
16881 provided automatically by the Carbon Toolbox.
16882
16883 2002-07-01 Dave Love <fx@gnu.org>
16884
16885 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16886 for K&R.
16887
16888 * xterm.c: Fix prototype for K&R.
16889
16890 * term.c (costs_set): Declare static, non-initialized for pcc.
16891
16892 2002-07-01 Richard M. Stallman <rms@gnu.org>
16893
16894 * keyboard.c (timer_last_idleness_start_time): New variable.
16895 (timer_start_idle): Set that.
16896 (read_key_sequence): Use that to reset timer_idleness_start_time
16897 to previous value.
16898
16899 * window.c (Frecenter): With arg, set optional_new_start.
16900
16901 * xdisp.c (redisplay_internal): Make optional_new_start really work.
16902
16903 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
16904 buffer for completion.
16905
16906 2002-06-29 Ken Raeburn <raeburn@gnu.org>
16907
16908 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
16909
16910 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16911
16912 * keyboard.c (readable_filtered_events): New function that filters
16913 FOCUS_IN_EVENT depending on parameter.
16914 (readable_events): Calls readable_filtered_events, not filtering
16915 FOCUS_IN_EVENT.
16916 (get_filtered_input_pending): New function, filtering parameter passed
16917 to readable_filtered_events.
16918 (get_input_pending): Calls get_filtered_input_pending, not filtering
16919 FOCUS_IN_EVENT.
16920 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
16921 FOCUS_IN_EVENT.
16922
16923 * xterm.h (struct x_output): Add focus_state.
16924
16925 * xterm.c (x_focus_changed): New function.
16926 (x_detect_focus_change): New function.
16927 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
16928 EnterNotify and LeaveNotify to track X focus changes.
16929
16930 2002-06-28 Andreas Schwab <schwab@suse.de>
16931
16932 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
16933
16934 2002-06-27 Kim F. Storm <storm@cua.dk>
16935
16936 * xdisp.c (mode_line_string_list, mode_line_string_face)
16937 (mode_line_string_face_prop): New variables.
16938 (store_mode_line_string): New function.
16939 (display_mode_element): Use store_mode_line_string to
16940 add mode-line string elements to mode_line_string_list
16941 when mode_line_string_list is non-nil.
16942 (Fformat_mode_line): Now returns propertized string by
16943 default. New arg NO-PROPS to ignore properties.
16944 (decode_mode_spec): Only add two dashes for %- in propertized
16945 mode-line string.
16946 (syms_of_xdisp): Init and staticpro mode_line_string_list.
16947
16948 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
16949
16950 * minibuf.c (minibuffer_completion_contents): Add return type.
16951
16952 2002-06-27 Juanma Barranquero <lektu@terra.es>
16953
16954 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
16955
16956 2002-06-26 Juanma Barranquero <lektu@terra.es>
16957
16958 * fileio.c (read_file_name_cleanup): Add missing return.
16959
16960 2002-06-26 Richard M. Stallman <rms@gnu.org>
16961
16962 * window.c (Frecenter): Don't set force_start flag.
16963
16964 * minibuf.c (do_completion, Fminibuffer_complete_word)
16965 (Fminibuffer_completion_help): Complete just the text before point.
16966 (minibuffer_completion_contents): New function.
16967
16968 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16969
16970 * frame.c (frames_bury_buffer): Function deleted.
16971
16972 2002-06-25 Miles Bader <miles@gnu.org>
16973
16974 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16975 the end of callint_message, allow for a terminating '\0'.
16976
16977 2002-06-24 Juanma Barranquero <lektu@terra.es>
16978
16979 * w32select.c: Include composite.h.
16980
16981 * w16select.c: Likewise.
16982
16983 2002-06-24 Kenichi Handa <handa@etl.go.jp>
16984
16985 * callproc.c (Fcall_process): If code detection is necessary,
16986 call detect_coding directly here.
16987
16988 * coding.c (detect_eol): Preserve coding->cmp_data.
16989
16990 * w16select.c (Fw16_get_clipboard_data):
16991 * w32fns.c (w32_to_x_font):
16992 * w32select.c (Fw32_get_clipboard_data):
16993 * xselect.c (selection_data_to_lisp_data):
16994 * xterm.c (XTread_socket): Disable composition handling.
16995
16996 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16997
16998 * print.c (temp_output_buffer_setup): Kill all local variables.
16999
17000 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17001
17002 * lread.c (Fread): Remove redundant and imprecise declaration.
17003
17004 * xfns.c (check_x_display_info): Use check_x_frame.
17005
17006 * .gdbinit (xprintsym): Use the new `xname' field.
17007 (xsymbol): Use it.
17008
17009 2002-06-22 Jason Rumney <jasonr@gnu.org>
17010
17011 * w32fns.c (file_dialog_callback): New function.
17012 (Fx_file_dialog): Allow selecting directories as well as files.
17013
17014 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17015
17016 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17017 OpenBSD. Add support for mipseb-*-netbsd* machines.
17018
17019 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17020
17021 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17022 black and white before scrolling. Restore frame background and
17023 foreground color after scrolling.
17024 (do_window_update): Call XClearWindow before calling expose_frame.
17025 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17026 FRAME_FOREGROUND_PIXEL of frame.
17027
17028 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17029 test Mac command key as <ALT> key.
17030
17031 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17032
17033 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17034
17035 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17036 Lookup keys in function-key-map immediately so that key-translation-map
17037 can be applied earlier.
17038 Remove function_key_possible and key_translation_possible, replaced
17039 by checking `keytran_start < t'.
17040
17041 * .gdbinit (xsymbol): Use the new `xname' field.
17042
17043 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17044
17045 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17046 test Mac command key as <ALT> key.
17047
17048 * mac.c (do_applescript): Call initialize_applescript if necessary
17049 when first called. Dispose of result_desc only when there is no error.
17050 (Fdo_applescript): Use %d format specifier instead of %ld.
17051
17052 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17053
17054 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17055 of FrontWindow for cases keyDown and autoKey.
17056
17057 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17058 Vdefault_fontset to Monaco with mac-roman coding.
17059
17060 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17061 init_process before and after inclusion of Carbon/Carbon.h, resp.
17062
17063 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17064 cursor_gc.
17065 (add_font_name_table_entry): New function.
17066 (init_font_name_table): Use add_font_name_table_entry; add italic,
17067 bold, and bold-italic entries for truetype fonts.
17068
17069 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17070 for Mac too.
17071 (try_font_list) [MAC_OS]: If no font matches given registry, try
17072 fonts with any registry matching face_family.
17073 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17074
17075 * s/darwin.h: If autoconf detects the Ncurses library, define
17076 LIBS_TERMCAP to -lncurses to use it.
17077
17078 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17079
17080 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17081
17082 2002-06-15 Richard M. Stallman <rms@gnu.org>
17083
17084 * window.c (Fset_window_configuration): Explicitly preserve
17085 the point value that new_current_buffer had at the start.
17086
17087 2002-06-14 Juanma Barranquero <lektu@terra.es>
17088
17089 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17090 Fix typos.
17091
17092 2002-06-14 Kim F. Storm <storm@cua.dk>
17093
17094 * insdel.c (insert_1_both, insert_from_string_1)
17095 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17096 insert happened in the end_unchanged region. Otherwise, the
17097 redisplay may be confused and duplicate the last line in the
17098 buffer [seen after save-buffer when require-final-newline==t].
17099
17100 2002-06-13 Jason Rumney <jasonr@gnu.org>
17101
17102 * w32.c (init_environment): Remove EMACSLOCKDIR.
17103 (stat): Swap _S_IFDIR and _S_IFREG.
17104
17105 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17106
17107 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17108 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17109 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17110 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17111 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17112 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17113 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17114 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17115 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17116 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17117 SELECTION_REQUEST_EVENT, selection_clear_event to
17118 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17119 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17120 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17121 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17122 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17123 no_event to NO_EVENT.
17124
17125 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17126
17127 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17128
17129 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17130
17131 * intervals.c (textget): Don't forget to `return'.
17132 (lookup_char_property): Use XCAR/XCDR.
17133
17134 2002-06-12 Juanma Barranquero <lektu@terra.es>
17135
17136 * xdisp.c (Fformat_mode_line): Fix typo.
17137
17138 2002-06-12 Kim F. Storm <storm@cua.dk>
17139
17140 * xdisp.c (Fformat_mode_line): New function.
17141 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17142 (store_frame_title_char, store_frame_title): Use unconditionally.
17143 (init_xdisp): Defsubr Fformat_mode_line.
17144 Initialize frame_title_buf etc. unconditionally.
17145
17146 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17147
17148 * keyboard.c (read_key_sequence):
17149 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17150 things through those maps after downcasing events.
17151 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17152 applies after function-key-map.
17153 Make sure that keytran can be done in the middle in the sequence.
17154 Be careful not to throw away events past the one we downcase.
17155
17156 * lread.c (read_integer): Remove unused var `tem'.
17157 (read1): Fix int/Lisp_Object mixup.
17158
17159 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17160
17161 2002-06-11 Richard M. Stallman <rms@gnu.org>
17162
17163 * keyboard.c (readable_events): Ignore any number of
17164 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17165
17166 2002-06-09 Miles Bader <miles@gnu.org>
17167
17168 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17169 (parse_rgb_list, tty_lookup_color): New functions.
17170 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17171 (color_distance, Fcolor_distance): New functions.
17172 (TTY_SAME_COLOR_THRESHOLD): New macro.
17173 (Qtty_color_standard_values): New variable.
17174 (syms_of_xfaces): Initialize new vars & functions.
17175
17176 2002-06-08 Colin Walters <walters@verbum.org>
17177
17178 * textprop.c (Vchar_property_alias_alist): New variable.
17179 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17180
17181 * intervals.c (lookup_char_property): New function for looking up
17182 overlay and text properties, created from textget.
17183 (textget): Use it.
17184
17185 * intervals.h (lookup_char_property): Declare.
17186 (Vchar_property_alias_alist): Declare.
17187
17188 * buffer.c (Foverlay_get): Use lookup_char_property.
17189
17190 2002-06-07 Sam Steingold <sds@gnu.org>
17191
17192 * xselect.c (lisp_data_to_selection_data): Fix last change:
17193 *data_ret is not a Lisp string, while unibyte_string is.
17194
17195 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17196
17197 * xselect.c (lisp_data_to_selection_data): Fix last change:
17198 set size_ret.
17199
17200 2002-06-07 Andreas Schwab <schwab@suse.de>
17201
17202 * m/amdx86-64.h: New file.
17203
17204 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17205
17206 * fns.c (Fstring_make_unibyte): Doc fix.
17207
17208 * xselect.c (lisp_data_to_selection_data): If the requested type
17209 is STRING, call string_make_unibyte to encode the selected text
17210 as a string.
17211
17212 * window.c (Fset_window_hscroll): Doc fix.
17213
17214 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17215
17216 * fileio.c (choose_write_coding_system):
17217 Call select-safe-coding-system properly.
17218
17219 2002-06-03 Richard M. Stallman <rms@gnu.org>
17220
17221 * xdisp.c (message_with_string): Error if STRING is not a string.
17222
17223 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17224
17225 * fileio.c (choose_write_coding_system): Pass FILE arg to
17226 Vselect_safe_coding_system_function.
17227
17228 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17229
17230 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17231
17232 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17233
17234 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17235 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17236 * keymap.c (describe_command): Likewise.
17237 * minibuf.c (read_minibuf): Likewise.
17238
17239 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17240 Cast `current_column' return value to int.
17241 (back_to_previous_visible_line_start)
17242 (reseat_at_next_visible_line_start, next_element_from_buffer):
17243 Cast `indented_beyond_p' 3rd arg to float.
17244
17245 * indent.c (last_known_column): Now a float.
17246 (current_column_1, position_indentation, current_column)
17247 (string_display_width): Return float.
17248 (Fcurrent_column): Cast `current_column' return value to int.
17249 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17250 (indented_beyond_p): Third arg now a float.
17251 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17252
17253 * lisp.h (current_column): Now returns float.
17254 (indented_beyond_p): 3rd arg now a float.
17255
17256 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17257
17258 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17259 is Qcompound_text_with_extensions.
17260
17261 * xselect.c (lisp_data_to_selection_data): Always set selection
17262 type as string if x_encode_text returns streingp non-NULL.
17263
17264 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17265
17266 2002-05-30 Richard M. Stallman <rms@gnu.org>
17267
17268 * window.c (Fset_window_configuration): Correct the handling
17269 of point in current buffer, to work with multiple windows.
17270
17271 2002-05-29 Colin Walters <walters@verbum.org>
17272
17273 * lread.c (Fread_from_string): Don't depend on order of evaluation
17274 for C function parameters.
17275
17276 2002-05-28 Richard M. Stallman <rms@gnu.org>
17277
17278 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17279 way for blinked-off state and for a nonselected window.
17280
17281 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17282 instead, see if the new start pos is at beginning of line.
17283
17284 * fileio.c (Fwrite_region): If START is a string, don't
17285 make any annotations.
17286
17287 * eval.c (syms_of_eval): Doc fix.
17288
17289 2002-05-28 Colin Walters <walters@debian.org>
17290
17291 * emacs.c (USAGE1): Add --no-splash.
17292 (standard_args): Ditto.
17293
17294 2002-05-28 Colin Walters <walters@gnu.org>
17295
17296 * lread.c (readchar_count): New variable.
17297 (readchar): Increment it.
17298 (unreadchar): Decrement it.
17299 (read_multibyte): Decrement it.
17300 (Vread_with_symbol_positions): New variable.
17301 (Vread_symbol_positions_list): New variable.
17302 (read_internal_start): New function, created from Fread and
17303 Fread_from_string. Handle Vread_symbol_positions_list and
17304 Vread_with_symbol_positions.
17305 (readevalloop, Fread, Fread_from_string): Use it.
17306 (read1): Use readchar_count to add symbol positions to
17307 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17308 (syms_of_lread): DEFVAR_LISP and initialize them.
17309
17310 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17311 (substitute_object_recurse, substitute_object_in_subtree)
17312 (substitute_in_interval): Prototype.
17313 (read_multibyte): Return c if it's less than zero.
17314
17315 2002-05-28 Kim F. Storm <storm@cua.dk>
17316
17317 * fileio.c (Fread_file_name_internal): Added brute-force
17318 speed up for using predicate file-directory-p.
17319
17320 2002-05-28 Kim F. Storm <storm@cua.dk>
17321
17322 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17323 New variables.
17324 (syms_of_fileio): DEFVAR_LISP them.
17325 (read_file_name_cleanup): New unwind function.
17326 (Fread_file_name_internal): Only return completions satifying
17327 Vread_file_name_predicate. Temporarily unwind protect and rebind
17328 default-directory while checking completions against the predicate.
17329 (Fread_file_name): Added PREDICATE argument. Specbind it to
17330 Vread_file_name_predicate during completion.
17331 Call Vread_file_name_function to read the file name if non-nil.
17332
17333 * lisp.h (Fread_file_name): Now has 6 args.
17334
17335 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17336 predicate for Fread_file_name when reading directory name.
17337 Supply Qnil for predicate in other calls to Fread_file_name.
17338
17339 2002-05-26 Miles Bader <miles@gnu.org>
17340
17341 * term.c (tty_capable_p): New function.
17342 * dispextern.h (tty_capable_p): New function declaration.
17343 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17344 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17345
17346 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17347
17348 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17349 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17350 (Vwrite_region_annotate_functions): Docstring fix.
17351
17352 2002-05-23 Kim F. Storm <storm@cua.dk>
17353
17354 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17355 phys_cursor's hpos is overwritten. This is still not completely
17356 correct, as it doesn't really make sense to use hpos at all to
17357 get the cursor glyph (as that is relative to the width of the
17358 characters on the line, which may have changed during the update).
17359
17360 2002-05-22 Jason Rumney <jasonr@gnu.org>
17361
17362 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17363 Lisp_Object.
17364 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17365 Use modified enumfont_t struct.
17366
17367 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17368
17369 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17370 Handle the `hbar' cursor type.
17371 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17372
17373 * w32fns.c (Qhbar): New variable.
17374 (x_specified_cursor_type): Use it.
17375
17376 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17377
17378 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17379 now, when the address is needed.
17380
17381 2002-05-21 Colin Walters <walters@gnu.org>
17382
17383 * Makefile.in (shortlisp): Add font-core.el.
17384
17385 2002-05-20 Richard M. Stallman <rms@gnu.org>
17386
17387 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17388
17389 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17390 equivalent key bindings here.
17391
17392 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17393
17394 Change symbol structure to contain a lisp object for the symbol
17395 name:
17396 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17397 object field named "xname".
17398 (SYMBOL_NAME): New macro.
17399 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17400 name field.
17401 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17402 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17403 instead of name field.
17404 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17405 SYMBOL_NAME instead of XSYMBOL and name field.
17406 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17407 instead of XSYMBOL and name field.
17408 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17409 and SYMBOL_NAME instead of XSYMBOL and name field.
17410 * coding.c (Fread_coding_system, code_convert_region1)
17411 (code_convert_string1, code_convert_string_norecord)
17412 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17413 XSYMBOL and name field.
17414 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17415 (Fmake_variable_buffer_local, Fmake_local_variable)
17416 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17417 of XSYMBOL and name field.
17418 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17419 XSYMBOL and name field.
17420 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17421 instead of XSYMBOL and name field.
17422 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17423 XSYMBOL and name field.
17424 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17425 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17426 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17427 instead of XSYMBOL and name field.
17428 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17429 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17430 (parse_solitary_modifier, Fexecute_extended_command):
17431 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17432 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17433 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17434 of XSYMBOL and name field.
17435 (describe_command, describe_translation): Use SYMBOL_NAME and
17436 assignment instead of XSYMBOL and name field and XSETSTRING.
17437 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17438 instead of XSYMBOL and name field.
17439 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17440 name field and XSETSTRING.
17441 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17442 of XSYMBOL and name field.
17443 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17444 assignment instead of XSYMBOL and name field and XSETSTRING.
17445 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17446 XSTRING instead of XSYMBOL and name field.
17447 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17448 and XSTRING instead of XSYMBOL and name field.
17449 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17450 and XSTRING instead of XSYMBOL and name field.
17451 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17452 XSTRING instead of XSYMBOL and name field.
17453 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17454 of XSYMBOL and name field.
17455 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17456 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17457
17458 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17459
17460 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17461 and XCDR real rvalues in most configurations.
17462
17463 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17464 Don't take the address of the cdr part of a cons cell; instead, track
17465 the parent cell and call XSETCDR, or set the variable for the head
17466 of the list if we haven't started down the list yet.
17467
17468 2002-05-19 Richard M. Stallman <rms@gnu.org>
17469
17470 * doc.c (reread_doc_file): Don't ask for confirmation.
17471
17472 2002-05-18 Jason Rumney <jasonr@gnu.org>
17473
17474 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17475 (xbm_load_image): Use it.
17476 (xbm_load): Ditto.
17477 (xbm_read_bitmap_data): Reverted to xfns.c version.
17478 From David Ponce <david@dponce.com>.
17479
17480 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17481
17482 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17483 2.02 and later.
17484
17485 2002-05-16 Juanma Barranquero <lektu@terra.es>
17486
17487 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17488
17489 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17490
17491 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17492 meaningful test.
17493 (read_char_minibuf_menu_prompt): Fix typo.
17494
17495 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17496
17497 * eval.c (Fcommandp): Doc fix.
17498
17499 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17500
17501 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17502 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17503 (Fset_keymap_parent): Gcpro a bit more.
17504 (access_keymap): Gcpro around meta_map call and around the main loop.
17505 (get_keyelt): Gcpro when following indirect references.
17506 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17507 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17508 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17509 Remove useless ad-hoc remap code.
17510
17511 2002-05-13 Richard M. Stallman <rms@gnu.org>
17512
17513 * search.c (search_buffer): Give up boyer moore search if inverse
17514 translation change charset_base.
17515
17516 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17517
17518 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17519 characters is carried over from the previous block of text, adjust
17520 coding->produced to account for the extra character.
17521
17522 2002-05-11 Andreas Schwab <schwab@suse.de>
17523
17524 * coding.c (intersection): Keep the elements of the returned list
17525 in the same order as in the first list.
17526
17527 2002-05-11 Kim F. Storm <storm@cua.dk>
17528
17529 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17530 only update cmm_size if realloc actually succeeds.
17531 Testing with initial size of 2 elements revealed that using
17532 realloc on GNU/Linux would cause a random trap in xmalloc
17533 later on, so I rewrote the code to use malloc/bcopy/free instead
17534 of realloc.
17535
17536 2002-05-10 Jason Rumney <jasonr@gnu.org>
17537
17538 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17539
17540 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17541
17542 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17543 parens, to ensure correct evaluation order.
17544
17545 2002-05-10 Kim F. Storm <storm@cua.dk>
17546
17547 * keymap.c (Vemulation_mode_map_alists): New variable.
17548 (syms_of_keymap): DEFVAR_LISP it.
17549 (current_minor_maps): Process keymap alists in that list before
17550 minor-mode-overriding-map-alist and minor-mode-map-alist.
17551
17552 2002-05-09 Richard M. Stallman <rms@gnu.org>
17553
17554 * search.c (Freplace_match): Doc fix.
17555
17556 2002-05-09 Kim F. Storm <storm@cua.dk>
17557
17558 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17559 Enlarge cursor rectangle drawn around image with non-zero relief.
17560
17561 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17562 Enlarge cursor rectangle drawn around image with non-zero relief.
17563
17564 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17565 Enlarge cursor rectangle drawn around image with non-zero relief.
17566
17567 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17568
17569 * xselect.c (lisp_data_to_selection_data): Don't set selection
17570 type if comes from the Lisp object's car. If the selection
17571 contains a pure ASCII text, always return QSTRING as its type.
17572
17573 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17574
17575 * mac.c (mac-cut-function): Doc fix.
17576
17577 2002-05-05 Richard M. Stallman <rms@gnu.org>
17578
17579 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17580
17581 2002-05-04 Jason Rumney <jasonr@gnu.org>
17582
17583 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17584 for event-click-count.
17585
17586 * process.c (init_process): Only add server subfeature if we can
17587 use non-blocking I/O.
17588
17589 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17590
17591 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17592 repeatedly.
17593
17594 2002-05-03 Jason Rumney <jasonr@gnu.org>
17595
17596 * process.c (Fmake_network_process): Only support server sockets
17597 when we can make them non-blocking.
17598
17599 * s/ms-w32.h (HAVE_SELECT): Define.
17600
17601 * w32.h (FILE_NDELAY): New flag.
17602
17603 * w32.c (sys_getpeername, fcntl): New functions.
17604 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17605
17606 * w32proc.c: Include sys/file.h.
17607
17608 2002-05-03 Colin Walters <walters@verbum.org>
17609
17610 * callproc.c (Vgame_score_directory): Renamed to
17611 Vshared_game_score_directory.
17612
17613 2002-04-30 Richard M. Stallman <rms@gnu.org>
17614
17615 * s/gnu.h [emacs]: Include stdio.h.
17616 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17617
17618 * eval.c (do_autoload): Error if called while preparing to dump.
17619
17620 * fns.c (Frequire): Error if need to load while preparing to dump.
17621
17622 2002-04-28 Colin Walters <walters@verbum.org>
17623
17624 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17625 Default to "~/.emacs.d/games".
17626
17627 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17628
17629 * lread.c (openp): Change arg exec_only to predicate.
17630 (build_load_history): Use XCAR/XCDR.
17631 (Flocate_file_internal): New fun.
17632 (syms_of_lread): Defsubr it.
17633 (Fload): Update call to openp.
17634
17635 * lisp.h (openp): Update prototype.
17636
17637 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17638 * w32proc.c (sys_spawnve):
17639 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17640 * w32.c (check_windows_init_file):
17641 * sound.c (Fplay_sound_internal):
17642 * process.c (Fstart_process):
17643 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17644 * mac.c (run_mac_command):
17645 * emacs.c (init_cmdargs):
17646 * callproc.c (Fcall_process): Update call to openp.
17647
17648 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17649
17650 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17651
17652 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17653
17654 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17655 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17656
17657 2002-04-28 Richard M. Stallman <rms@gnu.org>
17658
17659 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17660
17661 * eval.c (Fcommandp): New arg for_call_interactively.
17662 * lisp.h (Fcommandp): Declare new arg.
17663
17664 2002-04-28 Jason Rumney <jasonr@gnu.org>
17665
17666 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17667
17668 * w32.c (stat, fstat): Use file index information to generate
17669 inodes for directories where available.
17670
17671 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17672
17673 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17674 [HAVE_CARBON]: Include Mac object files.
17675
17676 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17677 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17678 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17679 MAC_OSX, and MAC_OS instead of macintosh.
17680
17681 * editfns.c [MAC_OS8]: Include stdio.h.
17682
17683 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17684
17685 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17686 Apple Monaco.
17687
17688 * process.c (QCfamily, QCfilte): Declare extern.
17689 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17690 calling select.
17691
17692 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17693
17694 * tparam.c [MAC_OSX]: Don't define BC and UP.
17695
17696 * config.in [HAVE_CARBON]: Add.
17697
17698 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17699 Move here from mac/src and mac/inc.
17700
17701 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17702
17703 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17704
17705 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17706 Compute phys_cursor_width from the x position returned
17707 by x_draw_glyhs, which is cheaper.
17708 (x_display_and_set_cursor): Compute the buffer-local value
17709 of `cursor-in-non-selected-windows' only when needed.
17710
17711 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17712
17713 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17714 cursor on a stretch glyph has a width that depends on
17715 x_stretch_cursor_p.
17716
17717 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17718
17719 * abbrev.c (abbrev-start-location): Doc fix.
17720
17721 * indent.c (Fvertical_motion): Fix last change.
17722
17723 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17724
17725 * indent.c (Fvertical_motion): Move to the start of the line
17726 containing PT before moving up or down.
17727
17728 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17729
17730 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17731 case of writing a whole row, more or less analogous to the case of
17732 writing only parts of a row.
17733
17734 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17735 0 for NO_CURSOR.
17736
17737 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17738
17739 2002-04-23 Colin Walters <walters@verbum.org>
17740
17741 * buffer.c (syms_of_buffer): Doc fix.
17742
17743 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17744
17745 * xterm.c (notice_overwritten_cursor): Handle the special case
17746 of the cursor being in the first blank non-text line at the
17747 end of a window.
17748
17749 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17750 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17751 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17752 bar cursors only, to make phys_cursor_width contain what its name
17753 suggests.
17754 (notice_overwritten_cursor): Consider the cursor image erased if
17755 the output area intersects the cursor image in y-direction.
17756
17757 2002-04-23 Simon Marshall <simon@gnu.org>
17758
17759 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17760 to XC_hand2.
17761
17762 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17763
17764 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17765
17766 2002-04-22 Kim F. Storm <storm@cua.dk>
17767
17768 * textprop.c (remove_properties): Fixed trap for malformed plist.
17769
17770 2002-04-22 Richard M. Stallman <rms@gnu.org>
17771
17772 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17773
17774 * window.c (make_window): Initialize height_fixed_p,
17775 last_cursor_off_p, and p->cursor_off_p slots.
17776
17777 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17778
17779 * fns.c (use-dialog-box): Doc fix.
17780
17781 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17782
17783 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17784 variables `row', `i' and `area'.
17785 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17786 toolkit library.
17787
17788 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17789
17790 * xfaces.c (clear_font_table): Don't free the default font of
17791 a frame even if it's on another display.
17792 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17793 that could be Qt.
17794
17795 2002-04-19 Juanma Barranquero <lektu@terra.es>
17796
17797 * indent.c (Fmove_to_column): Remove unused local variable
17798 `next_boundary_byte'.
17799 (current_column_1): Likewise.
17800
17801 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17802
17803 * msdos.c (Qhbar): New variable.
17804 (syms_of_msdos): Intern and staticpro it.
17805 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17806 cursor type.
17807
17808 2002-04-19 Dave Lambert <dlambert@acm.org>
17809
17810 Theses change implement an underscore-like (`hbar') cursor.
17811
17812 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17813
17814 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17815 Handle the `hbar' cursor type.
17816 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17817
17818 * xfns.c (Qhbar): New variable.
17819 (syms_of_xfns): Intern and staticpro it.
17820 (x_specified_cursor_type): Handle `hbar' cursor.
17821
17822 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17823 not defined.
17824
17825 2002-04-18 Richard M. Stallman <rms@gnu.org>
17826
17827 * textprop.c (remove_properties): New arg LIST allows scanning
17828 either a list or a plist.
17829 (interval_has_some_properties_list): New function, like
17830 interval_has_some_properties using list instead of plist.
17831 All callers changed.
17832 (Fremove_list_of_text_properties): New function.
17833 (syms_of_textprop): Defsubr it.
17834
17835 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17836
17837 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17838
17839 2002-04-17 Juanma Barranquero <lektu@terra.es>
17840
17841 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17842
17843 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17844
17845 * window.c (coordinates_in_window): Don't report on margin area
17846 if its width is zero.
17847
17848 2002-04-16 Jason Rumney <jasonr@gnu.org>
17849
17850 * w32fns.c (Fx_file_dialog): Decode file name before using.
17851
17852 * w32term.c (construct_drag_n_drop): Likewise.
17853
17854 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17855
17856 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17857 store load-history in pure space.
17858
17859 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17860
17861 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17862
17863 * xterm.c (Qlatin_1, Qutf_8): New vars.
17864 (syms_of_xterm): Initialize them.
17865 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17866 decoding the output of X*LookupString.
17867 Always use latin-1 to decode the output of XLookupString.
17868 Try Xutf8LookupString if XmbLookupString failed.
17869
17870 * region-cache.c (new_region_cache): Use BEG.
17871
17872 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17873
17874 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17875 configuration files.
17876 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17877 returns 0.
17878
17879 2002-04-15 Andreas Schwab <schwab@suse.de>
17880
17881 * config.in: Regenerated using autoheader.
17882
17883 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17884 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17885 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17886 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17887 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17888 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17889 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17890 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17891 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17892 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17893 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17894 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17895 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
17896 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
17897 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
17898 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
17899 STACK_DIRECTION, now set by autoconf.
17900
17901 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17902
17903 * dispnew.c (marginal_area_string): Sort arguments.
17904
17905 * dispextern.h (marginal_area_string): Add prototype.
17906
17907 2002-04-13 Richard M. Stallman <rms@gnu.org>
17908
17909 * fileio.c (Finsert_file_contents):
17910 Don't call temp_output_buffer_setup--do just part, by hand.
17911
17912 * coding.c (run_pre_post_conversion_on_str):
17913 Don't call temp_output_buffer_setup--do just part, by hand.
17914
17915 * keyboard.c (command_loop_1): Don't call start_hourglass
17916 or cancel_hourglass when executing a macro.
17917
17918 * marker.c (count_markers): New function.
17919
17920 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
17921 grow without limit. Move recently used elements to the front.
17922
17923 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
17924
17925 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
17926
17927 2002-04-12 Gerd Moellmann <gerd@gnu.org>
17928
17929 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
17930 rows marginal areas.
17931 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
17932 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
17933
17934 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
17935
17936 2002-04-12 Dave Love <fx@gnu.org>
17937
17938 * dispnew.c (marginal_area_string): New.
17939
17940 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
17941 (Qleft_margin, Qright_margin): Declare.
17942 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
17943
17944 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
17945 note_mode_line_highlight and extended.
17946
17947 * keyboard.c (Qleft_margin, Qright_margin): Declare.
17948 (make_lispy_event): Deal with mouse events in margins.
17949
17950 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
17951
17952 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
17953
17954 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
17955 than deactivating the mark if tmm is set to `lambda'.
17956 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
17957 Use a single event for HELP_EVENT.
17958 (Fexecute_extended_command): Save last_point_position.
17959
17960 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17961
17962 * lisp.h (Fpropertize): Add prototype.
17963
17964 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17965
17966 2002-04-10 Colin Walters <walters@verbum.org>
17967
17968 * config.in: Add HAVE_SHARED_GAME_DIR.
17969
17970 * callproc.c (Vgame_score_directory): New variable.
17971 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17972
17973 2002-04-10 Richard M. Stallman <rms@gnu.org>
17974
17975 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17976
17977 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17978
17979 * minibuf.c (read_minibuf): Use empty_string.
17980 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17981 Short-circuit the search as soon as it "failed".
17982 (Fall_completions): Allow lambda forms and lists of strings for alist.
17983 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17984 when require_match is nil.
17985 (Ftest_completion): Rename from `test_completion' and export to elisp.
17986 Call the predicate also when alist is a list.
17987 Obey Vcompletion_regexp_list.
17988 (do_completion, Fminibuffer_complete_and_exit): Use it.
17989 (Fassoc_string): Rename from `assoc_for_completion'.
17990 Allow list of strings as well and export to elisp.
17991
17992 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17993
17994 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17995
17996 2002-04-08 Juanma Barranquero <lektu@terra.es>
17997
17998 * w32.c (sys_accept): Don't hide variable `s'.
17999
18000 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18001
18002 * callint.c (Fcall_interactively): Use INTEGERP instead of
18003 NUMBERP for checking Vhistory_length.
18004
18005 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18006
18007 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18008 Doc fix to reflect it.
18009
18010 2002-04-04 Richard M. Stallman <rms@gnu.org>
18011
18012 * xdisp.c (display_mode_element): New arg RISKY.
18013 Disregard text props found or specified within a variable
18014 that isn't marked risky-local-variable.
18015 (Qrisky_local_variable): New variable.
18016 (syms_of_xdisp): Init and staticpro it.
18017
18018 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18019
18020 * undo.c (record_point): New fun.
18021 (record_delete, record_insert): Use it.
18022
18023 2002-04-03 Juanma Barranquero <lektu@terra.es>
18024
18025 * doc.c (Fdocumentation): Add missing parentheses.
18026 (Fdocumentation_property): Likewise.
18027
18028 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18029
18030 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18031 data is 0, just return nil.
18032
18033 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18034
18035 * msdos.c (syms_of_msdos): Fix last change with
18036 mouse_autoselect_window.
18037
18038 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18039
18040 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18041 mouse_autoselect_window.
18042
18043 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18044
18045 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18046 with system-specific keysyms. Use it also for unknown function keys.
18047
18048 * doc.c (reread_doc_file): Return whether reload was attempted.
18049 (Fdocumentation, Fdocumentation_property): Don't try to reload
18050 if the doc is 0 and only ask once.
18051
18052 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18053
18054 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18055
18056 * keyboard.c (read_char): If the event was Qselect_window,
18057 restore timer_idleness_start_time to its previous value.
18058
18059 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18060
18061 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18062
18063 * region-cache.c (new_region_cache): Use BEG.
18064
18065 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18066 Use BEG and BEG_BYTE.
18067
18068 * doc.c (get_doc_string): Return nil if the location is wrong.
18069 (reread_doc_file): New fun.
18070 (Fdocumentation, Fdocumentation_property):
18071 Call it if get_doc_string fails.
18072 (Fsnarf_documentation): Make it work for a dumped Emacs.
18073
18074 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18075 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18076
18077 * charset.c (Fstring): Allow 0 arguments.
18078
18079 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18080
18081 * process.c (DATAGRAM_CONN_P, list_processes_1)
18082 (Fprocess_datagram_address, Fset_process_datagram_address)
18083 (Fset_network_process_options, server_accept_connection):
18084 Fix some int/Lisp_Object confusions (thank you union types).
18085
18086 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18087
18088 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18089
18090 * w32term.c: Likewise.
18091 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18092
18093 * keyboard.c (Qselect_window): New symbol.
18094 (head_table): Use it.
18095 (keys_of_keyboard): Bound select-window event to handle-select-window.
18096 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18097
18098 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18099 (last_window): New variable.
18100 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18101 (note_mouse_movement): Remove reimplemented code in #if 0.
18102 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18103 Emacs windows.
18104
18105 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18106
18107 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18108
18109 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18110 Callers changed.
18111
18112 2002-03-30 Richard M. Stallman <rms@gnu.org>
18113
18114 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18115 loop whenever it stops making progress.
18116
18117 * widget.c (set_frame_size): Don't call change_frame_size.
18118
18119 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18120
18121 * dispnew.c (direct_output_for_insert):
18122 Call mark_window_display_accurate.
18123
18124 2002-03-29 Jason Rumney <jasonr@gnu.org>
18125
18126 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18127
18128 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18129
18130 * Makefile.in (lread.o): Depend on coding.h.
18131
18132 * lread.c (openp, Fload): Encode the file name before passing it
18133 to `stat', `access', and `emacs_open'.
18134 (openp): GCPRO the encoded file name. Don't recompute Lisp
18135 strings unnecessarily.
18136
18137 2002-03-29 Kim F. Storm <storm@cua.dk>
18138
18139 * fns.c (Flax_plist_put): Doc fix.
18140
18141 2002-03-28 Miles Bader <miles@gnu.org>
18142
18143 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18144
18145 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18146
18147 * process.c (set-network-process-options): Add usage.
18148 (make-network-process): Doc fix.
18149
18150 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18151
18152 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18153
18154 2002-03-26 Richard M. Stallman <rms@gnu.org>
18155
18156 * fns.c (Fsubstring_no_properties): New function.
18157 (Flax_plist_get, Flax_plist_put): New functions.
18158 (syms_of_fns): defsubr them.
18159
18160 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18161 don't test or alter w->update_mode_line.
18162
18163 * window.c (Fdisplay_buffer): Doc fix.
18164
18165 2002-03-24 Richard M. Stallman <rms@gnu.org>
18166
18167 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18168
18169 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18170
18171 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18172 (Fdefmacro): Handle `(declare ...)'.
18173 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18174 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18175
18176 2002-03-24 Jason Rumney <jasonr@gnu.org>
18177
18178 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18179 (xbm_file_p): Add prototypes.
18180 (xbm_format, xbm_image_p): Sync with xfns.c.
18181 (reflect_byte): New function.
18182 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18183 (xbm_load_image): Create bitmaps with a depth of 1.
18184 (init_xfns): Enable XBM images.
18185
18186 2002-03-23 Jason Rumney <jasonr@gnu.org>
18187
18188 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18189 correctly. Do not pass up_modifier to keyboard buffer.
18190
18191 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18192
18193 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18194
18195 * Makefile.in (bootstrapclean): New target.
18196 (bootstrap-temacs, bootstrap-doc): Remove.
18197 (bootstrap-emacs): Use a bog-standard `temacs'.
18198 Don't bother to build a DOC file.
18199
18200 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18201
18202 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18203 in temacs even if !CANNOT_DUMP.
18204 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18205
18206 * alloc.c (check_pure_size): Only output a warning.
18207
18208 2002-03-22 Jason Rumney <jasonr@gnu.org>
18209
18210 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18211 supported.
18212
18213 * w32term.c (zv_bits): Declare as short, for word alignment.
18214 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18215 (syms_of_w32term): Define x-use-underline-position-properties.
18216
18217 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18218 (clear_image_cache): Block input, fix logic, clear matrices in
18219 all frames that share this cache.
18220
18221 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18222
18223 * emacs.c (main): Update the Copyright year in the blurb printed
18224 by "emacs --version".
18225
18226 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18227
18228 * xterm.c (XTread_socket): If XK_ISO_Lock and
18229 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18230 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18231
18232 2002-03-21 Kim F. Storm <storm@cua.dk>
18233
18234 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18235 menu-bar bindings in keymap and local-map properties _are_ used.
18236 But try keymap property first in accordance with 2002-01-03 patch.
18237 Added comment describing why this is not always reliable.
18238 (tool_bar_items): Ditto for tool-bar.
18239
18240 2002-03-21 Jason Rumney <jasonr@gnu.org>
18241
18242 * w32fns.c (x_clear_image_1): Disable color table code.
18243
18244 2002-03-21 Kim F. Storm <storm@cua.dk>
18245
18246 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18247 removed the wrong version of the DEFUN macro; fixed it.
18248
18249 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18250 Fmember rather than Fmemq).
18251 (Fprovide): Check that subfeatures is a list.
18252
18253 * process.c (QCfeature, QCdatagram): Removed variables.
18254 (QCtype, Qdatagram): New variables.
18255 (network_process_featurep): Removed function.
18256 (Fmake_network_process): Removed :feature check.
18257 Use :type 'datagram instead of :datagram t to create a datagram
18258 socket. This allows us to add other connection types (e.g. raw
18259 sockets) later in a consistent manner.
18260 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18261 supported subfeatures for feature make-network-process.
18262 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18263 Intern and staticpro QCtype and Qdatagram.
18264 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18265
18266 * xfns.c: (QCtype): Remove duplicate declaration and
18267 initialization (is now declared in process.c).
18268
18269 * w32fns.c: (QCtype): Remove duplicate declaration and
18270 initialization (is now declared in process.c).
18271
18272 2002-03-21 Richard M. Stallman <rms@gnu.org>
18273
18274 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18275 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18276 when jumping to `fail' to avoid undoing reg changes in the
18277 last iteration of the loop.
18278 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18279
18280 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18281 Depend on process.h.
18282
18283 2002-03-20 Jason Rumney <jasonr@gnu.org>
18284
18285 Most of the following changes are still conditional on HAVE_IMAGES
18286 which is not set by default on Windows.
18287
18288 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18289
18290 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18291 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18292 (four_corners_best, x_clear_image_1, x_clear_image)
18293 (x_alloc_image_color, postprocess_image)
18294 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18295 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18296 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18297
18298 * w32gui.h (struct XImage): Define.
18299
18300 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18301 extract mouse co-ordinates.
18302
18303 2002-03-20 Jason Rumney <jasonr@gnu.org>
18304
18305 * w32.c (init_winsock): Dynamically load new server and UDP
18306 socket functions.
18307 (socket_to_fd): New function.
18308 (sys_socket): Use it.
18309 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18310 (sys_recvfrom, sys_sendto): New wrapper functions.
18311
18312 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18313 and initialization.
18314
18315 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18316
18317 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18318
18319 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18320 Don't use "sun" as a variable, it's a predefined constant on Sun
18321 machines.
18322
18323 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18324
18325 * bytecode.c (Fbyte_code): Revert last change.
18326
18327 2002-03-19 Kim F. Storm <storm@cua.dk>
18328
18329 * makefile.w32-in (LIBS): Add $(WSOCK32).
18330 From David Ponce <dponce@voila.fr>.
18331
18332 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18333
18334 * process.c (wait_reading_process_input): Move variables `pname'
18335 and `pnamelen' down where they are used.
18336
18337 * bytecode.c (Fbyte_code): Discard unused computed value to
18338 prevent gcc warning.
18339
18340 * lisp.h (Fplist_member): Add prototype.
18341
18342 2002-03-18 Kim F. Storm <storm@cua.dk>
18343
18344 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18345 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18346
18347 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18348 Remove explicit GNU_LINUX settings for datagram support.
18349
18350 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18351
18352 * process.c (Fmake_network_process): Remove unused variable `sa'.
18353 Doc fix. Add usage:.
18354 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18355
18356 2002-03-17 Richard M. Stallman <rms@gnu.org>
18357
18358 * xdisp.c (cursor_type_changed): New variable.
18359 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18360 Clear it when clearing windows_or_buffers_changed.
18361 (try_cursor_movement, redisplay_window, try_window_id)
18362 (try_window_reusing_current_matrix): Test cursor_type_changed
18363 along with windows_or_buffers_changed.
18364
18365 * window.h (cursor_type_changed): New variable.
18366
18367 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18368 not update_mode_lines, and always set it to 1.
18369
18370 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18371 if no frames needed redrawing.
18372
18373 2002-03-17 Kim F. Storm <storm@cua.dk>
18374
18375 The following changes add support for network server processes,
18376 datagram connections, and local (unix) sockets.
18377
18378 * process.h (struct Lisp_Process): New member log.
18379 Doc fix: Member command used to indicate stopped network process.
18380 Doc fix: Member childp contains plist for network process.
18381 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18382
18383 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18384 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18385 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18386 New variables.
18387 (NETCONN1_P): New macro.
18388 (DATAGRAM_SOCKETS): New conditional symbol.
18389 (datagram_address): New array.
18390 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18391 (status_message): Use concat3.
18392 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18393 for a stopped network process.
18394 (Fset_process_buffer): Update contact plist for network process.
18395 (Fset_process_filter): Ditto. Don't enable input for stopped
18396 network processes. Server must listen, even if filter is t.
18397 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18398 New functions.
18399 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18400 (Fprocess_contact): Added KEY argument. Handle datagrams.
18401 (list_processes_1): Optionally show only processes with the query
18402 on exit flag set. Dynamically adjust column widths. Omit tty
18403 column if not needed. Report stopped network processes.
18404 Identify server and datagram network processes.
18405 (Flist_processes): New optional arg `query-only'.
18406 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18407 (conv_lisp_to_sockaddr, set_socket_options)
18408 (network_process_featurep, unwind_request_sigio): New helper functions.
18409 (Fprocess_datagram_address, Fset_process_datagram_address):
18410 (Fset_network_process_options): New lisp functions.
18411 (Fopen_network_stream): Removed. Now defined in simple.el.
18412 (Fmake_network_process): New lisp function. Code is based on previous
18413 Fopen_network_stream, but heavily reworked with new property list based
18414 argument list, support for datagrams, server processes, and local
18415 sockets in addition to old client-only functionality.
18416 (server_accept_connection): New function.
18417 (wait_reading_process_input): Use it to handle incoming connects.
18418 Do not enable input on a new connection if process is stopped.
18419 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18420 (send_process): Handle datagram sockets.
18421 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18422 network process is indicated by setting command field to t .
18423 (Fprocess_send_eof): No-op if datagram connection.
18424 (Fstatus_notify): Don't read input for a stream server socket or a
18425 stopped network process.
18426 (init_process): Initialize datagram_address array.
18427 (syms_of_process): Intern and staticpro new variables, defsubr new
18428 functions.
18429
18430 2002-03-16 Jason Rumney <jasonr@gnu.org>
18431
18432 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18433 startup case.
18434
18435 2002-03-16 Richard M. Stallman <rms@gnu.org>
18436
18437 * xdisp.c (redisplay_internal, redisplay_windows):
18438 Use list_of_error to call internal_condition_case_1.
18439 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18440 so as to catch all errors with no possibility of debugger redisplay.
18441 (list_of_error): New variable.
18442 (syms_of_xdisp): Init and staticpro it.
18443
18444 * print.c (print_object): Delete `\ ' from printed rep of frame.
18445
18446 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18447
18448 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18449 until its implementation is fixed.
18450
18451 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18452
18453 * xfns.c (png_load): Remove unused variable `gamma_str'.
18454
18455 2002-03-14 Richard M. Stallman <rms@gnu.org>
18456
18457 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18458
18459 2002-03-14 Miles Bader <miles@gnu.org>
18460
18461 * intervals.c (adjust_for_invis_intang): New function.
18462 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18463 work for dealing with invisible+intangible regions. Do so before
18464 and after both forward and backward movements, to handle both
18465 front-sticky and rear-sticky cases.
18466 * textprop.c (text_property_stickiness): Function moved here from
18467 `editfns.c'.
18468 * intervals.h (text_property_stickiness): New declaration.
18469 * editfns.c (char_property_eq): Function removed.
18470 (text_property_stickiness): Function moved to `textprop.c'.
18471
18472 2002-03-13 Jason Rumney <jasonr@gnu.org>
18473
18474 * config.in: Add STRFTIME_NO_POSIX2.
18475
18476 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18477 and %OX when underlying strftime does not.
18478
18479 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18480
18481 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18482 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18483 line) to avoid annoying flicker.
18484 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18485 (XTread_socket): Mark it static.
18486
18487 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18488
18489 2002-03-13 Kim F. Storm <storm@cua.dk>
18490
18491 * puresize.h (BASE_PURESIZE): Increase to 775000.
18492
18493 2002-03-12 Juanma Barranquero <lektu@terra.es>
18494
18495 * editfns.c (syms_of_editfns): Fix typo.
18496
18497 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18498
18499 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18500 Include termopt.h for interrupt_input.
18501
18502 2002-03-11 Andreas Schwab <schwab@suse.de>
18503
18504 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18505
18506 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18507
18508 * xterm.c (note_mouse_movement): Put code for
18509 x_autoselect_window_p in #if 0.
18510
18511 * lread.c (Fload): Don't assume that message_with_string uses the
18512 string it is given like a C string.
18513
18514 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18515
18516 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18517
18518 * xterm.c (XTread_socket): Add call to x_session_check_input and
18519 x_session_have_connection.
18520 (x_initialize): Add call to x_session_initialize.
18521
18522 * termhooks.h (enum event_kind): Add save_session_event.
18523
18524 * keyboard.c: Add Emacs event save_session_event.
18525
18526 * emacs.c (main): Add call to syms_of_xsmfns.
18527
18528 * lisp.h (syms_of_xsmfns): Declare extern.
18529
18530 * config.in: Add HAVE_X_SM.
18531
18532 * Makefile.in (LIBXT): Add -lSM -lICE
18533 if HAVE_X_SM and not USE_X_TOOLKIT.
18534 (XOBJ): New file xsmfns.c added.
18535
18536 * xsmfns.c: New file for X session management.
18537
18538 2002-03-09 Jason Rumney <jasonr@gnu.org>
18539
18540 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18541 read-only when setting modified time.
18542
18543 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18544
18545 * xdisp.c (move_it_vertically_backward): At the end of the function,
18546 when moving forward by lines, treat terminal frames specially.
18547
18548 * keyboard.c (echo_char): Make sure to add a separator between
18549 keys even if echo_dash hasn't been called.
18550
18551 * xdisp.c: Use new string macros.
18552 (update_echo_area): Pass number of bytes to message3 instead of
18553 number of chars.
18554 (set_message_1): Don't access a string's size_byte directly.
18555 (decode_mode_spec_coding): Use number of bytes of eoltype string
18556 instead number of chars.
18557
18558 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18559
18560 2002-03-08 Juanma Barranquero <lektu@terra.es>
18561
18562 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18563 24-bit.
18564
18565 2002-03-06 Jason Rumney <jasonr@gnu.org>
18566
18567 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18568
18569 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18570
18571 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18572 (cancel_echoing, echo_length, echo_truncate): Changed to
18573 work with new kboard definition.
18574 (echo_now): Use message3_nolog instead of message2_nolog.
18575
18576 * alloc.c (mark_kboards): Mark echo_string.
18577
18578 * keyboard.h (ECHOBUFSIZE): Removed.
18579 (struct kboard): Member echoptr removed, member echobuf renamed
18580 to echo_string.
18581
18582 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18583 message3 instead of message2 to display the message using STRING's
18584 text properties.
18585
18586 2002-03-05 Andreas Schwab <schwab@suse.de>
18587
18588 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18589
18590 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18591
18592 * frame.c (default-frame-alist): Explain that setting it doesn't
18593 affect existing frames.
18594
18595 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18596
18597 * indent.c (skip_invisible): Fix my brain fart.
18598
18599 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18600
18601 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18602
18603 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18604 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18605 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18606 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18607 and variables to use EMACS_INT instead of just int.
18608
18609 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18610
18611 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18612
18613 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18614 environment, pass it down with corrected value.
18615
18616 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18617
18618 * lread.c (read_filtered_event): Do not call start_hourglass
18619 before returning.
18620
18621 2002-03-04 Juanma Barranquero <lektu@terra.es>
18622
18623 * w32term.c (x_display_and_set_cursor): Fix typo.
18624
18625 2002-03-03 Richard M. Stallman <rms@gnu.org>
18626
18627 * fileio.c (Fmake_temp_name): Doc fix.
18628
18629 2002-03-03 Gary Wong <gtw@gnu.org>
18630
18631 * termcap.c [!emacs]: Replace ospeed for building standalone
18632 libtermcap, for binary compatibility.
18633
18634 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18635
18636 2002-03-03 Richard M. Stallman <rms@gnu.org>
18637
18638 * xrdb.c (file_p): Rename arg `path' to `filename'.
18639
18640 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18641 only if it is an integer.
18642
18643 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18644 If png_get_sRGB gives an answer, call png_set_gamma
18645 using the default image gamma value.
18646
18647 * lread.c (read1): When reading from a file, default string to
18648 multibyte only if it has some multibyte characters.
18649
18650 * print.c (print_object): Output multibyte chars 128...255
18651 using \x even if ! print_escape_multibyte.
18652
18653 * xdisp.c (display_mode_element): Move the places where
18654 bytepos, charpos, this, and lisp_string are set.
18655 Use lisp_string to set bytepos.
18656
18657 * xdisp.c (redisplay_internal):
18658 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18659
18660 * xdisp.c (display_mode_element): Merge properties specified with
18661 :propertize onto those that come with the string.
18662
18663 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18664
18665 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18666 automatic-hscrolling. Users changed.
18667 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18668 Users changed.
18669 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18670
18671 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18672
18673 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18674
18675 2002-03-02 Kim F. Storm <storm@cua.dk>
18676
18677 * window.c (Fminibuffer_selected_window): New function.
18678 (syms_of_window): Defsubr it.
18679
18680 2002-03-01 Kim F. Storm <storm@cua.dk>
18681
18682 * window.h (struct window): New member phys_cursor_width.
18683
18684 * window.c (make_window, replace_window): Init phys_cursor_width.
18685
18686 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18687 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18688
18689 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18690 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18691
18692 * lisp.h (GCPRO6): New macro.
18693
18694 * process.c (Fopen_network_stream): Use GCPRO6.
18695
18696 2002-03-01 Kim F. Storm <storm@cua.dk>
18697
18698 * process.c (Qconnect, Qfailed): New variables.
18699 (syms_of_process): Intern and staticpro them.
18700 (Fprocess_status): Document connect and failed return values.
18701 [NON_BLOCKING_CONNECT]: New conditional.
18702 (connect_wait_mask, num_pending_connects): New variables.
18703 (status_message): Convert Qfailed status.
18704 (Fopen_network_stream): Added support for non-blocking connect.
18705 New optional args: filter, sentinel, non_blocking. Doc updated.
18706 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18707 (deactivate_process): Handle pending non-blocking connect.
18708 (wait_reading_process_input): Poll for status of non-blocking
18709 connects. Exec sentinel directly when connect succeeds.
18710 (status_notify): Don't read process output if not yet connected.
18711
18712 2002-02-28 Kim F. Storm <storm@cua.dk>
18713
18714 * window.c: (minibuf_selected_window): Renamed from
18715 Vminibuf_selected_window. Users changed.
18716 (syms_of_window): Staticpro it.
18717
18718 2002-02-26 Kim F. Storm <storm@cua.dk>
18719
18720 The following changes add a new Vminibuf_selected_window variable
18721 which is similar to Vminibuf_scroll_window, but which is only set
18722 on entry to the minibuffer (from a non-minibuffer window):
18723
18724 * window.c: (Vminibuf_selected_window): New variable.
18725 (struct save_window_data): New member minibuf_selected_window.
18726 (Fset_window_configuration): Restore Vminibuf_selected_window.
18727 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18728 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18729 (compare_window_configurations): Compare minibuf_selected_window.
18730
18731 * window.h: (Vminibuf_selected_window): Declare extern.
18732
18733 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18734 entry to minibuffer or on entry from a non-minibuffer window.
18735
18736 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18737 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18738
18739 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18740 instead of Vminibuf_scroll_window when deciding in which window
18741 the region should be highlighted. Consequently, the region remains
18742 highlighteded even when a completion buffer is also displayed.
18743
18744 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18745
18746 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18747
18748 * xselect.c (Qcompound_text_with_extensions): Renamed from
18749 Qcompound_text_no_extensions.
18750 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18751
18752 2002-02-26 Juanma Barranquero <lektu@terra.es>
18753
18754 * w32proc.c (syms_of_ntproc): Doc fix.
18755
18756 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18757
18758 * intervals.h: Include "dispextern.h" unconditionally.
18759
18760 2002-02-24 Jason Rumney <jasonr@gnu.org>
18761
18762 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18763 and disp-table.elc.
18764 (lisp): Add emacs-lisp/backquote.elc.
18765
18766 2002-02-24 Kim F. Storm <storm@cua.dk>
18767
18768 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18769 The validation of the event type was too strict as it didn't
18770 allow string events; buffer names are used in bindings for
18771 menu-bar-select-buffer (see `menu-bar-update-buffers').
18772
18773 2002-02-23 Kim F. Storm <storm@cua.dk>
18774
18775 The following changes rework my patch of 2002-02-06 which
18776 added command remapping by entering the commands directly into
18777 the keymaps. Now, command remapping uses an explicit `remap'
18778 prefix in the keymaps, i.e. [remap COMMAND].
18779
18780 * keymap.c (Qremap, remap_command_vector): New variables.
18781 (is_command_symbol): Remove function.
18782 (Fdefine_key): No longer accept a symbol for KEY.
18783 Added validation of [remap COMMAND] argument for KEY.
18784 The DEF is no longer required to be a symbol when remapping a command.
18785 (Fremap_command): New function to remap command through keymaps.
18786 (Flookup_key): Perform command remapping initiated by
18787 Fremap_command directly for speed.
18788 (Fkey_binding): Use Fremap_command for command remapping.
18789 (where_is_internal): Handle new command remapping representation.
18790 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18791 staticpro them. Defsubr Fremap_command.
18792
18793 * keymap.h (Fremap_command): Declare extern.
18794 (is_command_symbol): Remove extern.
18795
18796 * keyboard.c (command_loop_1): Use Fremap_command for command
18797 remapping; now try command remapping for all symbols.
18798
18799 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18800
18801 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18802
18803 2002-02-23 Jason Rumney <jasonr@gnu.org>
18804
18805 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18806 on the string before encoding it.
18807 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18808 after decoding it.
18809
18810 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18811
18812 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18813
18814 * w32term.c (enter_timestamp): Remove unused static variable to
18815 prevent warning.
18816
18817 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18818
18819 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18820
18821 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18822
18823 * xselect.c (selection_data_to_lisp_data): Fix last change.
18824
18825 2002-02-22 Jason Rumney <jasonr@gnu.org>
18826
18827 * w32term.h (struct w32_output): New member menu_command_in_progress.
18828
18829 * w32menu.c (menubar_selection_callback): Free the menu and
18830 clear the menu_command_in_progress flag.
18831
18832 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18833 (menu_free_timer): New variable.
18834 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18835 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18836 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18837 menu command is in progress.
18838 <WM_COMMAND>: Set the menu_command_in_progress flag.
18839 Kill any menu_free_timer that is running.
18840
18841 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18842 Call ExtTextOutA rather than ExtTextOut.
18843
18844 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18845
18846 * puresize.h (BASE_PURESIZE): Increase to 755000.
18847
18848 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18849
18850 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18851 on the string before encoding it.
18852 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18853 after decoding it.
18854
18855 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18856
18857 Support for ICCCM Extended Segments in X selections:
18858
18859 * xselect.c <Qcompound_text_no_extensions>: New variable.
18860 (syms_of_xselect): Intern and staticpro it.
18861 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18862 selection text.
18863 (lisp_data_to_selection_data): If next-selection-coding-system is
18864 compound-text-no-extensions, set the type of selection to be
18865 compound-text.
18866
18867 * xterm.h (x_encode_text): Update prototype.
18868
18869 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18870 callers changed. If SELECTIONP is non-zero, run the
18871 pre-write-conversion function before encoding the selection text.
18872
18873 2002-02-21 Kim F. Storm <storm@cua.dk>
18874
18875 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18876
18877 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18878 Correct composing of language-change event.
18879
18880 2002-02-20 Kim F. Storm <storm@cua.dk>
18881
18882 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18883 bindings at PT when building menu (the menu is not updated often
18884 enough for this to work reliable).
18885 (tool_bar_items): Likewise.
18886 (current_active_maps): Removed unused (and buggy) function.
18887
18888 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18889
18890 * xfns.c (gif_load): Use correct width and height for GIF images.
18891
18892 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18893
18894 * floatfns.c (Fatan): Accept an optional second arg and call
18895 atan2 if passed 2 args.
18896
18897 2002-02-18 Jason Rumney <jasonr@gnu.org>
18898
18899 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
18900
18901 2002-02-17 Jason Rumney <jasonr@gnu.org>
18902
18903 * w32term.c (x_autoselect_window_p): New variable.
18904 (syms_of_w32term): DEFVAR_BOOL and initialize it.
18905 (note_mouse_movement): Use it.
18906
18907 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
18908
18909 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
18910
18911 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18912 New variables.
18913 (syms_of_w32fns): Intern and staticpro them.
18914 (x_frame_parms) <"fullscreen">: New parameter.
18915 (x_fullscreen_move, x_set_fullscreen): New functions.
18916 (x_set_frame_parameters): Support Qfullscreen.
18917 (x_real_positions): Save x/y_pixels_diff frame params.
18918 (x_figure_window_size): Support full-screen frames.
18919 (Fx_create_frame): Default the fullscreen parameter.
18920
18921 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
18922 (x_fullscreen_adjust): New functions.
18923 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
18924 fullscreen. Call x_check_fullscreen_move, and set the
18925 want_fullscreen member of output_data.w32
18926 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
18927
18928 * w32term.h: New enum for FULLSCREEN_* constants.
18929 (struct w32_output): New members want_fullscreen, x_pixels_diff,
18930 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
18931 (x-fullscreen-adjust): New prototype.
18932
18933 2002-02-17 Kim F. Storm <storm@cua.dk>
18934
18935 * frame.c (Vmouse_highlight): New variable.
18936 (syms_of_frame): DEFVAR_LISP it.
18937
18938 * frame.h (Vmouse_highlight): Declare extern.
18939
18940 * xterm.h (struct x_display_info): Add mouse_face_hidden.
18941
18942 * xterm.c (disable_mouse_highlight): Removed variable.
18943 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18944 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18945 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
18946 and on after keyboard input.
18947 (x_term_init): Initialize mouse_face_hidden.
18948
18949 * msdos.h (struct display_info): Add mouse_face_hidden.
18950
18951 * msdos.c (disable_mouse_highlight): Removed variable.
18952 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18953 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
18954 (internal_terminal_init): Initialize mouse_face_hidden.
18955 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
18956 and on after keyboard input.
18957
18958 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
18959
18960 * w32term.c (disable_mouse_highlight): Removed variable.
18961 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18962 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18963 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18964 and on after keyboard input.
18965 (w32_initialize_display_info): Initialize mouse_face_hidden.
18966
18967 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18968
18969 * msdos.c (last_mouse_window): New variable.
18970 (dos_rawgetc): Fix last change--if the mouse is in the same window
18971 as recorded in last_mouse_window, don't select this window.
18972
18973 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18974
18975 * msdos.c (x_autoselect_window_p): New variable.
18976 (syms_of_msdos): Defvar it.
18977 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18978 which the last mouse movement occured, unless it is already selected.
18979
18980 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18981 New variables.
18982 (syms_of_xdisp): DEVFAR them.
18983 (hscroll_window_tree): Use automatic_hscroll_margin and
18984 Vautomatic_hscroll_step to compute the amount of window scrolling.
18985
18986 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18987
18988 * xterm.c (x-autoselect-window): New variable.
18989 (note_mouse_movement): Use it.
18990
18991 * keyboard.c: Do not include "systime.h" twice.
18992
18993 2002-02-15 Andreas Schwab <schwab@suse.de>
18994
18995 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18996
18997 * alloc.c (NSTATICS): Increase to 1280.
18998
18999 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19000
19001 * alloc.c (NSTATICS): Bump to 1026.
19002
19003 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19004 (Vx_super_keysym): New variables.
19005 (syms_of_xterm): DEFVAR_LISP them.
19006 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19007 variables to determine which keys to use for the various modifiers.
19008
19009 2002-02-13 Kim F. Storm <storm@cua.dk>
19010
19011 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19012 (mode_line_in_non_selected_windows): New variable.
19013 (syms_of_window): DEFVAR_BOOL it.
19014
19015 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19016 Use mode_line_in_non_selected_windows.
19017 (mode_line_in_non_selected_windows): Declare extern.
19018 (Vmode_line_in_non_selected_windows): Removed extern.
19019
19020 2002-02-13 Richard M. Stallman <rms@gnu.org>
19021
19022 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19023 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19024 (Fclear_this_command_keys): Doc fixes.
19025
19026 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19027 (update_face_from_frame_parameter): Increment face_change_count
19028 and windows_or_buffers_changed to force redisplay using changed faces.
19029
19030 * xdisp.c (QCpropertize): New variable.
19031 (mode_line_proptrans_alist): New variable.
19032 (display_mode_element): New arg PROPS; all calls changed.
19033 Implement this, for strings.
19034 Handle literal output of strings by sharing the
19035 main-line code for strings, using local var `literal'.
19036 Handle :propertize feature.
19037 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19038 mode_line_proptrans_alist.
19039
19040 2002-02-11 Kim F. Storm <storm@cua.dk>
19041
19042 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19043 (syms_of_window): DEFVAR_LISP it.
19044
19045 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19046 (CURRENT_MODE_LINE_FACE_ID): Use it.
19047 (Vmode_line_in_non_selected_windows): Declare extern.
19048
19049 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19050 to get mode line face.
19051
19052 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19053
19054 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19055 variables; cus-start.el doesn't need them anymore.
19056
19057 2002-02-09 Kim F. Storm <storm@cua.dk>
19058
19059 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19060 reduction. This fixes a display problem where stray newlines were
19061 inserted in the window (corrected by C-l). Clarified code (IMHO).
19062
19063 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19064
19065 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19066
19067 * xdisp.c (display_mode_lines): Fix last change.
19068
19069 2002-02-09 Jason Rumney <jasonr@gnu.org>
19070
19071 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19072 match each other.
19073 (w32_load_system_font): Prevent Cleartype fonts from loading.
19074 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19075
19076 2002-02-09 Kim F. Storm <storm@cua.dk>
19077
19078 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19079 (CURRENT_MODE_LINE_HEIGHT): Use it.
19080 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19081
19082 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19083 (pos_visible_p, handle_face_prop): Likewise.
19084 (display_mode_lines): Likewise, but for the real selected window.
19085 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19086
19087 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19088 in non-selected windows.
19089 (realize_basic_faces): Realize it.
19090 (syms_of_term): Intern and staticpro it.
19091
19092 2002-02-08 Kim F. Storm <storm@cua.dk>
19093
19094 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19095 Changed mail addresses to emacs-devel@gnu.org.
19096
19097 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19098
19099 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19100 ~user, and there's no such user, don't discard everything before ~user.
19101
19102 * floatfns.c (Fround): Doc fix.
19103
19104 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19105
19106 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19107
19108 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19109
19110 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19111
19112 2002-02-07 Kim F. Storm <storm@cua.dk>
19113
19114 * keymap.c (where_is_internal): Only check whether definition is
19115 remapped if it fulfills is_command_symbol.
19116
19117 2002-02-07 Andreas Schwab <schwab@suse.de>
19118
19119 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19120
19121 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19122
19123 2002-02-06 Kim F. Storm <storm@cua.dk>
19124
19125 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19126 defining command remapping. Doc updated.
19127 (Flookup_key): Remap command through keymap if KEY is a symbol.
19128 (is_command_symbol): New function.
19129 (Fkey_binding): Use it. New optional argument NO-REMAP.
19130 Doc updated. Callers changed. Perform command remapping via
19131 recursive call unless that arg is non-nil.
19132 (where_is_internal): New argument no_remap. Callers changed.
19133 Call recursively to find original key bindings for a remapped
19134 comand unless that arg is non-nil.
19135 (Fwhere_is_internal): New optional argument NO-REMAP.
19136 Doc updated. Callers changed. Pass arg to where_is_internal.
19137
19138 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19139 (is_command_symbol): Add prototype.
19140
19141 * keyboard.c (Vthis_original_command): New variable.
19142 (syms_of_keyboard): DEFVAR_LISP it.
19143 (command_loop_1): Set it, and perform command remapping.
19144
19145 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19146
19147 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19148
19149 2002-02-06 Jason Rumney <jasonr@gnu.org>
19150
19151 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19152
19153 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19154
19155 * charset.c (get_charset_id): Use if-else instead of ?:.
19156
19157 2002-02-06 Richard M. Stallman <rms@gnu.org>
19158
19159 * filelock.c (S_ISLNK): Define if not defined.
19160
19161 2002-02-03 Richard M. Stallman <rms@gnu.org>
19162
19163 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19164
19165 * lread.c (read1): Redesign strategy for force_multibyte and
19166 force_singlebyte. Now is_multibyte records whether read_buffer
19167 is multibyte. Encountering any multibyte character makes it so.
19168
19169 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19170
19171 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19172 with the same sequence, map that sequence to f10 rather than f0.
19173
19174 2002-02-03 Andreas Schwab <schwab@suse.de>
19175
19176 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19177 latter never being defined on GNU/Linux.
19178
19179 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19180
19181 * xfaces.c (realize_default_face): Don't set the weight and slant of
19182 the default face to Qnormal, unless these attributes are unspecified.
19183
19184 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19185
19186 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19187 Call cancel_hourglass unconditionally.
19188
19189 * eval.c (Fsignal): Remove duplicated declaration of
19190 the variable `display_hourglass_p'.
19191
19192 2002-01-31 Richard M. Stallman <rms@gnu.org>
19193
19194 * editfns.c (region_limit): Nicer error message.
19195
19196 * coding.c (decode_composition_emacs_mule):
19197 Give up if NCOMPONENT gets too large to index `component'.
19198
19199 * callint.c (check_mark): New arg to specify clearer error message.
19200 Callers changed.
19201
19202 2002-01-27 Richard M. Stallman <rms@gnu.org>
19203
19204 * minibuf.c (Fcompleting_read): Doc fix.
19205
19206 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19207
19208 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19209 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19210 Fix doc-strings.
19211
19212 2002-01-26 Richard M. Stallman <rms@gnu.org>
19213
19214 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19215
19216 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19217 and scroll_up_aggressively.
19218
19219 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19220
19221 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19222
19223 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19224
19225 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19226 (Fprevious_property_change, Fprevious_single_property_change):
19227 Stay within the narrowed-buffer boundaries.
19228
19229 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19230
19231 * term.c (Ftty_display_color_cells): New function.
19232 (syms_of_term): Defsubr it.
19233 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19234 argument name to DISPLAY. Doc fix.
19235
19236 * dispextern.h: Add prototype for set_tty_color_mode and
19237 tty_setup_colors.
19238
19239 2002-01-24 Jason Rumney <jasonr@gnu.org>
19240
19241 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19242 If region left to draw is not what was expected, mark the frame as
19243 garbaged.
19244
19245 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19246 Combine the regions returned by BeginPaint and GetUpdateRect.
19247
19248 2002-01-23 Jason Rumney <jasonr@gnu.org>
19249
19250 * w32term.c (x_update_window_begin): Only hide caret if
19251 w32_use_visible_system_caret is set.
19252 (x_update_window_end): Only show caret if
19253 w32_use_visible_system_caret is set.
19254 (syms_of_w32term): Handle SystemParametersInfo call failing.
19255
19256 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19257
19258 2002-01-22 Richard M. Stallman <rms@gnu.org>
19259
19260 * unexelf.c (unexec): Define n so as to cause compilation error
19261 for the code where people have often written n instead of nn.
19262
19263 * .gdbinit (hookpost-run): Defined.
19264
19265 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19266
19267 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19268
19269 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19270
19271 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19272 if fullscreen is being set.
19273
19274 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19275
19276 * minibuf.c (Fminibuffer_contents)
19277 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19278 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19279
19280 2002-01-21 Richard M. Stallman <rms@gnu.org>
19281
19282 * window.c (check_frame_size): Fix minimum height calculation.
19283
19284 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19285
19286 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19287 height before comparison.
19288 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19289
19290 2002-01-20 Jason Rumney <jasonr@gnu.org>
19291
19292 * w32term.c (w32_system_caret_width): Remove.
19293 (w32_use_visible_system_caret): New user flag.
19294 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19295 Windows reports a screen reader running.
19296 (x_update_window_begin): Hide the system caret.
19297 (x_update_window_end): Show the system caret.
19298 (x_display_and_set_cursor): Don't draw a cursor when
19299 w32_use_visible_system_caret is set. Do not adjust width.
19300
19301 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19302 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19303 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19304 the user requests it. Use system default width when creating.
19305 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19306
19307 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19308 New window messages.
19309
19310 2002-01-20 Richard M. Stallman <rms@gnu.org>
19311
19312 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19313
19314 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19315
19316 * doprnt.c (doprnt1): Fix typos in error call.
19317
19318 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19319
19320 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19321
19322 2002-01-20 Jason Rumney <jasonr@gnu.org>
19323
19324 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19325 that Windows returns. If a double check fails, try to guess how
19326 ExtTextOut is going to act.
19327
19328 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19329 in place of stricmp.
19330 (w32_list_synthesized_fonts): Removed.
19331 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19332 (struct enumfont_t): New element; list.
19333 (enum_font_cb2): List all style and charset variations of a font.
19334 (Fw32_select_font): New optional argument; include_proportional.
19335 Exclude vertical fonts. Exclude proportional fonts unless
19336 include_proportional is non-nil.
19337 (w32_enable_synthesized_fonts): Change to a boolean.
19338 (Fw32_send_sys_command): Doc fix.
19339
19340 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19341
19342 * dispnew.c (update_frame): Move the variable `tem' to the block
19343 where it is used.
19344
19345 2002-01-19 Jason Rumney <jasonr@gnu.org>
19346
19347 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19348 call to face-set-after-frame-default.
19349
19350 2002-01-18 Richard M. Stallman <rms@gnu.org>
19351
19352 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19353 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19354
19355 2002-01-17 Richard M. Stallman <rms@gnu.org>
19356
19357 * window.c (enlarge_window): When exceeding size of parent,
19358 directly delete all the siblings instead of trying to resize it.
19359
19360 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19361
19362 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19363
19364 2002-01-16 Henrik Enberg <henrik@enberg.org>
19365
19366 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19367
19368 2002-01-16 Kim F. Storm <storm@cua.dk>
19369
19370 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19371 is invisible. This can happen if cursor is on top line of a
19372 window, and we switch to a buffer with a header line.
19373
19374 * w32term.c (x_erase_phys_cursor): Ditto.
19375
19376 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19377
19378 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19379 `dont_resize' only when used.
19380
19381 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19382
19383 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19384
19385 * xdisp.c (display_mode_element): When computing charpos, depend
19386 on multibyteness of elt, not the text in field.
19387
19388 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19389
19390 * buffer.c (Fkill_all_local_variables):
19391 Increment `update_mode_lines' only once.
19392
19393 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19394
19395 * lisp.h (adjust_after_replace_noundo)
19396 (Fupdate_coding_systems_internal): Add prototypes.
19397
19398 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19399
19400 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19401
19402 Support for the --color command-line argument and tty-color-mode
19403 frame parameter:
19404
19405 * term.c (tty_default_color_capabilities, tty_setup_colors)
19406 (set_tty_color_mode): New functions.
19407 (term_init): Call tty_default_color_capabilities.
19408 (Qtty_color_mode_alist): New variable.
19409 (syms_of_term): Intern and staticpro it.
19410
19411 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19412 frames.
19413 (do_switch_frame): For termcap frames, switch the tty
19414 color mode as specified by the frame's parameters.
19415 (Qtty_color_mode): New variable.
19416 (syms_of_frame): Intern and staticpro it.
19417
19418 * emacs.c (USAGE2): Add the --color option.
19419 (standard_args): Ditto.
19420
19421 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19422
19423 * xterm.h (struct x_output): New members want_fullscreen,
19424 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19425 y_pixels_outer_diff.
19426 New enum for FULLSCREEN_* constants.
19427 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19428 is NULL.
19429 (x_fullscreen_adjust): Add prototype.
19430
19431 * emacs.c (USAGE2): Add the new full-screen arguments.
19432 (standard_args): Ditto.
19433
19434 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19435 New variables.
19436 (syms_of_xfns): Intern and staticpro them.
19437 (x_frame_parms) <"fullscreen">: New parameter.
19438 (x_fullscreen_move, x_set_fullscreen): New functions.
19439 (x_set_frame_parameters): Support for Qfullscreen.
19440 (x_real_positions): More accurate computation of the frame position.
19441 (x_figure_window_size): Support full-screen frames.
19442 (Fx_create_frame): Default the fullscreen parameter.
19443
19444 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19445 (XTread_socket) <Expose>: Call x_check_fullscreen.
19446 <ConfigureNotify>: Don't resize to fullscreen.
19447 Call x_check_fullscreen_move, and set the want_fullscreen member of
19448 output_data.x.
19449
19450 2002-01-13 Jason Rumney <jasonr@gnu.org>
19451
19452 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19453 for mice with more than 3 buttons.
19454
19455 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19456 (w32_read_socket): Handle new "XBUTTON" messages.
19457
19458 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19459 (syms_of_w32fns): DEFVAR_BOOL it.
19460 (w32_wnd_proc): Handle new "XBUTTON" messages.
19461
19462 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19463
19464 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19465
19466 2002-01-13 Andreas Schwab <schwab@suse.de>
19467
19468 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19469
19470 2002-01-12 Andreas Schwab <schwab@suse.de>
19471
19472 * .gdbinit (xbuffer): Remove address operator since data is now a
19473 pointer.
19474
19475 2002-01-11 Richard M. Stallman <rms@gnu.org>
19476
19477 * insdel.c (adjust_after_replace_noundo): New function.
19478
19479 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19480
19481 2002-01-09 Jason Rumney <jasonr@gnu.org>
19482
19483 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19484 when checking for multiple frames.
19485
19486 2002-01-08 Richard M. Stallman <rms@gnu.org>
19487
19488 * window.c (delete_window): Rewrite the code for changing the
19489 selected window to handle the case where WINDOW is not a leaf.
19490
19491 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19492
19493 * process.c (send_process): Set src_multibyte to 1 after the call
19494 top setup_coding_system, not before the call.
19495
19496 2002-01-07 Jason Rumney <jasonr@gnu.org>
19497
19498 * xmenu.c (set_frame_menubar, xmenu_show):
19499 (xdialog_show): Initialize wv->help to Qnil.
19500
19501 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19502 (w32_dialog_show): Initialize wv->help to Qnil.
19503
19504 2002-01-06 Jason Rumney <jasonr@gnu.org>
19505
19506 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19507
19508 * w32menu.c (w32_menu_display_help): Revert last change.
19509
19510 * xmenu.c (menu_highlight_callback): Revert last change.
19511
19512 2002-01-06 Andreas Schwab <schwab@suse.de>
19513
19514 * insdel.c (make_gap_larger): Make sure buffer size does not
19515 overflow range of int.
19516
19517 2002-01-05 Jason Rumney <jasonr@gnu.org>
19518
19519 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19520 OVERLAPS_P.
19521
19522 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19523
19524 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19525 to the left or to the right of the pointer, put it against
19526 the left screen edge.
19527 (x_frame_parms): Add missing braces around initializer.
19528
19529 * w32term.c (x_setup_relief_colors): Don't compute an image's
19530 background color if it doesn't have a Pixmap.
19531 (notice_overwritten_cursor): Don't depend on
19532 output_cursor and updated_area. Compare pixel coordinates with
19533 window's cursor pixel coordinates.
19534 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19535 Call notice_overwritten_cursor with new arg list.
19536 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19537 unconditionally.
19538 (x_draw_image_relief): Use predefined macro instead of
19539 constant when the value of `tool_bar_button_relief' is negative.
19540
19541 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19542
19543 2002-01-04 Richard M. Stallman <rms@gnu.org>
19544
19545 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19546
19547 2002-01-03 Richard M. Stallman <rms@gnu.org>
19548
19549 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19550 (Fkey_binding): Try the `keymap' property map first.
19551 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19552 minor mode bindings.
19553
19554 2002-01-03 Kim F. Storm <storm@cua.dk>
19555
19556 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19557
19558 2002-01-02 Richard M. Stallman <rms@gnu.org>
19559
19560 * keyboard.c (read_key_sequence): Handle the keymap property
19561 before minor mode maps.
19562
19563 * editfns.c (Fformat): Update thissize from field_width
19564 based on the actual width, in the string case.
19565
19566 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19567
19568 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19569 when used as truth value to prevent gcc warnings.
19570
19571 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19572 * w32proc.c: Include <config.h>.
19573
19574 2002-01-01 Andreas Schwab <schwab@suse.de>
19575
19576 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19577 not EMACS_INT, to make them compatible with DEFVAR_INT.
19578 * lisp.h (max_specpdl_size): Adjust declaration.
19579
19580 2002-01-01 Richard M. Stallman <rms@gnu.org>
19581
19582 * print.c (print_object): Test print_escape_nonascii only for
19583 unibyte strings.
19584 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19585 when outputting to a multibyte buffer.
19586
19587 2001-12-29 Richard M. Stallman <rms@gnu.org>
19588
19589 * print.c (print_object): In multibyte string, use hex escapes.
19590 Use octal only for unibyte strings.
19591 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19592
19593 * lread.c (read_escape): New arg BYTEREP for reporting whether
19594 escape forces unibyte or multibyte.
19595 (read1): When reading a string, take note of that info.
19596
19597 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19598
19599 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19600 comparison to test lisp value returned by Fget.
19601
19602 2001-12-29 Richard M. Stallman <rms@gnu.org>
19603
19604 * lisp.h (max_specpdl_size): Add declaration.
19605
19606 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19607
19608 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19609 Handle modifier bits. Correct typo in error message.
19610
19611 2001-12-28 Richard M. Stallman <rms@gnu.org>
19612
19613 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19614 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19615 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19616 Update calls to Fdefine_abbrev.
19617 (write_abbrev): Update for changed data format.
19618 Don't list "system" abbrevs.
19619 (Fexpand_abbrev): Update use count with new data format.
19620 (describe_abbrev): Update for changed data format.
19621 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19622
19623 * config.in (HAVE_MBSINIT): Add #undef.
19624
19625 * strftime.c (mbsinit): Define as no-op if not available.
19626
19627 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19628 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19629
19630 * keymap.c (Flookup_key): Error message if key has wrong data type.
19631 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19632 (exclude_key): New variable.
19633
19634 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19635
19636 * xterm.c (x_setup_relief_colors): Don't compute an image's
19637 background color if it doesn't have a Pixmap.
19638
19639 * xterm.c (notice_overwritten_cursor): Don't depend on
19640 output_cursor and updated_area. Compare pixel coordinates with
19641 window's cursor pixel coordinates.
19642 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19643 Call notice_overwritten_cursor with new arg list.
19644 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19645 unconditionally.
19646
19647 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19648 height of the cursor line to the amount to scroll.
19649
19650 2001-12-27 Richard M. Stallman <rms@gnu.org>
19651
19652 * intervals.c (set_point_both): The position after an invisible,
19653 intangible character is not an acceptable stopping point.
19654
19655 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19656
19657 * window.c (enlarge_window): In new preserve_before code, convert
19658 CURBEG from lisp object to integer before doing arithmetic.
19659
19660 2001-12-27 Richard M. Stallman <rms@gnu.org>
19661
19662 * bytecode.c (Fbyte_code): Undo previous change.
19663
19664 2001-12-26 Kim F. Storm <storm@cua.dk>
19665
19666 * keyboard.c (record_char): Ignore duplicate help-echo events only
19667 separated by mouse-movement. When tracking mouse, only record
19668 first and last mouse-movement event in same window.
19669 Don't record mouse-movement events in keyboard macros.
19670
19671 2001-12-25 Richard M. Stallman <rms@gnu.org>
19672
19673 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19674 (Fenlarge_window): New arg PRESERVE_BEFORE.
19675
19676 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19677 instead of Fstring_as_unibyte.
19678
19679 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19680
19681 The following changes remove mocklisp support:
19682
19683 * mocklisp.h, mocklisp.c: Files removed.
19684
19685 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19686 `Qmocklisp' and `Qmocklisp_arguments'.
19687 Remove prototype of syms_of_mocklisp.
19688
19689 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19690
19691 * callint.c: Do not include mocklisp.h.
19692 (Fcall_interactively): Do not test for mocklisp case.
19693
19694 * eval.c: Remove variables `Qmocklisp_arguments',
19695 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19696 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19697 Do not test for mocklisp case.
19698 (Fwhile): Remove unused variable `tem'.
19699 (syms_of_eval): Remove variable `moclisp-arguments'.
19700
19701 * data.c (wrong_type_argument): Remove mocklisp case.
19702
19703 * doc.c (Fdocumentation): Remove mocklisp case.
19704
19705 * emacs.c (main): Do not call syms_of_mocklisp.
19706
19707 2001-12-21 Richard M. Stallman <rms@gnu.org>
19708
19709 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19710 to the left or to the right of the pointer, put it against
19711 the left screen edge.
19712
19713 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19714
19715 * Makefile.in (distclean): Remove .gdbinit if we are building
19716 outside the source tree.
19717
19718 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19719
19720 * w32.c (emacs_root_dir): New function.
19721
19722 * msdos.c (emacs_root_dir): New function.
19723
19724 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19725 of the current drive as the fallback for default_directory.
19726
19727 * dired.c (file_name_completion): Run the elements of
19728 completion-ignored-extensions through ENCODE_FILE.
19729
19730 * lisp.h (scmp): Remove prototype, since it's now a static
19731 function private to dired.c.
19732
19733 2001-12-18 Richard M. Stallman <rms@gnu.org>
19734
19735 * dired.c (scmp): Function moved from minibuf.c.
19736 Delete multibyte handling--used only on encoded strings.
19737
19738 * minibuf.c (scmp): Function moved to dired.c.
19739
19740 * fns.c (merge): Add QUIT call.
19741
19742 2001-12-18 Dave Love <fx@gnu.org>
19743
19744 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19745 language/georgian.el.
19746
19747 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19748
19749 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19750 lisp/Makefile.in:DONTCOMPILE.
19751
19752 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19753
19754 * xdisp.c (window_box_height): Do not return negative values.
19755 From Gerd Moellmann <gerd@gnu.org>.
19756
19757 * keyboard.c (head_table): Add missing braces around initializer.
19758
19759 * term.c (keys): Likewise.
19760
19761 * xfns.c (x_frame_parms, visual_classes): Likewise.
19762
19763 2001-12-17 Sam Steingold <sds@gnu.org>
19764
19765 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19766 patch (COMPOSING_P, not COMPOSING).
19767
19768 2001-12-17 Richard M. Stallman <rms@gnu.org>
19769
19770 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19771
19772 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19773 before calling decode_coding.
19774
19775 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19776
19777 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19778 instead of only for COMPOSITION_DISABLED.
19779
19780 2001-12-16 Richard M. Stallman <rms@gnu.org>
19781
19782 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19783
19784 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19785
19786 * buffer.h (struct buffer): New field `display_error_modiff'.
19787 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19788
19789 * window.c (Frecenter): Clear display_error_modiff field.
19790
19791 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19792 Call redisplay_window, but not if display_error_modiff field says no.
19793 (redisplay_window_error): New function.
19794 (displayed_buffer): New variable.
19795 (redisplay_internal, redisplay_windows): Call the new functions
19796 instead of redisplay_window directly.
19797
19798 2001-12-15 Richard M. Stallman <rms@gnu.org>
19799
19800 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19801
19802 2001-12-14 Andrew Innes <andrewi@gnu.org>
19803
19804 * makefile.w32-in (EMACSLOADPATH): Define.
19805 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19806 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19807
19808 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19809
19810 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19811 parameter have a numeric value all the time.
19812
19813 * w32fns.c (x_report_frame_params): Likewise.
19814
19815 2001-12-12 Richard M. Stallman <rms@gnu.org>
19816
19817 * fileio.c (Fwrite_region): Doc fix.
19818
19819 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19820 (redisplay_internal): Call clear_image_cache only for window terminals.
19821
19822 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19823
19824 * xdisp.c (move_it_vertically_backward): Change heuristic
19825 for the case that we didn't move far enough initially.
19826
19827 * window.c (Frecenter): Simplify computation in the case of window
19828 system frames and ARG < 0; use window_box_height.
19829
19830 2001-12-11 Richard M. Stallman <rms@gnu.org>
19831
19832 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19833 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19834
19835 2001-12-11 Andrew Innes <andrewi@gnu.org>
19836
19837 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19838 arg is negative.
19839
19840 2001-12-11 Richard M. Stallman <rms@gnu.org>
19841
19842 * m/hp800.h: Split the __hpux conditional into the parts
19843 that are right for GNU/Linux too and the parts that are not.
19844 Use the former if GNU_LINUX.
19845 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19846
19847 * s/gnu-linux.h (GNU_LINUX): Defined.
19848
19849 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19850
19851 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19852 `new style' [w/`doc:' keyword].
19853
19854 2001-12-10 Jason Rumney <jasonr@gnu.org>
19855
19856 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19857 before using.
19858
19859 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19860
19861 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19862 keyword].
19863
19864 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19865
19866 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19867
19868 * s/hpux10.h (srand48): Don't undefine.
19869
19870 2001-12-09 Jason Rumney <jasonr@gnu.org>
19871
19872 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19873 Add comment to explain where the struct came from.
19874 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19875 (add_menu_item): Process pop-up menus first to avoid memory leak.
19876 (add_menu_item, w32_menu_display_help): Use `help' field as
19877 Lisp_Object.
19878 (w32_free_submenu_strings): Only free owner-drawn strings.
19879
19880 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19881
19882 * COPYING: Moved back.
19883
19884 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19885 Add parentheses around && within ||.
19886
19887 * indent.c (compute_motion): Likewise.
19888
19889 * intervals.c (merge_properties_sticky): Likewise.
19890
19891 * coding.c (setup_coding_system, shrink_encoding_region)
19892 (Fdecode_sjis_char): Likewise.
19893
19894 2001-12-07 Andreas Schwab <schwab@suse.de>
19895
19896 * xdisp.c (display_mode_element): Don't read past end of string if
19897 it ends with '%'.
19898
19899 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
19900 can hold.
19901
19902 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
19903 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
19904 type changed to Lisp_Object.
19905 (syms_of_data): DEFVAR_LISP them.
19906
19907 2001-12-07 Richard M. Stallman <rms@gnu.org>
19908
19909 * callproc.c (init_callproc): Set Vdata_directory based on the source
19910 location whenever Emacs was run uninstalled.
19911
19912 2001-12-06 Paul Eggert <eggert@twinsun.com>
19913
19914 * config.in (HAVE_WORKING_VFORK): New #undefs.
19915 * process.c (create_process):
19916 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
19917 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
19918 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
19919 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
19920 * m/intel386.h (HAVE_VFORK): Likewise.
19921 * m/mips-siemens.h (HAVE_VFORK): Likewise.
19922 * m/mips.h (HAVE_VFORK): Likewise.
19923 * s/freebsd.h (vfork): Remove #define.
19924 * s/lynxos.h (HAVE_VFORK): Remove #undef.
19925 * s/usg5-4-2.h: Fix comment about vfork.
19926
19927 2001-12-06 Richard M. Stallman <rms@gnu.org>
19928
19929 * s/hpux10.h (random): Add undef.
19930 (HAVE_RANDOM): Define it just once.
19931
19932 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
19933
19934 * eval.c: Undo last change: the standard syntax is not wanted.
19935
19936 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
19937
19938 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
19939 scroll bars of the frame before deleting the frame itself. If the
19940 frame has a widget, delete the frame with XtDestroyWidget, and do
19941 not call XDestroyWindow before that.
19942
19943 2001-12-06 Kim F. Storm <storm@cua.dk>
19944
19945 * xfns.c (x_report_frame_params): Return actual fringe widths.
19946
19947 * w32fns.c (x_report_frame_params): Return actual fringe widths.
19948
19949 2001-12-05 Andrew Innes <andrewi@gnu.org>
19950
19951 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
19952 excessively large.
19953
19954 * insdel.c (make_gap_larger): New function.
19955 (make_gap_smaller): New function.
19956 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
19957 Call make_gap_smaller if arg is negative.
19958
19959 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19960
19961 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19962 Pass a dummy argument when calling interrupt_signal.
19963 (parse_menu_item): Mark disabled items before checking for empty def.
19964 (read_char_minibuf_menu_prompt): Make safety more visible.
19965 (read_key_sequence): Add a `first_unbound' variable.
19966 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19967 unbound prefix as soon as we can detect it.
19968
19969 * doc.c (Fsnarf_documentation): Add prototype.
19970 (get_doc_string): Handle negative arguments.
19971 (Fdocumentation): Use AREF and ASIZE.
19972 Move the calls to get_doc_string to a single place.
19973 Don't confuse an interactive-spec for a docstring reference.
19974 (Fdocumentation_property): Take advantage of the fact that
19975 get_doc_string now ignores the sign of the docstring position.
19976
19977 * eval.c: Use standard syntax for usage in docstrings.
19978
19979 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19980
19981 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19982
19983 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19984
19985 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19986 constant when the value of `tool_bar_button_relief' is negative.
19987
19988 2001-12-02 Richard M. Stallman <rms@gnu.org>
19989
19990 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19991 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19992
19993 * fileio.c (read_non_regular): Delete Fsignal call.
19994
19995 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19996
19997 * lisp.h (run_hook_list_with_args): Undo last change.
19998
19999 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20000
20001 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20002
20003 2001-12-01 Jason Rumney <jasonr@gnu.org>
20004
20005 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20006
20007 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20008 [!WM_MOUSELEAVE]: Define.
20009
20010 * w32menu.c (current_popup_menu, get_menu_item_info):
20011 (set_menu_item_info): New vars.
20012 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20013 (w32_menu_show): Set current_popup_menu.
20014 (add_menu_item): Allocate new strings for owner-drawn menu items
20015 and help strings.
20016 Use owner-draw for disabled menu items again.
20017 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20018 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20019
20020 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20021 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20022 <WM_EXITMENULOOP>: Free menu strings.
20023 <WM_MOUSELEAVE>: Stop tracking mouse.
20024 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20025
20026 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20027 and mouse face.
20028
20029 2001-12-01 Kim F. Storm <storm@cua.dk>
20030
20031 The following changes add left-fringe and right-fringe
20032 frame parameters to adjust fringe widths, or remove one or
20033 both fringes.
20034
20035 * frame.h (struct frame): Remove trunc_area_pixel_width and
20036 trunc_area_cols fields.
20037 (Qleft_fringe, Qright_fringe): Declare.
20038 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20039
20040 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20041 (syms_of_frame): Initialize them.
20042
20043 * window.c (coordinates_in_window): Handle separate left and right
20044 fringe widths.
20045
20046 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20047 and fringe_cols fields.
20048 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20049 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20050 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20051 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20052 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20053 (x_compute_fringe_widths): Add prototype.
20054
20055 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20056 fill fringe evenly with small dashes.
20057 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20058 clip the new ZV bitmap to avoid jitter between rows.
20059 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20060 background. Don't draw fringe bitmaps if fringe width is zero.
20061 (x_compute_fringe_widths): New function.
20062 (x_new_font, x_set_window_size_1): Use it.
20063
20064 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20065 (x_set_frame_parameters): Process `font' parameter before other
20066 parameters as fringe widths depend on it.
20067 (x_set_fringe_width): New function.
20068 (x_figure_window_size): Use x_compute_fringe_widths.
20069 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20070 parameters.
20071
20072 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20073 (EmacsFrameSetCharSize): Ditto.
20074
20075 * w32term.h: Merged changes from xterm.h.
20076 * w32term.c: Merged changes from xterm.c.
20077 * w32fns.c: Merged changes from xfns.c.
20078
20079 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20080
20081 * COPYING: Removed.
20082
20083 2001-11-29 Dave Love <fx@gnu.org>
20084
20085 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20086 extra extra slot.
20087 (detect_coding_mask): Fix call of detect_coding_iso2022.
20088
20089 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20090
20091 * fileio.c (file-name-coding-system)
20092 (default-file-name-coding-system): Doc fix (links to referenced
20093 variables added).
20094
20095 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20096
20097 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20098 Add dummy uses of gcproN variables.
20099
20100 * category.c (describe_category, describe_category_1)
20101 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20102 (syms_of_category): Don't defsubr Sdescribe_categories.
20103
20104 2001-11-28 Richard M. Stallman <rms@gnu.org>
20105
20106 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20107
20108 * Makefile.in (lispdir): New variable, referring to build dir.
20109 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20110
20111 2001-11-28 Andrew Innes <andrewi@gnu.org>
20112
20113 * w32menu.c (w32_menu_display_help): Actually add the new argument
20114 OWNER.
20115
20116 2001-11-28 Jason Rumney <jasonr@gnu.org>
20117
20118 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20119 menu items. From David Ponce <dponce@wanadoo.fr>.
20120 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20121 conditionally.
20122 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20123 help event in the owner frame's keyboard buffer.
20124
20125 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20126 (Fx_show_tip): Don't subtract last width from row width.
20127
20128 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20129 (w32_read_socket): Use EQ to compare frames.
20130
20131 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20132
20133 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20134 OVERLAPS_P.
20135
20136 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20137
20138 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20139 `gcpro3' and `gcpro4'.
20140
20141 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20142
20143 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20144
20145 * ccl.c: Use AREF and ASIZE.
20146
20147 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20148
20149 * lisp.h (run_hook_list_with_args): Remove.
20150 (LIST_END_P): Fix call to wrong_type_argument.
20151 (make_fixnum_or_float): Use EMACS_INT rather than int.
20152
20153 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20154
20155 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20156 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20157
20158 * eval.c: Use AREF and ASIZE.
20159 (Ffetch_bytecode): Add the file name to the error message.
20160
20161 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20162 which match the end of the file-name.
20163 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20164 is not a valid env var, but leave it as is instead.
20165
20166 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20167 Make nil bindings in char-tables transparent.
20168 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20169
20170 2001-11-26 Richard M. Stallman <rms@gnu.org>
20171
20172 * textprop.c (set_text_properties_1): Allow START, END in either order.
20173 Do nothing if range is empty.
20174
20175 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20176
20177 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20178 (clean): Not here.
20179
20180 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20181
20182 * textprop.c (set_text_properties_1): Clearly mark that the
20183 interval should not be empty.
20184
20185 * intervals.c (graft_intervals_into_buffer):
20186 Don't call set_text_properties_1 on an empty interval.
20187
20188 2001-11-25 Richard M. Stallman <rms@gnu.org>
20189
20190 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20191
20192 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20193 don't lose the data in it.
20194
20195 2001-11-25 Juanma Barranquero <lektu@terra.es>
20196
20197 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20198
20199 * buffer.c (Fkill_buffer): Likewise.
20200
20201 * print.c (temp_output_buffer_setup): Likewise.
20202
20203 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20204
20205 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20206
20207 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20208
20209 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20210 Niemitalo <kon@iki.fi>.
20211
20212 2001-11-25 Jason Rumney <jasonr@gnu.org>
20213
20214 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20215
20216 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20217 (Fx_show_tip): Block input during frame creation.
20218 (Fx_show_tip, Fx_hide_tip): Enable.
20219
20220 2001-11-24 Richard M. Stallman <rms@gnu.org>
20221
20222 * lread.c (Fload): Detect recursive load error for more than 3
20223 nestings of the same file.
20224 (Vrecursive_load_depth_limit): Variable deleted.
20225 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20226
20227 2001-11-24 Jason Rumney <jasonr@gnu.org>
20228
20229 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20230 mouse position if either left or top is not specified.
20231
20232 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20233 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20234 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20235 (my_create_tip_window): Assign tip_window.
20236 (x_create_tip_frame): Use same defaults as X.
20237 (compute_tip_xy): Remove unused variable. Use full screen width.
20238 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20239
20240 * w32term.c (x_after_update_window_line): Doc fix.
20241 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20242 frames.
20243 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20244
20245 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20246 for all Windowed systems.
20247
20248 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20249
20250 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20251 realized, use the initial screen colors to clear the screen.
20252
20253 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20254
20255 * textprop.c (Fset_text_properties): Remove unused variables
20256 `unchanged', `prev_changed', `s' and `len'.
20257
20258 * search.c (Freplace_match): Remove unused variable `inslen'.
20259
20260 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20261
20262 2001-11-22 Jason Rumney <jasonr@gnu.org>
20263
20264 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20265 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20266 (my_create_tip_window): New function.
20267 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20268 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20269
20270 2001-11-20 Jason Rumney <jasonr@gnu.org>
20271
20272 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20273 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20274
20275 * w32fns.c (Vw32_system_coding_system): Remove.
20276 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20277
20278 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20279
20280 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20281 after build_annotations.
20282
20283 * syntax.c (describe_syntax): Add dummy arg.
20284 (describe_syntax_1): Update call to describe_vector.
20285
20286 * category.c (describe_category): Add dummy arg.
20287 (describe_category_1): Update call to describe_vector.
20288
20289 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20290 (describe_command, describe_translation): Add dummy second param.
20291 (describe_map): Call elt_describer with two arguments.
20292 (describe_vector_princ): Add `fun' parameter.
20293 Call it instead of the hardcoded `princ'.
20294 (describe_vector): Add arg `args'.
20295 Pass it as a new second argument to elt_describer.
20296
20297 * keymap.h (describe_vector): Update prototype.
20298
20299 * frame.c: Don't include keymap.h any more.
20300 (keys_of_frame): Remove.
20301
20302 * lisp.h (keys_of_frame): Remove declaration.
20303
20304 * emacs.c (main): Don't call `keys_of_frame' any more.
20305
20306 2001-11-14 Andreas Schwab <schwab@suse.de>
20307
20308 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20309 if defined, 0 otherwise.
20310 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20311 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20312
20313 2001-11-19 Richard M. Stallman <rms@gnu.org>
20314
20315 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20316
20317 2001-11-18 Jason Rumney <jasonr@gnu.org>
20318
20319 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20320 (x_draw_bar_cursor): If the background color of the glyph under
20321 the cursor equals the frame's cursor color, use the glyph's
20322 foreground color for drawing the bar cursor.
20323 (x_after_update_window_line): Clear internal border in different
20324 circumstances.
20325 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20326 (w32_draw_relief_rect): Correct relief by 1 pixel.
20327 (x_set_glyph_string_background_width):
20328 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20329 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20330 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20331 if cursor_in_non_selected_windows is false.
20332 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20333 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20334 Notice if cursor gets overwritten.
20335 (notice_overwritten_cursor): Renamed from
20336 note_overwritten_text_cursor. Rewritten to take glyph widths
20337 into account, and to take X positions as parameters.
20338 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20339 around call to x_draw_glyphs.
20340 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20341 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20342 color to use for image glyph reliefs.
20343 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20344 (glyph_rect): Remove unused variable `area'.
20345
20346 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20347 some items.
20348 (x_set_internal_border_width): Set frame garbaged when window
20349 doesn't exist yet.
20350 (Fx_create_frame): Accept zero tool_bar_button_relief.
20351 (x_clear_image_1, four_corners_best, image_background)
20352 (image_background_transparent): New functions.
20353 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20354 (gs_format): Add `:background' entry.
20355 (lookup_image): Set IMG's background color if specified.
20356 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20357 when appropriate.
20358 (x_clear_image_1): Reset `background_valid' and
20359 `background_transparent_valid' fields.
20360 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20361 calculating it here. Set IMG's background_transparent field.
20362 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20363 (enum png_keyword_index): Add PNG_BACKGROUND.
20364 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20365 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20366 (enum gif_keyword_index): Add GIF_BACKGROUND.
20367 (enum gs_keyword_index): Add GS_BACKGROUND.
20368 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20369 Pre-calculate image background color where necessary.
20370 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20371 Use display info's n_cbits entry for screen depth.
20372 (Fx_show_tip): Remove unused variables `buffer', `top',
20373 `left', `max_width' and `max_height'.
20374
20375 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20376
20377 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20378
20379 * puresize.h (BASE_PURESIZE): Increase to 750000.
20380
20381 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20382
20383 * frame.c (Fframe_live_p): Doc fix.
20384
20385 2001-11-18 Richard M. Stallman <rms@gnu.org>
20386
20387 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20388 (message_dolog_marker3): New static variables hold three markers.
20389 (syms_of_xdisp): Initialize and staticpro them.
20390 (message_dolog): Use message_dolog_marker1..3 instead of
20391 allocating markers each time. Unchain them when done.
20392
20393 2001-11-17 Richard M. Stallman <rms@gnu.org>
20394
20395 * doc.c (Fsnarf_documentation): Doc fix.
20396
20397 2001-11-17 Andreas Schwab <schwab@suse.de>
20398
20399 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20400
20401 2001-11-17 Richard M. Stallman <rms@gnu.org>
20402
20403 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20404
20405 2001-11-17 Jason Rumney <jasonr@gnu.org>
20406
20407 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20408
20409 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20410
20411 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20412 with invalid position.
20413
20414 2001-11-16 Richard M. Stallman <rms@gnu.org>
20415
20416 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20417
20418 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20419 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20420 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20421
20422 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20423
20424 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20425
20426 * fileio.c (build_annotations): Split off the tail.
20427 (build_annotations_2): New fun. Extracted from build_annotations.
20428 (Fwrite_region): Split the call to build_annotations into two
20429 calls to build_annotations and build_annotations_2.
20430
20431 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20432
20433 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20434 clear_waiting_for_input with argument.
20435
20436 * xterm.h (x_update_cursor): Remove duplicated prototype.
20437
20438 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20439
20440 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20441
20442 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20443
20444 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20445
20446 * fileio.c (choose_write_coding_system): New fun, extracted
20447 from Fwrite_region.
20448 (Fwrite_region): Use it.
20449
20450 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20451 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20452 (ml_apply, find_handler_clause): Add prototype.
20453
20454 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20455
20456 * config.in: Add #undef HAVE_COFF_H.
20457
20458 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20459 Required for ISC 4.1.
20460
20461 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20462
20463 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20464 Andrew Wiseman <a.wiseman@btclick.com>.
20465
20466 2001-11-16 Kim F. Storm <storm@cua.dk>
20467
20468 The following changes are made to clean up the various internal
20469 references to the fringes to actually use the term `fringe' for
20470 them. Previously, they were called `flags areas', `bitmap areas',
20471 `left/right side of windows', or implicitly as `flags' or
20472 `bitmaps':
20473
20474 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20475 Comments fixed. Use renamed symbols.
20476
20477 * dispnew.c: Comment fix. Use renamed symbols.
20478
20479 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20480 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20481 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20482
20483 * msdos.c: Comment fix.
20484
20485 * w32fns.c: Use renamed symbols.
20486
20487 * w32term.c: Comment fixes. Use renamed symbols.
20488 (fringe_bitmap_type): Renamed from bitmap_type.
20489 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20490 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20491 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20492
20493 * w32term.h: Comment fixes. Use renamed symbols.
20494 (fringes_extra): Renamed from flags_areas_extra.
20495 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20496 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20497 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20498 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20499 (FRAME_X_LEFT_FRINGE_WIDTH):
20500 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20501 (FRAME_X_RIGHT_FRINGE_WIDTH):
20502 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20503
20504 * widget.c: Use renamed symbols.
20505
20506 * window.c: Comment fixes. Use renamed symbols.
20507 (coordinates-in-window-p): Doc fix.
20508
20509 * xdisp.c: Comment fixes. Use renamed symbols.
20510
20511 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20512
20513 * xfns.c: Use renamed symbols.
20514
20515 * xterm.c: Comment fixes. Use renamed symbols.
20516 (fringe_bitmap_type): Renamed from bitmap_type.
20517 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20518 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20519 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20520
20521 * xterm.h: Comment fixes. Use renamed symbols.
20522 (fringes_extra): Renamed from flags_areas_extra.
20523 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20524 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20525 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20526 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20527 (FRAME_X_LEFT_FRINGE_WIDTH):
20528 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20529 (FRAME_X_RIGHT_FRINGE_WIDTH):
20530 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20531
20532 2001-11-15 Jason Rumney <jasonr@gnu.org>
20533
20534 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20535 work for most menu items. From David Ponce
20536 <david.ponce@wanadoo.fr>.
20537
20538 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20539
20540 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20541 Some x_set_* function expect to be called even if old and new
20542 value are equal.
20543
20544 * xdisp.c (build_desired_tool_bar_string): Accept zero
20545 tool_bar_button_relief.
20546
20547 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20548
20549 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20550
20551 * xterm.c (x_draw_bar_cursor): If the background color of the
20552 glyph under the cursor equals the frame's cursor color, use
20553 the glyph's foreground color for drawing the bar cursor.
20554
20555 * dispnew.c (direct_output_forward_char): Fix character/byte
20556 position comparison.
20557
20558 2001-11-15 Miles Bader <miles@gnu.org>
20559
20560 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20561 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20562 Update arguments to find_field.
20563 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20564 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20565 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20566 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20567
20568 2001-11-14 Richard M. Stallman <rms@gnu.org>
20569
20570 * editfns.c (Fpropertize): Allow call with 1 arg.
20571
20572 * dispextern.h (image_background, image_background_transparent):
20573 Conditionalize on HAVE_X_WINDOWS.
20574
20575 2001-11-13 Richard M. Stallman <rms@gnu.org>
20576
20577 * print.c (Fprin1_to_string): Doc fix.
20578
20579 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20580
20581 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20582
20583 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20584
20585 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20586
20587 * eval.c (syms_of_eval): Doc fix.
20588
20589 * coding.c (syms_of_coding): Doc fix.
20590
20591 * doc.c (Fsnarf_documentation): Doc fix.
20592
20593 * dispnew.c (syms_of_display): Doc fix.
20594
20595 * category.c (Fget_unused_category): Doc fix.
20596
20597 * buffer.c (syms_of_buffer): Doc fixes.
20598
20599 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20600
20601 * print.c (prin1, print): Doc fix.
20602
20603 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20604
20605 * fontset.h: Remove declarations of variables
20606 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20607
20608 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20609 `Vclip_large_size_font'.
20610
20611 2001-11-13 Jason Rumney <jasonr@gnu.org>
20612
20613 * w32fns.c: Doc fix.
20614
20615 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20616
20617 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20618
20619 * fns.c: Doc fix.
20620
20621 * emacs.c: Doc fix.
20622
20623 * coding.c: Doc fix.
20624
20625 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20626 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20627 `new style' [w/`doc:' keyword].
20628
20629 2001-11-12 Richard M. Stallman <rms@gnu.org>
20630
20631 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20632 LeaveNotify events. Only FocusIn and FocusOut do that now.
20633 (x_display_and_set_cursor): Do display hollow cursors in active
20634 minibuffer windows when they are not selected.
20635
20636 2001-11-12 Jason Rumney <jasonr@gnu.org>
20637
20638 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20639 * w32term.c: Change doc-string comments to `new style'
20640 [w/`doc:' keyword]. Doc fixes.
20641
20642 * w32fns.c: Don't define max.
20643 (Fx_open_connection): Only execute once.
20644
20645 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20646
20647 * ccl.c: Change macros to use do-while block instead of if-else.
20648 Use braces to follow GNU Coding Standards.
20649
20650 2001-11-11 Richard M. Stallman <rms@gnu.org>
20651
20652 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20653
20654 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20655
20656 * insdel.c (replace_range): Use adjust_markers_for_replace
20657 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20658
20659 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20660
20661 * textprop.c (set_text_properties_1): New subroutine
20662 broken out of set_text_properties.
20663 (set_text_properties): Use set_text_properties_1.
20664
20665 * intervals.c (graft_intervals_into_buffer):
20666 Use set_text_properties_1 to clear out properties.
20667
20668 * search.c (Freplace_match): Use replace_range to insert
20669 and delete. Don't request property inheritance from
20670 surrounding text.
20671
20672 2001-11-10 Jason Rumney <jasonr@gnu.org>
20673
20674 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20675 vertical fonts. Allow them if face name is explicitly specified.
20676 Do not give up if we find a font that cannot be converted to an xlfd.
20677
20678 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20679
20680 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20681 instead of malloc/free.
20682
20683 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20684
20685 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20686 Coding Standards.
20687 (Finternal_set_lisp_face_attribute): Likewise.
20688
20689 * buffer.c (Fbury_buffer): Likewise.
20690
20691 * indent.c (current_column_1): Remove unused variable `prev_col'.
20692
20693 * coding.c (encode_coding): Use precomputed value of `src'.
20694 (encode_coding): Remove unused variable `src_end'.
20695 (code_convert_region): Remove unused variables `count'.
20696
20697 2001-11-07 Jason Rumney <jasonr@gnu.org>
20698
20699 * w32term.c (x_display_and_set_cursor): Do not move system caret
20700 if cursor_glyph is NULL.
20701
20702 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20703
20704 * keymap.c (access_keymap): Fix compilation error.
20705
20706 2001-11-07 Miles Bader <miles@gnu.org>
20707
20708 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20709
20710 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20711
20712 * intervals.c (graft_intervals_into_buffer):
20713 Remove #ifdef'd-out code.
20714 (graft_intervals_into_buffer): Remove unused variable `middle'.
20715
20716 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20717 code (eval-current-buffer).
20718 Change doc-string comments to `new style' [w/`doc:' keyword].
20719
20720 2001-11-06 Richard M. Stallman <rms@gnu.org>
20721
20722 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20723
20724 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20725
20726 * lread.c (read1): Fix behavior with nested backquoting.
20727
20728 * keyboard.c (make_lispy_event): Check integerness and fix
20729 Lisp_Object/int mixup.
20730
20731 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20732
20733 * fns.c (copy_hash_table): Remove unused variable `v'.
20734
20735 * fontset.c (fontset_font_pattern): Remove unused variable
20736 `family_registry'.
20737
20738 * indent.c (current_column_1): Remove unused variable `prev_col'.
20739
20740 2001-11-05 Richard M. Stallman <rms@gnu.org>
20741
20742 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20743
20744 * buffer.c (Fkill_buffer): Don't delete auto save file
20745 if buffer is modified.
20746
20747 2001-11-05 Andrew Innes <andrewi@gnu.org>
20748
20749 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20750 CHECK_NUMBER_CDR.
20751
20752 2001-11-05 Richard M. Stallman <rms@gnu.org>
20753
20754 * unexelf.c (unexec): Minor changes; clean up comments.
20755
20756 2001-11-05 Sam Steingold <sds@gnu.org>
20757
20758 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20759
20760 2001-11-05 Andreas Schwab <schwab@suse.de>
20761
20762 * sound.c (sound_perror): Save errno from being clobbered.
20763
20764 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20765
20766 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20767 the program image directly.
20768
20769 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20770
20771 * buffer.h (Fbuffer_local_value): Add prototype.
20772
20773 2001-11-04 Richard M. Stallman <rms@gnu.org>
20774
20775 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20776 and CHECK_BUFFER.
20777
20778 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20779 (record_char): Likewise.
20780
20781 * keyboard.c (make_lispy_event): Don't insist a drag event must
20782 move to a different buffer position. Instead, check for moving at
20783 least double_click_fuzz.
20784
20785 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20786
20787 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20788
20789 * indent.c (current_column_1, Fmove_to_column): Separate the code
20790 for display-table glyphs from the code for buffer text, to fix
20791 bugs in the former.
20792
20793 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20794
20795 * buffer.c (Fbuffer_local_value): New function.
20796 (syms_of_buffer): Defsubr it.
20797
20798 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20799 value of `cursor-in-non-selected-windows'.
20800
20801 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20802 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20803 (syms_of_xdisp): Initialize it.
20804
20805 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20806
20807 * xfns.c (Fx_create_frame): Doc fix.
20808
20809 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20810 keyword].
20811
20812 * eval.c (top_level_value, top_level_set): Remove commented and
20813 #ifdef'd-out code.
20814 (Fdefvar): Fix usage in doc-string.
20815
20816 2001-11-03 Richard M. Stallman <rms@gnu.org>
20817
20818 * xfns.c: Include unistd.h, if it exists.
20819
20820 * editfns.c: Move the include of ctype.h after unistd.h.
20821
20822 * gmalloc.c: Test BROKEN_PROTOTYPES.
20823
20824 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20825
20826 * lisp.h (CHECK_STRING_CAR): New macro.
20827 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20828 treating XCAR and XCDR as lvalues.
20829 (openp): Use CHECK_STRING_CAR.
20830 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20831
20832 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20833
20834 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20835 (SIGMASKTYPE): Define.
20836
20837 * syssignal.h (sigunblock): Don't define if already defined.
20838
20839 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20840
20841 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20842 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20843 Fix typos in comments.
20844
20845 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20846 and #ifdef'd-out code.
20847 Fix and reindent comments.
20848
20849 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20850
20851 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20852 argument `i' in macros.
20853
20854 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20855 `i' in macros.
20856
20857 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20858 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20859 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20860 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20861 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20862 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20863 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20864 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20865 in macros.
20866
20867 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20868 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20869 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20870 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20871 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20872 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20873 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20874 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20875 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20876 (remove unused second argument).
20877
20878 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20879
20880 * syntax.c (describe_syntax): New wrapper.
20881 (Finternal_describe_syntax_value): Rename from describe_syntax.
20882 Don't insert space at front and \n at the end.
20883 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20884
20885 * regex.c (re_wctype): Try to fix some warnings.
20886 (regcomp, regexec): Don't forget the __restrict.
20887
20888 2001-11-02 Richard M. Stallman <rms@gnu.org>
20889
20890 * textprop.c (Fget_char_property): Doc fix.
20891
20892 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20893
20894 * process.c (Fstart_process): Add usage to doc-string.
20895
20896 * data.c (Fsetq_default): Ditto.
20897
20898 * callint.c (Finteractive): Ditto.
20899
20900 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
20901
20902 * macros.c: Don't include keymap.h any more.
20903
20904 2001-11-01 Richard M. Stallman <rms@gnu.org>
20905
20906 * data.c (Fmake_local_variable): Doc fix.
20907
20908 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
20909 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
20910
20911 * keymap.c (Fdescribe_buffer_bindings): Print character property
20912 bindings along with or instead of the buffer local map.
20913 Make the overriding maps override what they should.
20914
20915 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20916
20917 * window.c (grow_mini_window): Fix typo in comment.
20918
20919 2001-11-01 Gerd Moellmann <gerd@gnu.org>
20920
20921 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
20922 (XTset_vertical_scroll_bar): Likewise.
20923
20924 * xfns.c (x_build_heuristic_mask): Use four_corners_best
20925 instead of IMAGE_BACKGROUND.
20926
20927 * xfns.c (four_corners_best): Reindent.
20928
20929 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
20930 Handle :box so that it is possible to specify sexprs.
20931
20932 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
20933
20934 * s/hpux11.h: New file.
20935
20936 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20937
20938 * emacs.c (USAGE1): Show command line option --no-window-system
20939 instead of --no-windows in usage.
20940 (standard_args): Rename --no-windows to --no-window-system.
20941 (bug_reporting_address): Follow Emacs coding conventions.
20942
20943 * eval.c (Fcommandp): Doc fix.
20944 Change doc-string comments to `new style' [w/`doc:' keyword].
20945
20946 * frame.c (Fframe_live_p): Doc fix.
20947
20948 * buffer.c (selective-display-ellipses): Doc fix.
20949
20950 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20951
20952 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
20953
20954 * xfaces.c (realize_x_face): If C is not a single-byte character,
20955 set the face's colors_copied_bitwise_p instead of the defaulted_p
20956 members which have a different meaning.
20957 (free_face_colors): Do nothing for a face whose colors have been
20958 copied bitwise.
20959
20960 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20961
20962 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20963
20964 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20965 [w/`doc:' keyword].
20966
20967 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20968
20969 * fns.c (require_unwind): Return Lisp_Object.
20970
20971 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20972
20973 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20974 (last-input-char): Revert doc-string to be the same as the
20975 doc-string of `last-input-event'.
20976
20977 * xdisp.c: Fix typos in comments.
20978
20979 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20980
20981 * window.c (grow_mini_window): Handle case that the root
20982 window is already smaller than the nominal mininum height.
20983
20984 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20985
20986 * emacs.c (main): Don't call keys_of_macros any more.
20987
20988 * lisp.h (keys_of_macros): Remove.
20989
20990 * macros.c (keys_of_macros): Remove.
20991
20992 * xfaces.c (Fface_attribute_relative_p): Declare args.
20993
20994 2001-10-30 Jason Rumney <jasonr@gnu.org>
20995
20996 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20997 (enum_font_cb2): Ignore fonts with vertical orientation.
20998
20999 2001-10-30 Richard M. Stallman <rms@gnu.org>
21000
21001 * keyboard.c (Finput_pending_p): Doc fix.
21002
21003 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21004
21005 * xterm.c (x_after_update_window_line): Don't run the code
21006 clearing in borders for rows whose visible height is 0.
21007
21008 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21009 resized_p flag is set. If not set, use the much less flickering
21010 method previously used.
21011
21012 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21013
21014 * frame.h (struct frame) <resized_p>: New member.
21015
21016 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21017 as large as the number of bytes to convert.
21018
21019 * lread.c (to_multibyte): New function.
21020 (read1): Use it.
21021
21022 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21023
21024 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21025
21026 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21027
21028 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21029 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21030 if the row's fill_line_p is set and drawing the last glyph with
21031 DRAW_IMAGE_{RAISED,SUNKEN}.
21032
21033 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21034
21035 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21036
21037 * xmenu.c: Include coding.h and charset.h.
21038 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21039 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21040 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21041 Explicitly set wv->help. Use `TRUE' rather than `True'.
21042 (menu_help_callback): Use empty_string.
21043
21044 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21045 (Fx_popup_dialog): Explicitly init f.
21046 (w32_menu_display_help): Use empty_string.
21047
21048 2001-10-29 Richard M. Stallman <rms@gnu.org>
21049
21050 * fns.c (Frequire): Detect recursive try to require the same
21051 feature 3 or more levels deep, and get error.
21052 (require_unwind): New subroutine.
21053 (require_nesting_list): New variable.
21054 (syms_of_fns): Init and staticpro it.
21055
21056 * print.c (print_object): Clarify indication of insertion type.
21057
21058 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21059
21060 * coding.c (syms_of_coding): Document that locale-coding-system is
21061 used for decoding input on X.
21062
21063 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21064
21065 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21066
21067 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21068 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21069
21070 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21071
21072 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21073 use NO_CURSOR if cursor_in_non_selected_windows is false.
21074
21075 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21076 the slant attribute if FRAME is t.
21077
21078 * xfns.c (x_set_internal_border_width): Set frame garbaged
21079 when X window doesn't exist yet.
21080
21081 * xterm.c (x_after_update_window_line): Clear internal border
21082 in different circumstances.
21083
21084 * xterm.c (XTread_socket) <KeyPress>: Don't use
21085 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21086 <handa@etl.go.jp>.
21087
21088 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21089
21090 * m/ibms390.h: New file. From Adam Thornton
21091 <athornton@sinenomine.net>.
21092
21093 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21094
21095 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21096
21097 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21098 a loop counter.
21099
21100 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21101
21102 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21103
21104 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21105 keyword].
21106 Fix typos in comments.
21107
21108 * emacs.c (bug_reporting_address): New function.
21109 Use it when displaying usage message.
21110
21111 * minibuf.c (read_minibuf): Remove unused external declaration of
21112 variable `Qread_only'.
21113
21114 * keymap.c (access_keymap): Remove unused variable `charset'.
21115
21116 2001-10-28 Miles Bader <miles@gnu.org>
21117
21118 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21119 Remove #ifdef'd-out code.
21120 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21121 (syms_of_xfaces): Initialize them.
21122
21123 2001-10-27 Jason Rumney <jasonr@gnu.org>
21124
21125 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21126 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21127 position using the system caret.
21128
21129 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21130 (w32_system_caret_height, w32_system_caret_x)
21131 (w32_system_caret_y): New variables for tracking system caret.
21132 (w32_initialize): Initialize them.
21133 (x_display_and_set_cursor): Make system caret follow the active cursor.
21134
21135 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21136 New messages types.
21137
21138 * w32term.c (note_mouse_highlight): Clear old help_echo.
21139
21140 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21141
21142 * xterm.c: Fix typo in a comment.
21143
21144 * emacs.c: Fix typos in comments.
21145 Remove unnecessary spaces.
21146 Change doc-string comments to `new style' [w/`doc:' keyword].
21147 (USAGE2): Fix typos in usage string.
21148
21149 * xterm.c: Fix typo in a comment.
21150
21151 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21152 emacs.c.
21153
21154 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21155
21156 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21157 instead of 1/2 line_height in the heuristic for skipping
21158 farther backward when target_y was not reached.
21159
21160 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21161 Display errno only if non-zero.
21162 (sound_warning): New function.
21163 (vox_configure): Don't treat failing to set sample rate as error.
21164 (various places): Improve error messages.
21165
21166 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21167
21168 * fileio.c (Faccess_file): Run the argument filename through
21169 Fexpand_file_name, before using it.
21170
21171 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21172 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21173
21174 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21175
21176 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21177
21178 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21179 Fix clearing in the case of scroll bars on the right.
21180
21181 2001-10-26 Juanma Barranquero <lektu@terra.es>
21182
21183 * w32gui.h (XImage): Add a dummy typedef.
21184
21185 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21186
21187 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21188
21189 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21190
21191 * frame.c (Fframe_parameter): Fix last change.
21192
21193 * fileio.c: Revert last change (which removed old commented-out
21194 version of expand-file-name). Add a comment that explains why
21195 this old version should not be removed.
21196
21197 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21198
21199 * frame.c (Fframe_parameter): Fix a bug whereby some
21200 ``artificial'' frame parameters, like `minibuffer' were not
21201 obtained by calling Fframe_parameters.
21202
21203 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21204 cursor differently.
21205
21206 * xdisp.c (move_it_vertically_backward): Compute line height
21207 differently. Add heuristic to try to be more compatible to 20.x.
21208
21209 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21210
21211 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21212
21213 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21214 boolean.
21215
21216 2001-10-25 Miles Bader <miles@gnu.org>
21217
21218 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21219 BG is a pointer to a structure, not a structure.
21220 (gif_format, png_format): Add missing commas.
21221
21222 2001-10-24 Richard M. Stallman <rms@gnu.org>
21223
21224 * xfaces.c (Fface_attributes_as_vector): New function.
21225 (syms_of_xfaces): Defsubr it.
21226
21227 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21228
21229 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21230 variable `area'.
21231
21232 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21233
21234 * search.c (scan_newline): Remove unused variable `selective_display'.
21235
21236 2001-10-25 Miles Bader <miles@gnu.org>
21237
21238 * dispextern.h (struct image): Add `background',
21239 `background_valid', and `background_transparent' fields.
21240 (image_background, image_background_transparent): New declarations.
21241 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21242 * xfns.c (image_background, image_background_transparent)
21243 (four_corners_best): New functions.
21244 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21245 (gs_format): Add `:background' entry.
21246 (lookup_image): Set IMG's background color if specified.
21247 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21248 when appropriate.
21249 (x_clear_image_1): Reset `background_valid' and
21250 `background_transparent_valid' fields.
21251 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21252 calculating it here. Set IMG's background_transparent field.
21253 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21254 (enum png_keyword_index): Add PNG_BACKGROUND.
21255 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21256 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21257 (enum gif_keyword_index): Add GIF_BACKGROUND.
21258 (enum gs_keyword_index): Add GS_BACKGROUND.
21259 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21260 Pre-calculate image background color where necessary.
21261 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21262 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21263 color to use for image glyph reliefs.
21264
21265 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21266
21267 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21268 in full-width rows.
21269
21270 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21271 Fix clearing of area not covered by scroll bar.
21272
21273 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21274
21275 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21276 and `real_start'.
21277 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21278 (glyph_rect): Remove unused variable `area'.
21279
21280 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21281
21282 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21283
21284 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21285 (row_containing_pos): Take additional argument DY.
21286 Treat rows ending in middle of char differently.
21287 (display_line): Handle tabs on window systems differently.
21288
21289 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21290 with additional argument.
21291
21292 * dispextern.h (row_containing_pos): Adjust prototype.
21293
21294 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21295 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21296 (try_window_id, try_window_reusing_current_matrix)
21297 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21298 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21299
21300 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21301
21302 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21303 gnuemacs).
21304 (HAVE_BOXES): Fix typo in comment.
21305 (push_menu_pane): Fix typo in comment.
21306
21307 * xdisp.c (display_prop_string_p): Remove unused local declaration
21308 of `Qwhen'.
21309 (single_display_prop_string_p): Remove unused local declarations
21310 of `Qwhen' and `Qmargin'.
21311 (string_buffer_position): Remove unused variable `around'.
21312 (store_frame_title): Remove unused variable `width'.
21313
21314 * window.c: Don't define max.
21315 (coordinates_in_window): Remove unused variable `uy'.
21316
21317 * widget.c: Don't define max.
21318
21319 * process.c: Don't define max.
21320 (create_process): Remove unused variable `buffer'.
21321
21322 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21323
21324 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21325
21326 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21327
21328 * xfaces.c (Finternal_set_lisp_face_attribute)
21329 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21330 frame is on a windowed display.
21331
21332 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21333
21334 * dispnew.c (sync_window_with_frame_matrix_rows):
21335 Fix handling of windows which aren't full-width, fix handling
21336 of marginal areas.
21337
21338 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21339
21340 2001-10-23 Andreas Schwab <schwab@suse.de>
21341
21342 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21343 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21344
21345 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21346
21347 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21348 REAL_END. Notice if cursor gets overwritten.
21349 (notice_overwritten_cursor): Take X positions as parameters.
21350 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21351 around call to x_draw_glyphs.
21352
21353 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21354
21355 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21356 instead of C) and usage.
21357
21358 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21359 of C) and usage.
21360
21361 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21362 `left', `max_width' and `max_height'.
21363
21364 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21365
21366 * xdisp.c (display_line): For a tab continued to the next line,
21367 set row's ends_in_middle_of_char_p.
21368
21369 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21370
21371 * xdisp.c (display_line): Fix computation of continuation lines
21372 width for TABs.
21373
21374 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21375
21376 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21377 `Qlaplace'.
21378
21379 * fileio.c: Remove unused code.
21380
21381 2001-10-22 Miles Bader <miles@gnu.org>
21382
21383 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21384 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21385 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21386
21387 2001-10-21 Jason Rumney <jasonr@gnu.org>
21388
21389 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21390
21391 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21392
21393 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21394 (Finsert_string): Avoid the multi-line string literals warning.
21395
21396 2001-10-22 Miles Bader <miles@gnu.org>
21397
21398 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21399 (Fdocumentation): Don't use it.
21400 (syms_of_doc): Don't initialize it.
21401
21402 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21403 * print.c (Fwith_output_to_temp_buffer): Likewise.
21404 * window.c (Fsave_window_excursion): Likewise.
21405 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21406 (Fsave_restriction): Likewise.
21407 * eval.c (Frun_hooks, Frun_hook_with_args)
21408 (Frun_hook_with_args_until_failure)
21409 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21410 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21411 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21412 (Funwind_protect, Fcondition_case): Likewise.
21413 * coding.c (Ffind_operation_coding_system): Likewise.
21414 * keyboard.c (Ftrack_mouse): Likewise.
21415
21416 2001-10-21 Miles Bader <miles@gnu.org>
21417
21418 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21419 (Fmake_hash_table): Add usage: string to doc string.
21420 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21421 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21422 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21423 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21424 (Fml_prefix_argument_loop): Likewise.
21425
21426 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21427
21428 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21429
21430 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21431 style' [w/`doc:' keyword].
21432
21433 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21434 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21435 comments to `new style' [w/`doc:' keyword].
21436
21437 2001-10-21 Jason Rumney <jasonr@gnu.org>
21438
21439 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21440
21441 * w32term.c (remember_mouse_glyph): New function.
21442 (w32_mouse_position): Use it.
21443 (note_mouse_movement): If the mouse moved off the glyph, remember
21444 its new position.
21445
21446 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21447 (w32_display_info): Add mouse_face_overlay.
21448
21449 * w32term.c (notice_overwritten_cursor): Renamed from
21450 note_overwritten_text_cursor. Rewritten to take glyph widths into
21451 account.
21452 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21453 (fast_find_string_pos): New function.
21454 (fast_find_position): Return the correct vpos. Add parameter
21455 STOP. In the final row, stop before glyphs having STOP as object.
21456 Don't consider glyphs that are not from a buffer.
21457 (fast_find_position) [0]: Add a presumably more correct version
21458 for after 21.1.
21459 (expose_window_tree, expose_frame): Don't compute intersections here.
21460 (expose_window): Do it here instead.
21461 (expose_window_tree, expose_window, expose_line): Return 1 when
21462 overwriting mouse-face.
21463 (expose_window): If W is the window currently being updated, mark
21464 the frame garbaged.
21465 (expose_frame): If mouse-face was overwritten, redo it.
21466 (x_use_underline_position_properties): New variable.
21467 (syms_of_xterm): DEFVAR_BOOL it.
21468 (x_draw_glyph_string): Add comment to use it in future.
21469 (x_draw_glyph_string): Restore clipping after drawing box.
21470 Fix a computation of the underline position.
21471 (w32_get_glyph_string_clip_rect): Minor cleanup.
21472 (x_fill_stretch_glyph_string): Remove an assertion.
21473 (x_produce_glyphs): Don't convert multibyte characters
21474 to unibyte characters in unibyte buffers.
21475 (cursor_in_mouse_face_p): New function.
21476 (x_draw_stretch_glyph_string): Use it to choose a different GC
21477 when drawing a cursor within highlighted text. Don't draw
21478 background again if it has already been drawn.
21479 (x_draw_glyph_string_box): Don't draw a full-width
21480 box just because the glyph row's full_width_p flag is set.
21481 (x_draw_glyphs): Fix computation of rightmost x for
21482 full-width rows.
21483 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21484 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21485 change bottom shadow accordingly. Some cleanup.
21486 (x_update_window_end): Handle overwritten mouse face
21487 also for tool bar windows.
21488 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21489 DRAW is DRAW_IMAGE_RAISED.
21490 (clear_mouse_face): Return 1 if text with mouse face was
21491 actually redrawn. Make the function static.
21492 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21493 optimize away highlighting if we pass over that same overlay again.
21494 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21495 to detect a case where we have to highlight a different region
21496 despite not having left the currently highlighted region.
21497 Set mouse_face_overlay in the x_display_info. Avoid changing the
21498 mouse pointer shape when show_mouse_face has already done it, or
21499 there is no need. Handle mouse-face and help-echo in strings.
21500 (glyph_rect): New function.
21501 (w32_mouse_position): Use it to raise the threshold for mouse
21502 movement event generation.
21503 (w32_initialize_display_info): Initialize the x_display_info's
21504 mouse_face_overlay.
21505 (w32_set_vertical_scroll_bar): Don't clear a zero height
21506 or width area.
21507 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21508 a widget to zero height.
21509
21510 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21511 Protect unibyte strings created by replacing their multibyte
21512 equivalents in menu_items.
21513 (w32_menu_show): Don't overwrite an item's name with its key
21514 description in case the description is a multibyte string.
21515 (single_submenu): Some cleanup.
21516
21517 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21518 (postprocess_image): New function.
21519 (lookup_image): Call it for all image types except PostScript.
21520 (x_kill_gs_process): Call postprocess_image.
21521 (tiff_error_handler, tiff_warning_handler): New functions.
21522 (tiff_load): Install them as handlers.
21523 (x_kill_gs_process): Recognize if someone has cleared the image
21524 cache under us.
21525 (valid_image_p): Protect better against invalid image
21526 specifications. Previous code could signal an error.
21527 (Fx_hide_tip, Fshow_tip): Doc fix.
21528 (Fv_max_tooltip_size): New variable.
21529 (syns_of_xfns): DEFVAR_LISP it.
21530 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21531 window buffer to *tip* right after creating the frame. Set frame's
21532 window_width. Use a maximum tooltip size specified by
21533 Vx_max_tooltip_size, if that has valid contents.
21534 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21535 Make sure the tooltip is completely visible.
21536 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21537 (Fx_create_frame): Adjust the frame's height for presence
21538 of the tool bar before calling x_figure_window_size.
21539 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21540 when the window gets smaller.
21541 (x_set_foreground_color): Set frame's cursor_pixel.
21542 (x_set_foreground_color, x_set_background_color): Cleaned up.
21543 (x_set_font): Handle case of x_new_fontset returning the same name
21544 as before, although there was a change in fontsets.
21545
21546 2001-10-21 Miles Bader <miles@gnu.org>
21547
21548 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21549 (Flogxor): Add usage: string to doc string.
21550 * charset.c (Fstring): Likewise.
21551 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21552 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21553
21554 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21555
21556 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21557
21558 * alloc.c: Reindent DEFUNs with doc: keywords.
21559
21560 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21561
21562 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21563 keyword].
21564
21565 See ChangeLog.9 for earlier changes.
21566
21567 ;; Local Variables:
21568 ;; coding: iso-2022-7bit
21569 ;; End:
21570
21571 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21572 Copying and distribution of this file, with or without modification,
21573 are permitted provided the copyright notice and this notice are preserved.
21574
21575 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4