]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2005-12-09 Eli Zaretskii <eliz@gnu.org>
2
3 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
4 GDB to the abort dialog.
5
6 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
7
8 * indent.c (Fvertical_motion): Force move if starting on
9 stretch glyph.
10
11 2005-12-08 Richard M. Stallman <rms@gnu.org>
12
13 * lread.c (read_escape) <\s>: Don't treat strings specially.
14
15 * xfns.c (Fx_create_frame): Comment out previous change.
16
17 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
18
19 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
20 when needed.
21
22 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
23
24 * minibuf.c (keys_of_minibuf): Just unbind SPC in
25 Vminibuffer_local_filename_completion_map rather than forcing it
26 explicitly to the same binding as the global map.
27
28 2005-12-06 Ken Raeburn <raeburn@gnu.org>
29
30 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP
31 argument.
32 * bytecode.c (Fbyte_code): Likewise.
33 * fileio.c (internal_delete_file, Fread_file_name_internal):
34 Likewise.
35 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
36 * undo.c (truncate_undo_list): Likewise.
37
38 2005-12-05 Richard M. Stallman <rms@gnu.org>
39
40 * window.c (enlarge_window): Eliminate arg preserve_before.
41 Assume it is 0. All callers changed.
42 (Fenlarge_window, Fshrink_window): Likewise.
43
44 2005-12-02 Eli Zaretskii <eliz@gnu.org>
45
46 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
47 fit below.
48
49 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
50
51 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
52
53 * xfns.c (x_real_positions): int ign => unsigned int.
54 (xg_set_icon_from_xpm_data): Remove unused variable err.
55 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
56 to remove compiler warning.
57 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
58
59 2005-12-02 David Reitter <david.reitter@gmail.com>
60
61 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
62 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
63 and Vminibuffer_local_must_match_filename_map keymaps.
64 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
65
66 * keymap.c (Vminibuffer_local_filename_completion_map)
67 (Vminibuffer_local_must_match_filename_map): New variables.
68 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
69 parent to be Vminibuffer_local_completion_map and
70 Vminibuffer_local_must_match_map, respectively.
71
72 * commands.h (Vminibuffer_local_filename_completion_map)
73 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
74
75 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
76
77 * window.c (Fset_window_configuration): Don't accidentally copy the
78 window-point of one window to another.
79
80 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
81
82 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
83
84 2005-11-30 Kim F. Storm <storm@cua.dk>
85
86 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
87 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
88 passing it to `emacs_write'.
89
90 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
91
92 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
93
94 2005-11-27 Richard M. Stallman <rms@gnu.org>
95
96 * window.c (adjust_window_trailing_edge): New function.
97 (Fadjust_window_trailing_edge): New function.
98 (syms_of_window): Defsubr it.
99 (window_deletion_count): New variable.
100 (delete_window): Update window_deletion_count.
101
102 2005-11-26 Eli Zaretskii <eliz@gnu.org>
103
104 * minibuf.c (syms_of_minibuf): Mention the extension of
105 `completion-auto-help's meaning by complete.el.
106
107 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
108
109 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
110 Handle :inherit property as a lisp expression.
111
112 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
113
114 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
115 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
116 Qsuper, and Qmodifier_value.
117 (Vmac_control_modifier, Vmac_option_modifier)
118 (Vmac_command_modifier, Vmac_function_modifier)
119 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
120 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
121 (Vmac_charset_info_alist): Doc fixes.
122
123 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
124
125 * emacs.c (main) [MAC_OSX]: Change working directory to home
126 directory if `-psn_*' option is specified.
127
128 * mac.c (DECODE_UTF_8): Remove macro.
129 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
130 created from cfstring_to_lisp.
131 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
132 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
133
134 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
135 Add prototype.
136
137 2005-11-21 Ken Raeburn <raeburn@gnu.org>
138
139 * keymap.c (shadow_lookup): Use make_number to pass a number to
140 Fsubstring.
141
142 2005-11-21 Juri Linkov <juri@jurta.org>
143
144 * puresize.h (BASE_PURESIZE): Increment to 1180000.
145
146 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
147
148 * xfaces.c (Finternal_set_lisp_face_attribute):
149 Use :ignore-defface for new frame defaults when `unspecified' is
150 supplied.
151 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
152 (merge_face_vectors): Don't do :ignore-defface overwriting here.
153 (Finternal_merge_in_global_face): Do it here.
154
155 2005-11-20 Juri Linkov <juri@jurta.org>
156
157 * charset.c (invalid_character): Use Lisp-readable syntax
158 for octal and hex. Reorder decimal, octal and hex values.
159
160 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
161
162 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
163 this type is recognised when debugging.
164
165 2005-11-19 Andreas Schwab <schwab@suse.de>
166
167 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
168 Lisp_Cons and Lisp_Float.
169
170 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
171
172 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
173 New variable.
174 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
175 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
176 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
177 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
178
179 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
180
181 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
182
183 * xfaces.c (Qignore_defface): New variable.
184 (syms_of_xfaces): Provide `:ignore-defface'.
185 (IGNORE_DEFFACE_P): New macro.
186 (check_lface_attrs, lface_fully_specified_p)
187 (Finternal_set_lisp_face_attribute)
188 (Fface_attribute_relative_p, Fmerge_face_attribute):
189 Handle Qignore_defface as a possible value.
190 (merge_face_vectors): The merged face is `unspecified' if the
191 mergee specifies `:ignore-defface'.
192
193 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
194
195 * lread.c (readevalloop): Add missing GCPROs.
196
197 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
198
199 * xfns.c (xg_set_icon_from_xpm_data): New function.
200
201 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
202 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
203
204 * xterm.c (x_bitmap_icon): Use the xpm if available.
205
206 * image.c (x_create_bitmap_from_xpm_data): New function.
207 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
208
209 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
210
211 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
212
213 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
214
215 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
216
217 2005-11-15 Andreas Schwab <schwab@suse.de>
218
219 * lisp.h (struct Lisp_Cons): Make cdr a union.
220 (XCDR_AS_LVALUE): Adjust.
221 (struct Lisp_Float): Make data a union.
222 (XFLOAT_DATA): Adjust.
223
224 * alloc.c (free_float): Make free list chaining aliasing-safe.
225 (make_float): Likewise.
226 (free_cons): Likewise.
227 (Fcons): Likewise.
228 (check_cons_list): Likewise.
229 (Fmake_symbol): Likewise.
230 (allocate_misc): Likewise.
231 (free_misc): Likewise.
232 (gc_sweep): Likewise.
233
234 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
235
236 * mac.c (HASHKEY_QUERY_CACHE): New define.
237 (xrm_create_database, xrm_q_put_resource): Empty query cache.
238 (xrm_get_resource): Use query cache.
239
240 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
241 inhibit_window_system is set.
242
243 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
244
245 * macgui.h (USE_CG_TEXT_DRAWING): New define.
246 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
247 and cg_glyphs.
248
249 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
250 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
251 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
252 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
253 not used and font substitution never occurs for ASCII and Latin-1
254 characters.
255 (XLoadQueryFont): Maximum and minimum metrics are now those among
256 ASCII characters.
257 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
258 height adjustments for Courier, Helvetica, and Times.
259
260 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
261
262 2005-11-11 David Reitter <david.reitter@gmail.com>
263
264 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
265 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
266 Vmac_control_modifier / mac-control-modifier,
267 Vmac_option_modifier / mac-option-modifier,
268 Vmac_command_modifier / mac-command-modifier.
269 (mac_to_emacs_modifiers): Use the new style modifier
270 variables. Return UInt32 (modifiers are longs now.)
271 (backtranslate_modified_keycode): New function (refactoring).
272 (XTread_socket): Use new modifier variables and refactored function.
273 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
274 no dedicated meta key. Not in use anyway.)
275 (convert_fn_keycode): Map Fn-keys to their original keycode
276 using a table (english keyboard only).
277
278 2005-11-11 Kim F. Storm <storm@cua.dk>
279
280 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
281 Add post hook to "backtrace" to always dump lisp call stack to
282 increase chance of people sending it to us when reporting bugs.
283
284 * doc.c (Fsubstitute_command_keys): Doc fix.
285
286 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
287
288 * xdisp.c (handle_stop): Skip overlay string handling if
289 ignore_overlay_strings_at_pos_p is set.
290 (set_iterator_to_next): At end of display vector, set
291 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
292 string, so we skip those overlay strings at current pos.
293
294 2005-11-10 Lars Hansen <larsh@soem.dk>
295
296 * fileio.c (file-regular-p): Doc fix.
297
298 2005-11-10 Kim F. Storm <storm@cua.dk>
299
300 * alloc.c (valid_lisp_object_p): New function to validate that
301 an object is really a valid Lisp_Object.
302
303 * lisp.h (valid_lisp_object_p): Add prototype.
304
305 * print.c (safe_debug_print): New function to be called from gdb
306 to print Lisp objects; use valid_lisp_object_p to avoid crashing
307 if user tries to print something which is not a Lisp object.
308
309 * .gdbinit (pp, pp1): Use safe_debug_print.
310 (pv, pv1): New commands to print value of a lisp variable.
311
312 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
313
314 * .gdbinit (pp1): New user-defined function.
315
316 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
317
318 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
319
320 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
321 related variables for dumped executable.
322
323 * unexmacosx.c (unexec_write_zero): New function.
324 (copy_data_segment): Clear uninitialized local variables in
325 statically linked libraries.
326
327 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
328
329 2005-11-09 Juri Linkov <juri@jurta.org>
330
331 * keymap.c (shadow_lookup): If Flookup_key returns a number,
332 call it again with a sub-key-sequence, and if its return value
333 is non-nil (sub-key is bound), return nil.
334
335 2005-11-08 Kim F. Storm <storm@cua.dk>
336
337 * process.c (Fsignal_process): Recognize signal names with and
338 without SIG prefix, e.g. SIGHUP and HUP.
339
340 * search.c (search_buffer): No need to initialize base_pat.
341
342 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
343
344 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
345 Don't abuse the `mini' arg. Use the `obj' arg instead.
346
347 2005-11-04 Kim F. Storm <storm@cua.dk>
348
349 * xdisp.c (show_mouse_face): Clear mouse face to eol.
350
351 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
352
353 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
354 font-lock.elc and jit-lock.elc.
355
356 2005-11-03 Richard M. Stallman <rms@gnu.org>
357
358 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
359 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
360 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
361
362 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
363
364 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
365
366 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
367
368 * window.c (Fdisplay_buffer): Fix last change to not use
369 a dedicated window.
370
371 2005-11-01 Kim F. Storm <storm@cua.dk>
372
373 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
374 Instead, rotate the bottom angle bitmap 180 degrees to indicate
375 that the bottom row does not end in a newline.
376
377 2005-11-01 Andreas Schwab <schwab@suse.de>
378
379 * unexelf.c (unexec): Handle .plt section in BSS segment.
380
381 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
382
383 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
384
385 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
386 determine whether to consider dedicated windows as well.
387 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
388 (Fdisplay_buffer): Do consider dedicated windows in those cases where
389 we will split the window rather than reuse it.
390 Don't try to use windows on other displays.
391
392 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
393
394 * puresize.h (BASE_PURESIZE): Increment to 1170000.
395
396 2005-10-31 Romain Francoise <romain@orebokech.com>
397
398 * macfns.c: Update copyright year.
399 * m/gould.h: Likewise.
400
401 2005-10-30 Kim F. Storm <storm@cua.dk>
402
403 * xdisp.c (display_line): Restore it->current_x and call
404 extend_face_to_end_of_line when last glyph doesn't fit on line.
405 (set_glyph_string_background_width): Remove specific tests here
406 to see if face background should extend to end of line. Simplify.
407
408 2005-10-30 Richard M. Stallman <rms@gnu.org>
409
410 * alloc.c (BYTES_USED): Use uordblks, not arena.
411 (bytes_used_when_reconsidered): New variable.
412 (emacs_blocked_free): Set that.
413
414 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
415
416 * alloc.c (emacs_blocked_free): Fix typo.
417
418 2005-10-29 Richard M. Stallman <rms@gnu.org>
419
420 * data.c (Fmake_variable_frame_local): Doc fix.
421
422 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
423 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
424 controls whether to save and restore mode_line_proptrans_alist.
425 Callers changed.
426 (unwind_format_mode_line): Work with that feature.
427 (redisplay_internal): Don't call prepare_menu_bars if memory full.
428 (move_elt_to_front): New function.
429 (display_mode_element): Use move_elt_to_front.
430 Don't bother munging text props on a null string.
431 Delete obsolete elts from mode_line_proptrans_alist.
432 (decode_mode_spec): Test Vmemory_full, not spare_memory.
433 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
434
435 * lisp.h (memory_full_cons_threshold): Declare.
436 (internal_lisp_condition_case): Declare.
437
438 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
439 (Fmemory_full_p): Function deleted.
440 (syms_of_alloc): Don't defsubr it.
441 (memory_full_cons_threshold): New variable.
442 (spare_memory): Now a vector of 7 elts.
443 (buffer_memory_full): Don't set Vmemory_full here.
444 (xfree): Don't try to refill here.
445 (emacs_blocked_free): Record BYTES_USED in local var.
446 (memory_full): Now free all the slots in spare_memory.
447 (refill_memory_reserve): Allocate each slot in spare_memory.
448 (init_alloc_once): Call refill_memory_reserve.
449
450 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
451
452 * eval.c (internal_lisp_condition_case): New function.
453 (Fcondition_case): Use internal_lisp_condition_case.
454 (Feval): Test Vmemory_full and memory_full_cons_threshold.
455 (Ffuncall): Likewise.
456
457 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
458
459 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
460
461 * syntax.c (Fparse_partial_sexp): Fix docstring.
462
463 2005-10-28 Romain Francoise <romain@orebokech.com>
464
465 * puresize.h (BASE_PURESIZE): Increment to 1130000.
466
467 2005-10-28 Richard M. Stallman <rms@gnu.org>
468
469 * xfns.c (syms_of_xfns): Provide `x' as feature.
470
471 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
472
473 * editfns.c (Fformat): Don't include string padding
474 between info[n].start and info[n].end.
475
476 * alloc.c (spare_memory): No longer static.
477 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
478
479 * puresize.h (BASE_PURESIZE): Increment to 1120000.
480
481 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
482
483 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
484
485 * fringe.c (update_window_fringes): Handle case where buffer ends
486 with a newline.
487
488 2005-10-27 Kenichi Handa <handa@m17n.org>
489
490 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
491
492 2005-10-24 Kenichi Handa <handa@m17n.org>
493
494 * charset.h (charset_mule_unicode_0100_24ff)
495 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
496 Extern them.
497
498 * charset.c (charset_mule_unicode_0100_24ff)
499 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
500 New variables.
501 (Fsetup_special_charsets): Initialize them.
502
503 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
504 supported Unicode characters.
505
506 2005-10-25 Jason Rumney <jasonr@gnu.org>
507
508 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
509
510 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
511
512 * image.c [MAC_OS] (image_load_qt_1): Check image size.
513 Use GraphicsImportGetImageDescription instead of
514 GraphicsImportGetNaturalBounds.
515 [MAC_OSX] (image_load_quartz2d): Check image size.
516 [MAC_OS] (xpm_load_image): Likewise.
517
518 * macterm.c (last_mouse_glyph_frame): New var.
519 (note_mouse_movement): Say mouse moved if current frame differs
520 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
521 (XTmouse_position): Set last_mouse_glyph_frame.
522 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
523 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
524 Use EndianU16_BtoN.
525 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
526 (x_per_char_metric, XLoadQueryFont)
527 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
528 glyph bounds.
529 (mac_to_x_fontname, mac_do_list_fonts)
530 (mac_initialize_display_info): Change screen resolutions to 72dpi.
531
532 2005-10-25 Masatake YAMATO <jet@gyve.org>
533
534 * minibuf.c (Fdisplay_completion_list): Small doc fix.
535
536 2005-10-24 Kim F. Storm <storm@cua.dk>
537
538 * xterm.c: Undo 2005-10-23 change.
539 (last_mouse_glyph_frame): New var.
540 (note_mouse_movement): Say mouse moved if current frame differs
541 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
542 (XTmouse_position): Set last_mouse_glyph_frame.
543 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
544 last_mouse_glyph] on mouse up/down event.
545
546 * editfns.c (Fcompare_buffer_substrings): Fix last change.
547
548 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
549
550 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
551
552 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
553
554 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
555 so tool tips don't interfere with press on tool bar button.
556
557 2005-10-23 Richard M. Stallman <rms@gnu.org>
558
559 * casetab.c (Fset_case_table): Doc fix.
560
561 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
562 (readevalloop): Compute ENTIRE properly.
563 (syms_of_lread) <load-history>: Doc fix.
564
565 2005-10-21 Richard M. Stallman <rms@gnu.org>
566
567 * lread.c (Fload): Simplify gcpro structure.
568 Gcpro FOUND as well as FILE, but not EFOUND.
569 Unless preloading, record FOUND instead of FILE in Vload_history.
570 Rename repeat local FILE to MSG_FILE.
571 (syms_of_lread) <load-history>: Doc fix.
572
573 2005-10-21 Kenichi Handa <handa@m17n.org>
574
575 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
576
577 2005-10-20 Kim F. Storm <storm@cua.dk>
578
579 * buffer.c (clone_per_buffer_values): Remove unused var tem.
580 (init_buffer): Remove unused vars dotstat, pwdstat.
581
582 * ccl.c (check_ccl_update): Remove unused var vp.
583
584 * fileio.c (auto_save_error): Call SAFE_FREE.
585
586 * fns.c (Fchar_table_range): Remove unused var i.
587
588 * minibuf.c (display_completion_list_1): New wrapper function
589 for Fdisplay_completion_list.
590 (Fminibuffer_completion_help): Use it.
591
592 * term.c (encode_terminal_code): Remove unused var src_start.
593
594 * window.c (Fwindow_tree): Remove unused var alist.
595
596 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
597
598 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
599
600 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
601
602 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
603
604 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
605
606 2005-10-20 Andreas Schwab <schwab@suse.de>
607
608 * minibuf.c (Fdisplay_completion_list): Doc fix.
609
610 2005-10-19 Kim F. Storm <storm@cua.dk>
611
612 * image.c (check_image_size): Handle integer Vmax_image_size value
613 directly as max pixel value. Use default frame size for null frame.
614 (syms_of_image) <max-image-size>: Describe integer value.
615
616 2005-10-19 Romain Francoise <romain@orebokech.com>
617
618 * emacs.c (main): Update copyright year.
619
620 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
621
622 * image.c (Vmax_image_size): New variable.
623 (check_image_size): New function.
624 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
625 (gif_load, gs_load): Use it.
626 (lookup_image): Try loading again if previous load failed.
627 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
628 to display in, NULL if none.
629 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
630 argument.
631
632 2005-10-18 Richard M. Stallman <rms@gnu.org>
633
634 * search.c (Fstring_match): Doc fix.
635
636 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
637
638 * macterm.c (note_mouse_movement): Use PtInRect.
639 (XTread_socket): Also ignore mouse motion just before a button
640 release event. Don't process button release event when mouse is
641 not grabbed.
642
643 2005-10-16 Masatake YAMATO <jet@gyve.org>
644
645 * minibuf.c (Fdisplay_completion_list): Add new optional
646 argument COMMON_SUBSTRING. Bind `completion-common-substring'
647 to the optional argument during running `completion-setup-hook'.
648
649 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
650
651 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
652 Allow nil as argument.
653 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
654 for encoding arguments as UTF-16 in native byte order, no BOM.
655
656 * macfns.c (Fx_create_frame): Add debugging code.
657 (Fx_show_tip): Set frame pixel width and height.
658
659 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
660 (FRAME_NORMAL_GC): New macro.
661 (mac_draw_line, mac_clear_area, mac_clear_window)
662 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
663 (mac_draw_image_string, mac_draw_image_string_16): Rename from
664 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
665 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
666 All uses changed.
667 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
668 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
669 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
670 (mac_draw_string_16, mac_draw_image_string)
671 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
672 (mac_scroll_area): Drawing functions now take frame as destination.
673 All uses changed.
674 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
675 (x_draw_fringe_bitmap): Set clipping area in face->gc.
676
677 * macterm.h (mac_clear_area): Add extern.
678
679 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
680
681 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
682 changes for xterm.c.
683
684 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
685
686 2005-10-14 Kenichi Handa <handa@m17n.org>
687
688 * search.c (search_buffer): Give up BM search on case-fold-search
689 if one of a target character has a case-equivalence of different
690 charset even if that target charcter is an ASCII.
691
692 * casefiddle.c (casify_object): Fix for the case that case
693 conversion change the byte length.
694
695 2005-10-14 Kim F. Storm <storm@cua.dk>
696
697 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
698 (handle_one_xevent): Only clear help_echo_string; restore it if
699 note_mouse_movement didn't record any mouse movement.
700
701 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
702 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
703
704 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
705 (Fposn_at_x_y): Fix calculation of x coordinate.
706 (Fposn_at_point): Return nil if point is hscrolled out of view.
707
708 2005-10-13 Andreas Schwab <schwab@suse.de>
709
710 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
711 non-interactive mode.
712
713 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
714
715 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
716
717 2005-10-12 Kim F. Storm <storm@cua.dk>
718
719 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
720
721 2005-10-12 Romain Francoise <romain@orebokech.com>
722
723 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
724
725 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
726
727 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
728 get end of text rows. Obtain header-line/mode-line rows directly.
729
730 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
731 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
732
733 2005-10-12 Kim F. Storm <storm@cua.dk>
734
735 * xdisp.c (remember_mouse_glyph): New generic version based on
736 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
737 properly handle all different window areas.
738
739 * dispextern.h (remember_mouse_glyph): Add prototype.
740
741 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
742 (note_mouse_movement, XTmouse_position): Use generic
743 remember_mouse_glyph, add last_mouse_glyph arg.
744
745 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
746 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
747 (note_mouse_movement, w32_mouse_position): Use generic
748 remember_mouse_glyph, add last_mouse_glyph arg.
749
750 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
751 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
752 (XTmouse_position): Adapt to use generic remember_mouse_glyph
753 instead of pixel_to_glyph_coords.
754
755 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
756 Fix x position for ON_TEXT when left margin width > 0.
757
758 2005-10-11 Kim F. Storm <storm@cua.dk>
759
760 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
761
762 * keyboard.c (make_lispy_position): Fix buffer calculations for
763 mouse click or movement in right fringe and the margins.
764
765 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
766
767 * image.c (fn_jpeg_stdio_src): Don't define it.
768 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
769 (our_common_init_source): Rename from `our_init_source'.
770 (our_common_term_source): Rename from `our_term_source'.
771 (our_memory_fill_input_buffer): Rename from
772 `our_fill_input_buffer'.
773 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
774 (jpeg_memory_src): Use the new names.
775 (struct jpeg_stdio_mgr): New struct.
776 (JPEG_STDIO_BUFFER_SIZE): New constant.
777 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
778 (jpeg_file_src): New functions.
779 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
780
781 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
782
783 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
784 (fm_font_family_alist): New variable.
785 (syms_of_macterm): Initialize and staticpro it.
786 (decode_mac_font_name): Replace '-' in family name with '_' if it
787 occurs just once. Lower family name.
788 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
789 All uses changed. Remove argument MF and code conversion for it.
790 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
791 to CHARSET. Parse font size. Lower family name. Return integer
792 value for status of parsing.
793 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
794 Don't use Fdowncase because family name is already lowered by
795 decode_mac_font_name.
796 (init_font_name_table): Always call decode_mac_font_name.
797 Add pair of family name and its reference to fm_font_family_alist.
798 (mac_clear_font_name_table): Clear fm_font_family_alist.
799 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
800 Lookup fm_font_family_alist to get font family reference.
801 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
802 name is already lowered by parse_x_font_name.
803
804 2005-10-11 Kim F. Storm <storm@cua.dk>
805
806 * xterm.c (glyph_rect): Return 0 if position is outside text area.
807
808 * keyboard.c (make_lispy_position): Fix buffer position calculation for
809 mouse click or movement in fringe.
810
811 2005-10-10 Jason Rumney <jasonr@gnu.org>
812
813 * xterm.c (remember_mouse_glyph): New function.
814 (note_mouse_movement): Use it to remember the current glyph if changed.
815 (XTmouse_position): Fix calculation of fake glyph under mouse.
816 Move code to calculate glyph under mouse into remember_mouse_glyph.
817
818 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
819
820 * emacs.c (USAGE3, standard_args): -nb => -nbi.
821
822 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
823
824 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
825 (next_frame, prev_frame, set_term_frame_name): Make static.
826
827 * window.c (Fwindow_tree): Fix spelling.
828
829 2005-10-09 Romain Francoise <romain@orebokech.com>
830
831 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
832
833 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
834
835 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
836 Add options -nb, --no-bitmap-icon.
837
838 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
839
840 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
841
842 * macgui.h (MAX_CLIP_RECTS): New define.
843 (struct _XGC): New member clip_region.
844 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
845 clip_rects.
846
847 * macterm.c (GC_CLIP_REGION): New macro.
848 (saved_port_clip_region): New variable.
849 (mac_begin_clip, mac_end_clip): New functions.
850 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
851 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
852 (mac_copy_area_with_mask, mac_scroll_area): Use them.
853 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
854 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
855 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
856 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
857 rectangles stored in gc.
858 (XFreeGC): Dispose of clipping region.
859 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
860 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
861 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
862 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
863 (x_draw_bar_cursor): Use them.
864 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
865 get multiple clipping rectangles.
866
867 * macterm.h (mac_term_init): Add types to extern.
868 (struct mac_output): Remove members mWP and pending_menu_activation.
869 Put members scroll_bar_foreground_pixel and
870 scroll_bar_background_pixel in #if 0.
871 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
872
873 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
874 Add debugging code.
875
876 2005-10-08 Kim F. Storm <storm@cua.dk>
877
878 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
879
880 2005-10-07 Kim F. Storm <storm@cua.dk>
881
882 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
883 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
884 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
885
886 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
887
888 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
889 to for_overlaps. Now occupy 3 bits.
890 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
891 (OVERLAPS_ERASED_CURSOR): New defines.
892 (struct redisplay_interface): Add new OVERLAPS arg to member
893 fix_overlapping_area.
894 (x_fix_overlapping_area): Add new OVERLAPS arg.
895 (get_glyph_string_clip_rects): Add extern.
896
897 * dispnew.c (redraw_overlapping_rows):
898 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
899
900 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
901 for_overlaps.
902 (get_glyph_string_clip_rects): New function created from
903 get_glyph_string_clip_rect. Set clipping rectangles according to the
904 value of for_overlaps. Enable to store multiple clipping rectangles.
905 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
906 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
907 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
908 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
909 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
910 calculating clipping rectangles later. Call x_fix_overlapping_area
911 with new OVERLAPS arg to draw only erased cursor area.
912 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
913 to draw overlaps in both preceding and succeeding rows.
914
915 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
916 struct glyph_string to for_overlaps.
917
918 2005-10-04 Richard M. Stallman <rms@gnu.org>
919
920 * alloc.c (refill_memory_reserve): Conditionalize the body,
921 not the function's existence.
922
923 2005-10-04 Kim F. Storm <storm@cua.dk>
924
925 * window.c (window_split_tree): New function.
926 (Fwindow_split_tree): New defun.
927 (syms_of_window): Defsubr it.
928
929 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
930
931 * macterm.c (mac_invert_rectangle): New function.
932 (XTflash): Use it.
933
934 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
935
936 * regex.h (re_char): Don't expose it in the interface.
937 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
938
939 * regex.c (re_char): Move it back here.
940 (re_set_whitespace_regexp): Change the arg's type to not use it.
941
942 * keyboard.c (make_lispy_event): If point has moved between down and up
943 event, make it a drag, not a click, to mirror what
944 mouse-drag-region expects.
945
946 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
947
948 * lisp.h (fatal): Undo previous change.
949 * term.c (fatal): Undo previous change.
950
951 2005-10-01 Richard M. Stallman <rms@gnu.org>
952
953 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
954
955 2005-10-01 Kim F. Storm <storm@cua.dk>
956
957 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
958
959 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
960
961 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
962
963 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
964 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
965 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
966 Try ATSUI-compatible 12pt Monaco font first.
967
968 * macgui.h (struct _XCharStruct): New member valid_p.
969 (STORE_XCHARSTRUCT): Set valid_p.
970 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
971
972 * macterm.c (mac_draw_string_common, x_per_char_metric)
973 (mac_compute_glyph_string_overhangs, init_font_name_table)
974 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
975 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
976 (x_draw_glyph_string_background)
977 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
978 XDrawImageString. Always draw background and foreground separately.
979 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
980 functions for one-byte chars when using ATSUI-compatible fonts.
981 (atsu_font_id_hash) [USE_ATSUI]: New variable.
982 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
983 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
984 max_char_or_byte2 more in detail.
985 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
986
987 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
988
989 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
990 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
991
992 * unexelf.c (fatal): Fix prototype.
993
994 * term.c (fatal): Implement using varargs.
995
996 * regex.c (re_char): Move typedef ...
997 * regex.h (re_char): ... here.
998 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
999
1000 * emacs.c (malloc_set_state): Fix return type.
1001 (endif): Fix type.
1002
1003 * lisp.h (fatal): Add argument types.
1004
1005 * dispextern.h (fatal): Delete prototype.
1006
1007 * systime.h: (make_time): Prototype moved from ...
1008 * editfns.c (make_time): ... here.
1009
1010 * editfns.c: Move systime.h include after lisp.h.
1011 * dired.c:
1012 * xsmfns.c:
1013 * process.c: Likewise.
1014
1015 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1016 Add parameter types.
1017 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1018 (emacs_blocked_free): Change definition to match __free_hook.
1019 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1020 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1021
1022 2005-09-30 Romain Francoise <romain@orebokech.com>
1023
1024 * minibuf.c (Fread_buffer): Follow convention for reading from the
1025 minibuffer with a default value. Doc fix.
1026
1027 2005-09-29 Juri Linkov <juri@jurta.org>
1028
1029 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1030 Rename argument name `string' to `format-string'.
1031 (Fformat): Doc fix.
1032
1033 2005-09-28 Kim F. Storm <storm@cua.dk>
1034
1035 * image.c (gif_load): Fix size of allocated image buffer
1036 for images where a sub-image may be larger than the image's
1037 total height/width specifications.
1038
1039 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1040
1041 * macgui.h (struct _XCharStruct): Each member now takes short value.
1042
1043 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1044
1045 * xfaces.c (lookup_derived_face): Add parameter type.
1046
1047 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1048
1049 * marker.c (verify_bytepos): Add parameter type.
1050
1051 * process.c (get_operating_system_release): Move prototype ...
1052
1053 * systime.h (get_operating_system_release): ... here.
1054
1055 * xterm.c (handle_one_xevent): Refer to union field to match the
1056 type required by the function definition.
1057 (set_vertical_scroll_bar): Move prototype ...
1058
1059 * xterm.h: ... here.
1060
1061 * fns.c (internal_equal, seed_random): Fix prototypes.
1062 (internal_equal): Add missing parameter.
1063
1064 2005-09-25 Richard M. Stallman <rms@gnu.org>
1065
1066 * keyboard.c (update_menu_bindings): Variable deleted.
1067 (syms_of_keyboard): Don't defvar it.
1068 (parse_menu_item): Don't test it.
1069
1070 2005-09-23 Richard M. Stallman <rms@gnu.org>
1071
1072 * editfns.c (Fformat): Explicitly test for end of format string
1073 and don't use `index'.
1074
1075 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1076
1077 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1078 Define BROKEN_GET_CURRENT_DIR_NAME.
1079
1080 * sysdep.c (get_current_dir_name): Also define if
1081 BROKEN_GET_CURRENT_DIR_NAME.
1082
1083 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1084
1085 2005-09-22 Kim F. Storm <storm@cua.dk>
1086
1087 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1088 (message2): Fix commentary. Ok to use alloca'ed memory.
1089 Still not ok to use Lisp string data (because of GC).
1090 (set_message): Add comment why GC cannot happen.
1091
1092 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1093
1094 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1095 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1096 variants for a scalable font multiple times.
1097
1098 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1099
1100 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1101 Setup slave tty options before forking.
1102
1103 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1104
1105 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1106 positions have been set for the frame (as is done for frames in
1107 special-display-buffer-names).
1108
1109 2005-09-19 Kim F. Storm <storm@cua.dk>
1110
1111 * editfns.c (Fformat): Don't scan past end of format string that
1112 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1113
1114 2005-09-18 Andreas Schwab <schwab@suse.de>
1115
1116 * window.h (struct window): Remove height_fixed_p, no longer set.
1117
1118 * window.c (make_window): Don't initialize height_fixed_p.
1119 (window_fixed_size_p): Don't use it.
1120
1121 2005-09-18 John Paul Wallington <jpw@pobox.com>
1122
1123 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1124
1125 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1126
1127 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1128
1129 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1130 New variables.
1131 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1132 file selection.
1133
1134 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1135
1136 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1137
1138 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1139 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1140
1141 2005-09-16 Romain Francoise <romain@orebokech.com>
1142
1143 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1144
1145 2005-09-15 Richard M. Stallman <rms@gnu.org>
1146
1147 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1148 (display_mode_element): Instead of `lisp_string' and `this',
1149 record `offset' and increment that.
1150 `last_offset' replaces `last'.
1151
1152 * Makefile.in (XMENU_OBJ): Variable deleted.
1153 (obj): Use xmenu.o unconditionally.
1154 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1155
1156 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1157
1158 2005-09-15 Kim F. Storm <storm@cua.dk>
1159
1160 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1161 (reseat_at_next_visible_line_start): Likewise (in xassert).
1162
1163 2005-09-14 Romain Francoise <romain@orebokech.com>
1164
1165 * fileio.c (write_region_inhibit_fsync): New variable.
1166 (Fwrite_region): Use it to skip call to fsync.
1167 (syms_of_fileio): Initialize it.
1168
1169 2005-09-14 Kenichi Handa <handa@m17n.org>
1170
1171 * coding.c (code_convert_region_unwind): Argument format changed.
1172 (run_pre_post_conversion_on_str): If pre-write-conversion function
1173 changed the current buffer, delete the new buffer.
1174 (run_pre_write_conversin_on_c_str): Likewise.
1175
1176 * fileio.c (Fexpand_file_name): Check multibyteness of
1177 default_directory.
1178
1179 2005-09-13 Kenichi Handa <handa@m17n.org>
1180
1181 * composite.c (compose_chars_in_text): Delete it.
1182
1183 * composite.h (compose_chars_in_text): Delete extern.
1184
1185 2005-09-13 Kim F. Storm <storm@cua.dk>
1186
1187 * print.c (print_error_message): Fix last change.
1188
1189 2005-09-12 Kim F. Storm <storm@cua.dk>
1190
1191 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1192 Unconditionally reload `ptr' and `pend' after eval.
1193
1194 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1195
1196 * print.c (print_error_message): Pass copy of caller name to
1197 message_dolog.
1198
1199 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1200
1201 2005-09-12 Kenichi Handa <handa@m17n.org>
1202
1203 * xdisp.c (display_mode_element): Be sure to make variables THIS
1204 and LISP_STRING point into a string data of ELT.
1205
1206 2005-09-12 Kim F. Storm <storm@cua.dk>
1207
1208 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1209 signal_after_change that may have GC'ed.
1210 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1211
1212 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1213 after insert while runs signal_after_change.
1214
1215 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1216 declaration to where it is used.
1217
1218 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1219
1220 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1221 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1222 know if xfree is needed instead of guessing.
1223
1224 * xterm.h (x_encode_text): Remove prototype.
1225
1226 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1227
1228 * w32term.c (x_bitmap_icon): Load small icons too.
1229
1230 2005-09-10 Romain Francoise <romain@orebokech.com>
1231
1232 * buffer.c (init_buffer): Grow buffer to add directory separator
1233 and terminal zero. Fix typos.
1234
1235 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1236
1237 * buffer.c (init_buffer): Fix error message for failed call to
1238 get_current_dir_name.
1239 (get_current_dir_name): Remove prototype.
1240
1241 * xsmfns.c: (get_current_dir_name): Remove prototype.
1242
1243 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1244 Add prototype.
1245
1246 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1247 Don't #undef NULL after including blockinput.h.
1248
1249 * config.in: Regenerated.
1250
1251 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1252
1253 Remove the MAXPATHLEN limitations:
1254
1255 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1256 New function.
1257
1258 * buffer.c (init_buffer): Use it.
1259
1260 * xsmfns.c (smc_save_yourself_CB): Ditto.
1261
1262 2005-09-09 Kim F. Storm <storm@cua.dk>
1263
1264 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1265 commands that are remapped from some other command.
1266
1267 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1268 flag in disabled rows below the window.
1269
1270 * frame.h (struct frame): New member updated_p.
1271
1272 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1273 member. Remove local `updated' array and associated variables.
1274
1275 2005-09-07 Kim F. Storm <storm@cua.dk>
1276
1277 * xdisp.c (handle_display_prop): Respect overlay window property.
1278
1279 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1280 Fixes crash reported by YAMAMOTO Mitsuharu.
1281
1282 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1283
1284 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1285 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1286 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1287 (xlfdpat_block_match): New macro.
1288 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1289 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1290 (add_font_name_table_entry): Increase font_name_table_size more
1291 rapidly.
1292 (mac_c_string_match): Remove function.
1293 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1294 expression match.
1295
1296 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1297
1298 2005-09-03 Richard M. Stallman <rms@gnu.org>
1299
1300 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1301 (move_it_in_display_line_to): Stop after last char on line even
1302 on a windowing terminal, if that's the specified stop position.
1303
1304 * fns.c (Fsort): Doc fix.
1305
1306 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1307
1308 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1309
1310 * dired.c (directory_files_internal_unwind, directory_files_internal)
1311 (file_name_completion): Use a Save_Value object rather than a cons of
1312 two 16bit ints to store the DIR*.
1313 (directory_files_internal, file_name_completion): Handle both EINTR and
1314 EAGAIN consistently after `readdir'.
1315
1316 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1317
1318 * intervals.c (update_interval): Add position info in error.
1319
1320 * dispnew.c (window_to_frame_hpos, update_window):
1321 Avoid gcc warning about unused variable `f'.
1322
1323 2005-08-31 Jason Rumney <jasonr@gnu.org>
1324
1325 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1326 error, revert to using AppendMenu.
1327
1328 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1329
1330 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1331 All uses changed.
1332 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1333 cases.
1334 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1335 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1336 Use posix_pathname_to_fsspec.
1337 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1338 while we have mask.
1339
1340 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1341
1342 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1343
1344 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1345
1346 * syntax.c (update_syntax_table): Properly reproduce the special +1
1347 setting of e_property at the end of the buffer when bumping into the
1348 INTERVALS_AT_ONCE limit.
1349
1350 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1351
1352 * emacs.c (USAGE1): Fix the description of the -Q option.
1353
1354 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1355
1356 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1357
1358 2005-08-26 Kim F. Storm <storm@cua.dk>
1359
1360 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1361 Don't move PT to new window start.
1362
1363 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1364
1365 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1366 ICONIFY/DEICONIFY_EVENT.
1367
1368 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1369 Restore background color.
1370 (mac_handle_visibility_change): New function.
1371 (x_make_frame_invisible, x_iconify_frame)
1372 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1373 [USE_CARBON_EVENTS] (mac_handle_window_event)
1374 (install_window_handler): Handle visibility change events.
1375 (x_make_frame_visible): Don't reposition window if it is iconified
1376 or asked for visible before. Select and uncollapse window when it
1377 is made visible.
1378 (x_make_frame_invisible): Don't reset x_highlight_frame.
1379 (x_iconify_frame): Likewise. Make invisible frame visible before
1380 it is iconified.
1381 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1382 (do_window_update): Don't change visibility of invisible frame.
1383
1384 2005-08-22 Juri Linkov <juri@jurta.org>
1385
1386 * term.c (turn_on_face): Check for TS_set_foreground and
1387 TS_set_background depending on standout_mode. Simplify.
1388
1389 2005-08-21 Kim F. Storm <storm@cua.dk>
1390
1391 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1392 bitmaps on fully visible rows.
1393
1394 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1395 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1396 and return 0.
1397
1398 * xdisp.c (redisplay_window): Call update_window_fringes with
1399 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1400
1401 2005-08-20 Richard M. Stallman <rms@gnu.org>
1402
1403 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1404 (resize_mini_window): Set w->start, and PT, so as to display the tail
1405 end of the buffer, if it doesn't all fit.
1406
1407 2005-08-18 Kim F. Storm <storm@cua.dk>
1408
1409 * xdisp.c (calc_pixel_width_or_height): Use actual display
1410 resolution when available instead of Vdisplay_pixels_per_inch.
1411
1412 2005-08-17 Kim F. Storm <storm@cua.dk>
1413
1414 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1415
1416 * dispnew.c (buffer_posn_from_coords): Check that target row is
1417 within matrix.
1418
1419 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1420
1421 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1422 xg_set_frame_icon and call it.
1423
1424 * gtkutil.c (xg_set_frame_icon): New function.
1425
1426 * gtkutil.h (xg_set_frame_icon): Declare it.
1427
1428 2005-08-16 Kim F. Storm <storm@cua.dk>
1429
1430 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1431
1432 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1433 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1434
1435 2005-08-15 Richard M. Stallman <rms@gnu.org>
1436
1437 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1438
1439 2005-08-15 Kim F. Storm <storm@cua.dk>
1440
1441 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1442
1443 * process.c (deactivate_process, status_notify, read_process_output)
1444 (update_status, status_convert, decode_status, allocate_pty)
1445 (make_process, remove_process, list_processes_1)
1446 (create_process_1, unwind_request_sigio, read_process_output)
1447 (send_process, keyboard_bit_set): Declare static.
1448 (Fdelete_process): Simplify. Pass process to status_notify, so we
1449 don't try to read output from it.
1450 (status_notify): New arg deleting_process--don't try to read
1451 output from that process.
1452
1453 * lisp.h (deactivate_process, status_notify, read_process_output):
1454 Remove prototypes.
1455
1456 2005-08-14 Richard M. Stallman <rms@gnu.org>
1457
1458 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1459 define_image_type.
1460
1461 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1462
1463 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1464 (xg_get_image_for_pixmap): Move some code to
1465 xg_get_pixbuf_from_pix_and_mask, and call it.
1466
1467 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1468
1469 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1470 to get an GTK icon and set it with GTK functions to avoid having GTK
1471 override an icon set with just X functions.
1472
1473 2005-08-11 Richard M. Stallman <rms@gnu.org>
1474
1475 * image.c (syms_of_image): Init image_types here, and call
1476 define_image_type.
1477 (init_image): Not here.
1478
1479 2005-08-09 Richard M. Stallman <rms@gnu.org>
1480
1481 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1482
1483 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1484
1485 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1486
1487 * floatfns.c (Fexpt): Use floats for negative exponent.
1488
1489 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1490
1491 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1492 should not be there, causing menu display errors with GTK 2.6.9.
1493
1494 2005-08-07 Richard M. Stallman <rms@gnu.org>
1495
1496 * floatfns.c (Fexpt): Undo previous change.
1497
1498 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1499 so it can be used with various state vectors.
1500
1501 * emacs.c (endif): Convert -script into -scriptload.
1502 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1503
1504 * fns.c (syms_of_fns): Add `emacs' to features.
1505
1506 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1507 output newlines to scroll the old screen contents off the screen.
1508
1509 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1510
1511 * floatfns.c (Fexpt): Use floats for negative exponent.
1512 Reported by D Goel.
1513
1514 2005-08-02 Richard M. Stallman <rms@gnu.org>
1515
1516 * frame.c (Fframe_char_width): Doc fix.
1517
1518 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1519
1520 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1521 Defvar it.
1522
1523 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1524
1525 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1526 (my_create_window, my_create_tip_window): Make static.
1527
1528 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1529 (my_set_foreground_window, my_destroy_window): Make static.
1530
1531 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1532
1533 Merge gnulib getopt implementation into Emacs.
1534
1535 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1536 now part of lib-src.
1537
1538 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1539
1540 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1541
1542 2005-07-25 Jason Rumney <jasonr@gnu.org>
1543
1544 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1545 navigating menus with the keyboard.
1546
1547 2005-07-23 Richard M. Stallman <rms@gnu.org>
1548
1549 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1550
1551 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1552 gc_relative_threshold, one by one.
1553
1554 * keyboard.c (read_char): Test gc_cons_threshold.
1555 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1556
1557 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1558 gc_relative_threshold, one by one.
1559
1560 * alloc.c (gc_cons_threshold): Not static.
1561 (gc_cons_combined_threshold): Var deleted.
1562 (gc_relative_threshold): New variable.
1563 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1564 instead of gc_cons_combined_threshold.
1565
1566 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1567 (gc_cons_combined_threshold): Declaration deleted.
1568
1569 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1570
1571 * mac.c: Don't include stdlib.h or string.h.
1572 (Fdo_applescript, Fmac_file_name_to_posix)
1573 (Fmac_file_name_to_posix): Doc fixes.
1574 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1575 (Fmac_code_convert_string): Likewise.
1576 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1577 if the executable is not contained in a bundle.
1578
1579 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1580 (gray_width, gray_height): Remove defines.
1581 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1582 (gray_bitmap_bits): Remove variables.
1583 (lispy_function_keys): Remove extern.
1584 (free_frame_menubar): Add extern.
1585 (x_window_to_frame): Remove function.
1586 (unwind_create_tip_frame): Add declaration.
1587 (x_set_name_internal): New function.
1588 (x_set_name, x_set_title): Use it.
1589 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1590 (Fx_display_pixel_height, Fx_display_planes)
1591 (Fx_display_color_cells, Fx_server_max_request_size)
1592 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1593 (Fx_display_mm_height, Fx_display_mm_width)
1594 (Fx_display_backing_store, Fx_display_visual_class)
1595 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1596
1597 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1598
1599 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1600 (Fx_get_selection_internal, Fx_selection_owner_p)
1601 (Fx_selection_exists_p): Doc fixes.
1602 (syms_of_macselect) <selection-converter-alist>: Likewise.
1603
1604 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1605
1606 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1607
1608 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1609 (Fccl_execute_on_string): Likewise; add usage info.
1610
1611 * composite.c (Fcompose_region_internal)
1612 (Fcompose_string_internal):
1613 Improve argument/docstring consistency.
1614
1615 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1616 Fix typos in docstrings.
1617
1618 * textprop.c (Fnext_char_property_change)
1619 (Fprevious_char_property_change): Doc fixes.
1620
1621 * window.c (Fset_window_margins, Fset_window_fringes):
1622 Improve argument/docstring consistency.
1623
1624 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1625
1626 2005-07-21 Andreas Schwab <schwab@suse.de>
1627
1628 * eval.c (restore_stack_limits): Return a value.
1629
1630 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1631
1632 * eval.c (Fdefvar): Doc fix.
1633
1634 2005-07-20 Kim F. Storm <storm@cua.dk>
1635
1636 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1637 Use make_save_value to unwind protect stream.
1638
1639 * lread.c (Fload, load_unwind):
1640 Use make_save_value to unwind protect stream.
1641
1642 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1643
1644 * eval.c (Fprog2, Fcalled_interactively_p),
1645 (syms_of_eval) <debug-on-quit>: Doc fixes.
1646 (syms_of_eval) <max-specpdl-size>:
1647 (Finteractive_p): Fix typos in docstrings.
1648
1649 2005-07-19 Kim F. Storm <storm@cua.dk>
1650
1651 * w32fns.c (Vx_hand_shape): Variable removed.
1652 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1653
1654 2005-07-19 Kenichi Handa <handa@m17n.org>
1655
1656 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1657
1658 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1659
1660 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1661
1662 2005-07-18 Kim F. Storm <storm@cua.dk>
1663
1664 * frame.h (struct frame): New member already_hscrolled_p.
1665
1666 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1667 to avoid redisplay looping hscrolling back and forth ad infinitum.
1668
1669 2005-07-18 Juri Linkov <juri@jurta.org>
1670
1671 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1672 * keymap.c (Fminor_mode_key_binding):
1673 * macterm.c (mac-emulate-three-button-mouse):
1674 Delete duplicate duplicate words.
1675
1676 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1677
1678 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1679
1680 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1681
1682 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1683
1684 * macgui.h (struct _XGC): New struct.
1685 (GC): Use it.
1686 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1687 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1688
1689 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1690 (XSetFont): Add declaration.
1691 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1692 Remove functions.
1693 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1694 New defines.
1695 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1696 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
1697 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
1698 Use them.
1699 (mac_erase_rectangle): New function.
1700 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
1701 (x_draw_stretch_glyph_string): Use it.
1702 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
1703 (XSetBackground, XSetFont): Adjust for new GC implementation.
1704 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
1705 (XTset_vertical_scroll_bar): Clear area under scroll bar.
1706
1707 * macterm.h (struct mac_display_info): Change types of
1708 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
1709 (XCreateGC, XParseGeometry): Move externs from macgui.h.
1710
1711 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
1712
1713 2005-07-16 Richard M. Stallman <rms@gnu.org>
1714
1715 * buffer.c (Fmake_overlay): Doc fix.
1716
1717 2005-07-16 Eli Zaretskii <eliz@gnu.org>
1718
1719 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
1720 Vw32_valid_locale_ids, and Vw32_valid_codepages.
1721
1722 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1723
1724 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
1725 Use Fstring_as_unibyte instead of string_make_unibyte.
1726
1727 2005-07-15 Richard M. Stallman <rms@gnu.org>
1728
1729 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
1730
1731 2005-07-15 Kim F. Storm <storm@cua.dk>
1732
1733 * xdisp.c: Fix redisplay loop in last change.
1734 (IT_POS_VALID_AFTER_MOVE_P): New macro.
1735 (move_it_vertically_backward, move_it_by_lines): Use it.
1736
1737 2005-07-14 Jason Rumney <jasonr@gnu.org>
1738
1739 * w32.c (init_environment): Default HOME directory to user's
1740 appdata directory if possible.
1741
1742 2005-07-14 Kim F. Storm <storm@cua.dk>
1743
1744 * .gdbinit (pitx): Fix output format. Print string charpos.
1745
1746 * lread.c (syms_of_lread): Initialize seen_list.
1747
1748 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
1749
1750 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
1751 Staticpro re_match_object.
1752
1753 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1754
1755 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
1756 dereference.
1757
1758 * macterm.c (mac_window_to_frame): Remove duplicate define.
1759
1760 2005-07-14 Kenichi Handa <handa@m17n.org>
1761
1762 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
1763 (code_convert_region): Adjust for the above change.
1764 (set_conversion_work_buffer): If the work buffer is already in
1765 use, generate a new buffer and return it. Otherwise return Qnil.
1766 (run_pre_post_conversion_on_str): Adjust for the above change.
1767 (run_pre_write_conversin_on_c_str): Likewise.
1768
1769 2005-07-13 Kim F. Storm <storm@cua.dk>
1770
1771 * xdisp.c (start_display): Don't reseat to next visible line start
1772 if current start position is in a string or image.
1773 (move_it_vertically_backward): Be sure to move out of strings and
1774 images when moving it2 forward.
1775 (move_it_by_lines): When moving forward, move to next buffer
1776 position if we end up in a string or image. When moving backward,
1777 count rows moved over when moving to start of current row in case
1778 row starts in middle of a string or image. Also move further
1779 backward if we end up in a string or image.
1780 (try_cursor_movement): If overlay string spans multiple lines,
1781 move backward to set cursor on start of an overlay string.
1782 (cursor_row_p): Row is ok if cursor is at newline from string, but
1783 string starts on this line (so we always position cursor at start
1784 of string).
1785
1786 * indent.c (Fvertical_motion): If start position is on an image,
1787 don't move back if we move too far (that's almost certain to happen).
1788
1789 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
1790 row in minibuffer windows.
1791 (try_window): Don't check margins in minibuffer windows.
1792
1793 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1794
1795 * macterm.c: Don't include stdlib.h or composite.h.
1796 (x_use_underline_position_properties, last_mouse_press_frame)
1797 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
1798 (syms_of_macterm, mac_initialize): Don't initialize them.
1799 (waiting_for_input, initial_argv, initial_argc)
1800 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
1801 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
1802 (extra_keyboard_modifiers): Fix type in extern.
1803 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
1804 (x_scroll_bar_report_motion): Add argument types to declaration.
1805 (mac_compute_glyph_string_overhangs): Add declaration.
1806 (disable_mouse_highlight): Remove unused variable.
1807 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
1808 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
1809 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
1810 All callers changed.
1811 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
1812 timestamp.
1813 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
1814 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
1815 only when its width is less than the height.
1816 (XTredeem_scroll_bar): Sync with xterm.c.
1817 (font_name_table, font_name_table_size, font_name_count):
1818 Make static.
1819 (drag_and_drop_file_list): Remove variable. Previous use is now
1820 local to function.
1821 (do_ae_open_documents): Move DRAG_N_DROP event construction part
1822 from XTread_socket.
1823 (XTread_socket): Consolidate setting of event timestamp.
1824 Move DRAG_N_DROP event construction part to do_ae_open_documents.
1825 Support extra_keyboard_modifiers.
1826
1827 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
1828 beginning with that for ASCII.
1829
1830 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
1831
1832 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
1833 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
1834 (syms_of_alloc): Declare gc-cons-percentage.
1835
1836 * eval.c (Feval, Ffuncall):
1837 * keyboard.c (read_char):
1838 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
1839
1840 * lisp.h (gc_cons_combined_threshold): Declare.
1841
1842 2005-07-12 Kim F. Storm <storm@cua.dk>
1843
1844 * coding.c (Qprocess_argument):
1845 * coding.h (Qprocess_argument): Remove unused var.
1846
1847 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
1848
1849 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1850
1851 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
1852 Endian.h.
1853 [!MAC_OSX] (fchmod, fchown): New functions.
1854 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
1855 Use SBYTES and EndianU32_BtoN.
1856 (mac_get_object_from_code): Return 4 byte string even if argument
1857 is 0. Use make_unibyte_string and EndianU32_NtoB.
1858 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
1859 (Fmac_set_file_type): Fix documents and argument declarations.
1860 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
1861
1862 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
1863
1864 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
1865
1866 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1867
1868 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
1869 Lucid if X_I18N, font otherwise.
1870
1871 2005-07-10 Steven Tamm <steventamm@mac.com>
1872
1873 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
1874 (Fmac_set_file_type, Fmac_set_file_creator): Add.
1875 (mac_get_object_from_code, mac_get_code_from_arg): Add.
1876
1877 2005-07-10 Richard M. Stallman <rms@gnu.org>
1878
1879 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
1880 (syms_of_lread): Set up eval-buffer-list.
1881 (Feval_buffer, Feval_region): Bind eval-buffer-list.
1882
1883 2005-07-08 Richard M. Stallman <rms@gnu.org>
1884
1885 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
1886
1887 2005-07-08 Kim F. Storm <storm@cua.dk>
1888
1889 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
1890 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
1891
1892 2005-07-07 Kim F. Storm <storm@cua.dk>
1893
1894 * window.c (Frecenter): Fix last change (set iarg before use).
1895
1896 2005-07-06 Richard M. Stallman <rms@gnu.org>
1897
1898 * window.c (Frecenter): When arg is inside the scroll margin,
1899 move it out of the margin.
1900
1901 2005-07-06 Jason Rumney <jasonr@gnu.org>
1902
1903 * w32console.c (initialize_w32_display): Detect when the console
1904 dimensions are insane, and default to 80x25 instead.
1905 (w32_use_full_screen_buffer): Default to NIL.
1906
1907 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1908
1909 * macterm.c (mac_draw_vertical_window_border): Use foreground of
1910 VERTICAL_BORDER_FACE_ID for vertical border line.
1911 (mac_encode_char): Call check_ccl_update in advance.
1912 (mac_to_x_fontname, x_font_name_to_mac_font_name)
1913 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
1914 Don't assume that font family length is less than 32.
1915 (x_compute_min_glyph_bounds): Make static.
1916 (x_load_font): Never set fonts_changed_p to zero.
1917
1918 2005-07-04 Lute Kamstra <lute@gnu.org>
1919
1920 * Update FSF's address in GPL notices.
1921
1922 2005-07-03 Richard M. Stallman <rms@gnu.org>
1923
1924 * xdisp.c (try_window): Fix previous change in how it handles
1925 a partially-visible line or one only partly past the margin.
1926
1927 * window.c (window_scroll_pixel_based): Take account
1928 of this_scroll_margin when finding point when scrolling up.
1929
1930 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
1931
1932 * window.c (window_scroll_pixel_based, window_scroll_line_based):
1933 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
1934 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
1935
1936 2005-07-02 Juri Linkov <juri@jurta.org>
1937
1938 * w32term.c (w32_draw_vertical_window_border): Use foreground of
1939 VERTICAL_BORDER_FACE_ID for vertical border line.
1940
1941 2005-07-02 Eli Zaretskii <eliz@gnu.org>
1942
1943 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
1944 fchmod so that chmod doesn't get called on MSDOS before the file
1945 is closed.
1946
1947 2005-07-01 Jason Rumney <jasonr@gnu.org>
1948
1949 * w32term.c (cleartype_active): New flag for enabling sub-pixel
1950 workaround.
1951 (w32_initialize): Initialize it.
1952 (w32_native_per_char_metric): Allow a couple of extra pixels when
1953 Cleartype is active.
1954
1955 * w32term.c (w32_initialize): Move check for screen reader here
1956 from syms_of_w32term.
1957
1958 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1959
1960 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
1961 is not zero.
1962
1963 2005-07-01 Masatake YAMATO <jet@gyve.org>
1964
1965 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
1966
1967 2005-06-30 Juri Linkov <juri@jurta.org>
1968
1969 * xdisp.c (x_draw_vertical_border): If left fringe is not present
1970 decrease x coord of vertical border by 1 pixel to not occupy text
1971 area of the right window.
1972
1973 * xterm.c (x_draw_vertical_window_border): Use foreground of
1974 VERTICAL_BORDER_FACE_ID for vertical border line.
1975
1976 * term.c (turn_on_face): In standout mode apply specified
1977 fg to bg, and specified bg to fg (this makes the logic of
1978 inversion on terminal consistent with X).
1979
1980 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
1981
1982 * eval.c (user_variable_p_eh): New function.
1983 (Fuser_variable_p): Use it. Clarify docstring.
1984 Return t for aliases of user options, nil for alias loops.
1985
1986 2005-06-27 Richard M. Stallman <rms@gnu.org>
1987
1988 * eval.c (Fdefvar): Improve error message.
1989
1990 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1991
1992 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
1993 change.
1994
1995 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
1996
1997 * eval.c (Fdefvar): Don't try to set constant symbols.
1998
1999 2005-06-25 Richard M. Stallman <rms@gnu.org>
2000
2001 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2002
2003 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2004
2005 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2006
2007 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2008 (redisplay_window): Handle try_window reporting point in scroll margin.
2009
2010 * dispextern.h (try_window): Declare new arg.
2011
2012 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2013 Use fchmod to copy the file modes.
2014 (Frename_file): Don't copy UID and GID here;
2015 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2016
2017 * eval.c (call_debugger): Take full care of extending stack limits
2018 to make space for the debugger, and restore the change afterward.
2019 Bind debug-on-error to nil.
2020 (restore_stack_limits): New subroutine.
2021 (Fsignal): Extend specpdl bound along with eval depth bound,
2022 for calling edebug. Don't do either one, for calling debugger.
2023 (find_handler_clause): Don't bind debug-on-error here.
2024 Don't unbind anything either.
2025 Temporarily advance max_specpdl_size for calling
2026 internal_with_output_to_temp_buffer.
2027 (grow_specpdl): Don't alter max_specpdl_size before signaling
2028 an error.
2029 (syms_of_eval) <max-specpdl-size>: Doc fix.
2030
2031 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2032
2033 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2034
2035 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2036 chown on DOS_NT platforms.
2037
2038 * w32.c (sys_chown): New function.
2039
2040 * s/ms-w32.h (chown): New; define to sys_chown.
2041
2042 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2043
2044 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2045 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2046
2047 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2048
2049 2005-06-23 Richard M. Stallman <rms@gnu.org>
2050
2051 * xdisp.c (get_next_display_element): Finish reversing the tests of
2052 Vnobreak_char_display.
2053
2054 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2055 All uses changed.
2056 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2057 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2058
2059 * fileio.c (Frename_file): Preserve owner and group, if possible,
2060 when copying.
2061
2062 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2063
2064 * abbrev.c (Funexpand_abbrev):
2065 * category.c (Fmake_category_set):
2066 * dispnew.c (Fsleep_for, Fsit_for):
2067 * editfns.c (Fsubst_char_in_region):
2068 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2069 * frame.c (make_frame_without_minibuffer):
2070 * lread.c (read_vector):
2071 * macfns.c (check_x_frame):
2072 * process.c (Fstop_process, Fcontinue_process):
2073 * search.c (Freplace_match):
2074 * syntax.c (Fstring_to_syntax):
2075 * w32fns.c (check_x_frame, check_x_display_info):
2076 * xfaces.c (x_supports_face_attributes_p):
2077 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2078
2079 * image.c (fn_png_init_io): Don't define it.
2080 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2081 (png_read_from_file): New function, based on png_read_from_memory.
2082 (png_load): Use it, instead of fn_png_init_io.
2083
2084 2005-06-23 Kim F. Storm <storm@cua.dk>
2085
2086 * search.c (Fmatch_data): Remove evaporate option.
2087 (Fset_match_data): Do not mention evaporate option in doc string.
2088 Add commentary explaining evaporate arg (for internal use only).
2089 (unwind_set_match_data): Add comment on evaporate use.
2090
2091 2005-06-22 Miles Bader <miles@gnu.org>
2092
2093 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2094 (realize_basic_faces, syms_of_xfaces): Update references to it.
2095 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2096 to `VERTICAL_BORDER_FACE_ID'.
2097 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2098
2099 2005-06-21 Juri Linkov <juri@jurta.org>
2100
2101 * dispextern.h: Add extern Qframe_set_background_mode.
2102
2103 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2104 Qframe_set_background_mode.
2105
2106 * frame.c (Fmodify_frame_parameters):
2107 Call frame-set-background-mode after changing the background color
2108 on non-window non-dos branch.
2109
2110 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2111
2112 * fns.c (Fchar_table_range):
2113 * process.c (Fmake_network_process): Fix spellings.
2114
2115 2005-06-20 Kim F. Storm <storm@cua.dk>
2116
2117 * fns.c (Fsort): Doc fix.
2118
2119 2005-06-20 Miles Bader <miles@gnu.org>
2120
2121 * xfaces.c (Qvertical_divider): New variable.
2122 (realize_basic_faces): Realize its face.
2123 (syms_of_xfaces): Initialize it.
2124
2125 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2126
2127 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2128 window-separator on ttys using `vertical-divider' face by default.
2129
2130 2005-06-17 Richard M. Stallman <rms@gnu.org>
2131
2132 * xdisp.c (get_next_display_element):
2133 Reverse test of Vshow_nonbreak_escape.
2134
2135 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2136 (Ftty_no_underline): New function.
2137 (syms_of_term): defsubr it.
2138
2139 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2140
2141 * dispnew.c (spec_glyph_lookup_face): New function.
2142 (build_frame_matrix_from_leaf_window): Use it.
2143
2144 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2145
2146 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2147
2148 2005-06-12 Richard M. Stallman <rms@gnu.org>
2149
2150 * keyboard.c (read_char): After catching a longjmp,
2151 call restore_getcjmp.
2152
2153 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2154
2155 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2156
2157 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2158
2159 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2160 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2161 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2162 events.
2163 (XTread_socket): Don't pass keyboard events with the option
2164 modifier to the system when Vmac_command_key_is_meta is nil or
2165 Vmac_option_modifier is non-nil.
2166 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2167 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2168 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2169 handler function.
2170 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2171 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2172 handler part to mac_handle_mouse_event.
2173
2174 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2175
2176 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2177 NEW-ALIAS and BASE-VARIABLE, respectively.
2178
2179 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2180
2181 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2182 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2183 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2184
2185 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2186
2187 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2188
2189 * w32term.c (x_use_underline_position_properties): New variable.
2190 (x_draw_glyph_string): Remind in a comment to change doc string of
2191 x-use-underline-position-properties if/when underline positioning
2192 is implemented.
2193 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2194 and initialize it to nil.
2195
2196 2005-06-12 Jason Rumney <jasonr@gnu.org>
2197
2198 * w32fns.c (NEWOPENFILENAME): New struct.
2199 (Fx_file_dialog): Use it to trick the system into giving us up to
2200 date dialogs on systems that are documented to support it.
2201 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2202
2203 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2204
2205 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2206 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2207
2208 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2209
2210 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2211 to CreateDIBSection to avoid a compiler warning.
2212 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2213 warning.
2214 (png_load): Cast return values of fn_png_create_read_struct and
2215 fn_png_create_info_struct, to avoid compiler warnings on W32.
2216 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2217 to avoid compiler warnings.
2218 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2219 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2220 avoid a compiler warning.
2221 (tiff_load): Cast return values of fn_TIFFOpen and
2222 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2223 to IMAGE_BACKGROUND to avoid a compiler warning.
2224 (gif_load): Cast return values of fn_DGifOpenFileName and
2225 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2226 IMAGE_BACKGROUND to avoid a compiler warning.
2227 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2228 before redefining.
2229
2230 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2231 the call to CreateDIBSection, to avoid a compiler warning.
2232
2233 2005-06-11 Jason Rumney <jasonr@gnu.org>
2234
2235 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2236 minibuffer.
2237 * macfns.c (Fx_file_dialog): Likewise.
2238
2239 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2240
2241 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2242
2243 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2244
2245 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2246 * w32fns.c (syms_of_w32fns): Fix spellings.
2247
2248 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2249
2250 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2251 `verbose'; print diagnostic messages only if it is non-zero.
2252 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2253 in the environment.
2254 (copy_executable_and_dump_data): Print section names with %.8s.
2255
2256 2005-06-10 Masatake YAMATO <jet@gyve.org>
2257
2258 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2259 when mouse_face is not given.
2260
2261 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2262
2263 * window.c (Fselect_window): Adapt call to Fselect_frame.
2264
2265 * lisp.h: Update EXFUN of Fselect_frame.
2266
2267 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2268
2269 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2270 no_enter.
2271 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2272 Adapt to above change.
2273
2274 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2275
2276 * fns.c (Fmemq, Fmaphash): Doc fixes.
2277
2278 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2279
2280 * xfaces.c (Fdisplay_supports_face_attributes_p):
2281 Fix typo in docstring.
2282
2283 2005-06-08 Steven Tamm <steventamm@mac.com>
2284
2285 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2286 used by gcc4 on intel mac.
2287
2288 2005-06-09 Kim F. Storm <storm@cua.dk>
2289
2290 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2291 in REUSE list if non-nil; free them if equal to evaporate.
2292 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2293 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2294 (restore_search_regs): Rename from restore_match_data. Uses changed.
2295 (unwind_set_match_data): New function.
2296 (record_unwind_save_match_data): New function like save-match-data.
2297
2298 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2299 (record_unwind_save_match_data): Add prototype.
2300 (restore_search_regs): Rename from restore_match_data.
2301
2302 * composite.c (compose_chars_in_text):
2303 * eval.c (do_autoload):
2304 * macmenu.c (set_frame_menubar):
2305 * process.c (read_process_output, exec_sentinel):
2306 * xmenu.c (set_frame_menubar):
2307 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2308 * w32menu.c (set_frame_menubar):
2309 Use record_unwind_save_match_data.
2310
2311 2005-06-08 Richard M. Stallman <rms@gnu.org>
2312
2313 * xdisp.c (get_next_display_element): Alter previous change:
2314 Distinguish Vshow_nonbreak_escape = t or not t.
2315 For t, use escape_glyph once again, as before previous change.
2316 Use space or hyphen for display, instead of the non-ASCII char.
2317 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2318
2319 * process.c (Fstart_process): Don't touch command_channel_p slot.
2320
2321 * process.h (struct process): Delete command_channel_p.
2322
2323 2005-06-07 Masatake YAMATO <jet@gyve.org>
2324
2325 * xdisp.c (note_mode_line_or_margin_highlight):
2326 Check the overlapping of re-rendering area to avoid flickering.
2327 (note_mouse_highlight): Call clear_mouse_face if PART
2328 is not ON_MODE_LINE nor ON_HEADER_LINE.
2329
2330 2005-06-07 Kim F. Storm <storm@cua.dk>
2331
2332 * process.c: Improve commentary for adaptive read buffering.
2333
2334 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2335
2336 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2337 if available.
2338
2339 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2340
2341 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2342 New functions for popping down menus on C-g.
2343 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2344
2345 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2346 non-static.
2347
2348 * config.in: Add HAVE_CANCELMENUTRACKING.
2349
2350 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2351
2352 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2353
2354 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2355
2356 * w32proc.c (RVA_TO_PTR): New macro.
2357
2358 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2359
2360 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2361 Depend on w32heap.h.
2362
2363 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2364
2365 * keyboard.c (command_loop_1): Update Vthis_original_command.
2366
2367 2005-06-06 Richard M. Stallman <rms@gnu.org>
2368
2369 * xmenu.c (popup_get_selection): Undo previous change.
2370
2371 2005-06-06 Juri Linkov <juri@jurta.org>
2372
2373 * xdisp.c (Qno_break_space): New variable.
2374 (syms_of_xdisp): Initialize it.
2375 (get_next_display_element): Add no-break space and soft hypen
2376 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2377 Use `no-break-space' face for no-break spaces.
2378
2379 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2380
2381 * window.c (delete_window): Handle the case where a h/vchild has
2382 a h/vchild.
2383
2384 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2385
2386 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2387 call to pfn_setsockopt, cast optval to `const char *'.
2388
2389 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2390
2391 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2392 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2393 compiler warnings.
2394
2395 * s/ms-w32.h (fileno): Don't define if already defined.
2396
2397 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2398
2399 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2400
2401 2005-06-04 Richard M. Stallman <rms@gnu.org>
2402
2403 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2404
2405 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2406
2407 * macmenu.c (cleanup_popup_menu): New function.
2408 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2409 mac_menu_show Quit:s.
2410 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2411 a dialog).
2412
2413 2005-06-04 Kim F. Storm <storm@cua.dk>
2414
2415 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2416
2417 * callproc.c (Fcall_process): Don't use alloca to gradually
2418 increase size of buf, as it effectively uses twice the necessary
2419 space on the stack. Instead, pre-allocate buf of full size, and
2420 gradually increase the read size.
2421
2422 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2423
2424 * eval.c (unbind_to): Preserve value of Vquit_flag.
2425
2426 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2427 before a button release event.
2428
2429 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2430
2431 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2432 on faces in a frame, if the argument FRAME is non-nil.
2433 Improve argument/docstring consistency.
2434
2435 2005-06-02 Kim F. Storm <storm@cua.dk>
2436
2437 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2438 (x_consider_frame_title, Fformat_mode_line): Save offset into
2439 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2440
2441 2005-06-01 Kim F. Storm <storm@cua.dk>
2442
2443 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2444
2445 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2446
2447 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2448 resolution fields for scalable fonts to 0.
2449
2450 * xfaces.c (build_scalable_font_name): Round pixel size to the
2451 nearest integer.
2452
2453 2005-06-01 Kim F. Storm <storm@cua.dk>
2454
2455 * xdisp.c (display_mode_line): Support nested calls to redisplay
2456 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2457
2458 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2459
2460 * fileio.c (Finsert_file_contents):
2461 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2462
2463 2005-05-31 Kim F. Storm <storm@cua.dk>
2464
2465 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2466 (mode_line_noprop_ptr): Rename from frame_title_*.
2467 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2468 (store_mode_line_noprop): Rename from store_frame_title.
2469 (mode_line_target): New enum to specify current output target
2470 for mode line formatting.
2471 (display_mode_element): Test it rather than frame_title_ptr and
2472 mode_line_string_list to determine where output should go.
2473 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2474 (Vmode_line_unwind_vector): New variable.
2475 (format_mode_line_unwind_data, unwind_format_mode_line):
2476 New functions for unwind protection in mode line formatting.
2477 (x_consider_frame_title): Use them and new local var 'title_start'
2478 to support nested calls to format-mode-line and redisplay.
2479 Set mode_line_target to MODE_LINE_TITLE.
2480 (Fformat_mode_line): Use them and new local var 'string_start' to
2481 support nested calls to format-mode-line and redisplay.
2482 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2483 Don't trim trailing dashes.
2484 (decode_mode_spec): Don't make infinite number of trailing dashes
2485 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2486 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2487 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2488 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2489 Initialize mode_line_target to MODE_LINE_DISPLAY.
2490
2491 2005-05-29 Richard M. Stallman <rms@gnu.org>
2492
2493 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2494
2495 2005-05-28 Masatake YAMATO <jet@gyve.org>
2496
2497 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2498 pointer to a hand cursor when hoovering over a mouse-face.
2499
2500 2005-05-27 Kenichi Handa <handa@m17n.org>
2501
2502 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2503
2504 * ccl.c: Now an element of Vccl_program_table is a vector of
2505 length 4, not 3.
2506 (ccl_get_compiled_code): New arg idx. Caller changed.
2507 Adjust for the change of Vccl_program_table.
2508 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2509 (check_ccl_update): New function.
2510 (Fregister_ccl_program): Use ASET to set an element of a vector.
2511 Adjusted for the change of Vccl_program_table.
2512
2513 * ccl.h (struct ccl_program): New member idx.
2514 (check_ccl_update): Extern it.
2515
2516 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2517
2518 * image.c (Vimage_library_alist): Move from image.el.
2519 (syms_of_image): Defvar it.
2520 (lookup_image_type): Use it.
2521
2522 * buffer.c (Fbuffer_local_value): Make argument name match its use
2523 in docstring.
2524
2525 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2526
2527 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2528 (Fposn_at_x_y): Make argument name match its use in docstring.
2529
2530 2005-05-26 Lute Kamstra <lute@gnu.org>
2531
2532 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2533
2534 2005-05-24 Masatake YAMATO <jet@gyve.org>
2535
2536 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2537 as loop sentinels.
2538
2539 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2540
2541 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2542 select frame title ("Question"/"Information").
2543 (xdialog_show): Use it.
2544
2545 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2546
2547 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2548
2549 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2550 a third argument (Qnil).
2551
2552 * lisp.h: x-popup-dialog can have three arguments.
2553
2554 * editfns.c (Fmessage_box): Use "Information" for frame title.
2555
2556 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2557
2558 * termcap.c [VMS]: Include <starlet.h>.
2559
2560 2005-05-23 Masatake YAMATO <jet@gyve.org>
2561
2562 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2563 for mouse-face. Change the type of the first argument from `window'
2564 to `Lisp_Object'.
2565 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2566 window instead of w.
2567
2568 2005-05-22 Andreas Schwab <schwab@suse.de>
2569
2570 * process.c (send_process): Move misplaced volatile.
2571
2572 2005-05-21 Richard M. Stallman <rms@gnu.org>
2573
2574 * xdisp.c (display_mode_element): If we're processing a list and
2575 padding is specified, put it after the last element.
2576
2577 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2578
2579 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2580 "superroot" on DOS_NT systems.
2581
2582 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2583
2584 * process.c (send_process): Restore the SIGPIPE handler if we
2585 catch a SIGPIPE.
2586
2587 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2588
2589 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2590 misleading comments).
2591 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2592
2593 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2594
2595 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2596 Correct the right value.
2597
2598 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2599
2600 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2601 post-command-idle-hook and post-command-idle-delay.
2602 (command_loop_1): Don't try to execute post-command-idle-hook.
2603
2604 2005-05-16 Kim F. Storm <storm@cua.dk>
2605
2606 * xdisp.c (handle_display_prop): Handle empty replacement.
2607 (handle_single_display_spec): Return -1 for empty replacement.
2608
2609 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2610
2611 * .gdbinit (pitx): Print more info about iterator.
2612
2613 2005-05-16 Andreas Schwab <schwab@suse.de>
2614
2615 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2616
2617 2005-05-14 Richard M. Stallman <rms@gnu.org>
2618
2619 * xdisp.c (message3): Call cancel_echoing.
2620
2621 * alloc.c (Fmemory_full_p): New function.
2622 (syms_of_alloc): defsubr it.
2623
2624 * process.c (send_process_trap): Unblock SIGPIPE.
2625 (send_process): Reset SIGPIPE handler before reporting error.
2626
2627 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2628
2629 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2630
2631 2005-05-13 Richard M. Stallman <rms@gnu.org>
2632
2633 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2634 (Finsert_file_contents): If we read 0 bytes from a special file,
2635 unlock the visited file if we locked it.
2636 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2637 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2638
2639 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2640
2641 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2642
2643 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2644 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2645 redisplay from being paused by them.
2646
2647 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2648 [!MAC_OSX] (target_ticks): Remove variable.
2649 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2650 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2651 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2652 event occurs before timeout, behave as if the function were interrupted.
2653 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2654 handling using Time Manager routines.
2655 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2656 New variables.
2657 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2658 (setitimer): New functions.
2659
2660 * macfns.c, macmenu.c: Don't include signal.h.
2661
2662 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2663 Rename from get_control_part_bound. All callers changed.
2664 (x_scroll_bar_clear): New function.
2665 (x_clear_frame): Use it.
2666 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2667 (x_scroll_bar_handle_click): Change type of second argument from
2668 int to ControlPartCode.
2669 (check_alarm): Remove declaration.
2670 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2671 (XTread_socket): Use ControlPartCode instead of SInt16.
2672
2673 2005-05-13 Nozomu Ando <nand@mac.com>
2674
2675 * unexmacosx.c: Include assert.h.
2676 (MACOSX_MALLOC_MULT16): New define.
2677 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2678 ptr is in unexec regions by checking it is multiple of 16.
2679 (unexec_malloc_header_t): New typedef.
2680 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2681 allocated size information in unexec_malloc_header.
2682
2683 2005-05-10 Richard M. Stallman <rms@gnu.org>
2684
2685 * xterm.c (noinclude): Add #undef.
2686
2687 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2688
2689 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2690
2691 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2692 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2693 Doc fixes.
2694
2695 * dired.c (Ffile_name_completion): Make argument name
2696 match its use in docstring.
2697
2698 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
2699
2700 * eval.c (Fdefvaralias): Remove any pre-existing
2701 variable-documentation property of the alias.
2702
2703 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
2704
2705 * xfns.c (start_hourglass): Do nothing when running on a tty.
2706
2707 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
2708
2709 * fns.c (Fchar_table_range): Fix typos in docstring.
2710
2711 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2712
2713 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
2714
2715 2005-05-06 Eli Zaretskii <eliz@gnu.org>
2716
2717 * lread.c (Flocate_file_internal): Doc fix.
2718
2719 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
2720
2721 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2722
2723 * macselect.c (x_own_selection): Accept Lisp string as result of
2724 selection converter function.
2725 (x_clear_frame_selections): Don't call x-lost-selection-functions
2726 if Emacs is not owner of the selection.
2727 (Vmac_services_selection): Put variable and initialization in
2728 #ifdef MAC_OSX.
2729 (syms_of_macselect) [MAC_OSX]: Set default value of
2730 Vmac_services_selection to PRIMARY.
2731
2732 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
2733 (mac_handle_tool_bar_click): Remove unused function and declaration.
2734 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
2735 (install_scroll_bar_timer, set_scroll_bar_timer)
2736 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
2737 (get_control_part_bound, x_scroll_bar_handle_press)
2738 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
2739 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
2740 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
2741 (scroll_bar_timer_event_posted_p): New variables.
2742 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
2743 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
2744 (x_scroll_bar_create): Set control reference with NewControl.
2745 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
2746 Initialize track_top and track_height to nil.
2747 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
2748 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
2749 (XTset_vertical_scroll_bar): Don't make space between scroll bar
2750 and associated window.
2751 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
2752 from window config.
2753 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2754 Set track_top and track_height to nil when scroll bar size is changed.
2755 Recalculate them if they are nil.
2756 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
2757 clicked control is a scroll bar.
2758 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
2759 event handler functions. Don't add modifiers to scroll bar click
2760 events. Call scroll bar release handler when window is deactivated.
2761 (mac_initialize): Remove unused code for X toolkit.
2762 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
2763 Initialize Vx_toolkit_scroll_bars to nil.
2764
2765 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
2766 New members track_top and track_height.
2767
2768 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
2769 init_process when including sys/select.h.
2770
2771 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
2772
2773 * eval.c (Fdefvaralias): Doc fix.
2774
2775 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2776
2777 2005-05-05 Kim F. Storm <storm@cua.dk>
2778
2779 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
2780 default value.
2781 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
2782 Fix type of cursor-in-non-selected-windows.
2783
2784 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2785
2786 * mac.c: #undef init_process so not to conflict with system headers.
2787
2788 2005-05-02 Richard M. Stallman <rms@gnu.org>
2789
2790 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
2791
2792 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
2793
2794 * xdisp.c (Vcursor_in_non_selected_windows)
2795 (Qcursor_in_non_selected_windows): Vars deleted.
2796 (syms_of_xdisp): Don't initialize them.
2797 (get_window_cursor_type): Use cursor_in_non_selected_windows
2798 buffer slot.
2799
2800 2005-05-02 Kim F. Storm <storm@cua.dk>
2801
2802 * macros.c (executing_kbd_macro_index): Rename from
2803 executing_macro_index. All uses changed.
2804 (executing_kbd_macro_iterations): Rename from
2805 executing_macro_iterations. All uses changed.
2806 (executing_kbd_macro): Rename from executing_macro.
2807 All uses changed.
2808 (syms_of_macros): Rename Lisp var executing-macro-index to
2809 executing-kbd-macro-index.
2810
2811 * xdisp.c (move_it_in_display_line_to): Fix last change.
2812
2813 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2814
2815 * xmenu.c (Fx_popup_menu): Doc fix.
2816
2817 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
2818
2819 2005-05-02 Jason Rumney <jasonr@gnu.org>
2820
2821 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
2822
2823 2005-05-02 Nozomu Ando <nand@mac.com>
2824
2825 * sysselect.h: Fix typo.
2826
2827 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
2828
2829 * charset.c (Fchars_in_region): Remove as obsolete.
2830
2831 2005-05-01 Kim F. Storm <storm@cua.dk>
2832
2833 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
2834 TO_CHARPOS. This may happen if last glyphs was an image or stretch
2835 glyph.
2836
2837 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
2838
2839 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
2840
2841 2005-05-01 Richard M. Stallman <rms@gnu.org>
2842
2843 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
2844 If user cancels the menu, quit unless FOR_CLICK.
2845
2846 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
2847 All uses changed.
2848 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
2849 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
2850 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
2851 * commands.h (Vexecuting_kbd_macro): Likewise.
2852
2853 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
2854
2855 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
2856
2857 2005-04-30 Richard M. Stallman <rms@gnu.org>
2858
2859 * fileio.c (Ffind_file_name_handler): Handle the `operations'
2860 property of the file name handler.
2861 (Qoperations): New variable.
2862 (syms_of_fileio): Initialize and staticpro it.
2863
2864 * xdisp.c (set_message_1): Delete xassert.
2865
2866 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2867
2868 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
2869
2870 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
2871
2872 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
2873 before/after including Carbon.h if there is a working mktime.
2874
2875 2005-04-28 Kim F. Storm <storm@cua.dk>
2876
2877 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
2878 Fix cyclic alias check. If alias loop is detected, signal
2879 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
2880
2881 2005-04-28 Lute Kamstra <lute@gnu.org>
2882
2883 * eval.c (do_autoload): Record only autoloads in the autoload
2884 property of symbols.
2885
2886 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
2887
2888 * emacs.c (USAGE1): Add --basic-display and --quick options.
2889
2890 2005-04-27 Kim F. Storm <storm@cua.dk>
2891
2892 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
2893
2894 2005-04-26 Richard M. Stallman <rms@gnu.org>
2895
2896 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
2897 (syms_of_window): Doc fixes.
2898
2899 * indent.c (Fvertical_motion): Undo previous change.
2900
2901 2005-04-26 Kenichi Handa <handa@m17n.org>
2902
2903 * fns.c (char_table_range): New function.
2904 (Fchar_table_range): Signal an error if characters in the range
2905 have inconsistent values. Don't check the parent.
2906
2907 2005-04-25 Kenichi Handa <handa@m17n.org>
2908
2909 * fontset.c (fontset_set): Fix previous change.
2910
2911 2005-04-24 Richard M. Stallman <rms@gnu.org>
2912
2913 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
2914
2915 2005-04-24 Eli Zaretskii <eliz@gnu.org>
2916
2917 * regex.c (re_search_2, re_match_2_internal): Convert second arg
2918 of RE_TRANSLATE to int, to shut up GCC warnings.
2919
2920 * fileio.c (Fcopy_file): Doc fix.
2921 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
2922 not needed.
2923
2924 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2925
2926 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
2927 (SOME_MACHINE_OBJECTS): Likewise.
2928 (mac.o): Depend on ccl.h.
2929 (macselect.o): New target.
2930
2931 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
2932 Call syms_of_macselect.
2933
2934 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
2935
2936 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
2937 (QCLIPBOARD): Remove variable.
2938 (syms_of_mac): Don't initialize it.
2939 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
2940 Remove functions.
2941 (syms_of_mac): Don't defsubr them.
2942 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
2943 (QHFS_plus_D, QHFS_plus_C): New variables.
2944 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2945 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
2946 (cfstring_create_normalized): New functions.
2947 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
2948 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2949
2950 * macterm.c (handling_window_update, terminate_flag):
2951 Remove variables.
2952 (do_window_update, do_ae_quit_application, XTread_socket):
2953 Don't use them.
2954 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
2955 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
2956 (init_service_handler): Move to macselect.c. Remove declarations.
2957 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
2958 (Qapplication, Qabout): New variables.
2959 (syms_of_mac): Initialize them.
2960 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
2961 (Qperform): New variables.
2962 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
2963 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
2964 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
2965 (mac_store_application_menu_event, init_menu_bar): New functions.
2966 [USE_CARBON_EVENTS] (mac_handle_command_event)
2967 (init_command_handler): New functions.
2968 (mac_handle_window_event): Return noErr on window update event.
2969 (do_ae_quit_application): Call mac_store_application_menu_event.
2970 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
2971 and init_menu_bar.
2972
2973 * macterm.h (x_clear_frame_selections): Add extern.
2974
2975 * macselect.c: New file for selection processing on Mac OS.
2976
2977 2005-04-23 Richard M. Stallman <rms@gnu.org>
2978
2979 * fileio.c (Fcopy_file): New arg MUSTBENEW.
2980 (Frename_file): Pass new arg to Fcopy_file.
2981
2982 * window.c (window_size_fixed): Variable deleted.
2983 (syms_of_window): Initialize window-size-fixed to nil.
2984 But don't DEFVAR window_size_fixed.
2985
2986 2005-04-23 Andreas Schwab <schwab@suse.de>
2987
2988 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
2989 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
2990 use lib64 instead of lib.
2991 (_LP64) [_ARCH_PPC64]: Define if not defined.
2992
2993 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
2994
2995 * s/ms-w32.h (HAVE_PWD_H): Define.
2996
2997 2005-04-22 Kenichi Handa <handa@m17n.org>
2998
2999 * fns.c (copy_sub_char_table): Explicitly copy the default value
3000 of the sub-chartable.
3001
3002 * fontset.c (fontset_set): When a sub-chartable is created,
3003 explicitly sets the defalt value.
3004
3005 2005-04-22 Kim F. Storm <storm@cua.dk>
3006
3007 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3008 (Fsafe_plist_get): Rename to Fplist_get.
3009 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3010 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3011
3012 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3013
3014 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3015 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3016 Use Fplist_get instead of Fsafe_plist_get.
3017
3018 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3019
3020 2005-04-21 Miles Bader <miles@gnu.org>
3021
3022 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3023
3024 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3025
3026 * sysdep.c: Remove reference to defunct vms-pwd.h.
3027 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3028 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3029
3030 * config.in: Regenerate.
3031
3032 2005-04-20 Kenichi Handa <handa@m17n.org>
3033
3034 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3035 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3036 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3037
3038 * alloc.c (make_sub_char_table): Argument changed to initial
3039 value of the slots.
3040
3041 * data.c (Faref): Handle special slots used as default values of
3042 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3043 default value set for a group of characters.
3044 (Faset): Signal an error if IDXVAL is not a valid character code.
3045 Make a sub-chartable with correct initial value.
3046
3047 * fns.c (Fset_char_table_range): Don't set slots used as default
3048 values for ascii, eight-bit-control, eight-bit-graphic.
3049 Don't call Faref with charset-id.
3050 (Fset_char_table_default): Document how to treat normal character
3051 argument. Handle special slots used as default values of ascii,
3052 eight-bit-control, eight-bit-control. Make a sub chartable if
3053 necessary.
3054
3055 2005-04-20 Kenichi Handa <handa@m17n.org>
3056
3057 * search.c (boyer_moore): Fix previous change.
3058
3059 2005-04-19 Kim F. Storm <storm@cua.dk>
3060
3061 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3062 face unless last visible char and first invisible char have the
3063 same face. Also use default face if saved_face_id is undefined.
3064
3065 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3066
3067 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3068 `full_name'.
3069 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3070 mac_scriptcode member.
3071
3072 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3073 (syms_of_mac): Don't initialize them.
3074 (Vmac_charset_info_alist): New variable.
3075 (syms_of_mac): Defvar it.
3076 (create_text_encoding_info_alist): New function.
3077 (decode_mac_font_name, mac_to_x_fontname)
3078 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3079 code the correspondence among XLFD charsets, Mac script codes, and
3080 Emacs coding systems. Use Vmac_charset_info_alist and result of
3081 create_text_encoding_info_alist instead.
3082 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3083 routines also on Mac OS Classic.
3084 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3085 Use add_font_name_table_entry.
3086 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3087 specified. Derive unspecified scalable fields from specified one.
3088 (x_list_fonts): Consider Valternate_fontname_alist.
3089 (kDefaultFontSize): Change value from 9 to 12.
3090 (XLoadQueryFont): Get decoded font family, font face, and charset
3091 from x_font_name_to_mac_font_name. Set full name of loaded font.
3092 (mac_unload_font): Free `full_name' member.
3093 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3094 NULL. Copy full_name member of struct MacFontStruct to that of
3095 struct font_info.
3096
3097 2005-04-19 Kim F. Storm <storm@cua.dk>
3098
3099 * xdisp.c (handle_stop): Set saved_face_id to current face if
3100 selective_display_ellipsis_p so ellipsis will be shown in same
3101 face as preceding text.
3102 (setup_for_ellipsis): Don't set saved_face_id here.
3103 (next_element_from_display_vector): Default to saved_face_id.
3104
3105 * fns.c (Fsafe_get): New function.
3106 (syms_of_fns): Defsubr it.
3107
3108 * lisp.h (Fsafe_get): EXFUN it.
3109
3110 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3111 loops in case of bad face property lists. Limit number of face
3112 alias lookups to 10 (in case of face alias loops).
3113
3114 2005-04-18 Kim F. Storm <storm@cua.dk>
3115
3116 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3117 It replaces the corresponding member from struct window, as a
3118 window may now show multiple overlay arrows.
3119 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3120
3121 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3122 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3123
3124 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3125 rather than from window.
3126 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3127 overlay_arrow_p members.
3128 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3129 if not default.
3130
3131 * window.h (struct window): Remove member overlay_arrow_bitmap.
3132
3133 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3134
3135 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3136 Calls changed. Don't check for overlay-arrow-bitmap property here.
3137 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3138 fringe is present, return Lisp integer for bitmap (or -1 for default).
3139 Fix value of overlay-arrow-bitmap property to be a symbol, use
3140 lookup_fringe_bitmap to parse it.
3141 (display_line): Change call to overlay_arrow_at_row. Store integer
3142 return value as overlay bitmap in row rather than window.
3143 Only show overlay arrow if row displays text, or if no other overlay
3144 arrow is seen in window (if overlay marker is at point-max).
3145
3146 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3147
3148 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3149
3150 2005-04-18 Lute Kamstra <lute@gnu.org>
3151
3152 * lread.c (Vloads_in_progress): Static.
3153 * fns.c (Vloads_in_progress): Remove extern.
3154 (load_in_progress): Add extern.
3155 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3156
3157 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3158
3159 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3160
3161 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3162
3163 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3164 no frame is visible.
3165
3166 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3167
3168 * term.c (struct keys): Add support for shifted keys.
3169
3170 2005-04-16 Richard M. Stallman <rms@gnu.org>
3171
3172 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3173 (set_message): Call with_echo_area_buffer with WHICH = 0.
3174 (set_message_1): Erase the echo area buffer first thing.
3175 (echo_area_display): Don't clear echo_message_buffer.
3176
3177 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3178
3179 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3180
3181 * mac.c: Include charset.h and coding.h.
3182 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3183 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3184 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3185
3186 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3187
3188 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3189
3190 * macterm.c (x_autoselect_window_p): Remove variable.
3191 (last_window): New variable.
3192 (XTreassert_line_highlight, x_change_line_highlight):
3193 Remove declarations.
3194 (mac_focus_changed, x_detect_focus_change): New functions and
3195 declarations.
3196 (XTextExtents16, front_emacs_window): Remove function.
3197 (mac_focus_frame): New function.
3198 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3199 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3200 (x_scroll_bar_report_motion): Obtain window from control owner.
3201 (x_make_frame_invisible): Set window manager size hint.
3202 (do_mouse_moved): Remove function.
3203 (XTread_socket): Move its contents here. Generate select-window
3204 event on mouse movement if needed. Use x_detect_focus_change on
3205 activate/deactivate events. Don't deiconify frame or invalidate
3206 window rectangle when dnd items are dropped.
3207 Don't activate/deactivate root control.
3208 (frame_highlight, frame_unhighlight): Activate/deactivate root
3209 control here.
3210 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3211
3212 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3213 New extern.
3214
3215 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3216
3217 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3218 (lisp): Use it.
3219 (SOME_MACHINE_LISP): Add tooltip.
3220
3221 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3222
3223 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3224 Don't include TextEncodingConverter.h.
3225 (mac_system_script_code, Vmac_system_locale): New variables.
3226 (syms_of_mac): Defvar them.
3227 (mac_get_system_locale): New function.
3228
3229 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3230 Use ENCODE_SYSTEM to encode title bar string.
3231 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3232 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3233 Use CFStringGetSystemEncoding to get system default string encoding.
3234
3235 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3236 TextEncodingConverter.h.
3237
3238 2005-04-13 Steven Tamm <steventamm@mac.com>
3239
3240 * macterm.c (syms_of_macterm): Remove redundant definition of
3241 mac-pass-control-to-system.
3242
3243 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3244
3245 * window.c (Fset_window_configuration): Be careful when you choose
3246 among several possible points for the new_current_buffer.
3247
3248 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3249
3250 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3251 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3252 (Qlanguage_change) [MAC_OS]: New variable.
3253 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3254 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3255
3256 * macterm.c (mac_keyboard_text_encoding)
3257 (current_mac_keyboard_text_encoding): Remove variables.
3258 (XTread_socket): Store language-change event if keyboard script change
3259 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3260 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3261
3262 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3263
3264 2005-04-10 Richard M. Stallman <rms@gnu.org>
3265
3266 * emacs.c (standard_args): Rename --bare-bones to --quick.
3267 Add -D aka --basic-display.
3268
3269 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3270
3271 2005-04-09 Richard M. Stallman <rms@gnu.org>
3272
3273 * keymap.c (where_is_internal): Convert a string used as event type
3274 into "(any string)".
3275
3276 * lread.c (Vloads_in_progress): Not static.
3277 * fns.c (Vloads_in_progress): Add extern.
3278 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3279
3280 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3281
3282 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3283
3284 2005-04-09 Lute Kamstra <lute@gnu.org>
3285
3286 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3287 within the accessible part of the buffer.
3288
3289 2005-04-09 Kim F. Storm <storm@cua.dk>
3290
3291 * lread.c (readevalloop): Add args START and END as region in
3292 current buffer to read. Callers changed.
3293 When specified, narrow to this region only when reading,
3294 not during eval. Track next point to read from during eval.
3295 Also restore point to "real" buffer position before eval.
3296 (Feval_region): Don't save excursion and restriction here, and
3297 don't narrow to region. Just pass region to readevalloop.
3298 Note: Point is now preserved even when PRINTFLAG is nil.
3299
3300 2005-04-08 Kim F. Storm <storm@cua.dk>
3301
3302 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3303
3304 2005-04-06 Kim F. Storm <storm@cua.dk>
3305
3306 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3307
3308 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3309
3310 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3311 (Fmac_get_preference): Doc fix.
3312
3313 * macfns.c (Fx_create_frame, x_create_tip_frame):
3314 Add "fontset-mac" to fallback font/fontsets.
3315
3316 2005-04-04 Kim F. Storm <storm@cua.dk>
3317
3318 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3319
3320 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3321 Call it again after autoload.
3322
3323 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3324
3325 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3326 mallopt.
3327
3328 * ralloc.c (r_alloc_init): Ditto.
3329
3330 2005-04-01 Kenichi Handa <handa@m17n.org>
3331
3332 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3333 (Vascii_eqv_table): Extern them.
3334
3335 * casetab.c (set_case_table): If standard is nonzero, setup
3336 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3337
3338 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3339 not DOWNCASE_TABLE.
3340 (string_match_1): Likewise.
3341 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3342 Vascii_downcase_table.
3343 (fast_string_match_ignore_case): Likewise.
3344 (search_buffer): Fix checking of boyer-moore usability.
3345 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3346 No need of tranlating characters in PAT. Fix calculation of
3347 simple_translate.
3348
3349 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3350
3351 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3352 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3353 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3354 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3355 really work and that breaks with some versions of Xaw3d.
3356
3357 2005-03-31 Kenichi Handa <handa@m17n.org>
3358
3359 * coding.c (syms_of_coding): Fix previous change.
3360
3361 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3362
3363 * fileio.c (search_embedded_absfilename): Fix last change.
3364
3365 2005-03-25 Kenichi Handa <handa@m17n.org>
3366
3367 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3368 the docstring of coding-category-list.
3369
3370 2005-03-31 Kim F. Storm <storm@cua.dk>
3371
3372 * keyboard.c (Qmouse_fixup_help_message): New var.
3373 (syms_of_keyboard): Intern and staticpro it.
3374 (show_help_echo): Apply mouse-fixup-help-message to help string.
3375
3376 2005-03-30 Kim F. Storm <storm@cua.dk>
3377
3378 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3379
3380 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3381
3382 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3383 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3384 (Ffile_name_absolute_p): Use it.
3385 (search_embedded_absfilename): New fun, extracted from
3386 Fsubstitute_in_file_name. Use file_name_absolute_p.
3387 Free the pw data after use.
3388 (Fsubstitute_in_file_name): Use it.
3389 After cutting a prefix, re-check file-name-handler.
3390
3391 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3392
3393 * w32term.h (x_output): Add focus_state.
3394
3395 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3396 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3397
3398 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3399
3400 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3401 Use Fexit_minibuffer.
3402 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3403
3404 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3405
3406 * dired.c (Ffile_attributes): Add a missing gcpro.
3407
3408 * alloc.c (make_number): The arg can be bigger than `int'.
3409 * lisp.h (make_number): Make prototype more precise.
3410
3411 * process.c, dired.c (Vfile_name_coding_system)
3412 (Vdefault_file_name_coding_system):
3413 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3414 (Vdefault_file_name_coding_system): Remove unused declarations.
3415
3416 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3417
3418 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3419 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3420 menus fail to pop up).
3421
3422 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3423
3424 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3425 Just prepend a backslash without replacing the NBSP by an SPC.
3426
3427 2005-03-22 Kim F. Storm <storm@cua.dk>
3428
3429 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3430 * dispextern.h (lookup_derived_face): Fix prototype.
3431 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3432
3433 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3434 right-fringe face from fringe face.
3435
3436 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3437 Derive face from fringe face.
3438
3439 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3440
3441 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3442
3443 2005-03-22 David Kastrup <dak@gnu.org>
3444
3445 * textprop.c (Fnext_char_property_change)
3446 (Fprevious_char_property_change): Allow marker as limit.
3447 (Fnext_single_char_property_change)
3448 (Fprevious_single_char_property_change): Check that limit is a
3449 number in strings.
3450 (Fnext_single_char_property_change): Coerce position to integer.
3451 (Fprevious_single_char_property_change): Same here.
3452
3453 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3454
3455 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3456
3457 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3458
3459 * frame.c (Fignore_event): Remove.
3460 (syms_of_frame): Don't defsubr it.
3461
3462 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3463 redundant `ignore-event'.
3464
3465 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3466
3467 * unexec.c (write_segment, unexec): Move these functions to avoid
3468 forward references (which cause errors with "gcc -gcoff").
3469
3470 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3471
3472 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3473 that it doesn't become "tooltip". The specbind is enough.
3474
3475 * xrdb.c (x_load_resources): Use different char *helv when I18N
3476 is present.
3477
3478 2005-03-17 Kenichi Handa <handa@m17n.org>
3479
3480 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3481
3482 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3483
3484 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3485 Use xic_create_fontsetname even for non-Motif menus.
3486 Don't forget to free the fontsetname.
3487
3488 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3489
3490 2005-03-17 Richard M. Stallman <rms@gnu.org>
3491
3492 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3493
3494 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3495 (Fmake_symbolic_link): Use G to read the new file name.
3496
3497 * callint.c (Finteractive): Document G option.
3498 (Fcall_interactively): Implement G option.
3499
3500 * buffer.c (buffer_lisp_local_variables): New function,
3501 broken out from Fbuffer_local_variables.
3502 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3503
3504 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3505
3506 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3507 Always return a freshly allocated string.
3508 (xic_create_xfontset): Adjust call.
3509
3510 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3511 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3512 (dump_realized_face): Fix warning.
3513
3514 * emacs.c (Fkill_emacs): YAILOM.
3515
3516 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3517
3518 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3519
3520 * mac.c (HASHKEY_TERMINAL): Remove.
3521 (HASHKEY_MAX_NID): New macro.
3522 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3523 argument.
3524 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3525 (xrm_create_database, xrm_q_put_resource)
3526 (xrm_merge_string_database, xrm_q_get_resource_1)
3527 (xrm_q_get_resource): Change resource database representation so
3528 that it may not use multiple hash tables for a single database.
3529 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3530
3531 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3532
3533 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3534
3535 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3536 locale-coding-system, as was already done for WINDOWSNT.
3537
3538 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3539 translation for chars in the 0-255 range.
3540
3541 2005-03-16 Lute Kamstra <lute@gnu.org>
3542
3543 * floatfns.c (Ffloor): Doc fix.
3544
3545 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3546
3547 * mac.c: Include macterm.h instead of directly including Carbon.h.
3548 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3549 (Qarray, Qdictionary): New variables.
3550 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3551 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3552 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3553 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3554 in callback for CFDictionaryApplyFunction.
3555 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3556 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3557 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3558 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3559 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3560 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3561 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3562 (skip_white_space, parse_comment, parse_include_file)
3563 (parse_binding, parse_component, parse_resource_name, parse_value)
3564 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3565 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3566 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3567 New functions.
3568
3569 * macfns.c (mac_get_rdb_resource): Remove function.
3570 (x_get_string_resource): Use xrm_get_resource.
3571
3572 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3573
3574 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3575 name_list_element.
3576 (mac_make_rdb): Create resource database from preferences and
3577 argument string.
3578 (mac_term_init): Save resource database to cddr part of
3579 name_list_element.
3580
3581 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3582 (xrm_get_preference_database): Add externs.
3583 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3584 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3585 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3586
3587 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3588 defined (DARWIN) || defined (MAC_OSX)'
3589
3590 * s/darwin.h (DARWIN): Don't define.
3591
3592 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3593
3594 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3595 Remove unused variables.
3596 (syms_of_macfns): Don't initialize them. Likewise for
3597 Qface_set_after_frame_default. Defvar and initialize
3598 Vx_window_horizontal_drag_shape.
3599 (x_set_mouse_color): Change mouse pointer shape.
3600 (mac_window) [!MAC_OSX]: Create root control.
3601 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3602 (hourglass_started): New function (from xfns.c).
3603 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3604 MAC_OSX.
3605 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3606 indicator for each non-tooltip frame if needed, and show it.
3607 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3608
3609 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3610 Controls.h. Use ThemeCursor instead of CursHandle.
3611
3612 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3613 Remove functions and declarations.
3614 (mac_set_colors): Take argument for saving background color.
3615 All callers changed.
3616 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3617 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3618 background color.
3619 (x_update_end, mac_do_track_drag): Don't reset background color.
3620 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3621 Use SetThemeCursor.
3622 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3623 indicator control to the upper-right corner of the window.
3624 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3625 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3626 (do_window_update): Update controls after updating content area.
3627 (mac_handle_window_event): Remove unused extern.
3628 (XTread_socket): Check both control handle and control part code
3629 to determine whether a scroll bar is clicked. Activate/deactivate
3630 root control instead of contained scroll bar controls.
3631 (make_mac_terminal_frame): Use ThemeCursor constants.
3632
3633 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3634 New member hourglass_control.
3635 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3636 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3637
3638 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3639
3640 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3641 coincides with that in Apple X11 except `clear', `enter' on
3642 laptops, and fn + `enter' on laptops.
3643
3644 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3645
3646 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3647 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3648 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3649
3650 * xfns.c (xic_defaut_fontset): New constant.
3651 (xic_create_fontsetname): New function.
3652 Extracted from create_frame_xic. Try to generate a slightly
3653 better fontset.
3654 (xic_create_xfontset): Use it.
3655 (create_frame_xic): Simplify.
3656
3657 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3658
3659 * fileio.c (Fmake_symbolic_link): Fix last change.
3660
3661 2005-03-11 Richard M. Stallman <rms@gnu.org>
3662
3663 * fileio.c (Frename_file, Fadd_name_to_file)
3664 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3665 expand the basename of FILE relative to it.
3666
3667 2005-03-11 Kenichi Handa <handa@m17n.org>
3668
3669 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3670 before calling setup_coding_system so that autoloading of a coding
3671 system work.
3672
3673 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3674
3675 * xfns.c (hourglass_started): New function.
3676
3677 * dispextern.h: Declare hourglass_started.
3678
3679 * keyboard.c (Fexecute_extended_command): Restart hourglass
3680 after call to Fcompleting_read if already started.
3681
3682 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3683 GTK main loop is entered in xterm.c, thus doing the redraw.
3684
3685 2005-03-10 Kim F. Storm <storm@cua.dk>
3686
3687 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3688
3689 2005-03-08 Kenichi Handa <handa@m17n.org>
3690
3691 * frame.c (x_set_font): Call set_default_ascii_font if an
3692 available font is found.
3693
3694 * fontset.c (set_default_ascii_font): New function.
3695 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3696
3697 * fontset.h (set_default_ascii_font): Extern it.
3698
3699 2005-03-07 Kim F. Storm <storm@cua.dk>
3700
3701 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
3702 (clear_image_cache_count): New var.
3703 (redisplay_internal): Don't clear face and image caches in the
3704 middle of redisplay; do it afterwards.
3705
3706 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
3707
3708 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
3709 is valid. If not, clear phys_cursor_on_p and return.
3710
3711 2005-03-07 Andreas Schwab <schwab@suse.de>
3712
3713 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
3714
3715 2005-03-06 Richard M. Stallman <rms@gnu.org>
3716
3717 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
3718
3719 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
3720 (Feval, Ffuncall): Use CHECK_CONS_LIST.
3721
3722 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
3723
3724 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
3725 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
3726
3727 2005-03-05 Juri Linkov <juri@jurta.org>
3728
3729 * emacs.c (USAGE1): Replace Info node name "command arguments"
3730 with "emacs invocation".
3731 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
3732 allow arguments `--color' and `MODE' to be separated by space.
3733 Add --no-blinking-cursor, -nbc.
3734 (standard_args): Add -nbc, --no-blinking-cursor.
3735
3736 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3737
3738 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
3739 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
3740 * fileio.c (Fexpand_file_name) [VMS]:
3741 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
3742 * doc.c (munge_doc_file_name) [VMS]: Likewise.
3743 (Fsnarf_documentation): Call munge_doc_file_name.
3744
3745 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
3746
3747 * s/vms.h (FILE_SYSTEM_CASE): New macro.
3748 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
3749 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
3750
3751 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3752
3753 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
3754 defined (MAC_OSX) && defined (HAVE_CARBON)'.
3755
3756 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
3757
3758 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3759 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
3760 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
3761 (mac_clear_font_name_table): Move extern to macterm.h.
3762
3763 * macfns.c (install_window_handler): Move extern to macterm.h.
3764 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
3765 valid. Don't check !NILP (dir) because it is already checked with
3766 CHECK_STRING.
3767 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
3768 specifying the default location and obtaining the selected filename.
3769
3770 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
3771
3772 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
3773 are included via Carbon.h.
3774
3775 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
3776 Define USE_CARBON_EVENTS to 1.
3777 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
3778 (x_free_frame_resources): Call remove_window_handler for
3779 non-tooltip windows.
3780 [TARGET_API_MAC_CARBON]: Don't include headers that are included
3781 via Carbon.h.
3782 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
3783 (mac_do_receive_dragUPP): New variables.
3784 (mac_handle_service_event, init_service_handler): Put declarations
3785 and definitions in #ifdef MAC_OSX.
3786 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
3787 drag-and-drop handler functions and register them.
3788 (remove_window_handler): New function.
3789 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
3790 Use fsspec_to_posix_pathname.
3791 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
3792 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
3793 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
3794 Set default cursors.
3795 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
3796 init_service_handler or init_quit_char_handler.
3797 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
3798
3799 * macterm.h (install_window_handler, remove_window_handler)
3800 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
3801 (mac_clear_font_name_table): New externs.
3802
3803 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3804
3805 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
3806 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
3807 (Fexpand_file_name): Likewise.
3808
3809 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
3810
3811 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
3812 no longer special-case VMS. Add bogus return value.
3813
3814 2005-03-02 Kim F. Storm <storm@cua.dk>
3815
3816 * dispextern.h (XASSERTS): Define to 0 if not already defined.
3817 (xassert) [!XASSERTS]: Define dummy version.
3818
3819 2005-03-02 Kim F. Storm <storm@cua.dk>
3820
3821 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
3822 Reported by David Kastrup.
3823
3824 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
3825
3826 * xdisp.c (get_next_display_element): Fix control and escape
3827 glyph from display vector.
3828
3829 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
3830
3831 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
3832
3833 2005-02-27 Richard M. Stallman <rms@gnu.org>
3834
3835 * xdisp.c (fast_find_position): Rename END to BEG.
3836 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
3837
3838 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3839
3840 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
3841 gtk_window_resize and x_wm_set_size_hint.
3842
3843 2005-02-25 Kim F. Storm <storm@cua.dk>
3844
3845 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
3846
3847 * xdisp.c (init_from_display_pos): Don't read past end of
3848 it->overlay_strings array.
3849
3850 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
3851
3852 * buffer.c (syms_of_buffer): Fix typo.
3853
3854 2005-02-23 Lute Kamstra <lute@gnu.org>
3855
3856 * buffer.c (Foverlay_buffer): Doc fix.
3857
3858 2005-02-22 Kim F. Storm <storm@cua.dk>
3859
3860 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
3861 and symbol keys in alists and hash tables.
3862
3863 * xdisp.c (fast_find_position): Fix search for start of overlay.
3864
3865 2005-02-21 Kim F. Storm <storm@cua.dk>
3866
3867 * window.c (window_scroll_pixel_based): When scrolling backwards,
3868 handle partial visible line at end of window even when we hit PT.
3869
3870 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
3871
3872 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
3873
3874 2005-02-21 Kim F. Storm <storm@cua.dk>
3875
3876 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
3877 I think those asserts are bogus if buffer contains invisible text
3878 or images.
3879
3880 2005-02-21 David Kastrup <dak@gnu.org>
3881
3882 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
3883
3884 2005-02-20 Kim F. Storm <storm@cua.dk>
3885
3886 * xdisp.c (pos_visible_p): Be sure to move to the specified
3887 position. Always get the full ascent / descent of the
3888 corresponding row, to return reliable rtop and rbot values.
3889 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
3890 Must look one character back, as back_to_previous_line_start
3891 returns position after the newline.
3892 (move_it_vertically_backward): Fix heuristic for when to move further
3893 back in case line_height * 2/3 is larger than window height.
3894 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
3895 as it does not do anything anymore. Add arg current_matrix_p to
3896 use current matrix rather than desired matrix when set.
3897 (try_cursor_movement): Don't scroll to make cursor row fully
3898 visible if cursor didn't move. This avoids unexpected recentering
3899 in case of blinking cursor or accepting process output.
3900 Use current matrix to check cursor row visibility.
3901 (redisplay_window): Fix whether to recenter or move to top in case
3902 cursor line is taller than window height.
3903 (find_first_unchanged_at_end_row): Stop search if we reach a row
3904 which not enabled (instead of abort).
3905
3906 2005-02-18 Kim F. Storm <storm@cua.dk>
3907
3908 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
3909 to be nil in a :box attribute value list; customize prints that
3910 as lisp value when no box color is specified.
3911
3912 * .gdbinit (pitx, pit): Pretty print display iterator.
3913 (prowx, prow): Pretty print glyph row.
3914 (pcursorx, pcursor): Pretty print a window cursor.
3915 (pwinx, pwin): Pretty print struct window.
3916
3917 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3918
3919 * alloc.c (BLOCK_BYTES): Harmless typo.
3920
3921 2005-02-17 Andreas Schwab <schwab@suse.de>
3922
3923 * xfns.c (hack_wm_protocols): Use correct type for last parameter
3924 of XGetWindowProperty to avoid aliasing issues.
3925 (Fx_window_property): Likewise.
3926
3927 * xselect.c (Fx_disown_selection_internal): Use union of struct
3928 input_event and struct selection_input_event to avoid aliasing issues.
3929
3930 * xterm.c (handle_one_xevent): Use union of struct input_event and
3931 struct selection_input_event to avoid aliasing issues.
3932 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
3933
3934 2005-02-17 Kim F. Storm <storm@cua.dk>
3935
3936 * dispextern.h (enum it_method): New enum.
3937 (GET_FROM_*): Its members.
3938 (struct it): Change member method from function pointer to enum.
3939
3940 * xdisp.c (check_it, init_from_display_pos, handle_stop)
3941 (setup_for_ellipsis, handle_single_display_spec)
3942 (handle_composition_prop, next_overlay_string)
3943 (get_overlay_strings, reseat_1, reseat_to_string)
3944 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
3945 (in_display_vector_p, display_line, get_next_display_element):
3946 Change it->method from function pointer to enum.
3947 (get_next_element): New array to map it->method to function.
3948 (get_next_display_element): Use it.
3949 (set_iterator_to_next): Use switch instead of if/else chain.
3950
3951 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3952
3953 * w32select.c: Summary: Thorough rework to implement Unicode
3954 clipboard operations and delayed rendering.
3955
3956 Drop last_clipboard_text and related code, keep track of
3957 ownership via clipboard_owner instead. Drop old #if0 sections.
3958
3959 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
3960 (clipboard_owner, modifying_clipboard, cfg_coding_system)
3961 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
3962 (current_coding_system, current_requires_encoding)
3963 (current_num_nls, current_clipboard_type, current_lcid):
3964 New static variables.
3965
3966 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
3967 (render, render_all, run_protected, lisp_error_handler)
3968 (owner_callback, create_owner, setup_config)
3969 (enum_locale_callback, cp_from_locale, coding_from_cp):
3970 New local functions.
3971
3972 (term_w32select, globals_of_w32select): New global functions.
3973
3974 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
3975 clipboard_owner instead. Use delayed rendering and provide
3976 all text formats. Provide CF_LOCALE if necessary.
3977
3978 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
3979 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
3980 available. Force DOS line-ends for decoding.
3981
3982 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
3983
3984 (syms_of_w32select): Init and register new variables.
3985
3986 * w32.h: Add prototypes for globals_of_w32select and
3987 term_w32select. Make the neighboring K&R declarations into
3988 prototypes, too.
3989
3990 * emacs.c: Include w32.h to get function prototypes.
3991 (main): Call globals_of_w32select.
3992
3993 * w32.c (term_ntproc): Call term_w32select.
3994
3995 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
3996
3997 2005-02-16 Kim F. Storm <storm@cua.dk>
3998
3999 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4000 at end of display vector.
4001
4002 2005-02-15 Richard M. Stallman <rms@gnu.org>
4003
4004 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4005 for mode and header lines.
4006
4007 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4008
4009 * keymap.h (describe_map_tree): Change decl.
4010
4011 * keyboard.c (command_loop_1): Always use safe_run_hooks
4012 to run Qdeferred_action_function.
4013
4014 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4015 (describe_map, describe_vector): Likewise. When it's 1,
4016 don't omit shadowed bindings, instead mark them as shadowed.
4017
4018 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4019 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4020
4021 * data.c (Fsetq_default): Allow no arg case.
4022
4023 2005-02-14 Kenichi Handa <handa@m17n.org>
4024
4025 * coding.c (encode_coding_string): Always return a unibyte string.
4026 If NOCOPY is nonzero and there's no need of encoding, make STR
4027 unibyte directly.
4028
4029 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4030 multibyte string, signal an error instead of aborting.
4031
4032 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4033
4034 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4035
4036 2005-02-12 Kim F. Storm <storm@cua.dk>
4037
4038 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4039
4040 2005-02-10 Kim F. Storm <storm@cua.dk>
4041
4042 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4043 if it moves outside window or it doesn't display text.
4044
4045 2005-02-09 Kim F. Storm <storm@cua.dk>
4046
4047 * undo.c (Fprimitive_undo): Check that undo function does not
4048 switch buffer.
4049
4050 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4051
4052 * xselect.c (selection_data_to_lisp_data): For the special case
4053 type == XA_ATOM, data contains array of int, not array of Atom.
4054 (x_property_data_to_lisp, selection_data_to_lisp_data):
4055 Comment update: data must be array of int for format == 32.
4056
4057 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4058
4059 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4060
4061 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4062
4063 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4064 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4065 convert long array returned from XGetWindowProperty to an int array.
4066 (x_set_tool_bar_lines): Check that width and height is greater than
4067 zero before clearing area.
4068
4069 * xselect.c (x_reply_selection_request): Pass long array to
4070 XChangeProperty so that 64 bit longs are handeled correctly.
4071 (x_get_window_property): If format is 32 and long is bigger than 32
4072 bits convert data from XGetWindowProperty from long array to int array.
4073 (lisp_data_to_selection_data): When the input is a vector and the
4074 format is 32, allocate a long array even if long is bigger than 32 bits.
4075 (x_fill_property_data): Use char, short and long as the man page
4076 for XChangeProperty specifies. This way the data returned is OK for
4077 both 32 and 64 bit machines.
4078 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4079 machines.
4080 (Fx_send_client_event): Undo change from 2005-02-05,
4081 x_fill_property_data now handles that case.
4082
4083 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4084 reason for the approach in the code.
4085
4086 2005-02-07 Kim F. Storm <storm@cua.dk>
4087
4088 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4089
4090 2005-02-06 Richard M. Stallman <rms@gnu.org>
4091
4092 * eval.c (Frun_hook_with_args)
4093 (Frun_hook_with_args_until_success)
4094 (Frun_hook_with_args_until_failure): Doc fixes.
4095
4096 2005-02-05 Andreas Schwab <schwab@suse.de>
4097
4098 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4099
4100 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4101
4102 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4103 the longs in a XClientMessageEvent correctly when long is 64 bits.
4104
4105 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4106
4107 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4108 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4109
4110 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4111
4112 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4113 events so the menu event comes after them. This is to prevent sit-for
4114 from exiting on buffered events directly after a menu selection,
4115 lisp code for Help => About Emacs uses sit-for.
4116
4117 * gtkutil.c (create_menus): Connect selection-done event instead of
4118 the deactivate event to deactivate_cb. This will make the last
4119 leave event come before the call to deactivate_cb, so the leave
4120 event does not make sit-for exit after a menu selection.
4121
4122 2005-02-03 Kim F. Storm <storm@cua.dk>
4123
4124 * dispnew.c (build_frame_matrix_from_leaf_window)
4125 [!GLYPH_DEBUG]: Fix xassert.
4126
4127 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4128
4129 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4130
4131 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4132
4133 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4134 the compiling OS version.
4135
4136 * macfns.c (x_create_tip_frame): Likewise.
4137
4138 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4139
4140 2005-02-03 Richard M. Stallman <rms@gnu.org>
4141
4142 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4143
4144 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4145
4146 * buffer.c (Fbury_buffer): Doc fix.
4147
4148 2005-02-02 Steven Tamm <steventamm@mac.com>
4149
4150 * macfns.c (unwind_create_frame): Fix compile error due to
4151 xassert being uncondition, but predicate is.
4152 * dispnew.c (update_window): Fix compile error due to
4153 xassert being uncondition, but predicate is.
4154
4155 2005-02-02 Miles Bader <miles@gnu.org>
4156
4157 * dispextern.h (xassert): Enable unconditionally.
4158
4159 2005-02-02 Kim F. Storm <storm@cua.dk>
4160
4161 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4162
4163 2005-02-02 Kenichi Handa <handa@m17n.org>
4164
4165 * casefiddle.c (casify_object): Enable changing characters of
4166 different byte length.
4167 (casify_region): Fix loop condition, args to replace_range_2, and
4168 update opoint_byte.
4169
4170 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4171
4172 2005-02-01 Kim F. Storm <storm@cua.dk>
4173
4174 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4175 stack before calling handle_display_prop.
4176
4177 2005-01-31 Kim F. Storm <storm@cua.dk>
4178
4179 * undo.c (Qapply): New lisp var.
4180 (syms_of_undo): Intern and staticpro it.
4181 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4182 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4183
4184 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4185
4186 2005-01-30 Jesper Harder <harder@phys.au.dk>
4187
4188 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4189 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4190
4191 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4192
4193 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4194 Increase value to 3 Meg.
4195
4196 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4197
4198 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4199 button events are not received otherwise.
4200
4201 2005-01-29 Richard M. Stallman <rms@gnu.org>
4202
4203 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4204
4205 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4206
4207 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4208
4209 * keymap.c (access_keymap): YAILOM.
4210
4211 2005-01-27 Kim F. Storm <storm@cua.dk>
4212
4213 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4214 phys cursor position and size for hollow cursor. Position is
4215 aligned with get_glyph_string_clip_rect and ensures that a hollow
4216 cursor is shown, even when the actual glyph is not visible.
4217
4218 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4219
4220 * xterm.c (x_clip_to_row): Ensure y >= 0.
4221 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4222
4223 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4224
4225 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4226
4227 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4228
4229 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4230
4231 2005-01-27 Kim F. Storm <storm@cua.dk>
4232
4233 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4234 glyph, even when row is only partially visible and actual cursor
4235 position is not visible.
4236
4237 2005-01-24 Richard M. Stallman <rms@gnu.org>
4238
4239 * xterm.c (x_error_quitter): No longer static, and moved after
4240 x_error_handler.
4241
4242 2005-01-24 Kim F. Storm <storm@cua.dk>
4243
4244 * xdisp.c (move_it_by_lines): If we move forward after going too
4245 far back, cancel move if end position is same as start position.
4246
4247 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4248
4249 * dispextern.h (struct glyph_string): New members clip_head and
4250 clip_tail.
4251
4252 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4253 region to the area between clip_head and clip_tail.
4254 (draw_glyphs): Record the area that need to be actually redrawn to
4255 the new variables clip_head and clip_tail when there are
4256 overhangs. Set values of these variables to the corresponding
4257 members in struct glyph_string. Refine x coordinates for
4258 notice_overwritten_cursor using clip_head and clip_tail.
4259
4260 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4261
4262 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4263 QDTextBounds.
4264 (x_draw_glyph_string): Don't fill the background of the successor
4265 of a glyph with a right overhang if the successor will draw a cursor.
4266 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4267 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4268
4269 2005-01-24 Kim F. Storm <storm@cua.dk>
4270
4271 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4272 direction if window height was smaller than next-screen-context-lines.
4273 Now always scroll at least one line in the requested direction.
4274 Ensure that we actually do scroll backwards when requested to do so.
4275
4276 * xdisp.c (redisplay_window): Only try to make cursor line fully
4277 visible once (to avoid redisplay loop).
4278
4279 2005-01-23 Kim F. Storm <storm@cua.dk>
4280
4281 * window.c (Fpos_visible_in_window_p): Simplify return value for
4282 partially visible rows.
4283 (window_scroll_pixel_based): Adapt to that change.
4284
4285 * window.c (window_scroll_pixel_based): Force moving to next line
4286 if scrolling doesn't move start point, e.g. if looking at tall image.
4287
4288 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4289 Clear last_height before calling line_bottom_y to get real height.
4290 Fix calculation of y.
4291
4292 2005-01-22 Steven Tamm <steventamm@mac.com>
4293
4294 * s/darwin.h: Removed PTY_ITERATION from here.
4295 (DARWIN): Define.
4296
4297 * process.c (init_process): Default process-connection-type to
4298 nil on darwin 6 or less, t if it is 7 or higher. This way the
4299 broken pty behavior is still allowed on darwin 6 for interactive
4300 processes for people that know what they are doing.
4301
4302 2005-01-22 Kim F. Storm <storm@cua.dk>
4303
4304 * window.c (auto_window_vscroll_p): New boolean.
4305 (syms_of_window): DEFVAR_BOOL it.
4306 (Fpos_visible_in_window_p): Extend return value to include RTOP
4307 and RBOT values if FULLY is nil.
4308 (window_scroll_pixel_based): Adjust vscroll for partially visible
4309 rows if auto_window_vscroll_p is set.
4310 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4311
4312 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4313 to return number of partially invisible pixels at top and bottom
4314 of the dislay row at POS.
4315
4316 * lisp.h (pos_visible_p): Fix prototype.
4317
4318 2005-01-21 Richard M. Stallman <rms@gnu.org>
4319
4320 * fileio.c (Fcopy_file): Doc fix.
4321
4322 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4323
4324 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4325 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4326 start of function for older compilers.
4327
4328 2005-01-20 Richard M. Stallman <rms@gnu.org>
4329
4330 * editfns.c (Fmessage): If arg is "", return "" (as before).
4331
4332 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4333
4334 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4335 variable.
4336
4337 2005-01-20 Steven Tamm <steventamm@mac.com>
4338
4339 * editfns.c (Voperating_system_release): Add.
4340 (init_editfns): Assign new variable operating-system-release
4341 based on call to uname if available.
4342 (get_operating_system_release): Add function to
4343 allow c-level access to operating system release.
4344
4345 * config.h: Regenerated.
4346
4347 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4348 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4349 using ptys as '7'.
4350
4351 2005-01-20 Kim F. Storm <storm@cua.dk>
4352
4353 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4354
4355 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4356 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4357
4358 * macterm.c (x_draw_glyph_string_box): Likewise.
4359
4360 * w32term.c (x_draw_glyph_string_box): Likewise.
4361
4362 * indent.c (Fvertical_motion): Temporarily disable selective display.
4363
4364 2005-01-19 Kim F. Storm <storm@cua.dk>
4365
4366 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4367 image property.
4368
4369 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4370
4371 2005-01-18 Kim F. Storm <storm@cua.dk>
4372
4373 * xdisp.c (fast_find_position): Backtrack to find first row if
4374 charpos is inside a display overlay that spans multiple lines.
4375
4376 2005-01-18 Kenichi Handa <handa@m17n.org>
4377
4378 * coding.c (decode_coding_iso2022): Translate invalid codes if
4379 translation-table is specified.
4380
4381 2005-01-18 Kim F. Storm <storm@cua.dk>
4382
4383 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4384 change. If handle_display_prop indicates newline is replaced by
4385 image or text, move back to start of relevant overlay or interval
4386 and continue scan from there. Simplify.
4387
4388 2005-01-17 Kim F. Storm <storm@cua.dk>
4389
4390 * dispnew.c (mode_line_string, marginal_area_string):
4391 Fix off-by-one error in search for glyph.
4392
4393 2005-01-16 Kim F. Storm <storm@cua.dk>
4394
4395 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4396
4397 2005-01-16 Steven Tamm <steventamm@mac.com>
4398
4399 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4400
4401 2005-01-16 Andreas Schwab <schwab@suse.de>
4402
4403 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4404
4405 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4406
4407 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4408 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4409
4410 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4411
4412 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4413 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4414 New flags for readable_events.
4415 (get_filtered_input_pending, readable_filtered_events): Remove.
4416 (tracking_off): Call readable_events and get_input_pending with
4417 flag READABLE_EVENTS_DO_TIMERS_NOW.
4418 (readable_events): Move code from old readable_filtered_events here,
4419 but check new READABLE_EVENTS_* in argument flags instead of previous
4420 two boolean arguments do_timers_now and filter_events.
4421 If we are doing mouse tracking and the mouse moved, return only if
4422 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4423 (swallow_events): Call get_input_pending with flag
4424 READABLE_EVENTS_DO_TIMERS_NOW.
4425 (get_input_pending): Move code from old get_filtered_input_pending
4426 here. Replace boolean arguments do_timers_now, filter_events with
4427 flags, and pass flags to readable_events. Document new
4428 READABLE_EVENTS_* flags.
4429 (detect_input_pending_ignore_squeezables): New function.
4430 (detect_input_pending_run_timers): Call get_input_pending with flag
4431 READABLE_EVENTS_DO_TIMERS_NOW.
4432 (Finput_pending_p): Call get_input_pending with flags
4433 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4434
4435 * dispnew.c (update_window, update_frame_1): Replace calls to
4436 detect_input_pending with detect_input_pending_ignore_squeezables
4437 so that redisplay is not paused if the event queue contains only
4438 mouse movements.
4439
4440 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4441
4442 2005-01-15 Steven Tamm <steventamm@mac.com>
4443
4444 * macterm.c (Vmac_use_core_graphics): Declare variable for
4445 mac-allow-anti-aliasing.
4446 (syms_of_macterm): DEFVAR_LISP and initialize it.
4447 (mac_draw_string_common): Use core graphics text rendering if
4448 mac-allow-anti-aliasing is enabled.
4449
4450 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4451 file name in the text box.
4452
4453 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4454
4455 * macfns.c (x_set_foreground_color, x_set_background_color):
4456 Sync with xfns.c.
4457 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4458 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4459 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4460
4461 2005-01-14 Kim F. Storm <storm@cua.dk>
4462
4463 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4464
4465 2005-01-13 Richard M. Stallman <rms@gnu.org>
4466
4467 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4468 if Voverriding_terminal_local_map is non-nil.
4469
4470 * keyboard.c (syms_of_keyboard): Doc fix.
4471
4472 2005-01-13 Kim F. Storm <storm@cua.dk>
4473
4474 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4475 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4476
4477 2005-01-12 Richard M. Stallman <rms@gnu.org>
4478
4479 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4480 face property for characters that don't specify one.
4481
4482 * fns.c (Frequire): Record in load-history unconditionally.
4483
4484 2005-01-10 Kim F. Storm <storm@cua.dk>
4485
4486 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4487
4488 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4489 Callers changed.
4490 Add support to merge with lisp face id too (if face_name is t).
4491
4492 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4493 Don't lookup lface_id from display table glyphs here; instead use
4494 merge_faces to merge the lisp face id into current face.
4495
4496 2005-01-09 Kim F. Storm <storm@cua.dk>
4497
4498 * dispextern.h (struct it): New member dpvec_face_id.
4499 (merge_into_realized_face): Add prototype.
4500
4501 * xfaces.c (merge_into_realized_face): New function. Used to
4502 merge escape-glyph face or face from display table into current face.
4503
4504 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4505 (syms_of_xdisp): DEFVAR_LISP it.
4506 (escape_glyph_face): Remove var.
4507 (redisplay_window): Don't initialize it.
4508 (setup_for_ellipsis, get_next_display_element):
4509 Set it->dpvec_face_id to -1.
4510 (get_next_display_element): Test Vshow_nonbreak_escape.
4511 Do not setup escape_glyph_face.
4512 Properly merge escape-glyph face or face from display table with
4513 current face for escape and control characters.
4514 Set it->dpvec_face_id to relevant face id instead of adding it to each
4515 element of display vector.
4516 (next_element_from_display_vector): If it->dpvec_face_id is set,
4517 use that instead of lface_id from glyph itself.
4518
4519 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4520
4521 * xterm.h (struct x_output): New member, toolbar_detached.
4522
4523 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4524 38.
4525 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4526 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4527 (xg_create_tool_bar): Initialize toolbar_detached.
4528 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4529 toolbar_detached is zero.
4530
4531 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4532
4533 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4534 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4535
4536 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4537 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4538 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4539
4540 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4541 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4542 XFLOAT_DATA to get extract number from Lisp object.
4543
4544 2005-01-07 Kim F. Storm <storm@cua.dk>
4545
4546 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4547 Set stop_charpos to current charpos instead of 0.
4548
4549 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4550
4551 * xdisp.c (Fformat_mode_line): First arg now required.
4552
4553 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4554
4555 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4556 font widths that are returned from some Japanese fonts.
4557
4558 2005-01-06 Kim F. Storm <storm@cua.dk>
4559
4560 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4561 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4562 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4563 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4564 fringe_faces array and init elements to nil.
4565 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4566 non-persistent face id.
4567 (mark_fringe_data): New function for GC.
4568
4569 * alloc.c (mark_fringe_data): Declare extern.
4570 (Fgarbage_collect): Call mark_fringe_data.
4571
4572 * alloc.c (overrun_check_free): Invalidate freed memory if
4573 XMALLOC_CLEAR_FREE_MEMORY is defined.
4574
4575 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4576
4577 * macfns.c: Include sys/param.h.
4578 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4579 and function.
4580 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4581 of filename string. Set event callback function when creating
4582 dialog boxes. Add code conversions for filenames. Don't dispose
4583 of apple event descriptor record if failed to create it.
4584
4585 * macterm.c: Include sys/param.h.
4586 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4587 kEventWindowUpdate.
4588 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4589 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4590 of FSSpec from apple event descriptor record.
4591 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4592 size of filename string.
4593 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4594 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4595 file dialog is in action.
4596 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4597 Reject only when there are no filename items. Set background color
4598 before (un)highlighting the window below the dragged items.
4599 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4600
4601 2005-01-05 Romain Francoise <romain@orebokech.com>
4602
4603 * term.c (encode_terminal_code): Fix buffer size computation.
4604
4605 2005-01-04 Richard M. Stallman <rms@gnu.org>
4606
4607 * xdisp.c (Fformat_mode_line): Doc fix.
4608
4609 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4610
4611 * alloc.c (refill_memory_reserve): Move.
4612 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4613 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4614
4615 2005-01-03 Richard M. Stallman <rms@gnu.org>
4616
4617 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4618 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4619
4620 2005-01-03 Jason Rumney <jasonr@gnu.org>
4621
4622 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4623 fontp->space_width to FONT_WIDTH so they are valid.
4624
4625 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4626 average width. Set fontp->average_width and fontp->space_width to
4627 their appropriate values.
4628
4629 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4630 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4631 fontp->space_width.
4632
4633 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4634
4635 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4636 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4637 metrics for max and min bounds.
4638 (x_load_font): Correctly calculate average font width metrics.
4639
4640 2005-01-02 Richard M. Stallman <rms@gnu.org>
4641
4642 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4643
4644 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4645
4646 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4647
4648 2004-12-31 Richard M. Stallman <rms@gnu.org>
4649
4650 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4651 Set it->ellipsis_p to 1 or 0.
4652 (display_line): Record whether row ends in mid-ellipsis.
4653 (set_cursor_from_row): If ends in ellipsis, find start of it.
4654 (cursor_row_p): If PT's at the end of the ellipsis the row
4655 ends within, don't display cursor on this row.
4656
4657 * dispextern.h (struct it): New element ellipsis_p.
4658 (struct glyph_row): New element ends_in_ellipsis_p.
4659
4660 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4661 position if we're reading from something other than the buffer.
4662
4663 * window.c (window_scroll_pixel_based): Only look at
4664 Vscroll_preserve_screen_position if the old PT can't be kept.
4665 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4666
4667 2004-12-30 Kim F. Storm <storm@cua.dk>
4668
4669 * xdisp.c (get_line_height_property): New function extracted from
4670 original calc_line_height_property.
4671 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4672 (x_produce_glyphs): Use them to handle line-height and
4673 line-spacing according to new height spec.
4674 (Qtotal): Remove.
4675 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4676
4677 2004-12-30 Kenichi Handa <handa@m17n.org>
4678
4679 * fileio.c (Finsert_file_contents): Don't use
4680 current_buffer->buffer_file_coding_system even if REPLACE is
4681 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4682
4683 * fontset.h (struct font_info): New members space_width and
4684 average_width.
4685
4686 * frame.h (struct frame): New member space_width.
4687 (FRAME_SPACE_WIDTH): New macro.
4688
4689 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4690
4691 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4692 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4693 fontp->space_width.
4694 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4695 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4696
4697 * xdisp.c (x_produce_glyphs): Calculate tab width by
4698 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
4699
4700 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
4701
4702 * macterm.c (SelectionRange): Add Xcode position apple event struct.
4703 (do_ae_open_documents): Handle Xcode-style file position open events.
4704
4705 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
4706
4707 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
4708
4709 2004-12-29 Richard M. Stallman <rms@gnu.org>
4710
4711 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
4712
4713 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4714
4715 * macfns.c (install_window_handler): Modify extern to return OSErr
4716 value.
4717 (mac_window): Handle return value of install_window_handler.
4718
4719 * macterm.c (reflect_byte): Remove function.
4720 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
4721 Lookup table instead.
4722 (mac_do_font_lists): Simplify calculation of the longest
4723 nonspecial string.
4724 (init_mac_drag_n_drop): Remove function and declaration.
4725 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
4726 init_mac_drag_n_drop.
4727 (mac_do_track_drag): New function and declaration.
4728 (install_window_handler): Return OSErr value.
4729 (install_window_handler) [TARGET_API_MAC_CARBON]:
4730 Register handlers for tracking/receiving drag-and-drop items.
4731 (do_ae_open_documents): Generate unibyte strings for filenames.
4732 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
4733 Reject only non-filename items. Set event modifiers, and return value.
4734
4735 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4736
4737 * coding.c (decode_coding): Fix previous change.
4738
4739 2004-12-28 Richard M. Stallman <rms@gnu.org>
4740
4741 * xdisp.c (back_to_previous_visible_line_start):
4742 Don't call handle_display_prop.
4743
4744 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
4745
4746 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
4747 (decode_coding_emacs_mule, encode_coding_emacs_mule)
4748 (decode_coding_iso2022, encode_designation_at_bol)
4749 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
4750 (decode_coding): Constify arguments and local vars.
4751
4752 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4753
4754 * xmenu.c (popup_get_selection): Only pop down dialogs
4755 on C-g and Escape.
4756 (popup_get_selection): Remove parameter down_on_keypress.
4757 (create_and_show_popup_menu, create_and_show_dialog):
4758 Remove parameter down_on_keypress to popup_get_selection.
4759
4760 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4761
4762 * dispextern.h: Change HAVE_CARBON to MAC_OS.
4763 (struct glyph_string): Likewise.
4764
4765 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
4766 mac_initialize.
4767
4768 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
4769 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
4770
4771 * fns.c (vector): Change MAC_OSX to MAC_OS.
4772
4773 * frame.c (x_set_frame_parameters, x_report_frame_params)
4774 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
4775 (x_set_border_width, Vdefault_frame_scroll_bars):
4776 Change HAVE_CARBON to MAC_OS.
4777
4778 * image.c [MAC_OS]: Include sys/stat.h.
4779 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
4780 QuickTimeComponents.h.
4781
4782 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
4783 [!MAC_OSX] (select): Use mac_wait_next_event.
4784 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
4785 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
4786 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4787 (mac_clear_font_name_table): Add extern.
4788 (Fmac_clear_font_name_table): New defun.
4789 (syms_of_mac): Defsubr it.
4790 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
4791 [MAC_OSX] (select_and_poll_event): New function.
4792 [MAC_OSX] (sys_select): Use it.
4793 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
4794 [MAC_OSX && SELECT_USE_CFSOCKET]
4795 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
4796 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
4797 RunLoop for simultaneously monitoring two kinds of inputs, window
4798 events and process outputs, without periodically polling.
4799
4800 * macfns.c (mac_initialized): Remove extern.
4801 (stricmp): Put in #if 0. All callers changed to use xstricmp in
4802 xfaces.c.
4803 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
4804 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
4805 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
4806 (mac_get_rdb_resource): New function (from w32reg.c).
4807 (x_get_string_resource): Use it.
4808 (install_window_handler): Add extern.
4809 (mac_window): New function.
4810 (Fx_create_frame): Use it instead of make_mac_frame.
4811 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
4812 (Fx_open_connection, Fx_close_connection): New defuns.
4813 (syms_of_macfns): Defsubr them.
4814 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
4815 Add kWindowNoUpdatesAttribute to the window attribute.
4816 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
4817 (x_create_tip_frame): Don't call ShowWindow.
4818 (Fx_show_tip): Call ShowWindow.
4819 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
4820 TARGET_API_MAC_CARBON'.
4821 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
4822 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
4823
4824 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
4825 (Window): Typedef to WindowPtr and move outside `#if
4826 TARGET_API_MAC_CARBON'.
4827 (XSizeHints): New struct.
4828
4829 * macterm.c (x_update_begin, x_update_end)
4830 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
4831 frame.
4832 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4833 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
4834 (construct_mouse_click): Put in #if 0.
4835 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
4836 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
4837 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
4838 (activate_scroll_bars, deactivate_scroll_bars)
4839 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
4840 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
4841 if the position is neither user-specified nor program-specified.
4842 (x_free_frame_resources): Free size_hints.
4843 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
4844 (mac_clear_font_name_table): New function.
4845 (mac_do_list_fonts): Initialize font_name_table if needed.
4846 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
4847 around mac_do_list_fonts.
4848 (mac_unload_font): New function.
4849 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
4850 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
4851 and definitions with #if TARGET_API_MAC_CARBON.
4852 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
4853 (install_window_handler): Add decl.
4854 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
4855 window. Use UpdateControls. Get the rectangle that should be
4856 updated and restrict the target of expose_frame to it.
4857 (do_grow_window): Set minimum height/width according to size_hints.
4858 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
4859 (do_zoom_window): Don't use x_set_window_size.
4860 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
4861 (install_window_handler): New function.
4862 [!USE_CARBON_EVENTS] (mouse_region): New variable.
4863 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
4864 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
4865 GetEventDispatcherTarget inside BLOCK_INPUT.
4866 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
4867 Update mouse_region when mouse is moved.
4868 (make_mac_frame): Remove.
4869 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
4870 Initialize mouse pointer shapes. Change values of f->left_pos and
4871 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
4872 Don't call ShowWindow.
4873 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
4874 Vinvocation_name and Vsystem_name.
4875 (mac_make_rdb): New function (from w32term.c).
4876 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
4877 already been opened. Don't pass argument to
4878 mac_initialize_display_info. Don't set dpyinfo->height/width.
4879 Add entries to x_display_list and x_display_name_list.
4880 (x_delete_display): New function.
4881 (mac_initialize): Don't call mac_initialize_display_info.
4882 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
4883
4884 * macterm.h (check_mac): Add extern.
4885 (struct mac_output): New member size_hints.
4886 (FRAME_SIZE_HINTS): New macro.
4887 (mac_unload_font): Add extern.
4888
4889 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
4890
4891 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
4892
4893 2004-12-27 Richard M. Stallman <rms@gnu.org>
4894
4895 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
4896 (syms_of_buffer): Don't defsubr it.
4897
4898 * process.c (list_processes_1): Set undo_list instead
4899 of calling Fbuffer_disable_undo.
4900
4901 * xdisp.c (single_display_spec_string_p): Rename from
4902 single_display_prop_string_p.
4903 (single_display_spec_intangible_p): Rename from
4904 single_display_prop_intangible_p.
4905 (handle_single_display_spec): Rename from handle_single_display_prop.
4906 Rewritten to be easier to understand.
4907
4908 Change in load-history format. Functions now get (defun . NAME),
4909 and variables get just NAME.
4910
4911 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4912
4913 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
4914 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
4915 (Qdefvar): Var deleted.
4916 (syms_of_eval): Don't initialze it.
4917
4918 * lread.c (syms_of_lread) <load-history>: Doc fix.
4919
4920 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4921
4922 * xmenu.c (popup_get_selection): Pop down on C-g.
4923 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
4924 pops down menu on C-g.
4925 (xdialog_show): If dialog popped down and no button in the dialog was
4926 pushed, call Fsignal to quit.
4927 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
4928 Fsignal to quit.
4929
4930 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
4931
4932 * gtkutil.c (xg_initialize): Install bindings for C-g so that
4933 dialogs and menus pop down.
4934
4935 2004-12-27 Kenichi Handa <handa@m17n.org>
4936
4937 * coding.c (code_convert_region): Fix calculation of `ratio'.
4938
4939 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4940
4941 * gtkutil.c (update_frame_tool_bar): Make the value of
4942 tool-bar-button-margin control margins of images in tool bar.
4943
4944 * alloc.c (check_depth): New variable.
4945 (overrun_check_malloc, overrun_check_realloc): Only add
4946 overhead and write check pattern if check_depth is 1 (to handle
4947 recursive calls). Increase/decrease check_depth in entry/exit.
4948 (overrun_check_free): Only check for overhead if check_depth is 1.
4949 Increase/decrease check_depth in entry/exit.
4950
4951 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4952
4953 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
4954 before touching input_available_clear_time, to avoid accessing it
4955 from multiple threads.
4956
4957 2004-12-23 Jason Rumney <jasonr@gnu.org>
4958
4959 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
4960 of JPEG library.
4961
4962 2004-12-22 Richard M. Stallman <rms@gnu.org>
4963
4964 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
4965
4966 * lisp.h (Vundo_outer_limit): Fix decl.
4967
4968 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
4969 Uses changed.
4970 (syms_of_undo): Initialize appropriately.
4971 (truncate_undo_list): If it's nil, there's no limit.
4972
4973 2004-12-22 Kenichi Handa <handa@m17n.org>
4974
4975 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
4976
4977 2004-12-21 Richard M. Stallman <rms@gnu.org>
4978
4979 * eval.c (unwind_to_catch): Clear immediate_quit.
4980
4981 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
4982 specially as `\ ' and `\-'.
4983
4984 * keyboard.c (kbd_buffer_store_event_hold):
4985 In the code for while-no-input, handle immediate_quit.
4986
4987 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
4988 Call that at the very start.
4989 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
4990 (syms_of_alloc): Don't define undo-limit,
4991 undo-strong-limit and undo-outer-limit here.
4992
4993 * undo.c (truncate_undo_list): Return void.
4994 Take just one argument, the buffer.
4995 Make it current, and inhibit recursive GC.
4996 Access and update the undo list directly; return void.
4997 Refer to the undo...limit variables directly.
4998 Test undo_outer_limit only after counting the whole current command.
4999 When it's exceeded, call the function in undo-outer-limit-function.
5000 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5001 (Vundo_outer_limit_function): New variable.
5002 (syms_of_undo): Define undo-limit, undo-strong-limit
5003 and undo-outer-limit here, and undo-outer-limit-function.
5004 Doc fixes.
5005
5006 * lisp.h (truncate_undo_list): Update decl.
5007
5008 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5009
5010 * fileio.c (Fread_file_name): Delete duplicates in
5011 file-name-history when history_delete_duplicates is true.
5012
5013 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5014
5015 * macterm.c (mac_do_list_fonts): Fix memory leak
5016
5017 2004-12-20 Richard M. Stallman <rms@gnu.org>
5018
5019 * regex.c (re_match_2_internal) <symend, wordend>:
5020 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5021
5022 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5023
5024 * macterm.c (endif, x_font_name_to_mac_font_name):
5025 Use maccentraleurroman instead of maccentraleuropean
5026 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5027 quickly finding a specific font without needing regexps.
5028
5029 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5030
5031 * syssignal.h: Declare main_thread.
5032 (SIGNAL_THREAD_CHECK): New macro.
5033
5034 * keyboard.c (input_available_signal): Move thread checking code
5035 to macro SIGNAL_THREAD_CHECK and call that macro.
5036 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5037
5038 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5039
5040 * emacs.c: Define main_thread.
5041 (main): Initialize main_thread.
5042 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5043 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5044
5045 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5046
5047 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5048
5049 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5050
5051 * process.c (send_process_trap, sigchld_handler):
5052 Call SIGNAL_THREAD_CHECK.
5053
5054 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5055
5056 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5057
5058 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5059 returning when xg_ignore_gtk_scrollbar is true.
5060
5061 2004-12-14 Kim F. Storm <storm@cua.dk>
5062
5063 * keyboard.c (read_char): Save and restore echo_string when
5064 handling input method.
5065
5066 2004-12-13 Richard M. Stallman <rms@gnu.org>
5067
5068 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5069
5070 * keyboard.c (Vthrow_on_input): New variable.
5071 (syms_of_keyboard): Defvar and initialize it.
5072 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5073
5074 * lisp.h (QUIT): Check for Vthrow_on_input.
5075 (Vthrow_on_input): Declare it.
5076
5077 2004-12-13 Kim F. Storm <storm@cua.dk>
5078
5079 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5080 vector.
5081
5082 2004-12-12 Richard M. Stallman <rms@gnu.org>
5083
5084 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5085
5086 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5087 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5088
5089 2004-12-12 Kenichi Handa <handa@m17n.org>
5090
5091 * term.c (encode_terminal_code): Fix previous change.
5092
5093 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5094
5095 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5096 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5097
5098 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5099 in macro arguments.
5100
5101 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5102 XFASTINT blindly.
5103
5104 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5105
5106 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5107
5108 * w32term.c (x_calc_absolute_position): Remove calculation of
5109 difference between inner and outer window. Don't subtract difference
5110 for left and top calculations.
5111
5112 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5113 for left and top calculations. Remove call to x_real_positions.
5114 [Bug report by Drew Adams in November]
5115 (x_check_expected_move): Do not set change_gravity to 1 when calling
5116 x_set_offset.
5117
5118 2004-12-08 Richard M. Stallman <rms@gnu.org>
5119
5120 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5121 control chars and escaped octal codes.
5122 (Qescape_glyph): New variable.
5123 (syms_of_xdisp): Initialize it.
5124 (escape_glyph_face): New variable.
5125 (redisplay_window): Initialize it.
5126
5127 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5128
5129 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5130 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5131
5132 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5133
5134 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5135 reset_malloc_hooks.
5136
5137 * keyboard.c (handle_async_input, input_available_signal):
5138 Add ! defined (SYSTEM_MALLOC) around thread code.
5139
5140 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5141
5142 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5143
5144 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5145
5146 * config.in: Regenerate.
5147
5148 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5149
5150 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5151 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5152 if not given by a mouse click to correspond with x-popup-menu
5153 documentation.
5154
5155 * config.in: Regenerate.
5156
5157 * gtkutil.c: Include signal.h and syssignal.h.
5158 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5159
5160 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5161 new variables main_thread and alloc_mutex,
5162 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5163 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5164 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5165 (UN)BLOCK_INPUT.
5166 (emacs_blocked_free, emacs_blocked_malloc)
5167 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5168 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5169 (reset_malloc_hooks): New function.
5170
5171 * lisp.h: Declare reset_malloc_hooks.
5172
5173 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5174
5175 * keyboard.c: Conditionally include pthread.h
5176 (handle_async_input, input_available_signalt): If not in the main
5177 thread, block signal, send signal to main thread and return.
5178
5179 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5180 Set current folder in file chooser if default_filename is a directory.
5181
5182 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5183
5184 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5185 Remove redundant correctness checks.
5186 (regex_compile): Fix up error codes for \{..\} expressions.
5187
5188 2004-12-05 Richard M. Stallman <rms@gnu.org>
5189
5190 * regex.c (regex_compile): Fix end-of-pattern case for space.
5191
5192 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5193
5194 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5195 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5196 crashes with invalid characters.
5197 * macmenu.c (add_menu_item): Use it.
5198 * image.c (image_load_quartz2d): Likewise.
5199 * macfns.c (x_set_name, x_set_title): Likewise.
5200 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5201 creating them each time for labels.
5202
5203 2004-12-02 Richard M. Stallman <rms@gnu.org>
5204
5205 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5206 don't use it here.
5207
5208 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5209 (interactive_p): Skip Scalled_interactively_p frames
5210 like Sinteractive_p frames.
5211 (unwind_to_catch): Clear handling_signal.
5212
5213 * data.c (Fmake_variable_buffer_local): Doc fix.
5214 (Fmake_local_variable): Doc fix.
5215
5216 * insdel.c (insert_from_string_before_markers)
5217 (insert_from_string): Don't modify buffer on empty insertion.
5218
5219 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5220
5221 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5222
5223 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5224 menu text as UTF8 fails.
5225
5226 2004-12-01 Kim F. Storm <storm@cua.dk>
5227
5228 * alloc.c: Add commentary for last change.
5229 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5230 sizeof(size_t) != 4.
5231 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5232 Use them. Also clear header and trailer of freed memory.
5233 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5234 (string_overrun_cookie): Rename from string_overrun_pattern.
5235 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5236
5237 2004-12-01 Andreas Schwab <schwab@suse.de>
5238
5239 * lisp.h: Declare string_to_multibyte.
5240
5241 2004-12-01 Kenichi Handa <handa@m17n.org>
5242
5243 * w32console.c (w32con_write_glyphs): Decide coding here.
5244 Adjusted for the change of encode_terminal_code.
5245
5246 * term.c (encode_terminal_code): Don't make it "static".
5247
5248 2004-11-30 Kenichi Handa <handa@m17n.org>
5249
5250 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5251 (encode_terminal_code): Argument changed. Encode all
5252 characters at once, and return a pointer to the result of encoding.
5253 (write_glyphs): Decide coding here. Adjusted for the above change.
5254 (insert_glyphs): Likewise.
5255 (term_init): Initialize encode_terminal_bufsize to 0.
5256
5257 * coding.c (Vcode_conversion_workbuf_name): New variable.
5258 (syms_of_coding): Initialize and staticpro it.
5259 (set_conversion_work_buffer): New function.
5260 (run_pre_post_conversion_on_str): Use it.
5261 (run_pre_write_conversin_on_c_str): New function.
5262
5263 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5264
5265 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5266
5267 * keyboard.c: Don't undef SIGIO
5268 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5269 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5270 (macfns.o): Don't depend on ccl.h.
5271 * macfns.c (mac_frame_parm_handlers): Set handlers for
5272 Qleft_fringe and Qright_fringe.
5273 * macterm.c (mac_fill_rectangle_to_pixmap)
5274 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5275 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5276 Put in #if 0.
5277 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5278 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5279 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5280 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5281 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5282 XDrawImageString. Always draw background and foreground separately.
5283 (x_draw_image_foreground): Use clipping instead of computing the
5284 intersection rectangle.
5285 (x_draw_image_glyph_string): Don't draw an image with mask to a
5286 pixmap.
5287 (x_redisplay_interface): Set flush_display_optional member to 0.
5288 (XTread_socket): Correctly reset the TEConverter
5289 object.
5290
5291 2004-11-30 Kim F. Storm <storm@cua.dk>
5292
5293 * lisp.h: New defines to enable buffer overrun checking.
5294 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5295 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5296
5297 * alloc.c: Add more checks for buffer overruns.
5298 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5299 xmalloc_overrun_check_trailer, overrun_check_malloc)
5300 overrun_check_realloc, overrun_check_free): Add.
5301 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5302 (check_sblock, allocate_string_data, compact_small_strings):
5303 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5304 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5305 (check_string_free_list): Add.
5306 (allocate_string, sweep_strings): Call check_string_free_list.
5307
5308 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5309 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5310
5311 2004-11-29 Kim F. Storm <storm@cua.dk>
5312
5313 * fns.c (concat): Use SAFE_ALLOCA.
5314
5315 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5316
5317 * sysdep.c (emacs_write): Don't use QUIT.
5318
5319 2004-11-29 Kenichi Handa <handa@m17n.org>
5320
5321 * buffer.c (init_buffer): Set current_buffer->directory to a
5322 multibyte string made by string_to_multibyte.
5323
5324 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5325
5326 2004-11-27 Andreas Schwab <schwab@suse.de>
5327
5328 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5329
5330 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5331 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5332
5333 * filelock.c (lock_file_1): Call get_boot_time early.
5334 Increase buffer size.
5335
5336 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5337
5338 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5339 is not defined.
5340
5341 2004-11-27 Kim F. Storm <storm@cua.dk>
5342
5343 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5344 marker out of doc string.
5345
5346 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5347
5348 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5349 which was not mentioned in the log.
5350
5351 2004-11-26 Kim F. Storm <storm@cua.dk>
5352
5353 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5354 angle bitmaps at top/bottom line.
5355
5356 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5357 set it when it->method is set to next_element_from_display_vector.
5358 (setup_for_ellipsis): Add LEN argument. Callers changed.
5359 Set it->saved_face_id.
5360 (get_next_display_element): Use loop instead of recursion.
5361 Set it->saved_face_id. Combine duplicate code for ctr chars.
5362 (next_element_from_display_vector): Do not set it->saved_face_id.
5363 (next_element_from_ellipsis): Use setup_for_ellipsis.
5364
5365 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5366
5367 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5368 prevent compiler warnings.
5369
5370 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5371
5372 * keyboard.c (command_loop_1): Print a message describing the key
5373 the user just pressed when this key has no binding.
5374
5375 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5376 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5377
5378 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5379
5380 2004-11-24 Richard M. Stallman <rms@gnu.org>
5381
5382 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5383
5384 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5385
5386 2004-11-24 Kim F. Storm <storm@cua.dk>
5387
5388 * xdisp.c (move_it_in_display_line_to, display_line):
5389 Restore saved_face_id also when truncate-lines or hscrolled.
5390
5391 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5392
5393 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5394 x-use-old-gtk-file-dialog.
5395
5396 * xfns.c: Define x_use_old_gtk_file_dialog.
5397 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5398 outside ifdef USE_GTK.
5399
5400 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5401
5402 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5403 Don't use XFASTINT blindly.
5404
5405 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5406
5407 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5408 in macro arguments.
5409
5410 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5411
5412 * lread.c (oblookup): Don't use XFASTINT blindly.
5413
5414 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5415 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5416
5417 2004-11-23 Kim F. Storm <storm@cua.dk>
5418
5419 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5420 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5421
5422 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5423 signal_p is zero and face name is unknown.
5424 (Fx_list_fonts): Don't signal error in lookup_named_face.
5425 (Fface_font): Signal error in lookup_named_face.
5426 (ascii_face_of_lisp_face): Likewise.
5427
5428 * dispextern.h (lookup_named_face): Fix prototype.
5429
5430 * xdisp.c (handle_single_display_prop): Don't signal error in
5431 lookup_named_face for unknown fringe face name.
5432 (highlight_trailing_whitespace): Don't signal error in
5433 lookup_named_face if trailing-whitespace face unknown.
5434 (calc_line_height_property): Don't signal error in
5435 lookup_named_face if specified face name is unknown.
5436
5437 * fringe.c (update_window_fringes): Show top row indicator if
5438 window has header-line. Don't show arrow at bob and eob
5439 if the boundary indicators are not used.
5440 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5441
5442 * window.c (set_window_buffer): Clear display_error_modiff.
5443
5444 2004-11-22 Kim F. Storm <storm@cua.dk>
5445
5446 * fringe.c (update_window_fringes): Provide sensible fall-back
5447 value for non-nil indicate-buffer-boundaries setting.
5448
5449 2004-11-22 Markus Rost <rost@ias.edu>
5450
5451 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5452
5453 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5454
5455 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5456
5457 2004-11-21 Kim F. Storm <storm@cua.dk>
5458
5459 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5460
5461 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5462 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5463
5464 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5465 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5466
5467 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5468 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5469
5470 * xdisp.c (move_it_in_display_line_to, display_line):
5471 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5472 line is continued before or in middle of element from display vector.
5473
5474 * indent.c (Fvertical_motion): Fix last change. Use another
5475 method to detect if iterator moved too far ahead after reseat.
5476
5477 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5478 expand matrix width for overflow in zero-width area.
5479 (append_glyph, append_composite_glyph, produce_image_glyph)
5480 (append_stretch_glyph): Use it to avoid loop in redisplay.
5481 (note_mode_line_or_margin_highlight): Don't let help-echo from
5482 string override help-echo from image map.
5483
5484 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5485
5486 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5487 * callint.c (Fcall_interactively): Ditto.
5488
5489 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5490
5491 * minibuf.c (Fminibuffer_complete_and_exit):
5492 Fixup the case of the completed value, for case-indep completion.
5493
5494 2004-11-20 Richard M. Stallman <rms@gnu.org>
5495
5496 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5497
5498 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5499 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5500
5501 * search.c (Vsearch_spaces_regexp):
5502 Rename from Vsearch_whitespace_regexp. All uses changed.
5503
5504 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5505
5506 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5507
5508 2004-11-19 Richard M. Stallman <rms@gnu.org>
5509
5510 * search.c (Vsearch_whitespace_regexp): New variable.
5511 (syms_of_search): Defvar it.
5512 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5513 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5514 is non-nil.
5515 (struct regexp_cache): New element whitespace_regexp.
5516 (syms_of_search): Initialize whitespace_regexp elements.
5517 (compile_pattern): Compare whitespace_regexp elements.
5518 (compile_pattern_1): Set whitespace_regexp elements.
5519
5520 * regex.c (regex_compile): Substitute whitespace_regexp
5521 for spaces, if it is nonzero.
5522 (whitespace_regexp): New variable.
5523 (re_set_whitespace_regexp): New function.
5524
5525 2004-11-19 Kim F. Storm <storm@cua.dk>
5526
5527 * indent.c (Fvertical_motion): Fix last change.
5528
5529 2004-11-18 Kim F. Storm <storm@cua.dk>
5530
5531 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5532 Instead, move back again if reseating moves too far ahead.
5533
5534 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5535
5536 * xdisp.c (message3): Call clear_message.
5537
5538 2004-11-17 Kim F. Storm <storm@cua.dk>
5539
5540 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5541
5542 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5543
5544 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5545
5546 * xmenu.c (x_menu_in_use): Remove.
5547 (x_menu_set_in_use): Also set popup_activated_flag.
5548
5549 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5550 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5551
5552 * xterm.h (x_menu_in_use): Remove.
5553
5554 2004-11-16 Richard M. Stallman <rms@gnu.org>
5555
5556 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5557 Use map-keymap-internal to implement that.
5558
5559 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5560
5561 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5562
5563 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5564 a window before using XWINDOW.
5565
5566 * window.c (make_window, Fselect_window, make_dummy_parent)
5567 (save_window_save):
5568 * frame.c (make_frame):
5569 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5570
5571 * lisp.h (NILP): Use EQ rather than XFASTINT.
5572
5573 2004-11-16 Kim F. Storm <storm@cua.dk>
5574
5575 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5576
5577 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5578 moving backwards.
5579
5580 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5581
5582 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5583
5584 2004-11-16 Kenichi Handa <handa@m17n.org>
5585
5586 * xdisp.c (display_mode_element): Fix previous change (calculate
5587 end position of substring to display correctly).
5588
5589 2004-11-16 Kim F. Storm <storm@cua.dk>
5590
5591 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5592 Reported by Andrew M. Scott.
5593
5594 2004-11-15 Kim F. Storm <storm@cua.dk>
5595
5596 * fns.c (Fsafe_plist_get): New defun.
5597 (syms_of_fns): Defsubr it.
5598
5599 * lisp.h (Fsafe_plist_get): Add EXFUN.
5600
5601 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5602 Use Fsafe_plist_get.
5603 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5604 Fix image map element parsing. Use Fsafe_plist_get.
5605
5606 2004-11-15 Richard M. Stallman <rms@gnu.org>
5607
5608 * xdisp.c (get_next_display_element): Fix previous change.
5609
5610 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5611
5612 * window.c (shrink_windows): Handle special case of one window left
5613 when trying to shrink the final reminder. Grow windows if
5614 total_removed is less than total_shrink.
5615
5616 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5617 extract pointer from arg with XSAVE_VALUE.
5618 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5619 Construct arg to record_unwind_protect with make_save_value.
5620
5621 2004-11-13 Richard M. Stallman <rms@gnu.org>
5622
5623 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5624 (get_next_display_element): Fix previous change to apply only to \n.
5625
5626 * indent.c (Fvertical_motion): Scan to PT from start of line to
5627 make iterator consistent.
5628
5629 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5630
5631 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5632
5633 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5634
5635 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5636 Record unwind with clean_up_file_dialog.
5637
5638 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5639 Declare.
5640
5641 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5642
5643 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5644
5645 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5646 (xg_file_sel_destroy): Remove.
5647 (xg_file_response_cb, pop_down_file_dialog)
5648 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5649 New functions.
5650 (xg_get_file_with_chooser, xg_get_file_with_selection):
5651 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5652 Move common code to xg_get_file_name. Return widget created.
5653 (xg_get_file_name): Set name, transient for, modal and destroy
5654 with parent here. Connect response signal to xg_file_response_cb,
5655 connect delete-event to gtk_true. Record pop_down_file_dialog
5656 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5657 (xg_create_widget): Make dialogs modal.
5658
5659 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5660 Lisp_Object.
5661 (popup_get_selection): Move unwind protect ...
5662 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5663 Move destroy of widget to pop_down_menu.
5664 (popup_widget_loop): Move unwind protect ...
5665 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5666 Move destroy of widget to pop_down_menu.
5667 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5668 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5669 x_mouse_leave and grabbed = 0 to pop_down_menu.
5670
5671 2004-11-13 Kim F. Storm <storm@cua.dk>
5672
5673 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5674 (syms_of_xdisp): DEFVAR_BOOL it.
5675 (make_cursor_line_fully_visible, try_cursor_movement)
5676 (try_window_id): Use it.
5677
5678 2004-11-12 Kim F. Storm <storm@cua.dk>
5679
5680 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5681 (struct it): New member max_extra_line_spacing.
5682 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5683 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5684 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5685 part of last line is only extra line spacing (so the text on the
5686 line is fully visible). Use helper macros.
5687 Add W arg (to use them). All callers changed.
5688 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5689 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5690
5691 * window.c (window_scroll_pixel_based, Frecenter):
5692 Use move_it_vertically_backward directly.
5693 (Frecenter): Fix calculation of new start pos for negative arg.
5694 Before, the new start pos was sometimes chosen too far back, so
5695 the last line became only partially visible, and thus would be
5696 either only semi-visible or automatically scrolled to the middle
5697 of the window by redisplay.
5698
5699 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
5700 (move_it_vertically_backward): Don't recure to move further back.
5701 (move_it_vertically): Remove superfluous condition.
5702 (move_it_by_lines): Clear last_height when moved 0 lines.
5703 (resize_mini_window): Use it.max_extra_line_spacing.
5704 (display_tool_bar_line): Clear row->extra_line_spacing.
5705 (try_scrolling): Use move_it_vertically_backward directly.
5706 (redisplay_window): Likewise.
5707 (compute_line_metrics): Set row->extra_line_spacing.
5708 (display_line, display_string): Likewise.
5709 (x_produce_glyphs): Update it->max_extra_line_spacing.
5710
5711 * xmenu.c (pop_down_menu): Return nil.
5712
5713 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5714
5715 * xmenu.c (x_menu_wait_for_event): New function.
5716 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5717 to handle timers.
5718 (popup_widget_loop): Add argument do_timers.
5719 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
5720 do_timers to popup_widget_loop.
5721 (xmenu_show): Call XMenuActivateSetWaitFunction so that
5722 x_menu_wait_for_event is called by XMenuActivate.
5723 (create_and_show_popup_menu): Pass 1 for do_timers to
5724 popup_get_selection.
5725 (pop_down_menu): New function.
5726 (popup_get_selection, popup_widget_loop): Unwind protect to
5727 pop_down_menu.
5728 (popup_widget_loop): Add argument widget.
5729 (create_and_show_popup_menu, create_and_show_dialog): Pass new
5730 argument widget to popup_widget_loop.
5731
5732 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
5733
5734 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
5735
5736 2004-11-09 Kim F. Storm <storm@cua.dk>
5737
5738 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
5739 Fix various comments referring to XEvents instead of input events.
5740 (x_queue_event): Fix format strings.
5741 (x_stop_queuing_selection_requests): Likewise.
5742
5743 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
5744 (pint2hrstr): Add extra braces to silence compiler.
5745
5746 * print.c (print_object): Fix format string.
5747
5748 * lread.c (read1): Fix next_char matching.
5749
5750 * lisp.h (Fdelete): Add EXFUN.
5751 (replace_range_2): Add prototype.
5752
5753 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
5754
5755 * intervals.h (NULL_INTERVAL_P): Add separate version when
5756 ENABLE_CHECKING is not defined to silence compiler.
5757 (compare_string_intervals): Add prototype.
5758
5759 * fringe.c (destroy_fringe_bitmap): Fix return type.
5760 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
5761
5762 * emacs.c (Fdump_emacs): Fix format string.
5763
5764 * doc.c: Include <ctype.h>.
5765 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
5766
5767 * data.c (store_symval_forwarding): Remove unused variables.
5768
5769 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
5770
5771 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5772
5773 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
5774 to ${OLDXMENU}.
5775
5776 2004-11-09 Kim F. Storm <storm@cua.dk>
5777
5778 * process.c (Fmake_network_process): Remove kludge for interrupted
5779 connects on BSD. If connect is interrupted, just close socket and
5780 start over rather than sleeping and retry with same socket.
5781
5782 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5783
5784 * .cvsignore: Add buildobj.lst.
5785
5786 * doc.c: New variable Vbuild_files.
5787 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5788 file names from buildobj.lst. Only attach docstrings from files
5789 that are in Vbuild_files.
5790 (syms_of_doc): Defvar Vbuild_files.
5791
5792 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
5793 and w32*.o.
5794 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
5795 (mostlyclean): Rm buildobj.lst
5796
5797 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
5798 is linked.
5799
5800 2004-11-09 Kim F. Storm <storm@cua.dk>
5801
5802 * fringe.c (update_window_fringes): Update fringe bitmaps if
5803 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
5804 also update previous row to get rid of misc. artifacts.
5805
5806 2004-11-08 Kim F. Storm <storm@cua.dk>
5807
5808 * xdisp.c (fast_find_position): Fix start pos if header line present.
5809 (note_mouse_highlight): Clear mouse face if we move out of text area.
5810
5811 2004-11-08 Eli Zaretskii <eliz@gnu.org>
5812
5813 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
5814 Don't include <sys/time.h> explicitly.
5815 Include <stdio.h> unconditionally, not just on MacOS.
5816
5817 2004-11-08 Kenichi Handa <handa@m17n.org>
5818
5819 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
5820 don't pay attention to '\' before '*'.
5821 (fontset_pattern_regexp): Change the meaning of the second arg.
5822 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
5823 (check_fontset_name): Try NAME as literal at first, and if it
5824 failes, try NAME as pattern.
5825
5826 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5827
5828 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
5829
5830 2004-11-07 Andreas Schwab <schwab@suse.de>
5831
5832 * lisp.h (Fmsdos_downcase_filename): Declare.
5833 * dired.c (Fmsdos_downcase_filename): Don't declare here.
5834 * fileio.c: Likewise.
5835
5836 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5837
5838 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
5839 comparisons with integers instead of Lisp_Object address.
5840 (Fmsdos_set_keyboard): Declare argument allkeys.
5841
5842 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
5843
5844 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
5845 int/Lisp_Object mixup.
5846
5847 * fileio.c: Ditto.
5848
5849 2004-11-06 Steven Tamm <steventamm@mac.com>
5850
5851 * editfns.c: Need to include sys/time.h before resource.h on darwin.
5852
5853 2004-11-06 Richard M. Stallman <rms@gnu.org>
5854
5855 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
5856
5857 * xfaces.c (merge_named_face): GCPRO the face_name in the
5858 named_merge_point struct that we make.
5859 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
5860
5861 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
5862 before deciding whether to inactivate mark.
5863
5864 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
5865
5866 * config.in: Regenerate (add HAVE_GETRUSAGE).
5867 * editfns.c (Fget_internal_run_time): New function.
5868 (syms_of_data): Defsubr it.
5869 * fns.c (sxhash): As far as possible, merge calculation of
5870 hash code for symbols and strings.
5871
5872 2004-11-06 Eli Zaretskii <eliz@gnu.org>
5873
5874 * frame.c (syms_of_frame): Fix the example in the doc string.
5875
5876 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5877
5878 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
5879
5880 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
5881 (create_and_show_dialog): Revert change from 2004-10-31.
5882
5883 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
5884
5885 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
5886
5887 2004-11-05 Kim F. Storm <storm@cua.dk>
5888
5889 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
5890
5891 * fileio.c (Ffile_modes): Doc fix.
5892 (auto_save_1): Check for Ffile_modes nil value.
5893
5894 2004-11-05 Kim F. Storm <storm@cua.dk>
5895
5896 * xselect.c (struct selection_event_queue, selection_queue)
5897 (x_queue_selection_requests, x_queue_event)
5898 (x_start_queuing_selection_requests)
5899 (x_stop_queuing_selection_requests): Add new queue for selection
5900 input events to replace previous XEvent queue in xterm.c.
5901 (queue_selection_requests_unwind): Adapt to new queue.
5902 (x_reply_selection_request): Adapt to new queue.
5903 Unexpect wait_object in case of x errors (memory leak).
5904 (x_handle_selection_request, x_handle_selection_clear): Make static.
5905 (x_handle_selection_event): New function. May queue selection events.
5906 (wait_for_property_change_unwind): Use save_value instead of cons.
5907 Clear property_change_reply_object.
5908 (wait_for_property_change): Abort if already waiting.
5909 Use save_value instead of cons for unwind data.
5910 (x_handle_property_notify): Skip events already arrived, but don't
5911 free them, as "arrived" field is checked by wait_for_property_change,
5912 and it will be freed by unwind or explicit unexpect_property_change.
5913 (x_get_foreign_selection): Add to new queue.
5914 (receive_incremental_selection): Don't unexpect wait_object when done
5915 as it has already been freed by previous wait_for_property_change.
5916
5917 * xterm.h (x_start_queuing_selection_requests)
5918 (x_stop_queuing_selection_requests, x_handle_selection_request)
5919 (x_handle_selection_clear): Remove prototypes.
5920 (x_handle_selection_event): Add prototype.
5921
5922 * xterm.c (handle_one_xevent): Don't queue X selection events
5923 here, it may be too late if we start queuing after we have already
5924 stored some selection events into the kbd buffer.
5925 (struct selection_event_queue, queue, x_queue_selection_requests)
5926 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
5927 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
5928 (x_catch_errors_unwind): Block input around final XSync.
5929
5930 * keyboard.h (kbd_buffer_unget_event): Add prototype.
5931
5932 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
5933 (kbd_buffer_unget_event): New function.
5934 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
5935 and use x_handle_selection_event.
5936 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
5937
5938 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5939
5940 * xselect.c (TRACE3): New debug macro.
5941 (x_reply_selection_request): Use it.
5942 (receive_incremental_selection): In call to TRACE0, the name of
5943 a symbol is in xname.
5944
5945 2004-11-05 Kim F. Storm <storm@cua.dk>
5946
5947 * fontset.c (fontset_pattern_regexp): Use unsigned char.
5948
5949 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5950
5951 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
5952
5953 * gtkutil.h (use_old_gtk_file_dialog): Declare.
5954
5955 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
5956 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
5957 * xfns.c (syms_of_xfns): ... to here.
5958
5959 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
5960 it doesn't start with /.
5961
5962 2004-11-04 Kenichi Handa <handa@m17n.org>
5963
5964 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
5965 treat it as a literal character.
5966
5967 2004-11-03 Kim F. Storm <storm@cua.dk>
5968
5969 * .gdbinit (ppt): New function.
5970
5971 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5972
5973 * xterm.c (x_window_to_scroll_bar): Only call
5974 xg_get_scroll_id_for_window if toolkit scroll bars are used.
5975
5976 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
5977 of save.
5978
5979 2004-11-02 Andreas Schwab <schwab@suse.de>
5980
5981 * window.c (Fscroll_right): Fix last change.
5982
5983 2004-11-02 Kim F. Storm <storm@cua.dk>
5984
5985 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
5986
5987 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5988
5989 * callproc.c (Fcall_process): Block input around vfork.
5990
5991 2004-11-02 Kim F. Storm <storm@cua.dk>
5992
5993 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
5994 (syms_of_eval): Defsubr it.
5995
5996 2004-11-02 Richard M. Stallman <rms@gnu.org>
5997
5998 * insdel.c (replace_range_2): New function.
5999
6000 * casefiddle.c (casify_region): Handle changes in byte-length
6001 using replace_range_2.
6002
6003 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6004
6005 * xdisp.c (back_to_previous_visible_line_start):
6006 Subtract 1 from pos when checking previous newline for invisibility.
6007
6008 * window.c (window_scroll_pixel_based): Update preserve_y
6009 for header line if any.
6010 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6011 use a new second argument instead.
6012
6013 * eval.c (Fcall_interactive_p): New function.
6014 (interactive_p): Don't test INTERACTIVE here.
6015 (Finteractive_p): Doc fix.
6016
6017 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6018
6019 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6020
6021 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6022 comparing font names.
6023
6024 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6025
6026 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6027 Fx_file_dialog if only directories should be read.
6028
6029 * lisp.h: Fx_file_dialog takes 5 parameters.
6030
6031 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6032 Add parameter only_dir_p.
6033 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6034 dialog, just text field part. Do not add DEFAULT_FILENAME
6035 to list of files if it isn't there.
6036 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6037
6038 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6039 Check only_dir_p instead of comparing prompt to "Dired". When using
6040 a save dialog, add option kNavDontConfirmReplacement, change title
6041 to "Enter name", change text for save button to "Ok".
6042
6043 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6044 Check only_dir_p instead of comparing prompt to "Dired".
6045
6046 * gtkutil.c (xg_get_file_with_chooser)
6047 (xg_get_file_with_selection): New functions, only defined ifdef
6048 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6049 respectively.
6050 (xg_get_file_name): Add parameter only_dir_p.
6051 Call xg_get_file_with_chooser or xg_get_file_with_selection
6052 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6053 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6054
6055 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6056
6057 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6058
6059 2004-11-01 Kim F. Storm <storm@cua.dk>
6060
6061 * process.c (connect_wait_mask, num_pending_connects):
6062 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6063 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6064 (IF_NON_BLOCKING_CONNECT): New helper macro.
6065 (wait_reading_process_output): Only declare and use local vars
6066 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6067
6068 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6069
6070 * w32term.c (x_scroll_run): Delete region objects after use.
6071
6072 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6073
6074 * xmenu.c: Add prototypes for forward function declarations.
6075 (popup_get_selection): Remove parameter do_timers, remove call to
6076 timer_check.
6077 (create_and_show_popup_menu, create_and_show_dialog):
6078 Remove parameter do_timers from call to popup_get_selection.
6079
6080 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6081 tool_bar_items and assign the result to f->tool_bar_items if
6082 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6083 tool_bar_items to assignment of result.
6084
6085 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6086 pending_atmers is non-zero.
6087
6088 2004-10-31 Kim F. Storm <storm@cua.dk>
6089
6090 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6091
6092 2004-10-28 Will <will@glozer.net>
6093
6094 * macterm.c: Allow user to assign key modifiers to the Mac Option
6095 key via a 'mac-option-modifier' variable.
6096
6097 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6098
6099 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6100 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6101 (x_handle_selection_request, x_handle_selection_clear)
6102 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6103
6104 2004-10-28 Richard M. Stallman <rms@gnu.org>
6105
6106 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6107
6108 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6109
6110 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6111
6112 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6113 comment-starter over a 1-char one.
6114
6115 2004-10-27 Richard M. Stallman <rms@gnu.org>
6116
6117 * xdisp.c (get_next_display_element): In mode lines,
6118 treat newline and tab like other control characters.
6119
6120 * editfns.c (Fmessage): Doc fix.
6121
6122 * indent.c (vmotion): When moving up, check the newline before.
6123 Make prevline an int, not a Lisp_Object.
6124
6125 2004-10-27 Kim F. Storm <storm@cua.dk>
6126
6127 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6128 Only allocate info and discarded tables once.
6129
6130 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6131 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6132 (SAFE_FREE): Test it to determine if we need to unwind to free.
6133 Remove size arg. All users changed.
6134 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6135
6136 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6137
6138 * gtkutil.c: Put empty line between comment and function body.
6139 (xg_destroy_widgets): Rename from remove_from_container.
6140 Just destroy all widgets in list. Argument wcont removed.
6141 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6142 instead of remove_from_container.
6143 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6144 (free_frame_tool_bar): Add comment.
6145
6146 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6147 is not NULL before strcmp.
6148
6149 2004-10-26 Kim F. Storm <storm@cua.dk>
6150
6151 * callint.c (Fcall_interactively): Add 'U' code to get the
6152 up-event discarded by a previous 'k' or 'K' argument.
6153
6154 2004-10-26 David Kastrup <dak@gnu.org>
6155
6156 * buffer.c (syms_of_buffer): Fix a few typos.
6157
6158 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6159
6160 * xsmfns.c: Put empty line between comment and function body.
6161 Use two spaces before comment end.
6162
6163 2004-10-25 Kenichi Handa <handa@m17n.org>
6164
6165 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6166 PATTERN is full XLFD.
6167
6168 2004-10-24 Kenichi Handa <handa@m17n.org>
6169
6170 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6171
6172 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6173 (regex_compile): Return REG_ERANGEX if appropriate.
6174
6175 2004-10-22 Kenichi Handa <handa@m17n.org>
6176
6177 * editfns.c (Ftranslate_region_internal): New function.
6178 (syms_of_editfns): Defsubr it.
6179
6180 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6181
6182 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6183
6184 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6185
6186 * xterm.h (x_output): New member `xic_base_fontname'.
6187 (FRAME_XIC_BASE_FONTNAME): New macro.
6188 (xic_free_xfontset): Declare.
6189
6190 * xfns.c (xic_create_xfontset): Share fontsets between frames
6191 based on base_fontname.
6192 (xic_free_xfontset): New function.
6193 (free_frame_xic): Use it.
6194 (xic_set_xfontset): Ditto.
6195
6196 * xterm.c (xim_destroy_callback): Ditto.
6197
6198
6199 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6200
6201 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6202
6203 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6204
6205 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6206 XSync.
6207
6208 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6209 New variables and constant.
6210 (main): Calculate heap_bss_diff. If we are dumping and the
6211 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6212 and exec ourself again.
6213 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6214 print a warning.
6215
6216 * lastfile.c: Make my_endbss and my_endbss_static available on all
6217 platforms.
6218
6219 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6220 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6221
6222 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6223
6224 * data.c (Flocal_variable_if_set_p): Doc fix.
6225
6226 2004-10-19 Jason Rumney <jasonr@gnu.org>
6227
6228 * w32.c (init_environment): Set emacs_dir correctly when running
6229 emacs from the build directory.
6230
6231 2004-10-19 Richard M. Stallman <rms@gnu.org>
6232
6233 * editfns.c (Fdelete_and_extract_region):
6234 If region is empty, return null string.
6235
6236 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6237
6238 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6239 and canon_width.
6240 (xg_frame_cleared): Remove.
6241
6242 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6243 (xg_find_top_left_in_fixed): Remove.
6244 (xg_create_scroll_bar): Put an event box widget between
6245 the scroll bar widget and the edit widget.
6246 (xg_show_scroll_bar): Show the parent widget (the event box).
6247 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6248 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6249 Move the parent (the event box) widget inside the fixed widget.
6250 Move window clear to xterm.c.
6251
6252 * gtkutil.h (xg_frame_cleared): Remove.
6253
6254 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6255 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6256 Remove arguments left and width to xg_update_scrollbar_pos.
6257 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6258
6259 2004-10-19 Kenichi Handa <handa@m17n.org>
6260
6261 * xdisp.c (display_mode_element): Fix display of wide chars.
6262
6263 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6264
6265 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6266 gdk_window_clear and move gdk_window_process_all_updates after
6267 clear so events are sent to the X server in correct order.
6268
6269 2004-10-18 Kenichi Handa <handa@m17n.org>
6270
6271 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6272 comparing font names.
6273 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6274 (list_fontsets): Likewise.
6275
6276 * search.c (fast_string_match_ignore_case): New function.
6277
6278 * lisp.h (fast_string_match_ignore_case): Extern it.
6279
6280 2004-10-17 Kim F. Storm <storm@cua.dk>
6281
6282 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6283 than bitmap if there is not left fringe.
6284 (get_overlay_arrow_glyph_row): Also used on windows system.
6285 (display_line): Display overlay string if no left fringe.
6286
6287 2004-10-16 Jason Rumney <jasonr@gnu.org>
6288
6289 * w32fns.c (w32_font_match): Encode font name being matched.
6290
6291 2004-10-16 Richard M. Stallman <rms@gnu.org>
6292
6293 * window.c (Fspecial_display_p): Doc fix.
6294
6295 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6296
6297 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6298 Don't ignore menus, because where-is-internal already does it for us.
6299
6300 2004-10-15 Kim F. Storm <storm@cua.dk>
6301
6302 * xdisp.c (redisplay_window): Only update fringes and vertical
6303 border on window frames.
6304
6305 2004-10-14 Andreas Schwab <schwab@suse.de>
6306
6307 * m/ia64.h (DATA_SEG_BITS): Don't define.
6308
6309 2004-10-14 Kim F. Storm <storm@cua.dk>
6310
6311 * xterm.h: Include Xutil.h after keysym.h to work around bug
6312 in some X versions.
6313
6314 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6315
6316 * fns.c (map_char_table): Add missing gcpros.
6317
6318 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6319
6320 * keymap.c (get_keymap): An autoload form is not a keymap.
6321
6322 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6323
6324 2004-10-13 Kim F. Storm <storm@cua.dk>
6325
6326 * callproc.c (Fcall_process): Simplify handling of display arg.
6327 Resume `display_on_the_fly' once a coding system is determined.
6328
6329 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6330
6331 2004-10-12 Kim F. Storm <storm@cua.dk>
6332
6333 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6334 caller, such as call-process, is not going to poll for input.
6335 (calc_line_height_property): Handle case where it->object is nil.
6336
6337 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6338
6339 2004-10-12 Kenichi Handa <handa@m17n.org>
6340
6341 * xdisp.c (get_next_display_element):
6342 If unibyte_display_via_language_environment is zero, display 8-bit
6343 chars in octal in unibyte buffer.
6344
6345 2004-10-12 Kim F. Storm <storm@cua.dk>
6346
6347 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6348 are no ordinary bindings.
6349
6350 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6351
6352 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6353
6354 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6355
6356 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6357 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6358 (make_mac_frame): Add BLOCK_INPUT around the making of a
6359 terminal frame.
6360 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6361 * macgui.h (mktime): Use emacs_mktime.
6362 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6363 Make a cancel file-open dialog be like C-g.
6364 * mac.c (mktime): Use emacs_mktime.
6365 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6366 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6367
6368 2004-10-10 Kim F. Storm <storm@cua.dk>
6369
6370 * keyboard.c (timer_resume_idle): New function to resume idle
6371 timer without resetting timers on the idle list.
6372 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6373 (timer_start_idle, timer_stop_idle): Declare static.
6374 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6375
6376 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6377
6378 2004-10-08 Steven Tamm <steventamm@mac.com>
6379
6380 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6381 * macterm.c (mac_check_for_quit_char): Remove warning for using
6382 NULL where 0 should be used.
6383 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6384 objc/malloc.h
6385 * mac.c: Include time.h for Tiger compatibility.
6386
6387 2004-10-07 Kim F. Storm <storm@cua.dk>
6388
6389 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6390 windows. Update vertical line after drawing window fringes, but
6391 only if actually drawing any bitmaps--or there is no fringe.
6392
6393 * xterm.c (x_update_window_end): Likewise.
6394 * macterm.c (x_update_window_end): Likewise.
6395 * w32term.c (x_update_window_end): Likewise.
6396
6397 * fringe.c (draw_window_fringes): Return value now indicates if
6398 any fringe bitmaps were redrawn (or there are no fringes).
6399
6400 * dispextern.h (draw_window_fringes): Update prototype.
6401
6402 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6403
6404 * macfns.c (mac_get_window_bounds): Add extern.
6405 (x_real_positions): Use mac_get_window_bounds.
6406
6407 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6408 xmenu.c (YAILOM).
6409
6410 * macterm.c [!MAC_OSX]: Include Windows.h.
6411 (front_emacs_window): Rename from mac_front_window. All uses
6412 changed. Return the frontmost non-tooltip emacs window.
6413 (mac_get_window_bounds): New function.
6414 (x_calc_absolute_position): Use the difference of width and height
6415 between the inner and outer window.
6416 (x_set_offset): Specify window position by the coordinae of the
6417 outer window. Adjust the position if the title bar is completely
6418 outside the screen.
6419 (app_is_suspended, app_sleep_time): Remove unused variables.
6420 (do_app_resume, do_app_suspend): Remove their contents because
6421 window-activate/deactivate events will do the job.
6422 (do_zoom_window): Remove unused variables. Make compliant to the
6423 standard way of zooming. Set f->left_pos and f->top_pos.
6424 (XTread_socket): Don't use argument `expected'. Don't use
6425 FrontWindow to determine the clicked window. Exclude unprocessed
6426 mouseUp cases in the early stage. Add parentheses to fix operator
6427 precedence.
6428 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6429
6430 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6431
6432 * config.in: Regenerate.
6433
6434 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6435 HAVE_EXECSHIELD.
6436
6437 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6438
6439 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6440 a row if Alt or Meta has been found for that row. Also stop scanning
6441 for Keysyms for that row.
6442
6443 2004-10-04 Kim F. Storm <storm@cua.dk>
6444
6445 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6446 to list. Include overlay arrow bitmap in return value.
6447
6448 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6449 bars with fractional column width. If scroll bar separates two
6450 windows, move it towards the window it belongs to. Only update
6451 the padding area below the scroll bar widget when necessary,
6452 i.e. when scroll bar widget is created, moved, or resized.
6453
6454 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6455 while tracking/dragging mouse.
6456 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6457
6458 * window.c (coordinates_in_window): Relax check for cursor
6459 on vertial border between mode lines.
6460 (Fset_window_fringes): Do not allow negative widths.
6461 (Fset_window_scroll_bars): Likewise.
6462
6463 * .gdbinit (pp): Shorthand for p ARG + pr.
6464 (ff): New command: flush frame updates (X only).
6465
6466 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6467
6468 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6469
6470 2004-09-30 Kenichi Handa <handa@m17n.org>
6471
6472 * process.c (send_process): Free composition data.
6473
6474 * fileio.c (Finsert_file_contents): Free composition data.
6475
6476 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6477 compositions to encode.
6478 (encode_coding_string): Likewise. Free composition data.
6479
6480 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6481
6482 * coding.c (code_convert_region): Free composition data.
6483
6484 2004-09-29 Kim F. Storm <storm@cua.dk>
6485
6486 * fringe.c: Remove limit on number of bitmaps.
6487 (fringe_bitmaps, fringe_faces): Change to pointers.
6488 (max_fringe_bitmaps): New var.
6489 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6490 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6491
6492 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6493 (struct glyph_row): Reorder fringe_bitmap related fields.
6494 (struct it): Likewise.
6495
6496 * w32term.c (fringe_bmp): Change to pointer.
6497 (max_fringe_bmp): New var.
6498 (w32_define_fringe_bitmap): Expand fringe_bmp.
6499 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6500 (w32_destroy_fringe_bitmap): Likewise.
6501
6502 2004-09-29 Kim F. Storm <storm@cua.dk>
6503
6504 * fringe.c: Simplify last change.
6505 (lookup_fringe_bitmap): New function.
6506 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6507 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6508 Keep standard bitmaps in Vfringe_bitmaps.
6509 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6510 (Fset_fringe_bitmap_face): Likewise.
6511
6512 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6513 (valid_fringe_bitmap_p): Remove prototype.
6514
6515 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6516
6517 2004-09-29 Kim F. Storm <storm@cua.dk>
6518
6519 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6520 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6521
6522 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6523
6524 * fringe.c (Vfringe_bitmaps): New variable.
6525 (syms_of_fringe): DEFVAR_LISP it.
6526 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6527 Change arg to Lisp_Object and fail if not an integer.
6528 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6529 (destroy_fringe_bitmap): New functions.
6530 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6531 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6532 clear its fringe property.
6533 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6534 Fdestroy_fringe_bitmap.
6535 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6536 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6537 and set fringe property. Signal error if no free slots.
6538 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6539 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6540
6541 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6542 symbols with a fringe property.
6543
6544 2004-09-27 Kim F. Storm <storm@cua.dk>
6545
6546 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6547 Doc fix. Format may now be a symbol or alist, not a cons.
6548
6549 * fringe.c (update_window_fringes): Handle new formats of
6550 indicate-buffer-boundaries (symbol or alist). No longer
6551 allow a simple cons.
6552 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6553
6554 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6555
6556 * config.in: Rebuild.
6557
6558 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6559
6560 * config.in: Rebuild.
6561
6562 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6563
6564 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6565
6566 * xterm.c (x_term_init): Work around a bug in some X servers.
6567
6568 2004-09-18 Richard M. Stallman <rms@gnu.org>
6569
6570 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6571
6572 * xdisp.c (try_window_reusing_current_matrix):
6573 Handle the case where we reach the old displayed text,
6574 out of sync with the old line boundary.
6575
6576 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6577
6578 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6579 narrowed buffer.
6580
6581 2004-09-14 Kim F. Storm <storm@cua.dk>
6582
6583 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6584
6585 * xfaces.c (Qface_no_inherit): New var.
6586 (syms_of_xfaces): Intern and staticpro it.
6587 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6588 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6589 Don't increment face_change_count when face has non-nil
6590 face-no-inherit property.
6591
6592 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6593
6594 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6595 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6596
6597 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6598 before doing the mark_stack_check_gcpros since they're not on the stack.
6599
6600 2004-09-12 Kim F. Storm <storm@cua.dk>
6601
6602 * editfns.c (Fformat): Handle format strings with multiple text
6603 properties. Reverse text property list from the format string,
6604 so the positions are in increasing order.
6605
6606 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6607
6608 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6609 x_uncatch_errors so that possible protocol errors are delivered.
6610
6611 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6612
6613 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6614 blockinput.h.
6615 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6616 charset.h, and coding.h
6617 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6618 (term.o): Depend on window.h and keymap.h.
6619 (abbrev.o): Depend on syntax.h.
6620 (callint.o): Depend on keymap.h.
6621 (casefiddle.o): Depend on charset.h and keymap.h.
6622 (category.o): Depend on keymap.h.
6623 (coding.o): Depend on dispextern.h.
6624 (cmds.o): Depend on keyboard.h and keymap.h.
6625 (dispnew.o): Depend on indent.h and intervals.h.
6626 (doc.o): Depend on keymap.h.
6627 (editfns.o): Depend on frame.h.
6628 (emacs.o): Depend on dispextern.h.
6629 (fileio.o): Don't depend on ccl.h.
6630 (filelock.o): Depend on charset.h and coding.h.
6631 (frame.o): Depend on w32term.h and macterm.h.
6632 (insdel.o): Depend on region-cache.h.
6633 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6634 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6635 (search.o): Depend on $(INTERVALS_SRC).
6636 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6637 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6638 xterm.h, w32term.h, and macterm.h.
6639 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6640 w32term.h, and macterm.h.
6641 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6642 region-cache.h, xterm.h, w32term.h, and macterm.h.
6643 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6644 (data.o): Depend on frame.h.
6645 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6646 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6647 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6648 (intervals.o): Depend on keymap.h.
6649
6650 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6651 Add debugging print-out to termscript.
6652
6653 2004-09-09 Richard M. Stallman <rms@gnu.org>
6654
6655 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6656
6657 2004-09-08 Richard M. Stallman <rms@gnu.org>
6658
6659 * window.c (Fset_window_buffer): Doc fix.
6660
6661 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6662
6663 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6664
6665 * minibuf.c (history_delete_duplicates): New variable.
6666 (read_minibuf): Use it.
6667 (syms_of_minibuf): Create the corresponding lisp variable.
6668
6669 2004-09-08 Kim F. Storm <storm@cua.dk>
6670
6671 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6672 overlay just before point.
6673
6674 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6675
6676 * buffer.h (struct buffer): Add auto_save_file_format field.
6677 * buffer.c (reset_buffer, init_buffer_once):
6678 Handle auto_save_file_format field.
6679 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6680 `buffer-auto-save-file-format'.
6681 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6682 (build_annotations): Adapt to replacement of
6683 `auto-save-file-format' with the new buffer-local variable
6684 `buffer-auto-save-file-format'.
6685 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6686
6687 2004-09-07 Jason Rumney <jasonr@gnu.org>
6688
6689 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6690
6691 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6692 Handle Unicode menu titles.
6693
6694 2004-09-07 Kim F. Storm <storm@cua.dk>
6695
6696 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
6697 property from text property or overlay strings at point.
6698
6699 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6700
6701 * xmenu.c (update_submenu_strings): YAILOM.
6702 (set_frame_menubar): Make sure last_i is initialized.
6703
6704 2004-09-03 Jason Rumney <jasonr@gnu.org>
6705
6706 * w32menu.c (_widget_value): Add lname and lkey.
6707 (digest_single_submenu): Set lname and lkey in widget_value
6708 instead of name and key.
6709 (update_submenu_strings): New function.
6710 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6711 call update_submenu_strings.
6712
6713 * w32menu.c (globals_of_w32menu): Check for Unicode API.
6714 (digest_single_submenu, w32_menu_show): Encode menu strings as
6715 UTF-8 if Unicode API is available.
6716 (utf8to16): New function.
6717 (add_menu_item): Use it when calling Unicode API.
6718
6719 2004-09-03 Kim F. Storm <storm@cua.dk>
6720
6721 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
6722 in overlay or text-property strings; set cursor on corresponding
6723 glyph rather than at end of the string.
6724
6725 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6726
6727 * macfns.c (x_real_positions): Save the current window port and
6728 set a new one before obtaining the global coordinate.
6729 Use FRAME_MAC_WINDOW.
6730 (x_set_name, x_set_title): Encode title to UTF8.
6731 Use SetWindowTitleWithCFString.
6732 (Fx_server_version): Get correct OS version.
6733
6734 * macmenu.c (add_menu_item): Remove unused variable `i'.
6735 Don't let separator items destroy refence constants of other menu items.
6736
6737 * macterm.c (x_update_end): Move SetPortWindowPort to inside
6738 BLOCK_INPUT.
6739 (x_set_offset): Use FRAME_MAC_WINDOW.
6740
6741 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
6742 nontext_cursor if it is on a scroll bar.
6743
6744 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
6745 Carbon support.
6746 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
6747 Use LIBS_CARBON.
6748
6749 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6750
6751 * xfns.c (x_set_name_internal): New function. Check if we shall call
6752 xfree before ENCODE_UTF_8.
6753 (x_set_name, x_set_title): Call x_set_name_internal.
6754
6755 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
6756
6757 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
6758 reload it.
6759
6760 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6761
6762 * macmenu.c (_widget_value): Add lname and lkey.
6763 (single_submenu): Set lname and lkey in widget_value
6764 instead of name and key.
6765 (update_submenu_strings): New function.
6766 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6767 call update_submenu_strings.
6768
6769 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
6770 instead of name and key.
6771 (update_submenu_strings): New function.
6772 (set_frame_menubar): Remove call to inhibit_garbage_collection,
6773 call update_submenu_strings.
6774
6775 * gtkutil.h (_widget_value): Added lname and lkey.
6776
6777 2004-08-30 Steven Tamm <steventamm@mac.com>
6778
6779 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
6780 by using different names for inner loop variables.
6781
6782 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6783
6784 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
6785 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
6786
6787 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
6788 tool bar items is 0.
6789
6790 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6791
6792 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
6793 strings in menu items.
6794 (single_submenu): Use ENCODE_MENU_STRING
6795 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
6796 button release isn't passed to event loop
6797 (add_menu_item): Use SetMenuItemWithCFString
6798
6799 2004-08-26 Steven Tamm <steventamm@mac.com>
6800
6801 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
6802 tool-bar/menu click.
6803 * macfns.c (Fx_file_dialog): Implement using NavServices.
6804
6805 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6806
6807 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
6808
6809 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6810 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6811 (x_top_window_to_frame): Return 0 if wdesc is None.
6812
6813 2004-08-22 Richard M. Stallman <rms@gnu.org>
6814
6815 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
6816 HAVE_TERMIOS]: If there's no char for this signal, drop through
6817 and use system calls.
6818
6819 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
6820
6821 2004-08-20 Kim F. Storm <storm@cua.dk>
6822
6823 * process.c (wait_reading_process_output): Rename from
6824 wait_reading_process_input. All uses changed.
6825 (wait_reading_process_output_1): Rename from
6826 wait_reading_process_input_1. All uses changed.
6827
6828 * dispnew.c (Fsleep_for): Remove obsolete code.
6829
6830 2004-08-20 Kenichi Handa <handa@m17n.org>
6831
6832 * syntax.c (skip_chars): Fix for unibyte case.
6833
6834 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
6835
6836 * syntax.c (char_quoted): Mixup byte/char pos.
6837 (back_comment): Fixup globals in all cases.
6838
6839 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6840
6841 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
6842 passing it to gtk_window_set_title.
6843
6844 2004-08-19 Kim F. Storm <storm@cua.dk>
6845
6846 * process.c (wait_reading_process_input): Clean up.
6847 Add wait_for_cell, wait_proc, and just_wait_proc args
6848 to avoid overloading `read_kbd' and `do_display' args.
6849 Change read_kbd arg to int. All callers changed.
6850
6851 * process.c (process_send_signal): Use CDISABLE.
6852
6853 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
6854
6855 2004-08-18 Kim F. Storm <storm@cua.dk>
6856
6857 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
6858 forward to wait_reading_process_input via DO_DISPLAY arg.
6859 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
6860 object, only process output from that process; also inhibit
6861 running timers if DO_DISPLAY==-2.
6862
6863 2004-08-17 Kim F. Storm <storm@cua.dk>
6864
6865 * process.c (process_send_signal): Fix last change--use
6866 _POSIX_VDISABLE instead of CVDISABLE when available.
6867
6868 2004-08-16 Richard M. Stallman <rms@gnu.org>
6869
6870 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
6871 Set VQUIT and VINTR chars to the standard ones if they are unset.
6872 [AIX]: Don't do that here. And don't force VINTR to standard
6873 when SIGNALS_VIA_CHARACTERS.
6874
6875 * process.c (process_send_signal)
6876 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
6877 Do nothing if the character is CVDISABLE.
6878
6879 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
6880
6881 * intervals.c (move_if_not_intangible):
6882 Force POSITION to be between BEGV and ZV.
6883
6884 2004-08-14 John Paul Wallington <jpw@gnu.org>
6885
6886 * buffer.c (Frestore_buffer_modified_p): Doc fix.
6887
6888 * fileio.c (Fread_file_name): Doc fix.
6889
6890 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6891
6892 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
6893
6894 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
6895
6896 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
6897
6898 * keyboard.c: Declare Qdisabled_command_function instead of
6899 Qdisabled_command_hook.
6900 (Fcommand_execute): Use Qdisabled_command_function instead of
6901 Qdisabled_command_hook.
6902 (syms_of_keyboard): Ditto.
6903
6904 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
6905
6906 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
6907 (syms_of_keymap) <key-translation-map>: Doc fixes.
6908
6909 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
6910
6911 * window.c (window_list_1): YAILOM.
6912
6913 * fileio.c (make_temp_name): Handle multibyte prefixes.
6914
6915 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
6916
6917 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
6918 Doc fix.
6919
6920 2004-08-03 Kenichi Handa <handa@m17n.org>
6921
6922 * coding.c (decode_coding_string): Adjust coding->consumed, and
6923 etc. with shrinked_bytes.
6924
6925 2004-08-03 Kim F. Storm <storm@cua.dk>
6926
6927 * indent.c (compute_motion): Fix check for full width window
6928 in non-window case. Do not count left truncation glyph on
6929 window systems.
6930
6931 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
6932
6933 * data.c (Finteractive_form): Doc fix.
6934
6935 2004-08-02 Kim F. Storm <storm@cua.dk>
6936
6937 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
6938 properly accounting for continuation glyph on non-window systems.
6939 (Fcompute_motion): Use actual window width if WIDTH is nil, and
6940 actual window width/height if TOPOS is nil, properly accounting for
6941 continuation glyphs on non-window systems, and optional header lines.
6942 (vmotion): Let compute_motion calculate actual window width.
6943
6944 * window.c (window_scroll_line_based): Let compute_motion
6945 calculate actual window width.
6946
6947 2004-08-02 Kim F. Storm <storm@cua.dk>
6948
6949 * process.c (read_process_output): Use whole read buffer.
6950 Don't trigger adaptive read buffering on errors.
6951
6952 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
6953
6954 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
6955
6956 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
6957
6958 * callint.c (Fcall_interactively): Doc fix.
6959
6960 2004-07-30 Richard M. Stallman <rms@gnu.org>
6961
6962 * abbrev.c (Fexpand_abbrev): Undo previous change.
6963
6964 2004-07-30 Kim F. Storm <storm@cua.dk>
6965
6966 * editfns.c (Fformat): Allocate extra (dummy) element in info.
6967
6968 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
6969
6970 * eval.c (Fdefvar, Fdefconst): Doc fixes.
6971
6972 2004-07-27 Kim F. Storm <storm@cua.dk>
6973
6974 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
6975 we have ensured that the glyph fits on the current line (or returned
6976 MOVE_LINE_CONTINUED otherwise).
6977
6978 2004-07-26 Kim F. Storm <storm@cua.dk>
6979
6980 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
6981 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
6982 if target position is at end of display line but char is not a newline.
6983
6984 2004-07-25 Richard M. Stallman <rms@gnu.org>
6985
6986 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
6987 instead of ON_VERTICAL_BORDER, when on scroll bar.
6988 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
6989
6990 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
6991
6992 * window.c (Fcoordinates_in_window_p):
6993 Take account of FRAME_INTERNAL_BORDER_WIDTH.
6994
6995 * alloc.c (check_cons_list): New function (contents commented out).
6996
6997 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
6998
6999 * xfaces.c (Fcolor_supported_p): Doc fix.
7000
7001 * frame.c (Fselect_frame, Fset_frame_selected_window)
7002 (Fframe_visible_p, Fraise_frame): Doc fixes.
7003
7004 2004-07-24 Richard M. Stallman <rms@gnu.org>
7005
7006 * keyboard.h (not_single_kboard_state): Declare.
7007
7008 * fileio.c (Fwrite_region): Doc fix.
7009
7010 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7011
7012 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7013 only when a real abbrev is present.
7014
7015 * xfns.c (x_icon_verify): New function.
7016 (Fx_create_frame): Use it.
7017
7018 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7019
7020 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7021
7022 2004-07-21 Kim F. Storm <storm@cua.dk>
7023
7024 * window.h (struct glyph_matrix): New members nrows_scale_factor
7025 and ncols_scale_factor.
7026
7027 * window.c (make_window): Initialize nrows_scale_factor and
7028 ncols_scale_factor members.
7029
7030 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7031 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7032 (required_matrix_height): Apply nrows_scale_factor.
7033 (required_matrix_width): Apply ncols_scale_factor.
7034
7035 * xdisp.c (display_line): Increment nrows_scale_factor and set
7036 fonts_changed_p if past last allocated row.
7037 (append_glyph, append_composite_glyph, produce_image_glyph)
7038 (append_stretch_glyph): Increment ncols_scale_factor and set
7039 fonts_changed_p if current area is full.
7040
7041 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7042
7043 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7044
7045 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7046
7047 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7048 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7049 (Fset_window_start, Fscroll_up, Fscroll_down)
7050 (Fother_window_for_scrolling, Fscroll_other_window)
7051 (Fsave_window_excursion, Fset_window_vscroll)
7052 (syms_of_window) <window-size-fixed>: Doc fixes.
7053
7054 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7055
7056 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7057 ENCODE_SYSTEM for filenames.
7058
7059 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7060
7061 * mac.c (sys_select): Block input around call to
7062 ReceiveNextEvent to prevent breakage. Correctly handle
7063 blocking on event queue only by calling ReceiveNextEvent
7064 instead of select (since GUI events aren't on an fd).
7065 (sys_read): Remove function
7066 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7067
7068 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7069
7070 * mac.c (sys_select): Redo sys_select to use alarm-based
7071 polling instead of 1 sec timeouts (like solaris).
7072
7073 * macterm.c (x_make_frame_visible): Comment in polling on
7074 frame creation.
7075
7076 * keyboard.c: Undef SIGIO on Carbon
7077
7078 * atimer.c (alarm_signal_handler): Call alarm handlers after
7079 scheduling.
7080
7081 * eval.c (Feval): Remove quit_char test
7082
7083 * process.c (wait_reading_process_input): Remove clearing
7084 stdin for select call on process input.
7085
7086 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7087
7088 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7089 capitalization error in docstring.
7090
7091 2004-07-17 Juanma Barranquero <lektu@terra.es>
7092
7093 * keyboard.c (not_single_kboard_state): Do nothing unless
7094 MULTI_KBOARD is defined.
7095
7096 2004-07-17 Richard M. Stallman <rms@gnu.org>
7097
7098 * window.c (coordinates_in_window): Inside the window but outside
7099 its box to the L or R, return ON_VERTICAL_BORDER.
7100 (window_list_1): Rotate the list to start with WINDOW.
7101
7102 * print.c (print_preprocess): Test for print_depth at limit
7103 before entering in being_printed.
7104
7105 * keyboard.c (not_single_kboard_state): New function.
7106 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7107
7108 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7109 this kboard, and we delete its last frame, go to any_kboard_state.
7110
7111 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7112
7113 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7114
7115 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7116 system before passing them to OS functions for display.
7117
7118 2004-07-15 David Kastrup <dak@gnu.org>
7119
7120 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7121 Apparently fixes an abort condition.
7122
7123 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7124
7125 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7126 instead of a cons.
7127
7128 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7129
7130 * keyboard.c (echo_dash): Do nothing if there already is a dash
7131 at the end of the echo string.
7132
7133 2004-07-12 Kim F. Storm <storm@cua.dk>
7134
7135 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7136 if GC_MARK_STACK.
7137
7138 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7139
7140 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7141
7142 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7143 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7144 (Freplace_buffer_in_windows, Fset_window_buffer)
7145 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7146 (syms_of_window): Expand docstring of `display-buffer-function'.
7147
7148 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7149
7150 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7151 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7152 that time values of the type (HIGH . LOW) are considered obsolete.
7153
7154 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7155
7156 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7157 docstring.
7158
7159 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7160
7161 2004-07-06 John Paul Wallington <jpw@gnu.org>
7162
7163 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7164
7165 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7166
7167 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7168
7169 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7170 instead of CGMainDisplayID (only in OSX 10.2 and later).
7171
7172 2004-07-04 John Paul Wallington <jpw@gnu.org>
7173
7174 * fileio.c (read_file_name_completion_ignore_case): New variable.
7175 (syms_of_fileio): Declare and initialise it.
7176 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7177
7178 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7179
7180 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7181 for event.x and event.y.
7182
7183 2004-07-01 Kenichi Handa <handa@m17n.org>
7184
7185 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7186 after getting a new string by pre-write-conversion.
7187
7188 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7189
7190 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7191 (x_calc_absolute_position): Remove unused var `child'.
7192
7193 * xfaces.c (x_supports_face_attributes_p)
7194 (Fdisplay_supports_face_attributes_p): YAILOM.
7195 (tty_supports_face_attributes_p): Remove unused var `i'.
7196
7197 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7198 back_unibyte_ok.
7199
7200 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7201
7202 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7203
7204 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7205
7206 2004-06-30 Andreas Schwab <schwab@suse.de>
7207
7208 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7209 (Finit_image_library): Pass LIBRARIES through to
7210 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7211 (lookup_image_type): Pass Qnil as second argument to
7212 Finit_image_library.
7213
7214 * lisp.h (Finit_image_library): Declare.
7215
7216 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7217
7218 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7219 (XTread_socket): Send mouse button events to the toolbox
7220 dispatcher even when the mouse is grabbed. Don't process window
7221 activate events for non-Emacs windows. Replace function calls to
7222 do_window_activate and do_window_deactivate with their contents.
7223 Reset mouse grabbing status when a window is deactivated.
7224
7225 2004-06-29 Steven Tamm <steventamm@mac.com>
7226
7227 * macterm.c (mac_get_emulated_btn)
7228 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7229 support to correctly mask out modifiers.
7230
7231 2004-06-29 David Kastrup <dak@gnu.org>
7232
7233 * search.c (Fset_match_data): Allow buffer before end of list
7234 which can happen if set-match-data is using a pre-consed list.
7235
7236 2004-06-28 Steven Tamm <steventamm@mac.com>
7237
7238 * macterm.c (XTread_socket): Correctly set the frame position
7239 after the window is moved.
7240
7241 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7242
7243 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7244 gpix and gmask just before return to avoid memory leak.
7245 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7246 so insensitive and activated icons look ok.
7247
7248 2004-06-27 Jason Rumney <jasonr@gnu.org>
7249
7250 * w32fns.c (file_dialog_callback): Disable edit control if set
7251 to directories only on CDN_INITDONE message.
7252 (Fx_file_dialog): Default to directories only when prompt starts
7253 with "Dired".
7254
7255 2004-06-25 Kim F. Storm <storm@cua.dk>
7256
7257 * alloc.c (allocate_misc): Update total_free_markers.
7258 (free_misc): New function.
7259 (safe_alloca_unwind, free_marker): Use it.
7260
7261 * lisp.h (free_misc): Add prototype.
7262
7263 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7264
7265 2004-06-24 Richard M. Stallman <rms@gnu.org>
7266
7267 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7268 (syms_of_emacs): Lisp variables deleted.
7269
7270 2004-06-23 David Kastrup <dak@gnu.org>
7271
7272 * search.c (Freplace_match): Adjust the match-data more thoroughly
7273 when replacing strings in the buffer.
7274 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7275 a buffer, add the buffer as last element to the match data.
7276 (Fset_match_data): If an additional element of the match-data is a
7277 buffer, restore it to last_thing_searched.
7278 (save_search_regs): Save last_thing_searched as part of the match data.
7279 (restore_match_data): Restore it again.
7280
7281 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7282
7283 * keymap.c (Ftext_char_description): Doc fix.
7284 * doc.c (Fsnarf_documentation): Doc fix.
7285
7286 2004-06-22 Kim F. Storm <storm@cua.dk>
7287
7288 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7289
7290 * lisp.h (struct Lisp_Save_Value): New member dogc.
7291 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7292 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7293 (SAFE_FREE_LISP): New macro.
7294
7295 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7296 (make_save_value): Init new dogc member.
7297 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7298
7299 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7300 SAFE_FREE_LISP macros.
7301
7302 2004-06-22 Kim F. Storm <storm@cua.dk>
7303
7304 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7305 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7306 in that memory area are unknown to GC. Add comments.
7307
7308 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7309
7310 2004-06-21 Kim F. Storm <storm@cua.dk>
7311
7312 * lisp.h (MAX_ALLOCA): Define here.
7313 (safe_alloca_unwind): Add prototype.
7314 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7315
7316 * alloc.c (safe_alloca_unwind): New function.
7317
7318 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7319
7320 * charset.c (Fstring): Use SAFE_ALLOCA.
7321
7322 * coding.c (MAX_ALLOCA): Remove define.
7323
7324 * data.c (MAX_ALLOCA): Remove define.
7325 (Faset): Use SAFE_ALLOCA.
7326
7327 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7328
7329 * fns.c (string_make_multibyte, string_to_multibyte)
7330 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7331 (MAX_ALLOCA): Remove define.
7332 (Fbase64_encode_region, Fbase64_encode_string)
7333 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7334 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7335 memory leak if encoding fails.
7336
7337 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7338
7339 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7340
7341 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7342
7343 2004-06-20 Richard M. Stallman <rms@gnu.org>
7344
7345 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7346
7347 * search.c (match_limit): Cleaner err msg when no match data available.
7348
7349 * window.c (syms_of_window): Doc fix.
7350
7351 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7352 for Vtransient_mark_mode.
7353
7354 * buffer.c (syms_of_buffer): Doc fix.
7355
7356 2004-06-21 David Kastrup <dak@gnu.org>
7357
7358 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7359 and unbinding of `case-fold-search' according to
7360 `completion-ignore-case' around calls of string-match and
7361 predicates, respectively. Should give satisfactory performance
7362 in all relevant cases.
7363
7364 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7365
7366 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7367 clip_x/y_origin.
7368
7369 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7370
7371 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7372
7373 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7374 on Mac OSX.
7375
7376 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7377
7378 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7379
7380 2004-06-16 Kim F. Storm <storm@cua.dk>
7381
7382 * dispextern.h (Vimage_types): Remove extern.
7383
7384 2004-06-16 Miles Bader <miles@gnu.org>
7385
7386 * image.c (lookup_image_type): Initialize image type if necessary.
7387
7388 2004-06-15 Kim F. Storm <storm@cua.dk>
7389
7390 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7391 margin at top of window.
7392 (try_window_reusing_current_matrix): Calculate proper cursor position
7393 after scrolling up with non-zero scroll margin, as the old cursor
7394 position corresponds to value of PT before executing this command.
7395 (try_window_id): Consider scroll margin at bottom of window too;
7396 otherwise we fail to scroll when hl-line-mode is enabled.
7397
7398 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7399 proper format and class is a lower-case word.
7400
7401 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7402
7403 * gtkutil.c (xg_get_image_for_pixmap): New function.
7404 (xg_get_gdk_pixmap_and_mask): Remove.
7405 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7406 xg_get_gdk_pixmap_and_mask.
7407
7408 * xterm.h (struct x_display_info): Typo in comment fixed.
7409
7410 2004-06-14 Juanma Barranquero <lektu@terra.es>
7411
7412 * dispextern.h (Vimage_types): Make it conditional on
7413 HAVE_WINDOW_SYSTEM.
7414
7415 * image.c (Vimage_types): Move from xdisp.c.
7416 (Vimage_type_cache): New variable.
7417 (define_image_type): New argument indicating whether an image
7418 library was loaded; cache loaded status and return t on success,
7419 nil otherwise.
7420 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7421 (w32_delayed_load): New function to load an image library from a
7422 list of possible filenames.
7423 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7424 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7425 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7426 (Finit_image_library): New function, extracted from `init_image'.
7427 Try to initialize an image library on demand and cache whether we
7428 were successful or not.
7429 (syms_of_image): Initialize `Vimage_types' and
7430 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7431 Export `init-image-library'.
7432 (init_image): Remove initialization of all image types, except xbm
7433 and pbm.
7434
7435 * xdisp.c (Vimage_types): Delete (moved to image.c).
7436
7437 2004-06-14 Andreas Schwab <schwab@suse.de>
7438
7439 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7440 Avoid calling specbind when completion-regexp-list is empty.
7441
7442 2004-06-13 Richard M. Stallman <rms@gnu.org>
7443
7444 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7445 (re_wctype, re_iswctype, re_wctype_to_bit):
7446 Non-function definitions moved here from regex.c.
7447
7448 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7449 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7450 (re_wctype, re_iswctype, re_wctype_to_bit):
7451 Non-function definitions moved to regex.h.
7452
7453 * window.c (Fselect_window): Doc fix.
7454
7455 * syntax.c: Include regex.h.
7456 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7457 If requested, make a list of classes, then check the scanned
7458 chars for membership in them.
7459 (in_classes): New function.
7460 Doc fix.
7461
7462 * keyboard.c (cmd_error): Don't call any_kboard_state
7463 if inside a recursive edit level.
7464
7465 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7466
7467 * keyboard.c (command_loop): Call any_kboard_state before
7468 command_loop_2 when at top level.
7469
7470 2004-06-13 Andreas Schwab <schwab@suse.de>
7471
7472 * print.c (print_object): Always use %ld for printing EMACS_INT.
7473
7474 * keyboard.c (cancel_hourglass_unwind): Return a value.
7475 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7476 (Fexecute_extended_command): Likewise.
7477
7478 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7479 avoid clashes.
7480 (SYNTAX): Likewise.
7481 (SYNTAX_WITH_FLAGS): Likewise.
7482 (SYNTAX_MATCH): Likewise.
7483
7484 * syntax.c (char_quoted): Avoid warning about undefined operation.
7485 (find_defun_start): Likewise.
7486 (scan_lists): Likewise.
7487 (INC_FROM): Likewise.
7488 (scan_sexps_forward): Likewise.
7489
7490 * image.c: Include <ctype.h>.
7491
7492 * xfaces.c (face_attr_equal_p): Declare parameters.
7493
7494 2004-06-13 Kenichi Handa <handa@m17n.org>
7495
7496 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7497
7498 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7499
7500 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7501
7502 2004-06-12 Kenichi Handa <handa@m17n.org>
7503
7504 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7505 ccl_prog_stack_struct and update it.
7506 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7507 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7508 ccl->eof_ic on EOF.
7509 (ccl_debug_hook): New function.
7510 (struct ccl_prog_stack): New member eof_ic.
7511 (ccl_driver): Handle EOF in subrountine call correctly.
7512
7513 2004-06-11 Kenichi Handa <handa@m17n.org>
7514
7515 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7516
7517 2004-06-11 Kim F. Storm <storm@cua.dk>
7518
7519 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7520
7521 2004-06-11 Juanma Barranquero <lektu@terra.es>
7522
7523 * keyboard.c (Fposn_at_point): Doc fix.
7524
7525 2004-06-11 David Kastrup <dak@gnu.org>
7526
7527 * search.c (match_limit): Don't flag an error if match-data
7528 exceeding the allocated search_regs.num_regs gets requested, just
7529 return Qnil.
7530
7531 2004-06-08 Miles Bader <miles@gnu.org>
7532
7533 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7534
7535 2004-06-07 Juanma Barranquero <lektu@terra.es>
7536
7537 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7538 (Fcurrent_time_string, Fcurrent_time_zone)
7539 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7540
7541 2004-06-07 Miles Bader <miles@gnu.org>
7542
7543 * xfaces.c (struct named_merge_point): New type.
7544 (push_named_merge_point): New function.
7545 (merge_named_face): New function.
7546 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7547 Use `merge_named_face'.
7548 (merge_face_inheritance): Function removed.
7549 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7550 Add new `err_msgs' and `named_merge_points' args. Return error
7551 status. Only print error messages if ERR_MSGS is true. Don't try to
7552 do :inherit attribute validation.
7553 (merge_face_heights): Handle `unspecified' in both directions.
7554 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7555 Call `merge_face_ref' instead of `merge_face_inheritance'.
7556 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7557 (compute_char_face, face_at_buffer_position)
7558 (face_at_string_position): Call `merge_face_ref' instead of
7559 `merge_face_vector_with_property'.
7560
7561 2004-06-07 Kenichi Handa <handa@m17n.org>
7562
7563 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7564 the necessary places.
7565
7566 2004-06-07 Kim F. Storm <storm@cua.dk>
7567
7568 * process.c (Fdelete_process): Undo 2004-05-28 change.
7569 Instead, call status_notify also for network process.
7570 (status_message): Use process instead of status as arg.
7571 Give messages "deleted" or "connection broken by remote peer" for
7572 an exited network process.
7573 (status_notify): Change call to status_message.
7574 (read_process_output): Increase readmax to 4096. Do not increase
7575 buffer size for datagram channels (default is now large enough).
7576
7577 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7578
7579 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7580 problem due to newly defined variable.
7581
7582 2004-06-06 Miles Bader <miles@gnu.org>
7583
7584 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7585 immediately if non-interactive or not initialized.
7586
7587 2004-06-05 Richard M. Stallman <rms@gnu.org>
7588
7589 * minibuf.c (Fcompleting_read): Doc fix.
7590
7591 2004-06-05 Andreas Schwab <schwab@suse.de>
7592
7593 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7594
7595 2004-06-05 Juanma Barranquero <lektu@terra.es>
7596
7597 * keymap.c (Fdescribe_vector): Fix docstring.
7598 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7599
7600 2004-06-05 Miles Bader <miles@gnu.org>
7601
7602 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7603 attributes have different values than the default face.
7604
7605 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7606
7607 * xfaces.c (x_supports_face_attributes_p): Make this function
7608 conditional on HAVE_WINDOW_SYSTEM.
7609 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7610 Don't call x_supports_face_attributes_p if it was not compiled in.
7611
7612 2004-06-04 Miles Bader <miles@gnu.org>
7613
7614 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7615 from Ftty_supports_face_attributes_p.
7616 (x_supports_face_attributes_p): New function.
7617 (Ftty_supports_face_attributes_p): Function deleted.
7618 (Fdisplay_supports_face_attributes_p): New function.
7619 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7620 (face_attr_equal_p): New function.
7621 (lface_equal_p): Use it.
7622
7623 2004-06-03 Juanma Barranquero <lektu@terra.es>
7624
7625 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7626 (Vw32_color_map): Fix typo in docstring.
7627 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7628 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7629 Make argument names match their use in docstring.
7630
7631 2004-06-02 Juanma Barranquero <lektu@terra.es>
7632
7633 Work around bugs/problems with MinGW builds of graphics libraries
7634 called from MSVC builds of Emacs.
7635
7636 * image.c (lookup_image): Make pointer to img static.
7637 (png_read_from_memory): Disable "global" optimization.
7638
7639 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7640
7641 * eval.c (Fcondition_case): Fix usage. Simplify.
7642
7643 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7644
7645 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7646
7647 * macfns.c: Don't include ccl.h.
7648 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7649 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7650 TextUtils.h.
7651 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7652 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7653 display height/width.
7654 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7655 (unwind_create_tip_frame, compute_tip_xy): New functions.
7656 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7657 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7658 and last_show_tip_args.
7659
7660 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7661 (Cursor, No_Cursor): New defines.
7662 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7663 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7664
7665 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7666
7667 * macterm.c: Don't include Gestalt.h.
7668 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7669 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7670 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7671 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7672 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7673 (construct_mouse_click, XTmouse_position)
7674 (x_scroll_bar_report_motion, x_calc_absolute_position)
7675 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7676 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7677 (note_mouse_movement): Clear the mouse face and reset the pointer
7678 shape when the pointer goes outside the frame without grabbing.
7679 (mac_front_window): New function.
7680 (mac_window_to_frame): New macro.
7681 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7682 (do_window_activate, do_window_deactivate, do_app_resume)
7683 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7684 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7685 (mac_check_for_quit_char): Use mac_front_window and/or
7686 mac_window_to_frame.
7687 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7688 scroll-bar click event.
7689 (mac_define_frame_cursor): Change the pointer shape.
7690 (x_free_frame_resources): Reset tip_window to NULL when it is
7691 disposed of.
7692 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7693 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7694 (do_window_update): Don't do anything if the updated window is the
7695 tooltip window.
7696 (do_mouse_moved): Handle mouse movement events here (previously in
7697 XTread_socket). Clear the mouse face if
7698 dpyinfo->mouse_face_hidden is set.
7699 (do_os_event, do_events): Remove (now in XTread_socket).
7700 (XTread_socket): Immediately return if interrupt_input_blocked.
7701 Loop until all the events in the queue are processed.
7702 Rearrange codes for mouse grabbing. Add tooltip support. Include the
7703 contents of do_os_event and do_events. Remove mouse movement
7704 handling (now in do_mouse_moved). Add the case where
7705 Vmouse_highlight has an integer value.
7706 (NewMacWindow): Remove.
7707 (make_mac_frame): Do what NewMacWindow previously did. Don't do
7708 excess initializations.
7709 (make_mac_terminal_frame): Previous initializations in
7710 make_mac_frame are moved here.
7711 (mac_initialize_display_info):
7712 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
7713
7714 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
7715 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
7716
7717 2004-05-29 Richard M. Stallman <rms@gnu.org>
7718
7719 * lisp.h (truncate_undo_list): Update decl.
7720
7721 * alloc.c (undo_outer_limit): New variable.
7722 (syms_of_alloc): Defvar it.
7723 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
7724
7725 * undo.c (truncate_undo_list): New arg LIMITSIZE.
7726
7727 * alloc.c (lisp_align_malloc): Check for base == 0
7728 regardless of HAVE_POSIX_MEMALIGN.
7729 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
7730
7731 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7732
7733 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
7734 (marker_blocks_pending_free): Remove.
7735 (Fgarbage_collect): Sweep after cleaning up undo-lists.
7736 Mark the undo lists after claning them up.
7737 Don't free block in marker_blocks_pending_free.
7738 (mark_buffer): Don't mark undo_list.
7739 (gc_sweep): Sweep hash-tables and strings first.
7740 Do free marker blocks that are empty.
7741
7742 2004-05-28 Jim Blandy <jimb@redhat.com>
7743
7744 * regex.c (print_partial_compiled_pattern): Add missing 'break'
7745 after 'case wordend'. For symbeg and symend, print to stderr,
7746 like the other cases.
7747
7748 2004-05-28 Noah Friedman <friedman@splode.com>
7749
7750 * process.c (Fdelete_process): Do not call remove_process.
7751
7752 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7753
7754 * alloc.c (struct backtrace): Remove.
7755 (Fgarbage_collect): Use the new mark_backtrace.
7756
7757 * eval.c (mark_backtrace): New function.
7758
7759 * minibuf.c (run_exit_minibuf_hook): New function.
7760 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
7761 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
7762
7763 2004-05-27 Kim F. Storm <storm@cua.dk>
7764
7765 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
7766 over display properties, e.g. images, that replace buffer text.
7767
7768 2004-05-25 Kim F. Storm <storm@cua.dk>
7769
7770 * alloc.c (marker_blocks_pending_free): New var.
7771 (gc_sweep): Store free marker blocks on that list.
7772 (Fgarbage_collect): Free them after undo-list cleanup.
7773
7774 * process.c (wait_reading_process_input): Check connect_wait_mask
7775 before actually accepting connection in case it has already been
7776 accepted due to recursion.
7777
7778 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7779
7780 * coding.c (Fset_safe_terminal_coding_system_internal):
7781 Set suppress_error in safe_terminal_coding, not terminal_coding.
7782
7783 2004-05-22 Richard M. Stallman <rms@gnu.org>
7784
7785 * alloc.c (Fmake_string): Doc fix.
7786
7787 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
7788 and the alist pairs too.
7789
7790 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
7791
7792 * emacs.c (main): Update copyright year.
7793
7794 * fileio.c (Fread_file_name): Expand DIR if not absolute.
7795
7796 * insdel.c (del_range_2, replace_range): Don't write an anchor
7797 if the gap is empty.
7798
7799 * xdisp.c (try_scrolling): If scroll-up-aggressively or
7800 scroll-down-aggressively is small but positive, put point
7801 near the screen edge.
7802
7803 2004-05-22 Juanma Barranquero <lektu@terra.es>
7804
7805 * keymap.c (Fdefine_key): Doc fix.
7806
7807 2004-05-22 Kim F. Storm <storm@cua.dk>
7808
7809 * alloc.c (struct backtrace): Add debug_on_exit member.
7810 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
7811 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
7812 the removed cons cells.
7813 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
7814 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
7815 any cons cells pointing to unallocated stings.
7816 Do not lisp_free any marker blocks, as there may still be pointers
7817 to them from buffer undo lists at this stage of GC.
7818
7819 * keyboard.c (struct backtrace): Add debug_on_exit member.
7820 (Fcommand_execute): Clear it.
7821
7822 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
7823
7824 * intervals.c (lookup_char_property): Do not prematurely return nil.
7825
7826 2004-05-19 Jim Blandy <jimb@redhat.com>
7827
7828 Add support for new '\_<' and '\_>' regexp operators, matching the
7829 beginning and end of symbols.
7830
7831 * regex.c (enum syntaxcode): Add Ssymbol.
7832 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
7833 (re_opcode_t): New opcodes `symbeg' and `symend'.
7834 (print_partial_compiled_pattern): Print the new opcodes properly.
7835 (regex_compile): Parse the new operators.
7836 (analyse_first): Skip sym(beg|end) (they match only the empty string).
7837 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
7838 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
7839 (re_match_2_internal): Match symbeg and symend.
7840
7841 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
7842
7843 2004-05-19 Kim F. Storm <storm@cua.dk>
7844
7845 * .gdbinit (xsymbol): Fix last change.
7846
7847 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
7848
7849 * .gdbinit (xprintstr): New fun.
7850 (xstring, xprintsym): Use it.
7851
7852 * w32proc.c (create_child): Use INTMASK.
7853
7854 * alloc.c (Fgarbage_collect): Do all the marking before flushing
7855 unmarked elements of the undo list.
7856
7857 2004-05-18 David Ponce <david@dponce.com>
7858
7859 * print.c (print): Reset print_depth before to call print_object.
7860
7861 2004-05-18 Jason Rumney <jasonr@gnu.org>
7862
7863 * w32console.c: Prefix RIF functions with w32con_ to avoid
7864 namespace clash with functions in term.c and w32term.c.
7865
7866 * w32menu.c (add_menu_item, w32_menu_display_help)
7867 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
7868
7869 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
7870
7871 2004-05-18 Eli Zaretskii <eliz@gnu.org>
7872
7873 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
7874
7875 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
7876 with make_number.
7877 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
7878 with XINT.
7879
7880 2004-05-18 Kim F. Storm <storm@cua.dk>
7881
7882 * blockinput.h (INPUT_BLOCKED_P): New macros.
7883
7884 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
7885 (Ftop_level): Unblock input if blocked.
7886
7887 * buffer.h (GET_OVERLAYS_AT): New macro.
7888 * msdos.c (IT_note_mouse_highlight): Use it.
7889 * textprop.c (get_char_property_and_overlay): Use it.
7890 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
7891 * xfaces.c (face_at_buffer_position): Use it.
7892
7893 * print.c (print_object): Increase buf size.
7894
7895 2004-05-17 Jason Rumney <jasonr@gnu.org>
7896
7897 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
7898 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
7899 Lisp_Object using i member.
7900 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
7901 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
7902 consistently.
7903
7904 * w32proc.c (create_child): Use make_number instead of masking pid.
7905
7906 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
7907 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
7908 Use EQ to compare Lisp_Objects.
7909 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
7910
7911 * w32term.c (w32_num_mouse_buttons): Rename from
7912 Vw32_num_mouse_buttons and make it an int.
7913
7914 * w32.c (init_environment): Use it.
7915
7916 * w32fns.c (w32_wnd_proc): Likewise.
7917
7918 * w32proc.c (w32_pipe_read_delay): Rename from
7919 Vw32_pipe_read_delay and make it an int.
7920
7921 * w32.c (_sys_read_ahead): Use it.
7922
7923 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
7924
7925 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
7926
7927 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
7928 (key_event): Don't mix Lisp_Object and int.
7929
7930 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
7931
7932 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
7933 modifiers in language change event.
7934
7935 2004-05-17 Kim F. Storm <storm@cua.dk>
7936
7937 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
7938 Such objects may be freed markers which still exist on an undo list.
7939
7940 2004-05-16 Juanma Barranquero <lektu@terra.es>
7941
7942 * data.c (Fset_default): Make argument names match their use in
7943 docstring.
7944
7945 2004-05-15 Andreas Schwab <schwab@suse.de>
7946
7947 * emacs.c (gdb_array_mark_flag): Define.
7948 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
7949
7950 2004-05-15 Eli Zaretskii <eliz@gnu.org>
7951
7952 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
7953 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
7954 defined for the MS-DOS build.
7955
7956 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
7957
7958 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
7959
7960 2004-05-14 Kenichi Handa <handa@m17n.org>
7961
7962 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
7963
7964 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7965
7966 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
7967 section to frame.c section.
7968 (Fxw_display_color_p, Fx_file_dialog): Declare if
7969 HAVE_WINDOW_SYSTEM defined.
7970
7971 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
7972
7973 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
7974
7975 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
7976 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
7977 (XTread_socket): Fix int/Lisp_Object mixup.
7978 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
7979
7980 * macterm.h (struct frame, struct face, struct image)
7981 (display_x_get_resource, Fx_display_color_p)
7982 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
7983 Add prototypes.
7984
7985 2004-05-14 Kim F. Storm <storm@cua.dk>
7986
7987 * process.c (wait_reading_process_input): Make reentrant.
7988 Make Available and Connecting non-static. Save and restore value
7989 of waiting_for_user_input_p.
7990
7991 2004-05-13 Kim F. Storm <storm@cua.dk>
7992
7993 * keyboard.c (mark_kboards): Don't mark x and y members
7994 that are overloaded in selection request events.
7995
7996 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7997
7998 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
7999
8000 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8001
8002 * window.c (Fdisplay_buffer, Fsplit_window)
8003 (split-height-threshold): Doc fix.
8004
8005 2004-05-13 Juanma Barranquero <lektu@terra.es>
8006
8007 * xfaces.c (Ftty_supports_face_attributes_p)
8008 (Finternal_copy_lisp_face): Fix typo in docstring.
8009 (Finternal_get_lisp_face_attribute): Fix docstring.
8010
8011 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8012
8013 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8014
8015 2004-05-11 Steven Tamm <steventamm@mac.com>
8016
8017 * macfns.c (Fx_create_frame): Default to using tool-bar by
8018 setting tool-bar-lines to 1 in default-frame-alist.
8019
8020 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8021
8022 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8023 (xpm_get_color_table_v, xpm_make_color_table_h)
8024 (xpm_put_color_table_h, xpm_get_color_table_h)
8025 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8026 (syms_of_image): Support XPM on Carbon Emacs. Does not
8027 depend on libXpm, but only supports XPM version 3 without extensions.
8028
8029 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8030
8031 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8032 instead of FRAME_X_P
8033
8034 2004-05-11 Kim F. Storm <storm@cua.dk>
8035
8036 * process.c (read_process_output): Grow decoding_buf when needed;
8037 this could cause a crash in allocate_string and compact_small_strings.
8038
8039 2004-04-29 Jim Blandy <jimb@redhat.com>
8040
8041 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8042 against proper opcode.
8043
8044 2004-05-10 Juanma Barranquero <lektu@terra.es>
8045
8046 * process.c (Fstart_process): Fix docstring.
8047
8048 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8049 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8050 (Fsplit_char, Fchar_charset): Make argument names match their use
8051 in docstring.
8052
8053 2004-05-10 Richard M. Stallman <rms@gnu.org>
8054
8055 * print.c (print_preprocess): Use being_printed, loop_count and
8056 halftail to detect overdeep nesting and cyclic cdr chains.
8057
8058 2004-05-10 Andreas Schwab <schwab@suse.de>
8059
8060 * lisp.h (Fmake_symbolic_link): Declare.
8061
8062 * fileio.c (Frename_file): Remove extra argument in call to
8063 Fmake_symbolic_link.
8064
8065 2004-05-10 Kim F. Storm <storm@cua.dk>
8066
8067 * xdisp.c (calc_line_height_property): Use string position when
8068 object is a string.
8069
8070 2004-05-10 Kenichi Handa <handa@m17n.org>
8071
8072 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8073 inhibit-modification-hooks to t temporarily before calling
8074 Ferase_buffer.
8075
8076 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8077 inhibit-modification-hooks to t temporarily before calling
8078 Ferase_buffer.
8079
8080 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8081 inhibit-modification-hooks to t temporarily before calling
8082 Ferase_buffer.
8083
8084 * fns.c (count_combining): Delete it.
8085 (concat): Don't check combining bytes.
8086
8087 2004-05-09 Jason Rumney <jasonr@gnu.org>
8088
8089 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8090 (globals_of_w32fns): Set it.
8091
8092 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8093
8094 * data.c (Fquo): Simplify.
8095
8096 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8097
8098 * data.c (Fquo): If any argument is float, do the computation in
8099 floating point.
8100
8101 2004-05-08 Juanma Barranquero <lektu@terra.es>
8102
8103 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8104 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8105 Fix spelling of Emacs on docstring.
8106 (Fset_process_coding_system, Fprocess_coding_system)
8107 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8108 Make argument names match their use in docstring.
8109 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8110 Fix docstring.
8111
8112 * editfns.c (Finsert_buffer_substring): Make argument names match their
8113 use in docstring.
8114
8115 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8116
8117 2004-05-07 Steven Tamm <steventamm@mac.com>
8118
8119 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8120 around call to ReceiveEvent to avoid certain crashes.
8121
8122 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8123
8124 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8125 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8126 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8127 Save/restore the current graphics port and device handle when
8128 drawing into an offscreen graphics world.
8129
8130 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8131 (gif_load): Likewise.
8132
8133 2004-05-07 Juanma Barranquero <lektu@terra.es>
8134
8135 * window.c (Fset_window_buffer): Fix docstring.
8136
8137 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8138
8139 * emacs.c (main) [VMS]: Fix var ref.
8140
8141 2004-05-06 Romain Francoise <romain@orebokech.com>
8142
8143 * data.c (Fsetq_default): Fix docstring.
8144
8145 2004-05-06 Jason Rumney <jasonr@gnu.org>
8146
8147 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8148 to avoid name clash.
8149
8150 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8151
8152 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8153 (Frename_file): Handle renaming of symlinks across file systems.
8154 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8155
8156 2004-05-04 Kim F. Storm <storm@cua.dk>
8157
8158 * xdisp.c (Qtotal): New var.
8159 (syms_of_xdisp): Intern and staticpro it.
8160 (calc_line_height_property): New arg total. Set it if
8161 line-spacing property has format (total . VALUE).
8162 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8163 Handle total line-spacing property.
8164
8165 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8166
8167 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8168 "under" scroll bar when size/position changes.
8169
8170 2004-05-03 Jason Rumney <jasonr@gnu.org>
8171
8172 * makefile.nt: Remove.
8173
8174 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8175
8176 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8177 Avoid compiler warnings.
8178
8179 * Makefile.in (region-cache.o): Depend on config.h.
8180
8181 2004-05-02 Romain Francoise <romain@orebokech.com>
8182
8183 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8184 with continuation lines, too.
8185
8186 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8187
8188 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8189
8190 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8191
8192 * xdisp.c (calc_line_height_property): YAILOM (yet another
8193 int/Lisp_Object mixup).
8194
8195 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8196
8197 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8198 undo bad effect of pack(4) in some versions of system headers.
8199
8200 2004-05-01 Jason Rumney <jasonr@gnu.org>
8201
8202 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8203
8204 2004-04-30 Kim F. Storm <storm@cua.dk>
8205
8206 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8207 (syms_of_buffer) <cursor-type>: Doc fix.
8208
8209 * dispextern.h (struct it): Remove member use_default_face.
8210 Add members override_ascent, override_descent, override_boff.
8211
8212 * xdisp.c (init_iterator): Handle line-spacing float value.
8213 Initialize override_ascent member.
8214 (append_space_for_newline): Reset override_ascent.
8215 Remove use_default_face.
8216 (calc_line_height_property): New function to calculate value of
8217 line-height and line-spacing properties. Look at overlays, too.
8218 Set override_ascent, override_descent, override_boff members when
8219 using another face than the current face. Float values are now
8220 relative to the frame default font, by default; accept a cons
8221 of ratio and face name to specify value relative to a specific face.
8222 (x_produce_glyphs): Use calc_line_height_property.
8223 Use override_ascent etc. when set to handle different face heights.
8224 A negative line-spacing property value is interpreted as a total
8225 line height, rather than inter-line spacing.
8226 (note_mouse_highlight): Allocate room for 40 overlays initially.
8227
8228 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8229
8230 * data.c (Fsubr_name): New fun.
8231 (syms_of_data): Defsubr it.
8232
8233 2004-04-29 Kim F. Storm <storm@cua.dk>
8234
8235 * xdisp.c (null_glyph_slice): New var.
8236 (append_glyph, append_composite_glyph, append_stretch_glyph):
8237 Use it to initialize glyph slice.
8238
8239 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8240
8241 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8242 (on_hot_spot_p): Make sure we always return a value.
8243 (Flookup_image_map): Remove unused var ix and iy.
8244 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8245
8246 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8247
8248 * msdos.c (init_environment): If one of the TMP... environment
8249 variables is set to a drive letter without a trailing slash,
8250 append a slash.
8251
8252 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8253
8254 * editfns.c (lisp_time_argument): Provide externally.
8255
8256 * fileio.c (Fset_file_times): New function.
8257 (syms_of_fileio): Intern and staticpro it.
8258
8259 2004-04-27 Kim F. Storm <storm@cua.dk>
8260
8261 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8262 header line strings.
8263
8264 * dispextern.h (struct it): New member use_default_face.
8265
8266 * xdisp.c (Qline_height): New variable.
8267 (syms_of_xdisp): Intern and staticpro it.
8268 (append_space_for_newline): Partially undo 2004-04-25 change;
8269 add default_face_p arg, and restore callers.
8270 Clear it->use_default_face after use.
8271 (x_produce_glyphs): Set default font for ascii char if
8272 it->use_default_font is set. Change line-spacing property to set
8273 just extra line spacing. Handle new line-height property.
8274
8275 2004-04-26 Andreas Schwab <schwab@suse.de>
8276
8277 * print.c (print_object): Print non-ascii characters in bool
8278 vector representation as octal escapes.
8279
8280 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8281 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8282 bool vectors.
8283 * lread.c (read1): Likewise.
8284 * alloc.c (Fmake_bool_vector): Likewise.
8285 * data.c (Faref, Faset): Likewise.
8286 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8287 (mapcar1): Likewise.
8288
8289 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8290
8291 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8292
8293 2004-04-26 Miles Bader <miles@gnu.org>
8294
8295 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8296
8297 2004-04-26 Juanma Barranquero <lektu@terra.es>
8298
8299 * buffer.c (Fpop_to_buffer): Fix docstring.
8300
8301 2004-04-26 Steven Tamm <steventamm@mac.com>
8302
8303 * lread.c (init_lread): Don't display missing lisp directory
8304 warnings with Carbon Emacs because self-contained bundled Emacs
8305 may be built without correct installation path.
8306
8307 2004-04-25 Kim F. Storm <storm@cua.dk>
8308
8309 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8310
8311 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8312
8313 * xdisp.c (append_space_for_newline): Rename from append_space.
8314 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8315 (x_produce_glyphs): Handle line-spacing property on newline char.
8316 If value is t, adjust ascent and descent to fit current row height.
8317 If value is an integer or float, set extra_line_spacing to integer
8318 value, or to float value x current line height.
8319
8320 2004-04-23 Kenichi Handa <handa@m17n.org>
8321
8322 * fontset.c (Finternal_char_font): If POSITION is nil, return
8323 font for displaying CH with the default face.
8324
8325 2004-04-23 Juanma Barranquero <lektu@terra.es>
8326
8327 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8328
8329 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8330
8331 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8332 Don't make assumptions about the relative place of i and val.
8333 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8334
8335 2004-04-21 Kim F. Storm <storm@cua.dk>
8336
8337 * dispextern.h (struct glyph_slice): New struct.
8338 (struct glyph): New member slice.
8339 (GLYPH_SLICE_EQUAL_P): New macro.
8340 (GLYPH_EQUAL_P): Use it.
8341 (struct glyph_string): New member slice.
8342 (struct it_slice): New struct.
8343 (struct it): New member slice, add member to stack too.
8344 New member constrain_row_ascent_descent_p.
8345 (image_ascent): Add prototype.
8346
8347 * dispnew.c (buffer_posn_from_coords): Return full image width
8348 and height even for image slices (posn is relative to full image).
8349 (marginal_area_string): Adjust x0,y0 for image slice.
8350
8351 * image.c (image_ascent): Add slice arg; calculate ascent for
8352 image slice (or full image).
8353
8354 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8355 (syms_of_keyboard): Defsubr them.
8356
8357 * lisp.h (pos_visible_p): Fix prototype.
8358
8359 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8360 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8361 (x_draw_image_foreground, x_draw_image_relief)
8362 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8363 Draw sliced images.
8364
8365 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8366 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8367 (x_draw_image_foreground, x_draw_image_relief)
8368 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8369 Draw sliced images.
8370
8371 * w32term.h (image_ascent): Remove prototype.
8372
8373 * window.c (Fpos_visible_in_window_p): Return pixel position if
8374 PARTIALLY arg is non-nil. Simplify. Doc fix.
8375 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8376 to return/set vscroll in pixels.
8377
8378 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8379
8380 * xdisp.c (Qslice): New variable.
8381 (syms_of_xdisp): Intern and staticpro it.
8382 (pos_visible_p): Return pixel position in new x and y args.
8383 (init_iterator): Reset it->slice info.
8384 (handle_display_prop): Parse (slice ...) property.
8385 (push_it, pop_it): Save/restore slice info.
8386 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8387 force repositioning of tall row if window is vscrolled, as that
8388 would reset vscroll.
8389 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8390 increasing row height if row is non-empty.
8391 (fill_image_glyph_string): Copy slice info.
8392 (take_vertical_position_into_account): Simplify.
8393 (produce_image_glyph): Handle iterator slice info, setup glyph
8394 slice info. Do not force minimum line height.
8395 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8396 do not increase height (ascent/descent) of non-empty row when
8397 adding normal character glyph; instead reduce glyph ascent/descent
8398 appropriately; if row is higher than current glyph, adjust glyph
8399 descent/ascent to reposition glyph within the existing row.
8400 Likewise, when char is newline, only set ascent/descent if row is
8401 currently empty.
8402 (note_mouse_highlight): Handle hotspots with sliced image.
8403
8404 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8405 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8406 (x_draw_image_foreground, x_draw_image_relief)
8407 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8408 Draw sliced images.
8409
8410 * xterm.h (image_ascent): Remove prototype.
8411
8412 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8413
8414 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8415
8416 2004-04-20 John Paul Wallington <jpw@gnu.org>
8417
8418 * fns.c (Fassoc, Feql): Fix indentation.
8419
8420 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8421
8422 2004-04-19 John Paul Wallington <jpw@gnu.org>
8423
8424 * fns.c (Feql): New function.
8425 (syms_of_fns): Defsubr it.
8426
8427 2004-04-18 Jason Rumney <jasonr@gnu.org>
8428
8429 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8430 after closing the clipboard.
8431
8432 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8433
8434 * buffer.c (Fbuffer_base_buffer): Doc fix.
8435
8436 2004-04-17 Kim F. Storm <storm@cua.dk>
8437
8438 * keymap.c (Fkey_description): Add optional PREFIX arg.
8439 Combine prefix with KEYS to make up the full key sequence to describe.
8440 Correlate meta_prefix_char and following (simple) key to describe
8441 as meta modifier. All callers changed.
8442 (describe_map): Rename arg `keys' to `prefix'. Remove local
8443 `elt_prefix' var. Use Fkey_description with prefix instead of
8444 elt_prefix combined with Fsingle_key_description.
8445 (describe_vector): Declare static. Replace arg `elt_prefix' with
8446 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8447 if !KEYMAP_P. Use Fkey_description with prefix instead of
8448 Fsingle_key_description.
8449
8450 * keymap.h (Fkey_description): Fix prototype.
8451 (describe_vector): Remove prototype.
8452
8453 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8454
8455 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8456 (png_load): Fix calculation of transparent background color on X
8457 and W32 platforms.
8458
8459 2004-04-16 Juanma Barranquero <lektu@terra.es>
8460
8461 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8462 not too large before computing how much to scroll.
8463
8464 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8465
8466 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8467
8468 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8469
8470 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8471 Add hyperlink to Elisp manual to the docstring.
8472
8473 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8474
8475 * callint.c (fix_command): Use XDCR.
8476
8477 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8478
8479 * window.c (Fget_lru_window): Doc fix.
8480
8481 2004-04-14 Kim F. Storm <storm@cua.dk>
8482
8483 * editfns.c (Fformat): Fix allocation size of precision array.
8484
8485 * dispnew.c (update_window): Only set changed_p if
8486 scrolling_window actually did scroll.
8487 (scrolling_window): Only return 1 if we actually did scroll.
8488
8489 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8490 height to glyph height when cursor row is not fully visible.
8491 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8492 failure in case row is higher than window. Callers changed.
8493 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8494 Try to scroll partially visible, higher-than-window cursor row.
8495 (redisplay_window): Always try to scroll partially visible,
8496 higher-than-window cursor row - both initially and again with
8497 centering_position = 0.
8498 Clear desired matrix before retrying with centering_position = 0.
8499
8500 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8501
8502 * syntax.c (scan_lists): Simplify backward string scan.
8503 Fix off-by-one boundary check for string and comment fences.
8504
8505 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8506
8507 * sheap.c, unexcw.c: New files.
8508
8509 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8510
8511 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8512 base buffer has been killed. Correct the error message if the
8513 base buffer does not exist.
8514
8515 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8516
8517 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8518 Cygwin itself. Add support for Xaw3d scrollbars.
8519
8520 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8521
8522 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8523
8524 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8525 before Cygwin unexec.
8526
8527 * Makefile.in: Link changes for Cygwin unexec() support.
8528
8529 2004-04-12 Andreas Schwab <schwab@suse.de>
8530
8531 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8532
8533 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8534
8535 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8536 IGNORE argument equals NAME. Doc fix.
8537
8538 2004-04-11 Masatake YAMATO <jet@gyve.org>
8539
8540 * buffer.c (fix_start_end_in_overlays): Make overlays
8541 empty if they are backwards.
8542
8543 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8544
8545 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8546
8547 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8548
8549 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8550
8551 2004-04-06 Kim F. Storm <storm@cua.dk>
8552
8553 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8554 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8555
8556 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8557 clearing highlight.
8558
8559 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8560
8561 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8562 clearing highlight.
8563
8564 * indent.c (vmotion): Do not reserve one column for continuation
8565 marks on window frames.
8566
8567 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8568
8569 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8570 from GCC.
8571
8572 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8573
8574 * .gdbinit-union: Remove.
8575
8576 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8577 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8578 ($nonvalbits): Remove.
8579 ($valmask): Set it by calling xreload to avoid redundancy.
8580
8581 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8582 (gdb_emacs_intbits): Remove.
8583
8584 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8585
8586 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8587
8588 2004-03-30 Kenichi Handa <handa@m17n.org>
8589
8590 * editfns.c (Fformat): Fix initialization of the array info.
8591
8592 2004-03-30 Kim F. Storm <storm@cua.dk>
8593
8594 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8595 (syms_of_xterm): DEFVAR_BOOL it.
8596 (ignore_next_mouse_click_timeout): New var.
8597 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8598 Use it to filter mouse clicks following focus event.
8599
8600 2004-03-29 David Ponce <david@dponce.com>
8601
8602 * callint.c (Fcall_interactively): Fix last change.
8603
8604 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8605
8606 * eval.c (Fcommandp): Simplify.
8607
8608 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8609 Extend to handle all kinds of functions.
8610
8611 * lisp.h (Finteractive_form): Declare.
8612
8613 * callint.c (Fcall_interactively): Use it.
8614
8615 2004-03-26 Kim F. Storm <storm@cua.dk>
8616
8617 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8618 to catch errors in calc_pixel_width_or_height during redisplay.
8619
8620 2004-03-26 Masatake YAMATO <jet@gyve.org>
8621
8622 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8623
8624 * lisp.h (fix_start_end_in_overlays): Likewise.
8625
8626 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8627
8628 * editfns.c (Ftranspose_regions): Likewise.
8629
8630 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8631
8632 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8633
8634 2004-03-19 Richard M. Stallman <rms@gnu.org>
8635
8636 * s/sol2-6.h: Delete previous change.
8637
8638 2004-03-19 Kim F. Storm <storm@cua.dk>
8639
8640 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8641 to_charpos corresponds to newline in right fringe. Use local
8642 BUFFER_POS_REACHED_P macro.
8643
8644 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8645
8646 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8647 to compile on non-window system.
8648
8649 2004-03-19 Kim F. Storm <storm@cua.dk>
8650
8651 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8652
8653 * image.c (Qcenter): Move to xdisp.c.
8654
8655 * xdisp.c (Qcenter): Declare here.
8656 (syms_of_xdisp): Intern and staticpro it.
8657 (handle_single_display_prop): Allow space display property on all
8658 platforms.
8659 (display_mode_line): Set mode_line_p before displaying line.
8660 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8661 handling. Remove complex cases for fringes and scroll-bars.
8662 Add left, right, and center alignment positions. Add text (area)
8663 width/height. Return width or height for image specs.
8664 (produce_stretch_glyph): Improve handling of :align-to. Is now
8665 relative to left of text area by default, but other base offsets
8666 can be specified -- also for text lines.
8667
8668 * term.c (produce_glyphs): Handle IT_STRETCH.
8669 (produce_stretch_glyph): New function to handle space width and
8670 align-to display properties on non-window systems.
8671
8672 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8673
8674 * fileio.c (Fread_file_name): Set completion-ignore-case for
8675 case-insensitive systems.
8676
8677 2004-03-14 Masatake YAMATO <jet@gyve.org>
8678
8679 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8680 when keymap and cursor are setup.
8681
8682 2004-03-14 Steven Tamm <steventamm@mac.com>
8683
8684 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8685
8686 2004-03-14 Kim F. Storm <storm@cua.dk>
8687
8688 * dispextern.h (x_find_image_file): Add prototype.
8689
8690 * image.c (x_find_image_file): Make extern.
8691
8692 * xfns.c (x_find_image_file): Remove prototype.
8693
8694 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8695
8696 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
8697
8698 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
8699
8700 2004-03-12 Richard M. Stallman <rms@gnu.org>
8701
8702 * fns.c (internal_equal): New arg PROPS controls comparing
8703 text properties. All callers changed.
8704 (Fequal_including_properties): New function.
8705 (syms_of_fns): defsubr it.
8706
8707 2004-03-12 Kim F. Storm <storm@cua.dk>
8708
8709 Fix image support on MAC. From YAMAMOTO Mitsuharu.
8710
8711 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
8712 (image_background, image_background_transparent): Fix prototypes.
8713
8714 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
8715
8716 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
8717 (x_query_font, x_find_ccl_program, x_set_window_size)
8718 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8719 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8720 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
8721
8722 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
8723 (x_query_font, x_find_ccl_program, x_set_window_size)
8724 (x_make_frame_visible, mac_initialize, XCreatePixmap)
8725 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
8726 (mac_draw_line_to_pixmap): Add prototypes.
8727
8728 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8729
8730 * macterm.c (XTread_socket): Fix mouse click on tool bar.
8731
8732 2004-03-11 Kim F. Storm <storm@cua.dk>
8733
8734 * dispextern.h: Move image related prototypes from xfns.c section
8735 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
8736 HAVE_X_WINDOWS.
8737
8738 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
8739 Move gtkutil.o to new GTK_OBJ list.
8740 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
8741 (GTK_OBJ) [USE_GTK]: New declaration.
8742 (obj): Add $(GTK_OBJ) to list.
8743
8744 2004-03-11 Steven Tamm <steventamm@mac.com>
8745
8746 * image.c [MAC_OSX]: Include sys/stat.h.
8747
8748 * macfns.c (syms_of_macfns): Remove definitions of things now
8749 defined in image.c.
8750
8751 2004-03-11 Kim F. Storm <storm@cua.dk>
8752
8753 The following changes consolidates the identical/similar image
8754 support code previously found in xfns.c, w32fns.c, and macfns.c
8755 into a new file image.c.
8756
8757 * makefile.w32-in (OBJ1): Add image.o.
8758 ($(BLD)/image.$(O)): Add dependencies.
8759
8760 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
8761 (image.o): Add dependencies.
8762
8763 * image.c: New file with consolidated image support code.
8764 (COLOR_TABLE_SUPPORT): New define to control whether
8765 color table support is available (X only).
8766 (Bitmap_Record): Common name for x_bitmap_record,
8767 w32_bitmap_record, and mac_bitmap_record.
8768 (XImagePtr): Common name for pointer to XImage or equivalent.
8769 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
8770 to XImagePtr on X+MAC, and to HDC on W32.
8771 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
8772 (NO_PIXMAP): Common name for "None" or equivalent.
8773 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
8774 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
8775 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
8776 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
8777 Define with suitable equivalents on W32 and MAC for code sharing.
8778 (XDrawLine): Define on MAC for code sharing.
8779 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
8780 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
8781 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8782 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8783 (x_reference_bitmap, x_create_bitmap_from_data)
8784 (x_create_bitmap_from_file, x_destroy_bitmap)
8785 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8786 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8787 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8788 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8789 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8790 (define_image_type, lookup_image_type, valid_image_p)
8791 (image_error, enum image_value_type, struct image_keyword)
8792 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8793 (make_image, free_image, prepare_image_for_display, image_ascent)
8794 (four_corners_best, image_background, image_background_transparent)
8795 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8796 (make_image_cache, free_image_cache, clear_image_cache)
8797 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8798 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8799 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8800 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8801 (init_image_func_pointer, image_load_quartz2d)
8802 (struct ct_color, init_color_table, free_color_table)
8803 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8804 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8805 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8806 (x_disable_image, x_build_heuristic_mask)
8807 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8808 (TIFF support, GIF support, Ghostscript support): Consolidate image
8809 code from xfns.c, w32fns.c, and macfns.c.
8810 (syms_of_image): Consolidate image related symbol setup here.
8811 (init_image): Consolidate image related initializations here.
8812
8813 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
8814 and init_image. Remove call to init_xfns.
8815
8816 * macterm.h (struct mac_bitmap_record): Add file member.
8817 Not currently used, but simplifies code sharing.
8818
8819 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8820 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8821 (x_reference_bitmap, x_create_bitmap_from_data)
8822 (x_create_bitmap_from_file, x_destroy_bitmap)
8823 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8824 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8825 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8826 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8827 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8828 (define_image_type, lookup_image_type, valid_image_p)
8829 (image_error, enum image_value_type, struct image_keyword)
8830 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8831 (make_image, free_image, prepare_image_for_display, image_ascent)
8832 (four_corners_best, image_background, image_background_transparent)
8833 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8834 (make_image_cache, free_image_cache, clear_image_cache)
8835 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8836 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8837 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8838 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
8839 (init_image_func_pointer, image_load_quartz2d)
8840 (struct ct_color, init_color_table, free_color_table)
8841 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8842 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8843 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8844 (x_disable_image, x_build_heuristic_mask)
8845 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8846 (TIFF support, GIF support, Ghostscript support): Merge with image
8847 code from xfns.c and macfns.c into image.c.
8848 (syms_of_xfns): Move image related symbols to image.c.
8849 (init_external_image_libraries, init_xfns): Remove; initialization
8850 moved to init_image in image.c.
8851
8852 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8853 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8854 (x_reference_bitmap, x_create_bitmap_from_data)
8855 (x_create_bitmap_from_file, x_destroy_bitmap)
8856 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8857 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8858 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8859 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8860 (define_image_type, lookup_image_type, valid_image_p)
8861 (image_error, enum image_value_type, struct image_keyword)
8862 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8863 (make_image, free_image, prepare_image_for_display, image_ascent)
8864 (four_corners_best, image_background, image_background_transparent)
8865 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8866 (make_image_cache, free_image_cache, clear_image_cache)
8867 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8868 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8869 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8870 (struct ct_color, init_color_table, free_color_table)
8871 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8872 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8873 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8874 (x_disable_image, x_build_heuristic_mask)
8875 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8876 (TIFF support, GIF support, Ghostscript support): Merge with image
8877 code from xfns.c and macfns.c into image.c.
8878 (syms_of_xfns): Move image related symbols to image.c.
8879 (init_external_image_libraries, init_xfns): Remove; initialization
8880 moved to init_image in image.c.
8881
8882 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
8883 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8884 (x_reference_bitmap, x_create_bitmap_from_data)
8885 (x_create_bitmap_from_file, x_destroy_bitmap)
8886 (x_destroy_all_bitmaps, x_create_bitmap_mask)
8887 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
8888 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
8889 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
8890 (define_image_type, lookup_image_type, valid_image_p)
8891 (image_error, enum image_value_type, struct image_keyword)
8892 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
8893 (make_image, free_image, prepare_image_for_display, image_ascent)
8894 (four_corners_best, image_background, image_background_transparent)
8895 (x_clear_image_1, x_clear_image, x_alloc_image_color)
8896 (make_image_cache, free_image_cache, clear_image_cache)
8897 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
8898 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
8899 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
8900 (struct ct_color, init_color_table, free_color_table)
8901 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
8902 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
8903 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
8904 (x_disable_image, x_build_heuristic_mask)
8905 (XBM support, XPM support, PBM support, PNG support, JPEG support)
8906 (TIFF support, GIF support, Ghostscript support): Merge with
8907 w32fns.c and macfns.c image code into image.c.
8908 (syms_of_xfns): Move image related symbols to image.c.
8909 (init_xfns): Remove; initialization moved to init_image in image.c.
8910
8911 * lisp.h (syms_of_image, init_image): Add protoypes.
8912 (init_xfns): Remove prototype.
8913
8914 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8915 (x_reference_bitmap, x_create_bitmap_from_data)
8916 (x_create_bitmap_from_file, x_destroy_bitmap)
8917 (x_create_bitmap_mask): Move prototypes from dispextern.h.
8918 (gamma_correct) [MAC_OS]: Add prototype.
8919
8920 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
8921 (x_reference_bitmap, x_create_bitmap_from_data)
8922 (x_create_bitmap_from_file, x_destroy_bitmap)
8923 (x_create_bitmap_mask): Move prototypes to dispextern.h.
8924
8925 2004-03-09 Kenichi Handa <handa@etlken2>
8926
8927 * coding.c (decode_coding_emacs_mule): Handle insufficent source
8928 correctly.
8929
8930 2004-03-04 Richard M. Stallman <rms@gnu.org>
8931
8932 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
8933
8934 * window.c (Fdisplay_buffer): Doc fix.
8935
8936 * buffer.c (Fpop_to_buffer): Doc fix.
8937
8938 2004-03-03 Kim F. Storm <storm@cua.dk>
8939
8940 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
8941
8942 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
8943
8944 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
8945
8946 2004-03-02 Richard M. Stallman <rms@gnu.org>
8947
8948 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
8949
8950 2004-03-02 Kenichi Handa <handa@m17n.org>
8951
8952 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
8953
8954 2004-03-02 Kim F. Storm <storm@cua.dk>
8955
8956 * window.h (struct window): New member overlay_arrow_bitmap.
8957
8958 * window.c (make_window): Initialize overlay_arrow_bitmap.
8959
8960 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
8961 implement and integrate multiple overlay arrows with redisplay.
8962 (syms_of_xdisp): DEFVAR_LISP and initialize it.
8963 (last_arrow_position, last_arrow_string): Replace by properties.
8964 (Qlast_arrow_position, Qlast_arrow_string)
8965 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
8966 (syms_of_xdisp): Intern and staticpro them.
8967 (overlay_arrow_string_or_property, update_overlay_arrows)
8968 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
8969 (overlay_arrow_at_row): New functions for multiple overlay arrows.
8970 (redisplay_internal): Use them instead of directly accessing
8971 Voverlay_arrow_position etc. for multiple overlay arrows.
8972 (mark_window_display_accurate): Use update_overlay_arrows.
8973 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
8974 (try_window_id): Use overlay_arrows_changed_p.
8975 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
8976 (display_line): Use overlay_arrow_at_row to check multiple
8977 overlay arrows, and get relevant overlay-arrow-string and
8978 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
8979 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
8980 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
8981
8982 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
8983 (update_window_fringes): Remove unused code.
8984
8985 2004-03-01 Jason Rumney <jasonr@gnu.org>
8986
8987 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
8988
8989 2004-03-01 Juanma Barranquero <lektu@terra.es>
8990
8991 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
8992
8993 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
8994
8995 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8996
8997 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
8998 how many colors can be displayed.
8999
9000 2004-03-01 Kenichi Handa <handa@m17n.org>
9001
9002 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9003 correctly.
9004
9005 2004-02-28 Kim F. Storm <storm@cua.dk>
9006
9007 * dispnew.c (update_window): Update header line also if there are
9008 no other changes in window (move code after set_cursor label).
9009
9010 * lisp.h (mark_window_display_accurate): Remove prototype.
9011
9012 * window.c (window_loop, Fforce_window_update): Force mode line
9013 updates by setting prevent_redisplay_optimizations_p and
9014 update_mode_lines.
9015
9016 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9017
9018 * xfns.c (x_window): Fix indentation.
9019
9020 * xterm.c (x_calc_absolute_position): Call x_real_positions
9021 to get WM window sizes and use those to calculate position.
9022 (x_set_offset): Remove code commented out.
9023
9024 2004-02-28 Miles Bader <miles@gnu.org>
9025
9026 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9027
9028 2004-02-28 Kim F. Storm <storm@cua.dk>
9029
9030 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9031 an event into kbd fifo, but with special handling of quit event;
9032 a quit event is saved for later, and further events are discarded
9033 until the saved quit event has been processed.
9034 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9035 (gen_help_event): Store help event in kbd fifo.
9036 (NREAD_INPUT_EVENTS): Remove.
9037 (read_avail_input): Adapt to new read_socket_hook interface.
9038 Remove allocation and initialization of local input_event buffer,
9039 as read_socket_hook stores events directly in fifo. Allocate and
9040 initialize local hold_quit event to handle postponed quit event
9041 (and store it if set by kbd_buffer_store_event_hold).
9042
9043 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9044 (gen_help_event): Fix prototype.
9045
9046 * macterm.c (XTread_socket): Remove bufp_r and
9047 numcharsp args. Add hold_quit arg.
9048 Rework to use just one, local, inev input_event. Store inev
9049 directly in fifo using kbd_buffer_store_event_hold.
9050
9051 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9052 (read_input_waiting): Adapt to new read_socket_hook interface.
9053 Remove allocation and initialization of local input_event buffer,
9054 as read_socket_hook stores events directly in fifo. Allocate and
9055 initialize local hold_quit event to handle postponed quit event
9056 (and store it if set by kbd_buffer_store_event_hold).
9057
9058 * term.c (read_socket_hook): Fix arg list.
9059
9060 * termhooks.h (read_socket_hook): Fix prototype.
9061
9062 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9063 numcharsp args. Add hold_quit arg.
9064 Rework to use just one, local, inev input_event. Store inev
9065 directly in fifo using kbd_buffer_store_event_hold.
9066
9067 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9068
9069 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9070 Add hold_quit arg. Rework to use just one, local, inev
9071 input_event. Store inev directly in fifo using
9072 kbd_buffer_store_event_hold. Update count in one place.
9073 Postpone call to gen_help_event until inev is stored; use new
9074 local do_help for this.
9075 Remove local emacs_event in handing of ButtonPress event; just use
9076 inev instead (so no reason to copy it later).
9077
9078 * xsmfns.c (x_session_check_input): Remove numchars arg.
9079
9080 * xterm.c (x_focus_changed, x_detect_focus_change):
9081 Remove numchars arg. Always store event into bufp arg.
9082 Return nothing. Callers changed accordingly.
9083 (glyph_rect): Simplify.
9084 (STORE_KEYSYM_FOR_DEBUG): New macro.
9085 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9086 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9087 (current_hold_quit) [USE_GTK]: Add.
9088 (event_handler_gdk): Adapt to new handle_one_xevent.
9089 (handle_one_xevent): Remove bufp_r and numcharsp args.
9090 Add hold_quit arg. Rework to use just one, local, inev
9091 input_event. Store inev directly in fifo using
9092 kbd_buffer_store_event_hold. Update count in one place.
9093 Postpone call to gen_help_event until inev is stored; use new
9094 local do_help for this.
9095 Simplify handling of keysyms (consolidate common code). Fix bug
9096 where count was updated with nchars instead of nbytes.
9097 Remove local emacs_event in handing of ButtonPress event; just use
9098 inev instead (so no reason to copy it later).
9099 Remove `out' label. Rename label `ret' to `done'; add various
9100 `goto done' to clarify code flow in deeply nested blocks.
9101 (x_dispatch_event): Simplify as handle_one_xevent now calls
9102 kbd_buffer_store_event itself.
9103 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9104 arg. Call handle_one_xevent with new arglist. Store event from
9105 x_session_check_input in fifo.
9106 [USE_GTK]: Setup current_hold_quit.
9107 Decrement handling_signal before unblocking input.
9108 (x_initialize) [USE_GTK]: Initialize current_count.
9109
9110 * xterm.h (x_session_check_input): Fix prototype.
9111
9112 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9113
9114 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9115
9116 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9117 macgui.h).
9118
9119 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9120
9121 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9122 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9123 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9124 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9125 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9126 (Bitmap): Remove typedef.
9127 (Pixmap): Change int to GWorldPtr.
9128
9129 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9130
9131 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9132 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9133 New #define to extract 16-bit depth color components from unsigned
9134 long representation.
9135 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9136 colors used for masks.
9137 (struct mac_display_info): Add color_p. Remove n_cbits.
9138
9139 * macfns.c: Include sys/types.h and sys/stat.h.
9140 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9141 Include QuickTime/QuickTime.h.
9142 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9143 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9144 functions defined in macterm.c.
9145 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9146 (ZPixmap): New #define for compatibility with xfns.c.
9147 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9148 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9149 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9150 New functions.
9151 (four_corners_best, x_create_x_image_and_pixmap)
9152 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9153 (x_edge_detection, init_color_table, colors_in_color_table)
9154 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9155 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9156 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9157 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9158 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9159 long mixup.
9160 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9161 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9162 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9163 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9164 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9165 (x_alloc_image_color, clear_image_cache, lookup_image)
9166 (x_find_image_file, xbm_read_bitmap_file_data)
9167 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9168 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9169 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9170 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9171 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9172 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9173 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9174 #if 0.
9175 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9176 #if 0. Free white_relief.gc and black_relief.gc.
9177 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9178 New functions (from xfns.c).
9179 (Fx_create_frame): Record unwind_create_frame.
9180 (Fxw_display_color_p): Use dpyinfo->color_p.
9181 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9182 dpyinfo->n_cbits.
9183 (Fx_display_color_cells): Use dpyinfo->n_planes;
9184 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9185 (Qheuristic, cross_disabled_images, emboss_matrix)
9186 (laplace_matrix): New variables (from xfns.c).
9187 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9188 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9189 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9190 (image_background_transparent): New function (from xfns.c).
9191 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9192 (image_load_quicktime): Add declaration.
9193 [MAC_OSX] (image_load_quartz2d): Likewise.
9194 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9195 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9196 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9197 (xbm_load_image_from_file, x_laplace_read_row)
9198 (x_laplace_write_row, pbm_read_file): Remove functions.
9199 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9200 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9201 (colors_in_color_table): Sync with xfns.c (although not used).
9202 (lookup_rgb_color): Don't lookup color table. Just do gamma
9203 correction.
9204 (COLOR_INTENSITY): New #define (from xfns.c).
9205 (x_disable_image): New function (from xfns.c).
9206 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9207 (x_build_heuristic_mask): Sync with xfns.c.
9208 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9209 (HAVE_PBM): Remove #ifdef.
9210 (pbm_load): Sync with xfns.c. Set img->width and img->height
9211 before IMAGE_BACKGROUND.
9212 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9213 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9214 Don't enclose with #if HAVE_PNG.
9215 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9216 symbol _CGImageCreateWithPNGDataProvider is defined.
9217 Otherwise use image_load_quicktime.
9218 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9219 [HAVE_PNG] (png_load): Sync with xfns.c.
9220 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9221 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9222 HAVE_JPEG.
9223 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9224 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9225 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9226 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9227 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9228 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9229 HAVE_TIFF.
9230 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9231 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9232 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9233 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9234 New functions (from xfns.c).
9235 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9236 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9237 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9238 Don't enclose with #if HAVE_GIF.
9239 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9240 animated gif. Otherwise use image_load_quicktime.
9241 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9242 gif_DrawText to avoid conflict with QuickdrawText.h.
9243 [HAVE_GIF] (gif_load): Sync with xfns.c.
9244 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9245 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9246 Ghostscript is not supported yet).
9247 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9248 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9249 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9250 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9251 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9252 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9253 HAVE_PNG. Call EnterMovies to support animated gifs.
9254 Call init_image_func_pointer to bind a symbol
9255 _CGImageCreateWithPNGDataProvider if it is defined.
9256
9257 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9258 (x_draw_bar_cursor): Sync declaration with xterm.c.
9259 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9260 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9261 graphics).
9262 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9263 (mac_draw_line_to_pixmap, XCreatePixmap)
9264 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9265 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9266 New functions.
9267 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9268 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9269 Cast bits to char *.
9270 (reflect_byte): New function (from w32fns.c).
9271 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9272 due to byte alignment.
9273 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9274 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9275 (XSetForeground): Remove static (now used in macfns.c).
9276 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9277 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9278 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9279 (x_draw_glyph_string_box, x_draw_image_foreground)
9280 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9281 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9282 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9283 Sync with xterm.c.
9284 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9285 than the xterm.c version when a strictly horizontal or vertical
9286 line is drawn.
9287 (XTset_terminal_window): Add static.
9288 (x_make_frame_visible): Add UNBLOCK_INPUT.
9289 (x_free_frame_resources): New funcion (from xterm.c).
9290 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9291 occurs in tool bar area.
9292 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9293 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9294 Initialize image cache.
9295 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9296 Enclose unused functions with #if 0.
9297 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9298 (decode_mac_font_name): New function to apply code conversions
9299 from a mac font name to an XLFD font name according to its script code.
9300 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9301 font name to a mac font name according to REGISTRY and ENCODING fields.
9302 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9303 whose name starts with `.'.
9304 (init_font_name_table): Use decode_mac_font_name. Add both
9305 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9306 of a font is smJapanese.
9307 (mac_do_list_fonts): New function to list fonts that match a given
9308 pattern.
9309 (x_list_fonts, XLoadQueryFont): Use it.
9310 (XLoadQueryFont): Set rbearing field for each variable width
9311 character to avoid needless redraw.
9312 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9313
9314 2004-02-26 Kim F. Storm <storm@cua.dk>
9315
9316 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9317 as read_socket_hook handler on X aborts if buffer is too small
9318 and W32 handler doesn't always check buffer limit.
9319
9320 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9321 right-fringe similar to a display margin image. Specifically,
9322 the characters having the fringe prop are no longer shown, and
9323 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9324 do this. Set fringe bitmap face_id in it->face_id.
9325 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9326 still realize it->face (i.e. the fringe bitmap face).
9327
9328 2004-02-25 Miles Bader <miles@gnu.org>
9329
9330 * xdisp.c (check_it): Check string/string_pos consistency.
9331 (init_iterator): Initialize string-related fields properly.
9332
9333 2004-02-11 Miles Bader <miles@gnu.org>
9334
9335 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9336
9337 2004-02-10 Miles Bader <miles@gnu.org>
9338
9339 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9340 BLOCK_INPUT can be nested, so it doesn't make much sense.
9341
9342 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9343
9344 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9345 (xbm_read_bitmap_data): Use unsigned char for image data.
9346
9347 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9348
9349 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9350
9351 2004-02-22 Jason Rumney <jasonr@gnu.org>
9352
9353 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9354 correctly over other bitmaps.
9355
9356 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9357
9358 * emacs.c (USAGE1): Split into two halves.
9359 (USAGE2): Second half of the old USAGE1.
9360 (USAGE3): Rename from USAGE2.
9361 (USAGE4): Rename from USAGE3.
9362
9363 2004-02-21 Juri Linkov <juri@jurta.org>
9364
9365 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9366 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9367 --file. Fix -f, -l. Sort options. Untabify.
9368 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9369
9370 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9371
9372 * category.c (Fdefine_category, Fcategory_docstring)
9373 (Fget_unused_category, Fset_category_table)
9374 (Fcategory_set_mnemonics): Doc fixes.
9375
9376 2004-02-20 Kim F. Storm <storm@cua.dk>
9377
9378 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9379 The following changes are relative to the 2004-01-21 revision.
9380 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9381 in one call to read_socket_hook. Value is 8.
9382 (read_avail_input): Separate and rework handling of read_socket_hook
9383 and non-read_socket_hook cases. Use smaller input_event buffer
9384 in read_socket_hook case, and repeat if full buffer is read.
9385 Use new local variable 'discard' to skip input after C-g.
9386 In non-read_socket_hook case, just use a single input_event, and
9387 call kbd_buffer_store_event on the fly for each character.
9388
9389 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9390
9391 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9392 Remove unused `gu' alternative.
9393
9394 2004-02-19 Andreas Schwab <schwab@suse.de>
9395
9396 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9397 warning.
9398
9399 2004-02-18 Kim F. Storm <storm@cua.dk>
9400
9401 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9402 Fix last change.
9403
9404 2004-02-17 Kim F. Storm <storm@cua.dk>
9405
9406 * xdisp.c (fast_find_position): Fix return value of new version;
9407 it was inverted compared to the 21.1 version.
9408 (get_window_cursor_type): Don't look at glyph if NULL.
9409 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9410
9411 * keyboard.c: Rework previous change; it didn't consider that the
9412 buf array was allocated on the stack.
9413 (prev_read): Remove variable.
9414 (read_avail_input_buf): New static event buffer array.
9415 (in_read_avail_input): New static variable to handle re-entrancy.
9416 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9417 Use in_read_avail_input to handle re-entrance; when re-entered,
9418 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9419 Do not initialize read_avail_input_buf in full here; instead assume it
9420 is always cleared on entry. To ensure that, we clear (just) the
9421 entries that were used before we return.
9422 (init_keyboard): Initialize read_avail_input_buf here.
9423
9424 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9425
9426 * cmds.c (Fend_of_line): Doc fix.
9427
9428 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9429
9430 * keyboard.c (prev_read): New static variable.
9431 (read_avail_input): Use it to zero out only those slots in buf[]
9432 that were used last time we were called.
9433
9434 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9435
9436 * Makefile.in (obj): Move fringe.o from here...
9437 (XOBJ, MAC_OBJ): ...to here.
9438
9439 2004-02-16 Stephen Eglen <stephen@gnu.org>
9440
9441 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9442
9443 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9444
9445 * data.c (Fbyteorder):
9446 * fringe.c (Fdefine_fringe_bitmap):
9447 * xdisp.c (handle_single_display_prop):
9448 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9449
9450 2004-02-16 Jason Rumney <jasonr@gnu.org>
9451
9452 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9453
9454 2004-02-15 Steven Tamm <steventamm@mac.com>
9455
9456 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9457 controlling emulation of a three button mouse with option and
9458 command keys.
9459 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9460 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9461
9462 2004-02-15 Kim F. Storm <storm@cua.dk>
9463
9464 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9465
9466 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9467 Perform byte-swapping.
9468
9469 2004-02-14 Kim F. Storm <storm@cua.dk>
9470
9471 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9472 bits from char to short to facilitate wider bitmaps.
9473 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9474 member.
9475
9476 * fringe.c (struct fringe_bitmap): Change member bits from char to
9477 short to facilitate 16 bits wide bitmaps. Modify all standard
9478 bitmaps accordingly.
9479 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9480 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9481 (draw_fringe_bitmap): Ditto.
9482 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9483 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9484 handle up to 16 bits wide bitmaps.
9485 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9486 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9487
9488 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9489 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9490 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9491
9492 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9493 so it is no longer necessary to expand them here.
9494
9495 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9496
9497 2004-02-12 Kim F. Storm <storm@cua.dk>
9498
9499 * window.c (Fwindow_fringes): Doc fix.
9500
9501 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9502
9503 * xselect.c (x_get_foreign_selection): Add new optional parameter
9504 time_stamp.
9505 (Fx_get_selection_internal): Ditto, pass time_stamp to
9506 x_get_foreign_selection.
9507
9508 * data.c (Fbyteorder): New function.
9509
9510 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9511
9512 * atimer.c: Move include stdio.h to same place as in other files.
9513
9514 * region-cache.c: Ditto.
9515
9516 * sysdep.c: Ditto.
9517
9518 * xfaces.c: Ditto.
9519
9520 2004-02-09 Sam Steingold <sds@gnu.org>
9521
9522 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9523
9524 2004-02-09 Kim F. Storm <storm@cua.dk>
9525
9526 * fringe.c: New file. Move original fringe related declarations
9527 and code from dispextern.h and xdisp.c here.
9528 Rework code to support user defined fringe bitmaps, redefining
9529 standard bitmaps, ability to overlay user defined bitmap with
9530 overlay arrow bitmap, and add faces to bitmaps.
9531 (Voverflow_newline_into_fringe): Declare here.
9532 (enum fringe_bitmap_align): New enum.
9533 (..._bits): All bitmaps are now defined without bitswapping; that
9534 is now done in init_fringe_once (if necessary).
9535 (standard_bitmaps): New array with specifications for the
9536 standard fringe bitmaps.
9537 (fringe_faces): New array.
9538 (valid_fringe_bitmap_id_p): New function.
9539 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9540 (draw_fringe_bitmap): New function which draws fringe bitmap,
9541 possibly overlaying bitmap with cursor in right fringe or the
9542 overlay arrow in the left fringe.
9543 (update_window_fringes): Do not handle overlay arrow here.
9544 Compare and copy fringe bitmap faces.
9545 (init_fringe_bitmap): New function.
9546 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9547 define and destroy user defined fringe bitmaps.
9548 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9549 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9550 (syms_of_fringe): New function. Defsubr new DEFUNs.
9551 DEFVAR_LISP Voverflow_newline_into_fringe.
9552 (init_fringe_once, init_fringe): New functions.
9553 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9554
9555 * Makefile.in (obj): Add fringe.o.
9556 (fringe.o): New dependencies.
9557
9558 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9559 bits allocated to hold a fringe number. Increase number of bits
9560 from 4 to 8 to allow user defined fringe bitmaps.
9561 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9562 left_user_fringe_face_id, right_user_fringe_bitmap,
9563 right_user_fringe_face_id.
9564 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9565 Move to new file fringe.c.
9566 (MAX_FRINGE_BITMAPS): Define here.
9567 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9568 and overlay_p. Change member which to int.
9569 (struct redisplay_interface): New members define_fringe_bitmap
9570 and destroy_fringe_bitmap.
9571 (valid_fringe_bitmap_id_p): Add prototype.
9572 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9573
9574 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9575 arrows.
9576 (update_frame): Do flush_display if force_flush_display_p to
9577 ensure display (specifically fringes) are updated in a timely
9578 manner when resizing the frame by dragging the mouse.
9579 (update_window_line): Update row if overlay arrow changed.
9580 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9581 or overlay arrow changed.
9582
9583 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9584 syms_of_fringe, and init_fringe.
9585
9586 * frame.h (struct frame): New member force_flush_display_p.
9587
9588 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9589 Add prototypes.
9590
9591 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9592 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9593 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9594 Use cursor color for displaying cursor in fringe.
9595 (x_redisplay_interface): Add null handlers for
9596 define_fringe_bitmap and destroy_fringe_bitmap functions.
9597
9598 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9599 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9600 for displaying cursor in fringe.
9601 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9602 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9603 (w32_redisplay_interface): Add them to redisplay_interface.
9604 (w32_term_init): Call w32_init_fringe instead of explicitly
9605 defining fringe bitmaps in fringe_bmp array.
9606 (x_delete_display): Call w32_reset_fringes instead of explicitly
9607 destroying fringe bitmaps in fringe_bmp array.
9608
9609 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9610 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9611 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9612 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9613 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9614 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9615 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9616 Move fringe handling vars and code to new file fringe.c.
9617 (handle_display_prop): Handle left-fringe and right-fringe
9618 display properties; store user fringe bitmaps in iterator.
9619 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9620 (clear_garbaged_frames): Set force_flush_display_p if resized.
9621 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9622 (display_line): Handle cursor in fringe at eob.
9623 (display_line): Set row user fringe bitmaps from iterator.
9624
9625 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9626 Use cursor color for displaying cursor in fringe.
9627 (x_redisplay_interface): Add null handlers for
9628 define_fringe_bitmap and destroy_fringe_bitmap functions.
9629
9630 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9631
9632 * macfns.c (Fx_change_window_property): Make doc string and
9633 parameters same as for X version.
9634
9635 * w32fns.c (Fx_change_window_property): Ditto.
9636
9637 2004-02-07 Kim F. Storm <storm@cua.dk>
9638
9639 * xdisp.c (hscroll_window_tree): Position cursor near to right
9640 margin in hscrolled window when jumping to end of line (rather
9641 than centering cursor).
9642
9643 * process.c (wait_reading_process_input): Don't do adaptive read
9644 buffering if waiting for a specific process.
9645
9646 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9647
9648 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9649 (Fread_minibuffer, Feval_minibuffer)
9650 (Fread_string, Fread_no_blanks_input)
9651 (Fcompleting_read): Doc fixes.
9652 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9653 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9654 (read_minibuf): Fix initial comment.
9655 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9656 case-fold-search to the value of completion-ignore-case when
9657 checking completion-regexp-list.
9658 (Fdisplay_completion_list): Make it handle arguments that are
9659 symbols. Doc fix.
9660
9661 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9662
9663 * xterm.h: Add declaration of free_frame_menubar.
9664
9665 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9666 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9667 (Fx_change_window_property): Add declaration of parameters type and
9668 format. Remove unused variable cons.
9669
9670 * xselect.c: Include stdio,h.
9671
9672 2004-02-05 Kenichi Handa <handa@m17n.org>
9673
9674 * fns.c (Fset_char_table_range): Fix previous change.
9675
9676 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9677
9678 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9679
9680 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9681
9682 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9683
9684 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9685 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9686
9687 2004-02-04 Kenichi Handa <handa@m17n.org>
9688
9689 * fns.c (Fset_char_table_range): Handle charsets ascii,
9690 eight-bit-control, and eight-bit-graphic correctly.
9691
9692 2004-02-03 Jason Rumney <jasonr@gnu.org>
9693
9694 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9695
9696 * w32fns.c (x_to_w32_font): Likewise.
9697
9698 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9699
9700 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
9701 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
9702
9703 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
9704 ClientMessages.
9705
9706 * xselect.c: Include termhooks.h and X11/Xproto.h
9707 (x_check_property_data, x_fill_property_data)
9708 (x_property_data_to_lisp, mouse_position_for_drop)
9709 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
9710 (Fx_send_client_event): Move here from xfns.c.
9711 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
9712
9713 * xfns.c (x-send-client-message): Move to xselect.c
9714 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
9715 OUTER_P.
9716 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
9717 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
9718 if vector_ret_p is true.
9719 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
9720
9721 2004-02-02 Eli Zaretskii <eliz@gnu.org>
9722
9723 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
9724 basename of FILE relative to it, not FILE itself.
9725
9726 2004-02-02 Kenichi Handa <handa@m17n.org>
9727
9728 * coding.c (coding_restore_composition): Check invalid
9729 composition data more rigidly.
9730
9731 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
9732
9733 * fileio.c (Fread_file_name_internal): Correctly handle the case
9734 where insert-default-directory is nil.
9735 (Fread_file_name): Always return an empty string if the user exits
9736 with an empty minibuffer. Adapt the docstring accordingly.
9737 (syms_of_fileio): Adapt the docstring of insert-default-directory
9738 to the change in Fread_file_name.
9739
9740 2004-01-29 Eli Zaretskii <eliz@gnu.org>
9741
9742 * alloca.c [!alloca]: Fix the prototype for xfree.
9743
9744 2004-01-29 Kenichi Handa <handa@m17n.org>
9745
9746 * fns.c (string_char_to_byte): Optimize for ASCII only string.
9747 (string_byte_to_char): Likewise.
9748
9749 2004-01-28 Peter Runestig <peter@runestig.com>
9750
9751 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
9752
9753 2004-01-27 Steven Tamm <steventamm@mac.com>
9754
9755 * unexmacosx.c (unexec_copy): Do not copy more than was
9756 requested to prevent overwriting during unexec.
9757
9758 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9759
9760 * process.c (sigchld_handler): Add comment about not calling malloc.
9761
9762 * process.h: Add extern to synch_process_termsig.
9763
9764 2004-01-27 Steven Tamm <steventamm@mac.com>
9765
9766 * macterm.c (make_mac_frame, make_mac_terminal_frame):
9767 Move setting of scroll bars from make_mac_frame to
9768 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
9769
9770 2004-01-26 Richard M. Stallman <rms@gnu.org>
9771
9772 * search.c (Freplace_match): Handle nonexistent
9773 back-references properly.
9774
9775 2004-01-03 Richard M. Stallman <rms@gnu.org>
9776
9777 * window.c (decode_any_window): New function.
9778 (Fwindow_height, Fwindow_width, Fwindow_edges)
9779 (Fwindow_pixel_edges, Fwindow_inside_edges)
9780 (Fwindow_inside_pixel_edges): Use decode_any_window.
9781
9782 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9783
9784 * process.h: synch_process_termsig new variable.
9785
9786 * callproc.c: Define synch_process_termsig.
9787 (Fcall_process): Initiate synch_process_termsig to zero and
9788 check if non-zero and get signal name after subprocess has ended.
9789
9790 * process.c (sigchld_handler): Set synch_process_termsig
9791 if terminated by a signal. synch_process_death setting removed.
9792
9793 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
9794
9795 2004-01-26 Andreas Schwab <schwab@suse.de>
9796
9797 * print.c (print_preprocess): Declare size as EMACS_INT to not
9798 lose bits.
9799 (print_object): Likewise.
9800 * alloc.c (Fpurecopy): Likewise.
9801
9802 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
9803
9804 * window.c (Fwindow_minibuffer_p): Doc fix.
9805
9806 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
9807
9808 * editfns.c (Fformat): Make both passes accept the same set of flags.
9809
9810 2004-01-23 Kenichi Handa <handa@m17n.org>
9811
9812 * fns.c (Fmd5): If OBJECT is a buffer different from the current
9813 one, set buffer to OBJECT temporarily.
9814
9815 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9816
9817 * keyboard.c (kbd_buffer_gcpro): Remove.
9818 (kbd_buffer_store_event, clear_event, Fdiscard_input)
9819 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
9820 Don't initialize and/or maintain the variable any more. It was made
9821 redundant by my commit of 2003-06-15.
9822
9823 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
9824
9825 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9826
9827 * lisp.h: Add undef DECL_ALIGN.
9828
9829 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
9830
9831 * process.c (wait_reading_process_input) [SYNC_INPUT]:
9832 Check interrupt_input_pending explicitly.
9833
9834 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
9835
9836 * keyboard.c (handle_async_input): New fun,
9837 extracted from input_available_signal.
9838 (input_available_signal, reinvoke_input_signal): Use it.
9839
9840 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
9841
9842 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
9843
9844 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
9845 manipulation macros for when tags are in the lower bits.
9846 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
9847 (DECL_ALIGN): New macro.
9848 (DEFUN): Use it.
9849
9850 * lisp.h [ENABLE_CHECKING]: Don't force union type.
9851
9852 * s/darwin.h (__attribute__): Remove outdated workaround.
9853
9854 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
9855
9856 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
9857 Don't check range of malloc address.
9858 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
9859
9860 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
9861
9862 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
9863
9864 2004-01-19 Kenichi Handa <handa@m17n.org>
9865
9866 * fontset.c (fontset_font_pattern): Fix previous change.
9867
9868 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
9869
9870 * xdisp.c (Voverflow_newline_into_fringe)
9871 (move_it_in_display_line_to, redisplay_internal)
9872 (update_window_fringes, redisplay_window, display_line, window):
9873 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
9874 that it compiles without a window-system.
9875 * dispnew.c (direct_output_for_insert, update_window): Likewise.
9876
9877 2004-01-16 Kim F. Storm <storm@cua.dk>
9878
9879 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
9880
9881 * buffer.c (init_buffer_once): Set buffer_defaults and
9882 buffer_local_flags for indicate_buffer_boundaries.
9883 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
9884 default- variable for it.
9885
9886 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
9887 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
9888 New members exact_window_width_line_p and cursor_in_fringe_p for
9889 overflowing newlines into right fringe.
9890 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
9891 and indicate_bottom_line_p for buffer boundaries and scrolling.
9892 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
9893 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
9894 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
9895 and HOLLOW_SQUARE_BITMAP.
9896 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
9897 Add prototypes.
9898
9899 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
9900 instead of related indicator fields.
9901 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
9902 (direct_output_for_insert): Handle exact width lines like
9903 contined lines. Call update_window_fringes.
9904 (update_window): Call update_window_fringes.
9905 (scrolling_window): Don't skip desired rows with changed bitmaps.
9906 Check if fringe bitmaps changes when assigning scrolled rows.
9907
9908 * xdisp.c (Voverflow_newline_into_fringe): New variable.
9909 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
9910 (move_it_in_display_line_to): Overflow newline into fringe for
9911 rows that are exactly as wide as the window.
9912 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
9913 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
9914 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
9915 (fringe_bitmaps): Add new bitmaps.
9916 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
9917 Select proper bitmap for cursor in fringe when appropriate.
9918 Handle alignment of bitmap to top or bottom of row.
9919 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
9920 done by update_window_fringes.
9921 (update_window_fringes, draw_window_fringes): New functions.
9922 (redisplay_internal): Call update_window_fringes in case only
9923 cursor row is updated.
9924 (redisplay_window): Call update_window_fringes.
9925 Explicitly call draw_window_fringes if redisplay was done using
9926 the current matrix or the overlay arrow is in the window.
9927 (try_window_reusing_current_matrix): Mark scrolled rows for
9928 fringe update (to update buffer-boundaries / scrolling icons).
9929 (find_last_unchanged_at_beg_row): Handle exact width lines line
9930 continued lines.
9931 (display_line): Overflow newline into fringe for rows that are
9932 exactly as wide as the window. Don't append space for newline
9933 in this case.
9934 (notice_overwritten_cursor): Explicitly clear cursor bitmap
9935 in fringe as if it had been overwritten.
9936 (erase_phys_cursor): Erase cursor bitmap in fringe.
9937 (syms_of_xdisp): Mark show-trailing-whitespace and
9938 void-text-area-pointer as user options.
9939 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
9940
9941 * xterm.c (x_update_window_end): Call draw_window_fringes.
9942 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9943 in row instead of actually drawing fringe bitmaps.
9944 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9945 (x_draw_window_cursor): Draw cursor in fringe.
9946
9947 * w32term.c (x_update_window_end): Call draw_window_fringes.
9948 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9949 in row instead of actually drawing fringe bitmaps.
9950 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9951 (w32_draw_window_cursor): Draw cursor in fringe.
9952
9953 * macterm.c (x_update_window_end): Call draw_window_fringes.
9954 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
9955 in row instead of actually drawing fringe bitmaps.
9956 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
9957 (mac_draw_window_cursor): Draw cursor in fringe.
9958
9959 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9960
9961 * xterm.c (handle_one_xevent): Don't handle characters that are part
9962 of an old style (XLookupString) compose sequence.
9963
9964 2004-01-15 Kenichi Handa <handa@m17n.org>
9965
9966 * search.c (Freplace_match): Use make_multibyte_string or
9967 make_unibyte_string according to the buffer multibyteness.
9968
9969 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
9970
9971 * alloc.c (struct interval_block, struct string_block)
9972 (struct symbol_block, struct marker_block, live_string_p)
9973 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
9974 Better preserve alignment for objects in blocks.
9975 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
9976
9977 * lread.c (defvar_per_buffer): Remove dead declaration.
9978
9979 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
9980 space size.
9981
9982 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9983
9984 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
9985 if a key press should pop down. Only pop down if a key is pressed
9986 outside the menu/dialog.
9987 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
9988 popup_get_selection.
9989 (create_and_show_dialog): Pass 1 for down_on_keypress to
9990 popup_get_selection.
9991
9992 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9993
9994 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
9995 BLOCK/UNBLOCK_INPUT.
9996
9997 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9998
9999 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10000 specified.
10001
10002 2004-01-08 Kenichi Handa <handa@m17n.org>
10003
10004 * editfns.c (Fformat): Fix '&' to '&&'.
10005
10006 2004-01-08 Andreas Schwab <schwab@suse.de>
10007
10008 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10009 size if PSEUDOVECTOR_FLAG is set.
10010
10011 2004-01-07 Kenichi Handa <handa@m17n.org>
10012
10013 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10014
10015 * fontset.c (fontset_ref_via_base): Fix previous change.
10016
10017 2004-01-07 Kim F. Storm <storm@cua.dk>
10018
10019 * process.c (read_process_output): Only activate adaptive
10020 buffering if we read less than 256 bytes at a time.
10021
10022 2004-01-06 Kim F. Storm <storm@cua.dk>
10023
10024 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10025 object and image object. Return glyph width and height.
10026 (mode_line_string, marginal_area_string): Ditto.
10027
10028 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10029 (marginal_area_string): Fix prototypes.
10030
10031 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10032 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10033 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10034
10035 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10036 buffer_posn_from_coords, and marginal_area_string functions to
10037 include both string object and image object in the lispy position.
10038 Also add actual glyph width and height to position.
10039 (read_key_sequence): Use real buffer position from mouse
10040 event to find keymap property even when click is in marginal area.
10041
10042 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10043 mode_line_string and marginal_area_string functions to handle
10044 both string object and image object properties.
10045
10046 2004-01-06 Andreas Schwab <schwab@suse.de>
10047
10048 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10049 character.
10050
10051 2004-01-02 Andreas Schwab <schwab@suse.de>
10052
10053 * macterm.c (emacs_options, x_initialized, same_x_server):
10054 Remove unused (and duplicated) definitions.
10055
10056 2004-01-02 Kim F. Storm <storm@cua.dk>
10057
10058 * process.h (struct Lisp_Process): New members for adaptive read
10059 buffering: adaptive_read_buffering, read_output_delay, and
10060 read_output_skip.
10061
10062 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10063 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10064 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10065 (process_output_delay_count, process_output_skip): New vars.
10066 (Vprocess_adaptive_read_buffering): New variable.
10067 (make_process): Initialize adaptive read buffering members.
10068 (Fstart_process): Set adaptive_read_buffering member.
10069 (deactivate_process): Cleanup adaptive read buffering.
10070 (wait_reading_process_input): Temporarily omit delayed
10071 subprocesses from the set of file descriptors to read from;
10072 adjust the select timeout if we skipped any subprocesses.
10073 (read_process_output): Increase adaptive read buffering delay if
10074 we read less than a full buffer; reduce delay when we read a
10075 full buffer.
10076 (send_process): Simplify using local Lisp_Process var.
10077 Reset adaptive read buffering delay after write.
10078 (init_process): Initialize process_output_delay_count and
10079 process_output_skip.
10080 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10081
10082 2004-01-01 Jason Rumney <jasonr@gnu.org>
10083
10084 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10085
10086 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10087
10088 * print.c (Ferror_message_string): Add hyperlink in the docstring
10089 to the definition of `signal' in the Elisp manual.
10090 * eval.c (Fsignal): Ditto.
10091
10092 2003-12-29 James Clark <jjc@jclark.com>
10093
10094 * fns.c (internal_equal): Return t for two NaN arguments.
10095
10096 2003-12-29 Richard M. Stallman <rms@gnu.org>
10097
10098 * data.c (store_symval_forwarding): Handle setting
10099 default-fill-column, etc., by changing the value in
10100 buffers that use the default.
10101
10102 * minibuf.c (Fset_minibuffer_window): Doc fix.
10103
10104 * fileio.c (choose_write_coding_system): Ignore auto_saving
10105 if using the visited file for auto saves.
10106 (Fwrite_region): Don't update SAVE_MODIFF
10107 if auto-saving in visited file.
10108
10109 2003-12-29 Kenichi Handa <handa@m17n.org>
10110
10111 * dispextern.h (face_font_available_p): Extern it.
10112
10113 * fontset.c (Voverriding_fontspec_alist): New variable.
10114 (lookup_overriding_fontspec): New function.
10115 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10116 (fontset_font_pattern): Likewise.
10117 (regulalize_fontname): New function.
10118 (Fset_fontset_font): Call regulalize_fontname.
10119 (Fset_overriding_fontspec_internal): New function.
10120 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10121 Defsubr Sset_overriding_fontspec_internal.
10122
10123 * xfaces.c (face_font_available_p): New function.
10124
10125 2003-12-28 Richard M. Stallman <rms@gnu.org>
10126
10127 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10128 or if its name is nil.
10129
10130 * buffer.c (Fkill_buffer): Don't delete auto-save file
10131 if it's the same as the visited file.
10132
10133 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10134
10135 * coding.c (Fcheck_coding_system): Doc fix.
10136
10137 2003-12-28 Kim F. Storm <storm@cua.dk>
10138
10139 * Makefile.in (eval.o): Depend on dispextern.h.
10140
10141 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10142 image glyph using image's ascent.
10143 (mode_line_string): Return image glyph as object clicked on.
10144 Adjust y0 for image glyph using image's ascent.
10145
10146 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10147 (struct glyph): New members, ascent and descent. Used to save
10148 this glyph's ascent and descent, instead of having.
10149 (struct glyph): Declare member face_id using FACE_ID_BITS.
10150 (find_hot_spot): Add prototype.
10151
10152 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10153 (QCmap): Declare extern.
10154 (make_lispy_position): When position is inside image hot-spot,
10155 use hot-spot element's id as posn element.
10156
10157 * lisp.h (IMAGEP): New macro to test for image object type.
10158 (Qimage): Declare extern.
10159
10160 * macfns.c (Qimage): Remove extern (now in lisp.h).
10161 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10162
10163 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10164
10165 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10166 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10167
10168 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10169
10170 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10171
10172 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10173 pointer types.
10174 (Qrelative_width, Qalign_to): Remove unused variables.
10175 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10176 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10177 image maps.
10178 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10179 new dx and dy args.
10180 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10181 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10182 than row's ascent and height, to get sensible height on tall rows.
10183 (build_desired_tool_bar_string): Remove Qimage extern.
10184 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10185 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10186 image glyph is alone on the last line.
10187 (append_glyph, append_composite_glyph, produce_image_glyph)
10188 (append_stretch_glyph): Set glyph's ascent and descent.
10189 (on_hot_spot_p): New function to check if position is inside an
10190 rectangular, circular, or polygon-shaped image hot-spot,
10191 (find_hot_spot): New function to search for image hot-spot.
10192 (Flookup_image_map): New defun to search for image hot-spot.
10193 (define_frame_cursor1): New aux function to determine frame pointer.
10194 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10195 Handle `pointer' text property and :pointer image property to
10196 control frame pointer shape. Detect image hot-spots for pointer
10197 and help_echo properties. Use define_frame_cursor1.
10198 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10199 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10200 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10201
10202 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10203
10204 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10205 (Qimage): Remove extern (now in lisp.h).
10206 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10207
10208 * xmenu.c (show_help_event): Remove unused code.
10209
10210 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10211 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10212 row's ascent and descent, to get a sensible height on tall rows.
10213
10214 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10215
10216 * minibuf.c (Fcompleting_read): Undo previous change.
10217
10218 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10219
10220 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10221 Arguments GCPRO'ed in call to file name handler.
10222
10223 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10224
10225 * termcap.c (tgetst1): Scan for "%pN"; if all
10226 N are continuous in [1,9], remove all "%pN".
10227
10228 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10229
10230 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10231
10232 * xfaces.c (lface_fully_specified_p): Take into account that
10233 MAC OS always have unspecified stipple.
10234
10235 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10236
10237 * tparam.c (tparam1): Add handling for `%pN', which
10238 means use param N for the next substitution.
10239
10240 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10241
10242 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10243 In case `frame' is nil, consult the selected frame.
10244 (Fcolor_supported_p): Likewise.
10245
10246 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10247
10248 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10249 Doc fixes.
10250
10251 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10252 and an integer. Adapt the introductory comment accordingly.
10253 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10254 Doc fix.
10255 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10256 read_minibuf.
10257 (Fcompleting_read): Delete code moved into read_minibuf.
10258 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10259
10260 2003-12-03 Kenichi Handa <handa@m17n.org>
10261
10262 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10263 encoding sequence.
10264
10265 2003-12-01 Kenichi Handa <handa@m17n.org>
10266
10267 * composite.c (syms_of_composite): Don't make the compostion hash
10268 table week.
10269
10270 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10271
10272 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10273 * textprop.c (Fget_char_property_and_overlay): New function.
10274 (syms_of_textprop): Defsubr it.
10275
10276 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10277
10278 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10279 to compile on terminal configuration.
10280
10281 * fileio.c (Fread_file_name): Check use_file_dialog also before
10282 calling Fx_file_dialog.
10283
10284 * fns.c (use_file_dialog): New variable.
10285 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10286
10287 2003-11-29 Kim F. Storm <storm@cua.dk>
10288
10289 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10290 (syms_of_msdos): Don't intern and staticpro them.
10291
10292 2003-11-27 Kim F. Storm <storm@cua.dk>
10293
10294 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10295 coordinates relative to glyph at posn. If glyph is an image,
10296 return that as object at posn. Callers changed.
10297 (mode_line_string, marginal_area_string): Calculate and return
10298 pixel coordinates relative to glyph. Callers changed.
10299
10300 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10301 (marginal_area_string): Fix prototypes.
10302 (window_box_left_offset, window_box_right_offset): Add prototypes.
10303
10304 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10305 Remove prototypes.
10306
10307 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10308
10309 * keyboard.c (make_lispy_position): Add x and y coordinates
10310 relative to the current glyph as 7th element of position.
10311 If glyph is an image, return it in the object element.
10312 (read_key_sequence): Skip checks for keymap property in cases
10313 where POSN_STRING is not a string (e.g. an image).
10314
10315 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10316 (Vshow_text_cursor_in_void): New variable.
10317 (glyph_to_pixel_coords): Don't use negative hpos.
10318 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10319 (append_stretch_glyph): Change ascent arg to be actual value
10320 in pixels rather than ratio to height. Callers changed.
10321 (calc_pixel_width_or_height): New aux function, implementing
10322 pixel based artihmetic for glyph widths and heights.
10323 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10324 :width, :height, :align-to, and :ascent, thus allowing these to
10325 be specified in pixels as well as multiples of characters.
10326 Don't produce stretch glyphs with zero width or height.
10327 (get_specified_cursor_type): Declare static.
10328 (get_window_cursor_type): Declare static. Add glyph arg to be
10329 able to know when cursor is on an image; always substitute
10330 hollow-box cursor for filled-box cursor on images, to avoid
10331 negative images and flicker when blinking the cursor.
10332 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10333 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10334 than vertical scroll-bar cursor in display margins.
10335 (note_mouse_highlight): Use non-text cursor rather than text
10336 cursor in fringes and over images in the text area.
10337 Use non-text cursor when mouse pointer is outside editable text,
10338 i.e. in the void after end-of-line or end-of-buffer; this was
10339 already done for W32, but is now standard for all systems --
10340 user can toggle show-text-cursor-in-void to get old behaviour.
10341 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10342 Vdisplay_pixels_per_inch.
10343
10344 2003-11-25 Andreas Schwab <schwab@suse.de>
10345
10346 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10347 EMACS_INT to not lose bits.
10348 (Ffillarray): Don't set bits beyond the size of a bool vector.
10349
10350 2003-11-25 Kim F. Storm <storm@cua.dk>
10351
10352 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10353 define this defun on systems that cannot use stderr as lvalue.
10354
10355 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10356
10357 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10358 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10359 ld's default is incompatible with unexec.
10360
10361 2003-11-23 Kim F. Storm <storm@cua.dk>
10362
10363 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10364 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10365 (Fforce_window_update): New defun.
10366 (syms_of_window): Defsubr it.
10367 (Fset_window_margins, Fset_window_fringes): Doc fix.
10368
10369 * print.c (Fredirect_debugging_output): New defun.
10370 (syms_of_print): Defsubr it.
10371
10372 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10373
10374 * fns.c (Fset_char_table_parent): Doc fix.
10375
10376 2003-11-22 Kim F. Storm <storm@cua.dk>
10377
10378 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10379 for glyph clicked on, rather than (unused) pixel positions.
10380 (mode_line_string, marginal_area_string): Change X and Y args to
10381 pointers for returning actual row/column for glyph clicked on.
10382 Simplify and optimize loops.
10383
10384 * dispextern.h (mode_line_string, marginal_area_string):
10385 Update prototypes.
10386
10387 * keyboard.c (make_lispy_position): New function for generating
10388 mouse click positions from frame and pixel coordinates.
10389 Enhanced to return buffer position and actual row/column for
10390 events outside the text area using updated mode_line_string and
10391 marginal_area_string functions.
10392 Return left-fringe and right-fringe clicks as such, rather than
10393 clicks in text area.
10394 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10395 pixel_to_glyph_coords, as we never use the results.
10396 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10397 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10398 Eliminate unused code in WHEEL_EVENT handling.
10399 (make_lispy_movement): Use make_lispy_position.
10400
10401 * window.c (coordinates_in_window): Remove redundant tests.
10402 Fix returned X pixel value for left-margin.
10403
10404 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10405 mode_line_string and marginal_area_string parameters.
10406
10407 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10408
10409 * w32.c (struct the_group, getgrgid): Add.
10410 * mac.c (struct my_group, getgrgid): Add.
10411
10412 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10413
10414 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10415
10416 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10417
10418 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10419 include in call to file name handler. Optionally translate numeric
10420 UID and GID to strings. Update docstring.
10421 (directory_files_internal): Add parameter ID-FORMAT.
10422 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10423 include in call to file name handler and call to
10424 directory_files_internal. Update Docstring.
10425 (Fdirectory_files): Add dummy parameter in call to
10426 directory_files_internal.
10427 * lisp.h (Qinteger): Add.
10428 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10429 (Ffile_attributes): Add parameter.
10430 * data.c (Qinteger): Export.
10431
10432 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10433
10434 * fns.c (Freverse, Fnreverse): Doc fixes.
10435
10436 2003-11-19 Kim F. Storm <storm@cua.dk>
10437
10438 * xdisp.c (init_iterator): Initialize it->start to position
10439 before reseating (in case start position is invisible).
10440 (init_to_row_start): Set it->start to row-start.
10441 (redisplay_window): Accept optional_new_start if start position
10442 is invisible (in which case IT_CHARPOS overshoots PT).
10443 (display_line): Setup row->start from it->start (rather than
10444 it->current which is wrong if first char on line is invisible).
10445 When done, reseat it->start to it->current (= start of next row).
10446 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10447 is only partially visible.
10448
10449 * dispextern.h (struct it): New member start.
10450
10451 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10452
10453 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10454 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10455 of block_index outside of the macro call.
10456 (Fgarbage_collect): Remove null code.
10457
10458 * m/amdx86-64.h: Don't redefine XPNTR.
10459
10460 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10461 of VALMASK.
10462
10463 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10464 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10465 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10466
10467 * lisp.h (VALMASK): Only define for non-union type.
10468 (MARKBIT): Remove.
10469 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10470 (XTYPE): Define unconditionally.
10471 (XSETTYPE): Remove one more remnant.
10472 (EQ): Define differently for the union and non-union cases.
10473 (INTMASK): New bit mask.
10474 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10475 (GC_EQ): Delegate to EQ.
10476
10477 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10478
10479 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10480
10481 * xterm.c (x_window_to_scroll_bar): Move check of display to
10482 where window_id is compared.
10483
10484 2003-11-17 Kim F. Storm <storm@cua.dk>
10485
10486 * dispextern.h (struct it): New member first_vpos.
10487
10488 * xdisp.c (start_display): Set it->first_vpos.
10489 (try_window_id): Use first_vpos to start display in first _text_
10490 line if no reusable lines at start of window with header line.
10491
10492 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10493
10494 * w32fns.c (XPutPixel):
10495 * w32bdf.c (w32_init_bdf_font):
10496 * sunfns.c (sel_read):
10497 * process.c (Fmake_network_process):
10498 * frame.c (store_frame_param):
10499 * fontset.c (Fset_fontset_font):
10500 * emacs.c (shut_down_emacs):
10501 * ccl.c (ccl_driver): Remove period at end of error message.
10502
10503 * config.in: Regenerate.
10504
10505 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10506 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10507 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10508 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10509 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10510
10511 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10512
10513 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10514 (XTmouse_position, handle_one_xevent): Pass Display* to
10515 x_window_to_scroll_bar.
10516 (x_window_to_scroll_bar): Take a Display* argument.
10517 Check that display for frame is equal to Display* argument.
10518 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10519 x_display_info_for_display instead. Use Display in xev instead
10520 of GDK_DISPLAY.
10521 (x_dispatch_event): Call x_display_info_for_display.
10522 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10523 (x_connection_closed): Call xg_display_close for GTK.
10524 (x_term_init): Call xg_display_open for additional displays.
10525 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10526 for GTK.
10527
10528 * xmenu.c (single_menu_item, mouse_position_for_popup)
10529 (x_activate_menubar): Formatting adjustments.
10530
10531 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10532 adjustments.
10533
10534 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10535 (xg_display_close, xg_create_default_cursor)
10536 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10537 handling.
10538 (xg_left_ptr_cursor): Remove.
10539 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10540 cursor here.
10541 (xg_win_to_widget): Take Display* argument, call
10542 gdk_xid_table_lookup_for_display.
10543 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10544 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10545 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10546 in FRAME_X_DISPLAY_INFO.
10547 (xg_get_scroll_id_for_window): Take Display* argument.
10548 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10549 (xg_initialize): Remove xg_left_ptr_cursor.
10550
10551 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10552 Display* argument.
10553 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10554
10555 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10556
10557 * xterm.c (x_detect_focus_change): Do not change focus frame for
10558 Enter/LeaveNotify if the current focus frame has explicit focus.
10559
10560 2003-11-14 Kim F. Storm <storm@cua.dk>
10561
10562 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10563 is active and first glyph is only partially visible.
10564
10565 2003-11-13 Kenichi Handa <handa@m17n.org>
10566
10567 * xdisp.c (select_frame_for_redisplay): New function.
10568 (redisplay_internal): Record also selected_frame for
10569 unwind_redisplay. Call select_frame_for_redisplay before
10570 redrawing each frame.
10571 (unwind_redisplay): Argument changed to a cons.
10572
10573 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10574
10575 * fns.c (Fstring_to_multibyte): Doc fix.
10576
10577 2003-11-11 Kenichi Handa <handa@m17n.org>
10578
10579 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10580
10581 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10582
10583 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10584 program specified positions.
10585
10586 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10587
10588 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10589
10590 2003-11-08 Kenichi Handa <handa@m17n.org>
10591
10592 * Makefile.in (lisp): Add kannada.el.
10593 (shortlisp): Likewise.
10594
10595 2003-11-07 Kenichi Handa <handa@m17n.org>
10596
10597 * coding.c (coding_allocate_composition_data):
10598 Reset coding->composing to COMPOSITION_NO.
10599 (coding_restore_composition): Detect invalid composition data.
10600 Give Fstring and Fvector a Lispy integer, not C int.
10601
10602 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10603
10604 * floatfns.c (Flogb): Don't use VALMASK.
10605
10606 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10607 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10608
10609 * lisp.h (XINT): Move the cast to clarify what is going on.
10610 (GCTYPEMASK, XSETTYPE): Remove.
10611 (XGCTYPE): Make it an alias of XTYPE.
10612
10613 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10614
10615 * xterm.c (x_term_init): Fix formatting.
10616
10617 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10618
10619 * gtkutil.h (xg_have_tear_offs): Declare.
10620 (xg_keep_popup, xg_did_tearoff): Remove.
10621
10622 * gtkutil.c: Remove variable xg_did_tearoff.
10623 (xg_have_tear_offs): New function.
10624 (tearoff_remove): Just decrease xg_detached_menus.
10625 (tearoff_activate): Increase xg_detached_menus and call
10626 tearoff_remove when tearoff is removed.
10627 (xg_keep_popup): Remove function.
10628 (create_menus): Give add_tearoff_p as argument to recursive
10629 call to create_menus.
10630 (xg_create_widget): Use variables instead of multiple
10631 strcmp. Tell create_menus to create tear off only for
10632 menu bar menus.
10633 (xg_update_menubar): Change title for a detached menu also.
10634 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10635 of deep_p.
10636 (xg_initialize): Initialize xg_detached_menus, remove
10637 initialization of xg_did_tearoff.
10638
10639 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10640 xg_have_tear_offs returns non-zero.
10641 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10642 call to xg_keep_popup.
10643
10644 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10645
10646 * macterm.c (XTread_socket): Handle menubar selection and grow
10647 window only for mouseDown events.
10648
10649 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10650
10651 * xterm.c (x_term_init): For GTK part, increase x_initialized
10652 to check for more than one display. Use error instead of return 0.
10653
10654 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10655
10656 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10657 (copy_dysymtab): Call it.
10658
10659 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10660
10661 * eval.c (Fdefvaralias): Doc fix.
10662
10663 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10664
10665 * data.c (Fsetplist): Doc fix.
10666
10667 2003-10-14 Lute Kamstra <lute@gnu.org>
10668
10669 * window.c (Fset_window_fringes): Clarify docstring.
10670
10671 2003-10-14 Kim F. Storm <storm@cua.dk>
10672
10673 * window.c (Fset_window_margins): Simplify arg checking.
10674
10675 2003-10-13 Richard M. Stallman <rms@gnu.org>
10676
10677 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10678 (print_partial_compiled_pattern): Replace assert with a printout.
10679 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10680
10681 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10682
10683 * window.c (Fset_window_margins): Allow only integers as args.
10684 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10685 Doc fixes.
10686
10687 2003-10-13 Lute Kamstra <lute@gnu.org>
10688
10689 * window.c (Fset_window_fringes): Elaborate docstring.
10690
10691 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10692
10693 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10694
10695 * s/darwin.h (GC_MARK_STACK): Define.
10696
10697 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10698
10699 * window.c (shrink_windows): New function.
10700 (size_window): Call shrink_windows to calculate window sizes when
10701 shrinking frame with more than one window.
10702
10703 2003-10-12 Kim F. Storm <storm@cua.dk>
10704
10705 * xdisp.c (compute_fringe_widths): Doc fix.
10706
10707 2003-10-08 Kenichi Handa <handa@m17n.org>
10708
10709 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
10710
10711 2003-10-07 Kenichi Handa <handa@m17n.org>
10712
10713 * coding.c (Qcoding_system_define_form): New variable.
10714 (syms_of_coding): Intern and staticpro it.
10715 (Fcheck_coding_system): Try to autoload the definition of
10716 CODING-SYSTEM.
10717
10718 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
10719
10720 * fns.c (Frequire): Doc fix.
10721
10722 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10723
10724 * xfns.c (Fx_send_client_event): New function as a base for
10725 manipulating extended window manager hints.
10726 (Fx_send_client_event): Remove unused variable s.
10727
10728 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
10729 that function is removed.
10730
10731 * xterm.c (x_set_offset): Use move_offset_left/top instead of
10732 x/y_pixels_outer_diff.
10733 (x_check_expected_move): Calculate move_offset_left/top.
10734
10735 * xterm.h (struct x_output): New members: move_offset_top/left.
10736
10737 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
10738 call x_set_offset directly.
10739
10740 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
10741
10742 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
10743
10744 * xterm.c (x_delete_display): Free font names and font_encoder
10745 in dpyinfo->font_table.
10746
10747 * xfns.c (Fx_close_connection): Only call XFreeFont here.
10748 Move xfree of font names to x_delete_display.
10749
10750 * xterm.h (struct x_display_info): New member, wm_type.
10751 (struct x_output): New members, expected_top/left and
10752 check_expected_move.
10753
10754 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
10755 is received.
10756 (handle_one_xevent): Rename x_check_expected_move from
10757 x_check_fullscreen_move.
10758 (x_set_offset): Only add WM decoration sizes to modified_top/left
10759 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
10760 (x_check_expected_move): Rename from x_check_fullscreen_move.
10761 Removed fullscreen specific code. Use check_expected_move,
10762 expected_left/top instead. Also, set wm_type.
10763 (x_term_init): Initialize wm_type to unknown.
10764
10765 * frame.c (x_fullscreen_move): Remove addition of WM decoration
10766 sizes to move_x/y.
10767
10768 2003-10-03 Kenichi Handa <handa@m17n.org>
10769
10770 * macterm.c (x_load_font): Clear all members of FONTP before start
10771 filling them.
10772
10773 2003-10-02 Kenichi Handa <handa@m17n.org>
10774
10775 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
10776 before calling find_ccl_program_func. Call find_ccl_program_func
10777 only when fontp->font_encoder is not NULL.
10778
10779 * xterm.c (x_load_font): Clear all members of FONTP before start
10780 filling them.
10781
10782 2003-10-03 John Paul Wallington <jpw@gnu.org>
10783
10784 * keymap.c (map_keymap): Don't abort when binding is a vector.
10785
10786 2003-10-02 Jason Rumney <jasonr@gnu.org>
10787
10788 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
10789 Sync dependencies with Makefile.in.
10790 (alloca.o): Remove.
10791
10792 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
10793 filling them.
10794
10795 * w32bdf.c (w32_load_bdf_font): Likewise.
10796
10797 2003-09-30 Richard M. Stallman <rms@gnu.org>
10798
10799 * term.c (set_tty_color_mode): Calculate current_mode_spec
10800 regardless of value of VAL.
10801
10802 * intervals.c (graft_intervals_into_buffer):
10803 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
10804 Handle over_used when splitting UNDER.
10805
10806 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10807
10808 * regex.c (regex_compile): Free the stack when returning from function.
10809
10810 2003-09-28 Kenichi Handa <handa@m17n.org>
10811
10812 * fontset.c (Finternal_char_font): Change return value to
10813 cons (FONT-NAME . GLYPH-CODE).
10814
10815 2003-09-28 Eli Zaretskii <eliz@gnu.org>
10816
10817 * term.c (tty_setup_colors): Treat any negative argument as -1.
10818
10819 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
10820
10821 * process.c (send_process): Delete unused temp_buf.
10822
10823 2003-09-26 Dave Love <fx@gnu.org>
10824
10825 * xterm.c (x_bitmap_mask): Declare.
10826
10827 2003-09-25 Dave Love <fx@gnu.org>
10828
10829 * Makefile.in (fns.o): Depend on md5.h.
10830
10831 2003-09-25 Kim F. Storm <storm@cua.dk>
10832
10833 * window.c (set_window_buffer): Fix redisplay problems when
10834 switching between buffers with different display margin widths.
10835
10836 2003-09-23 Kim F. Storm <storm@cua.dk>
10837
10838 * process.c (set_socket_option): Fix :bindtodevice option.
10839 (Fset_network_process_option): Update process contact list when
10840 setting option succeeds.
10841 (Fmake_network_process): Doc fix.
10842
10843 2003-09-23 Dave Love <fx@gnu.org>
10844
10845 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
10846
10847 2003-09-22 Eli Zaretskii <eliz@gnu.org>
10848
10849 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
10850 color mode is an integer number (it could be -1).
10851
10852 2003-09-22 Richard M. Stallman <rms@gnu.org>
10853
10854 * intervals.c (graft_intervals_into_buffer): Correct the main loop
10855 in the case where OVER is longer than UNDER.
10856
10857 2003-09-22 Masatake YAMATO <jet@gyve.org>
10858
10859 * window.c (Fset_window_scroll_bars): Validate the value of
10860 `vertical_type'.
10861
10862 2003-09-21 Kim F. Storm <storm@cua.dk>
10863
10864 * frame.c (Vdefault_frame_scroll_bars): New variable.
10865 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
10866 (syms_of_frame): DEFVAR_LISP it, and initialize according to
10867 window-system default scroll bar position.
10868
10869 * window.c (Fwindow_scroll_bars): Doc fix.
10870
10871 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10872
10873 * xterm.c (x_set_offset): Take window manager decorations into account.
10874
10875 2003-09-19 Richard M. Stallman <rms@gnu.org>
10876
10877 * atimer.h: Don't include lisp.h.
10878 (P_): Define it here (as well as elsewhere).
10879
10880 * print.c (Fprin1_to_string): Move the PRINTPREPARE
10881 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
10882
10883 * data.c (Fvariable_binding_locus): New function.
10884 (syms_of_data): defsubr it.
10885 (Flocal_variable_p): Delete duplicate call to indirect_variable.
10886
10887 2003-09-18 Dave Love <fx@gnu.org>
10888
10889 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
10890
10891 * process.c (Fnetwork_interface_info): Fix type error.
10892 (Fnetwork_interface_list): Doc fix.
10893 (read_process_output, read_process_output): Delete unused var.
10894
10895 2003-09-17 Kim F. Storm <storm@cua.dk>
10896
10897 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
10898 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
10899 (Fnetwork_interface_info): Check that ifreq struct has required
10900 fields before accessing them; this requires that those fields are
10901 defined as macros, which may be too restrictive on some platforms,
10902 but it is better than failing on other platforms.
10903 (syms_of_process): Only defsubr above fns when included.
10904
10905 2003-09-17 Dave Love <fx@gnu.org>
10906
10907 * unexalpha.c: Don't include varargs.h.
10908
10909 2003-09-17 Kim F. Storm <storm@cua.dk>
10910
10911 * process.c (Fset_process_sentinel): Add sentinel to childp plist
10912 for network process.
10913 (socket_options): Add `:' prefix to option names. Add optbit field.
10914 (set_socket_option): Remove no_error arg and special handling of s < 0.
10915 Return 1<<optbit for known option, 0 for unknown.
10916 Do not interpret 0 as false for boolean option (only nil).
10917 Pass failed option and value to report_file_error.
10918 (Fset_network_process_options): Replace by Fset_network_process_option.
10919 (Fset_network_process_option): New function to set just one option.
10920 (Fmake_network_process): Allow :coding arg to be a cons.
10921 Allow :server arg to be an integer specifying backlog size.
10922 Remove :options arg, and allow options to be specified directly
10923 as :KEY, VALUE pairs. Parse these options before binding socket.
10924 As before, :reuseaddr t is default for a server process, but this
10925 can now be disabled by specifying :reuseaddr nil.
10926 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
10927 (init_process): Availability of network options is now checked with
10928 simpler syntax (featurep 'make-network-process :OPTION); use loop to
10929 setup features.
10930 (syms_of_process): Fix defsubr's for the replaced functions.
10931
10932 2003-09-16 Dave Love <fx@gnu.org>
10933
10934 * Makefile.in: Depend on coding.h.
10935
10936 2003-09-14 Kim F. Storm <storm@cua.dk>
10937
10938 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
10939 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
10940 (syms_of_process): Defsubr them.
10941
10942 * config.in: Regenerate.
10943
10944 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10945
10946 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
10947 * m/news-r6.h (XUNMARK): Remove.
10948 * m/mips.h (XUNMARK): Remove.
10949 * m/mips-siemens.h (XUNMARK): Remove.
10950 * m/iris4d.h (XUNMARK): Remove.
10951 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
10952
10953 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
10954
10955 * lisp.h (VALBITS): Don't remove 1 for the markbit.
10956 (union Lisp_Object): Use unsigned int for types. Remove markbit.
10957 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
10958 (XTYPE): Use unsigned right-shift.
10959 (XMARKBIT, XMARK, XUNMARK): Remove.
10960
10961 * alloc.c (init_intervals, init_symbol, init_marker):
10962 Don't preallocate anything.
10963 (Fgarbage_collect, mark_object): Ignore the markbit.
10964
10965 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
10966
10967 2003-09-08 Lute Kamstra <lute@gnu.org>
10968
10969 * xdisp.c (pint2hrstr): New function.
10970 (decode_mode_spec): Add `%i' and `%I' specs.
10971 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
10972 for `mode-line-format'.
10973
10974 2003-09-07 Andreas Schwab <schwab@suse.de>
10975
10976 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
10977 avoid warning.
10978
10979 2003-09-07 Eli Zaretskii <eliz@gnu.org>
10980
10981 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
10982
10983 2003-09-03 Kim F. Storm <storm@cua.dk>
10984
10985 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
10986 change (superseded by 2002-08-30 change); the default blink-off
10987 cursor is now again "no cursor".
10988
10989 2003-09-01 Jason Rumney <jasonr@gnu.org>
10990
10991 * makefile.w32-in (alloca.o): Remove.
10992 (coding.o): Depend on intervals.h
10993 (emacs.o, bytecode.o): Depend on window.h
10994
10995 2003-09-01 Dave Love <fx@gnu.org>
10996
10997 * Makefile.in (alloca.o): Remove commands.
10998 (coding.o): Depend on intervals.h composite.h window.h.
10999 (emacs.o): Depend on window.h keyboard.h keymap.h.
11000 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11001 (bytecode.o): Depend on window.h.
11002
11003 2003-08-31 Jason Rumney <jasonr@gnu.org>
11004
11005 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11006 returned even when font_type is unknown.
11007
11008 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11009
11010 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11011
11012 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11013
11014 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11015 *_offset.
11016
11017 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11018 calculate pixel value.
11019
11020 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11021
11022 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11023 Don't tell redisplay display is accurate when it's actually been
11024 paused for pending input.
11025
11026 2003-08-29 Richard M. Stallman <rms@gnu.org>
11027
11028 * dispnew.c (adjust_glyph_matrix): Call window_box
11029 whenever W is nonzero.
11030
11031 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11032 (Fkill_local_variable, Fmake_variable_frame_local)
11033 (Flocal_variable_p, Flocal_variable_if_set_p):
11034 Use indirect_variable to trace thru variable aliases.
11035
11036 * config.in: Updated.
11037
11038 * callint.c (Fcall_interactively): Save and restore
11039 Vthis_command, Vthis_original_command, real_this_command,
11040 and current_kboard->Vlast_command.
11041
11042 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11043
11044 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11045
11046 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11047
11048 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11049
11050 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11051 (decode_coding_sjis_big5): Likewise.
11052
11053 2003-08-27 Jason Rumney <jasonr@gnu.org>
11054
11055 * w32.c (sys_pipe): Protect against file descriptor overflow.
11056
11057 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11058
11059 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11060
11061 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11062
11063 * xfns.c (Vgtk_version_string): New variable.
11064 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11065
11066 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11067
11068 * term.c (term_init): Remove `const' from buffer_size's declaration.
11069
11070 * Makefile.in (msdos.o): Depend on intervals.h.
11071
11072 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11073
11074 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11075
11076 * xterm.h (struct x_display_info): New fields: client_leader_window
11077 and Xatom_wm_client_leader.
11078
11079 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11080 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11081
11082 * xsmfns.c (create_client_leader_window): New function.
11083 (x_session_initialize): Call create_client_leader_window, take
11084 dpyinfo as argument.
11085
11086 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11087
11088 * Makefile.in (xsmfns.o): Add more depenedencies.
11089
11090 2003-08-21 Dave Love <fx@gnu.org>
11091
11092 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11093
11094 2003-08-21 Kenichi Handa <handa@m17n.org>
11095
11096 * term.c (term_init): Fix previous change; don't rely on the
11097 length of `buffer' if TERMINFO is defined.
11098
11099 2003-08-20 Dave Love <fx@gnu.org>
11100
11101 * atimer.h: Include lisp.h.
11102
11103 * lisp.h (EMACS_LISP_H): New.
11104 (popup_activated_flag): Don't declare.
11105
11106 * alloca.c: Some merging with gnulib. Change logic and doc
11107 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11108 [DO_BLOCK_INPUT]: Don't include lisp.h.
11109 (xmalloc, xfree): Declare.
11110 (malloc): Don't declare.
11111
11112 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11113 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11114 atimer.h, blockinput.h.
11115
11116 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11117
11118 * alloca.s: Remove.
11119
11120 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11121
11122 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11123 use -lncurses.
11124
11125 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11126 FreeBSD returns something longer than 2044. Abort if the end of
11127 the buffer is overwritten.
11128
11129 2003-08-19 Miles Bader <miles@gnu.org>
11130
11131 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11132
11133 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11134
11135 * alloc.c (lisp_align_malloc): Check for memory full when
11136 allocating ablocks, which also avoids freeing a pointer into an
11137 ablocks structure.
11138
11139 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11140
11141 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11142
11143 2003-08-16 Richard M. Stallman <rms@gnu.org>
11144
11145 * editfns.c (Fencode_time): Doc fix.
11146
11147 2003-08-16 David Ponce <david@dponce.com>
11148
11149 * fileio.c (Fwrite_region): Fix conditional expression to issue
11150 the right message.
11151
11152 2003-08-16 Juri Linkov <juri@jurta.org>
11153
11154 * syntax.c (Fforward_word): Argument changed to optional.
11155 Set default value to 1.
11156
11157 2003-08-15 Kenichi Handa <handa@m17n.org>
11158
11159 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11160 what autoscaled.
11161 (best_matching_font): Once we find a better scalable font, set
11162 non_scalable_has_exact_height_p to 1.
11163 (try_font_list): Call try_alternative_families to try any family
11164 with the given registry.
11165
11166 2003-08-09 Andreas Schwab <schwab@suse.de>
11167
11168 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11169
11170 * print.c (print_string): Fix printing of multibyte string with
11171 nontrivial printcharfun.
11172
11173 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11174
11175 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11176
11177 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11178
11179 2003-07-31 Kenichi Handa <handa@m17n.org>
11180
11181 * process.c (read_process_output): Return the actually read bytes
11182 instead of the result of decoding.
11183
11184 2003-07-31 Kenichi Handa <handa@m17n.org>
11185
11186 * xterm.h (struct x_bitmap_record): New member have_mask.
11187
11188 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11189 to 0.
11190 (x_create_bitmap_from_file): Likewise.
11191 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11192 (x_destroy_all_bitmaps): Likewise.
11193 (x_create_bitmap_mask): Set have_mask member to 1.
11194
11195 2003-07-30 Richard M. Stallman <rms@gnu.org>
11196
11197 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11198
11199 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11200
11201 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11202
11203 2003-07-29 Richard M. Stallman <rms@gnu.org>
11204
11205 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11206 Conditionalize XIM code on HAVE_XIM.
11207
11208 * fns.c (Fclear_string): New function.
11209 (syms_of_fns): defsubr it.
11210
11211 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11212
11213 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11214
11215 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11216
11217 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11218
11219 * buffer.c (delete_all_overlays): New function.
11220 * buffer.h (delete_all_overlays): Declare.
11221 * coding.c (run_pre_post_conversion_on_str):
11222 * print.c (temp_output_buffer_setup):
11223 * fileio.c (Finsert_file_contents):
11224 * minibuf.c (get_minibuffer): Use it.
11225
11226 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11227
11228 * unexmacosx.c (unexec_regions_sort_compare):
11229 (unexec_regions_merge): New functions. Sort and merge unexec
11230 regions before dumping them.
11231
11232 2003-07-22 Dave Love <fx@gnu.org>
11233
11234 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11235
11236 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11237
11238 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11239 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11240 MARKBIT as the gcmarkbit for strings.
11241
11242 2003-07-21 Richard M. Stallman <rms@gnu.org>
11243
11244 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11245
11246 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11247 (syms_of_fns): Corresponding change.
11248
11249 * alloc.c (syms_of_alloc): Doc fixes.
11250
11251 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11252
11253 * s/netbsd.h: Use -Wl syntax.
11254
11255 2003-07-17 Richard M. Stallman <rms@gnu.org>
11256
11257 * xterm.c (xim_initialize): Redo 6/24 change.
11258
11259 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11260
11261 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11262 (Fswitch_to_buffer): Don't signal an error when switching to the same
11263 buffer in a dedicated window.
11264
11265 * alloc.c: Use bitmaps for cons, as was done for floats.
11266 (init_float, init_cons): Let the normal code allocate the first block.
11267 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11268 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11269 New macros.
11270 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11271 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11272 (live_cons_p): Check the pointer is not past the `conses' array.
11273 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11274 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11275 (survives_gc_p): Use CONS_MARKED_P and simplify.
11276 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11277
11278 2003-07-13 Paul Eggert <eggert@twinsun.com>
11279
11280 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11281 puts it into BSS instead, at least on Solaris 8 and 9.
11282 This is a valid optimization, and it may occur on other platforms,
11283 so Emacs should not assume that initializing a static variable to
11284 zero puts it into data.
11285 * alloc.c (pure, staticvec):
11286 Initialize these arrays to nonzero, so that they're not
11287 put into BSS by that optimization.
11288
11289 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11290
11291 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11292 (lisp_align_malloc): Use posix_memalign is available.
11293 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11294 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11295 for consistency. Update users.
11296
11297 2003-07-13 Richard M. Stallman <rms@gnu.org>
11298
11299 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11300
11301 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11302
11303 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11304 and use the Gtk+ function gtk_window_icon_from_file if available.
11305
11306 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11307 handle mask of bitmaps.
11308 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11309 mask property.
11310 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11311
11312 * xterm.h (xg_set_icon): New function.
11313
11314 2003-07-12 Paul Eggert <eggert@twinsun.com>
11315
11316 * unexelf.c (unexec): Consider a section to precede the .bss
11317 section if its addresses overlap that of .bss.
11318
11319 2003-07-12 Richard M. Stallman <rms@gnu.org>
11320
11321 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11322
11323 * config.in (HAVE_CRTIN): Add #undef.
11324 (INLINE): Really inline only if OPTIMIZE is defined.
11325
11326 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11327 END_FILES_1.
11328 (START_FILES_1, END_FILES_1): New macros (conditional).
11329 (LD_SWITCH_SYSTEM_TEMACS): Define.
11330
11331 * s/openbsd.h: Don't include bsd4-3.h.
11332 (TERMINFO): Define.
11333 (LIBS_TERMCAP): Define.
11334 (LD_SWITCH_SYSTEM): Define (two definitions).
11335
11336 * xfns.c: Include libpng/png.h instead of png.h.
11337
11338 2003-07-11 Andreas Schwab <schwab@suse.de>
11339
11340 * buffer.c (modify_overlay): Update prototype.
11341 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11342 Likewise.
11343
11344 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11345
11346 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11347 (struct interval): Move to intervals.h.
11348 (struct Lisp_Marker): Use EMACS_INT for position info.
11349 (forward_point): Remove prototype of defunct function.
11350 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11351 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11352 (syms_of_textprop, set_text_properties): Remove prototypes that are
11353 already in intervals.h.
11354
11355 * intervals.h (struct interval): Move from lisp.h.
11356 Use EMACS_INT for position and size info.
11357
11358 * coding.c: Include intervals.h for Fset_text_properties.
11359
11360 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11361 position and length information.
11362
11363 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11364
11365 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11366 position and length information.
11367
11368 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11369
11370 Change overlays_after and overlays_before so the overlays themselves
11371 are linked into lists, rather than using cons cells. After all each
11372 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11373 Lisp_Overlay for free and save up one cons cell per overlay (not
11374 to mention one indirection when traversing the list of overlay).
11375
11376 * lisp.h (struct Lisp_Overlay): New field `next'.
11377
11378 * buffer.h (struct buffer): Change overlays_before and overlays_after
11379 from Lisp lists of overlays to pointers to overlays.
11380
11381 * buffer.c (overlay_strings, recenter_overlay_lists):
11382 Fix typo in eassert in last commit.
11383 (unchain_overlay): New function.
11384 (add_overlay_mod_hooklist): Use AREF.
11385 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11386 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11387 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11388 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11389 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11390 Adjust to new type of overlays_(before|after).
11391
11392 * alloc.c (mark_object): Mark the new `next' field of overlays.
11393 (mark_buffer): Manually mark the overlays_(after|before) fields.
11394
11395 * coding.c (run_pre_post_conversion_on_str):
11396 * editfns.c (overlays_around):
11397 * xdisp.c (load_overlay_strings):
11398 * fileio.c (Finsert_file_contents):
11399 * indent.c (current_column):
11400 * insdel.c (signal_before_change, signal_after_change):
11401 * intervals.c (set_point_both):
11402 * print.c (temp_output_buffer_setup): Use new type for
11403 overlays_(before|after).
11404
11405 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11406
11407 * buffer.c (report_overlay_modification): Don't run hooks while
11408 traversing the list of overlays.
11409
11410 * buffer.h (struct buffer): Use an int for overlay_center.
11411 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11412 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11413
11414 * buffer.c (reset_buffer, recenter_overlay_lists)
11415 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11416 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11417 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11418 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11419 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11420
11421 * xdisp.c (fast_find_position): Remove unused var.
11422
11423 * cmds.c (Qexpand_abbrev): New sym.
11424 (syms_of_cmds): Initialize it.
11425 (internal_self_insert): Use it to call expand-abbrev.
11426
11427 2003-07-09 Kim F. Storm <storm@cua.dk>
11428
11429 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11430 was configured with --without-xim.
11431 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11432
11433 2003-07-07 Richard M. Stallman <rms@gnu.org>
11434
11435 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11436
11437 * alloc.c (Fgarbage_collect): Doc fix.
11438
11439 2003-07-07 Nozomu Ando <nand@mac.com>
11440
11441 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11442
11443 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11444
11445 * minibuf.c (read_minibuf): UNGCPRO before returning.
11446 (Ftry_completion, Fall_completions): Doc fix.
11447
11448 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11449 now that `floats' is not the last element of the struct any more.
11450
11451 2003-07-06 Jason Rumney <jasonr@gnu.org>
11452
11453 * w32term.h (ClipboardSequence_Proc): New type.
11454
11455 * w32fns.c (clipboard_sequence_fn): New variable.
11456 (globals_of_w32fns): Initialize it.
11457
11458 * w32select.c (last_clipboard_sequence_number): New variable.
11459 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11460 number if possible.
11461
11462 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11463
11464 * m/amdx86-64.h (MARKBIT):
11465 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11466 MARKBIT and ARRAY_MARK_FLAG any more.
11467
11468 * m/hp800.h (XSETMARKBIT):
11469 * m/sr2k.h (XSETMARKBIT):
11470 * lisp.h (XSETMARKBIT): Remove unused macro.
11471
11472 * lisp.h (mark_object): Change prototype.
11473
11474 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11475 (last_marked): Change accordingly.
11476 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11477 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11478 (mark_buffer): Update calls to mark_object.
11479
11480 * bytecode.c (mark_byte_stack):
11481 * fns.c (sweep_weak_table):
11482 * keyboard.c (mark_kboards): Update calls to mark_object.
11483
11484 2003-07-06 Jason Rumney <jasonr@gnu.org>
11485
11486 * alloc.c (struct ablock): Only include padding when there is some.
11487
11488 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11489
11490 * alloc.c (ALIGN): Add casts to simplify usage.
11491 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11492 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11493 (struct ablock, struct ablocks): New types.
11494 (free_ablock): New global var.
11495 (lisp_align_malloc, lisp_align_free): New functions.
11496 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11497 (struct float_block): Reorder and add gcmarkbits.
11498 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11499 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11500 (init_float, make_float): Use lisp_align_malloc.
11501 (free_float, live_float_p): Don't use `type' any more.
11502 (make_float): Use FLOAT_UNMARK to access to mark bit.
11503 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11504 Use FLOAT_MARKED_P to access the mark bit.
11505 (pure_alloc): Simplify use of ALIGN.
11506 (mark_object): Use FLOAT_MARK to access the mark bit.
11507 (gc_sweep): Use new macros to access the float's mark bit.
11508 (init_alloc_once): Init free_ablock.
11509
11510 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11511
11512 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11513
11514 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11515 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11516 (allocate_buffer): Move.
11517 (string_bytes): Don't mask markbit of `size_byte'.
11518 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11519 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11520 Use the `size' field of buffers (rather than the `name' field) for
11521 the mark bit, as is done for all other vectorlike objects.
11522 Use the new macros to access the mark bit of vectorlike objects.
11523
11524 2003-06-26 Richard M. Stallman <rms@gnu.org>
11525
11526 * puresize.h (BASE_PURESIZE): Increment base size.
11527
11528 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11529
11530 * xterm.c (xim_initialize): Undo previous change.
11531
11532 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11533
11534 * alloc.c (survives_gc_p): Simplify.
11535
11536 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11537
11538 * window.c (Fset_window_dedicated_p): Simplify.
11539 (display_buffer_1): Don't raise the win from which minibuf was entered.
11540 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11541 (Fminibuffer_selected_window): Simplify.
11542
11543 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11544
11545 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11546 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11547
11548 * insdel.c (check_markers, adjust_markers_for_delete)
11549 (adjust_markers_for_insert, adjust_markers_for_replace)
11550 (prepare_to_modify_buffer, RESTORE_VALUE):
11551 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11552 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11553 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11554 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11555 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11556 * editfns.c (save_excursion_restore, transpose_markers):
11557 * window.c (delete_window):
11558 * xdisp.c (message_dolog): Update for new types.
11559
11560 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11561
11562 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11563 (realize_default_face): Use default_face_done_p for the force_p
11564 argument to set_lface_from_font_name. Set default_face_done_p to one.
11565
11566 * frame.c (make_frame): Initialize default_face_done_p.
11567
11568 * frame.h (struct frame): Add default_face_done_p.
11569
11570 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11571 will be defined.
11572
11573 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11574
11575 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11576 Initialize the new field `gcmarkbit'.
11577 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11578 (mark_interval_tree): Don't mark the tree separately from the nodes.
11579 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11580 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11581 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11582
11583 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11584 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11585 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11586 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11587 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11588
11589 2003-06-24 Dave Love <fx@gnu.org>
11590
11591 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11592
11593 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11594 from gnulib.
11595
11596 2003-06-21 Richard M. Stallman <rms@gnu.org>
11597
11598 * fileio.c (Fwrite_region): Alternate messages
11599 for append and partial write.
11600
11601 * keyboard.c (read_key_sequence): When converting upcase fn key to
11602 downcase, update fkey and keytran so `backspace' gets translated.
11603
11604 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11605
11606 * process.c (wait_reading_process_input): Don't signal SIGIO
11607 in batch mode.
11608
11609 2003-06-17 Kenichi Handa <handa@m17n.org>
11610
11611 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11612 composite.h.
11613
11614 * xselect.c: Don't include charset.h, coding.h, composite.h.
11615 (Qforeign_selection): New variable.
11616 (syms_of_xselect): Intern and static it.
11617 (selection_data_to_lisp_data): Return a unibyte string made from
11618 data with `foreign-selection' text property.
11619
11620 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11621
11622 * termhooks.h (EVENT_INIT): New macro.
11623
11624 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11625
11626 * alloc.c (mark_kboards): Move to keyboard.c.
11627
11628 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11629 * xterm.c (x_dispatch_event):
11630 * xmenu.c (find_and_call_menu_selection):
11631 * xdisp.c (handle_tool_bar_click):
11632 * w32menu.c (menubar_selection_callback):
11633 * sysdep.c (kbd_input_ast, read_input_waiting):
11634 * msdos.c (dos_rawgetc):
11635 * macterm.c (mac_check_for_quit_char):
11636 * macmenu.c (menubar_selection_callback):
11637 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11638 data to kbd_buffer_store_event.
11639
11640 2003-06-15 Kim F. Storm <storm@cua.dk>
11641
11642 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11643 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11644
11645 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11646
11647 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11648
11649 2003-06-12 Kenichi Handa <handa@m17n.org>
11650
11651 * fileio.c (Fwrite_region): Save and restore restriction.
11652
11653 2003-06-12 Dave Love <fx@gnu.org>
11654
11655 * alloca.c (alloca): Declare arg as size_t.
11656
11657 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11658 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11659
11660 2003-06-11 Dave Love <fx@gnu.org>
11661
11662 * search.c (shrink_regexp_cache): Use xrealloc.
11663 (syms_of_search): Use xmalloc.
11664
11665 2003-06-10 Kim F. Storm <storm@cua.dk>
11666
11667 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11668 Adjust phys_cursor.x to be relative to window box, rather than
11669 text area before checking -- to ensure cursor is redrawn when
11670 exposing window.
11671 Note: This also fixes a similar (older) bug if display margins
11672 are present.
11673
11674 2003-06-06 Kenichi Handa <handa@m17n.org>
11675
11676 * coding.c (encoding_buffer_size): If coding->type is
11677 coding_type_ccl, double magnification on CRLF encoding.
11678
11679 2003-06-06 Jason Rumney <jasonr@gnu.org>
11680
11681 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11682 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11683
11684 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11685 Mac too.
11686
11687 2003-06-05 Dave Love <fx@gnu.org>
11688
11689 * strftime.c: Merge changes from gnulib.
11690
11691 * mktime.c (__mktime_internal): Merge changes from gnulib
11692 involving year 69 and dst2.
11693
11694 Changes to merge with gnulib version and be consistent with the
11695 autoconf test:
11696
11697 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
11698 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
11699 [HAVE_LOCALE_H]: Include locale.h.
11700 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
11701
11702 2003-06-05 Kim F. Storm <storm@cua.dk>
11703
11704 * window.c (coordinates_in_window): Convert X and Y to window
11705 relative coordinates inside mode-line and header-line parts.
11706 Convert X and Y to margin area relative coordinates inside left
11707 and right display margin parts.
11708
11709 2003-06-05 Jason Rumney <jasonr@gnu.org>
11710
11711 * w32fns.c (add_system_logical_colors_to_map): New function.
11712 (Fx_open_connection): Use it.
11713
11714 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
11715
11716 * process.c (allocate_pty): Revert part of the previous patch.
11717 (Faccept_process_output): Simplify.
11718
11719 2003-06-04 Jason Rumney <jasonr@gnu.org>
11720
11721 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
11722
11723 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
11724 (lispy_mouse_wheel_names): Remove.
11725 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
11726 Always define drag_and_drop_syms.
11727
11728 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
11729 WHEEL_EVENT events.
11730
11731 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
11732
11733 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
11734
11735 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
11736
11737 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11738
11739 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
11740 menu item label.
11741
11742 2003-06-03 Richard M. Stallman <rms@gnu.org>
11743
11744 * window.c (Fwindow_edges): Doc fix.
11745 (Fwindow_pixel_edges, Fwindow_inside_edges)
11746 (Fwindow_inside_pixel_edges): New functions.
11747 (syms_of_window): defsubr them.
11748
11749 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
11750 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
11751
11752 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
11753
11754 * dispnew.c (Fsit_for): Don't lie about the number of args.
11755
11756 2003-06-02 Dave Love <fx@gnu.org>
11757
11758 * callproc.c: Use HAVE_FCNTL_H, not USG5.
11759 (syms_of_callproc) <process-environment>: Doc fix.
11760
11761 * doc.c: Use HAVE_FCNTL_H, not USG5.
11762
11763 * xfaces.c (font_rescale_ratio): Fix for K&R.
11764
11765 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
11766
11767 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
11768
11769 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
11770
11771 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
11772 (xg_create_frame_widgets): Use ENCODE_UTF_8.
11773
11774 * xterm.c (Qutf_8): Move to coding.c
11775
11776 * xmenu.c (ENCODE_MENU_STRING): New.
11777 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
11778 Use it.
11779
11780 * coding.h (ENCODE_UTF_8): New.
11781 (Qutf_8): Declare.
11782
11783 * coding.c (Qutf_8): New.
11784 (syms_of_coding): Intern it.
11785
11786 * fns.c: Doc fixes.
11787
11788 2003-06-02 Kenichi Handa <handa@m17n.org>
11789
11790 * buffer.c (Fset_buffer_multibyte): Fix previous change.
11791
11792 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
11793
11794 * lread.c (openp): Make sure STR is a string.
11795
11796 2003-06-01 David Ponce <david@dponce.com>
11797
11798 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
11799 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
11800
11801 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
11802 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
11803 (discard_mouse_events): Discard WHEEL_EVENT events too.
11804 (lispy_wheel_names, wheel_syms): New.
11805 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
11806 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
11807 (make_lispy_event): Add WHEEL_EVENT handler.
11808
11809 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
11810 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11811 WHEEL_EVENT events.
11812
11813 2003-05-31 John Paul Wallington <jpw@gnu.org>
11814
11815 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
11816 timer are in lisp/emacs-lisp.
11817
11818 2003-05-31 Kenichi Handa <handa@m17n.org>
11819
11820 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
11821 region when a buffer is changed to unibyte.
11822
11823 * charset.h (VALID_LEADING_CODE_P): New macro.
11824 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
11825
11826 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
11827 is nonzero, accept multibyte form of eight-bit-control chars.
11828 (decode_composition_emacs_mule): Likewise.
11829 (decode_coding_emacs_mule): Likewise.
11830 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
11831 multibyte form of eight-bit-control chars.
11832
11833 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
11834 (Finsert_file_contents): If coding-system-for-read is bound to
11835 Qauto_save_coding, use the coding system emacs-mule with special
11836 setting for recovering a file.
11837 (choose_write_coding_system): On auto saving, use the coding
11838 system emacs-mule with special setting for auto saving.
11839 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
11840
11841 2003-05-30 Kenichi Handa <handa@m17n.org>
11842
11843 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
11844 properly before calling ccl_driver.
11845
11846 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
11847
11848 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
11849 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
11850 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
11851
11852 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
11853
11854 * xfaces.c (realize_default_face): Do not abort if lface is
11855 non-existent - reverts change from 2003-05-19.
11856
11857 2003-05-29 Kenichi Handa <handa@m17n.org>
11858
11859 * coding.c (decode_coding_iso2022): Pay attention to the byte
11860 sequence of CTEXT extended segment, and retain those bytes as is.
11861
11862 2003-05-28 Kenichi Handa <handa@m17n.org>
11863
11864 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
11865 of CODING_REPLACEMENT_CHARACTER.
11866 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
11867 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
11868 check this flag on encoding.
11869 (encode_coding_sjis_big5):
11870 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
11871 (Fset_terminal_coding_system_internal):
11872 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
11873 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
11874
11875 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
11876 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
11877 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
11878
11879 2003-05-28 Richard M. Stallman <rms@gnu.org>
11880
11881 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
11882
11883 * eval.c (unbind_to): Move init of this_binding to separate statement.
11884
11885 2003-05-28 Kim F. Storm <storm@cua.dk>
11886
11887 * xdisp.c (expose_window): Fix error in calculation of
11888 window relative coordinates of area to redisplay.
11889
11890 2003-05-27 Jason Rumney <jasonr@gnu.org>
11891
11892 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
11893
11894 2003-05-27 David Ponce <david@dponce.com>
11895
11896 Handle W32 mouse wheel events as mouse click events, like in X.
11897
11898 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
11899 MOUSE_WHEEL_EVENT anymore.
11900
11901 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
11902 Scrolling down/up the mouse wheel is respectively mapped to mouse
11903 button 4 and 5.
11904 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
11905 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
11906 WM_MOUSEWHEEL events.
11907
11908 2003-05-27 Andreas Schwab <schwab@suse.de>
11909
11910 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
11911
11912 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
11913 partially visible line.
11914
11915 * alloc.c (Fgarbage_collect): Fix last change.
11916
11917 2003-05-26 John Paul Wallington <jpw@gnu.org>
11918
11919 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
11920
11921 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
11922
11923 * window.c (Fset_window_buffer): Add type of `keep_margins'.
11924 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
11925
11926 * window.h (window_box_text_cols): Declare.
11927
11928 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
11929 (x_draw_vertical_border): Remove unused var `f'.
11930
11931 * xfaces.c (build_scalable_font_name): Remove `unused var
11932 pixel_size' warning.
11933
11934 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
11935
11936 * unexelf.c (unexec): Remove `unused var n' warning.
11937
11938 * strftime.c (my_strftime_localtime_r): Remove `defined but
11939 unused' warning.
11940
11941 * process.c (allocate_pty): Remove `unused var stb' and
11942 `cp might be used uninitialized' warnings.
11943
11944 * dispnew.c (mode_line_string): Remove unused var `f'.
11945
11946 * coding.c (find_safe_codings): Remove unused var `i'.
11947
11948 * bytecode.c (Fbyte_code): Remove `unused val' warning.
11949
11950 * buffer.c (Fkill_buffer): Remove unused var `list'.
11951
11952 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
11953
11954 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11955
11956 * frame.c (make_frame): Condition want_fullscreen with
11957 HAVE_WINDOW_SYSTEM.
11958
11959 2003-05-25 Juanma Barranquero <lektu@terra.es>
11960
11961 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
11962 (Fwindow_scroll_bars): Fix typo in docstring.
11963
11964 2003-05-24 Kim F. Storm <storm@cua.dk>
11965
11966 The following changes serve several purposes:
11967
11968 1) Swap the position of fringes and display margins in windows, i.e.
11969 the fringes are now displayed between the margins and the text area
11970 (by default).
11971
11972 2) Allow fringe and scroll bar parameters to be set per-buffer and
11973 per-window (like display margins). Such settings are now stored
11974 in window configurations, preserved when frames are resized, and
11975 copied when windows are split vertically or horizontally.
11976 Several bugs related to display margins have been fixed.
11977
11978 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
11979
11980 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
11981 rather than FRAME_WIDTH (FRAME_FONT (f)).
11982
11983 5) Introduce a consistent naming of variables, members and macros
11984 depending on whether their value is measured in pixels or in
11985 canonical columns/lines. Pixel dimensions are named *_width and
11986 *_height, while canonical columns/lines are named *_cols and
11987 *_lines. Pixel positions are named *_x and *_y, while column/line
11988 positions are named *_col and *_line.
11989
11990 6) Consolidate more of the X, W32, and MAC gui code by moving
11991 common data into struct frame, and generalize it for the non-gui
11992 case by using suitable defaults.
11993
11994 7) Cleanup and consolidate the macros controlling frame and window
11995 layout into frame.h and window.h, and generalize the use of the
11996 various window_box_* functions (enhanced to handle the new fringe
11997 position and the per-window fringe and scroll bar settings).
11998
11999 * frame.h (struct frame): Rename members height to text_lines,
12000 width to text_cols, window_height to total_lines, window_width to
12001 total_cols, new_height to new_text_lines, new_width to
12002 new_text_cols. All uses changed.
12003 (struct frame): New members which consolidate common members of
12004 x_output, w32_output, and mac_output structures: left_pos,
12005 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12006 win_gravity, size_hint_flags, border_width, internal_border_width,
12007 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12008 want_fullscreen. All uses changed.
12009 (struct frame): New member column_width contaning the canonical
12010 column width, analogue to line_height. All uses changed.
12011 (struct frame): Rename members scroll_bar_pixel_width to
12012 config_scroll_bar_width, and scroll_bar_cols to
12013 config_scroll_bar_cols. All uses changed.
12014 (struct frame): New member scroll_bar_actual_width which
12015 consolidates and renames the vertical_scroll_bar_extra member of
12016 x_output, w32_output, and mac_output structures. All uses changed.
12017 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12018 from x/w32/macterm.h files. All uses changed. Also change code
12019 which referred to f->output_data...->pixel_height.
12020 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12021 from x/w32/macterm.h files. All uses changed. Also change code
12022 which referred to f->output_data...->pixel_width.
12023 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12024 Also change code which referred to f->height.
12025 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12026 Also change code which referred to f->width.
12027 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12028 to update new_text_lines and new_text_cols members directly.
12029 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12030 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12031 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12032 FRAME_SCROLL_BAR_COLS. All uses changed.
12033 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12034 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12035 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12036 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12037 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12038 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12039 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12040 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12041 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12042 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12043 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12044 Unconditionally return line_height member (it now has proper value
12045 also for non-window frames).
12046 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12047 return new column_width member (rather than the default font width).
12048 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12049 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12050 from x/w32/macterm.h files. Unconditionally return corresponding
12051 member of frame structure (they now have proper values also for
12052 non-window frames).
12053 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12054 Calculate return value from left and right widths.
12055 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12056 internal_border_width member (has proper value for non-window frame).
12057 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12058 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12059 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12060 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12061 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12062 consolidated from xterm.h, macterm.h, and w32term.h.
12063 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12064 consolidated from xterm.h, macterm.h, and w32term.h.
12065 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12066 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12067 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12068 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12069 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12070 consolidated from x/mac/w32term.h.
12071 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12072 consolidated from x/mac/w32term.h.
12073 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12074 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12075 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12076 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12077
12078 * window.h (struct window): Rename members left to left_col,
12079 top to top_line, height to total_lines, width to total_cols,
12080 left_margin_width to left_margin_cols, right_margin_width to
12081 right_margin_cols, orig_height to orig_total_lines, orig_top to
12082 orig_top_line. All uses changed.
12083 (struct window): New members left_fringe_width, right_fringe_width,
12084 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12085 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12086 New macros primarily used to simplify other macros.
12087 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12088 referred to XINT (w->width).
12089 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12090 referred to XINT (w->height).
12091 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12092 referred to XINT (w->width) * canon_x_unit.
12093 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12094 referred to XINT (w->height) * canon_y_unit.
12095 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12096 referred to XINT (w->left).
12097 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12098 all uses and code that referred to XINT (w->left) + XINT (w->width).
12099 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12100 referred to XINT (w->top).
12101 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12102 referred to XINT (w->top) + XINT (w->height).
12103 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12104 referred to XINT (w->left) * canon_x_unit.
12105 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12106 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12107 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12108 referred to XINT (w->top) * canon_y_unit.
12109 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12110 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12111 (WINDOW_LEFTMOST_P): New macro.
12112 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12113 All uses changed.
12114 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12115 All uses changed.
12116 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12117 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12118 Do not exclude left fringe width.
12119 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12120 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12121 Do not exclude fringe widths.
12122 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12123 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12124 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12125 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12126 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12127 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12128 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12129 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12130 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12131 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12132 New macros. Change code which referenced corresponding
12133 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12134 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12135 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12136 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12137 allow per-window scroll-bar settings.
12138 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12139 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12140 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12141 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12142 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12143 FRAME_SCROLL_BAR_WIDTH.
12144 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12145 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12146 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12147 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12148 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12149 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12150 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12151 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12152 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12153 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12154 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12155 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12156 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12157 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12158 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12159 (window_from_coordinates): Update prototype.
12160 (Fset_window_buffer): Update EXFUN.
12161 (set_window_buffer): Update prototype.
12162
12163 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12164 to window_left_col, window_top_y to window_top_line. All uses
12165 changed.
12166 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12167 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12168 internal_border_width is now set to 0 for non-window frames.
12169 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12170 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12171 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12172 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12173 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12174 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12175 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12176 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12177 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12178 Move to window.h and renamed [see window.h changes].
12179 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12180 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12181 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12182 Use WINDOW_TOTAL_LINES.
12183 (frame_update_line_height): Remove prototype.
12184
12185 * buffer.h (struct buffer): Rename members measured in columns:
12186 left_margin_width to left_margin_cols, right_margin_width to
12187 right_margin_cols. All uses changed.
12188 New members left_fringe_width, right_fringe_width,
12189 fringes_outside_margins for per-buffer fringe settings.
12190 New members scroll_bar_width and vertical_scroll_bar_type for
12191 per-buffer scroll bar settings.
12192
12193 * buffer.c (init_buffer_once): Set buffer_defaults and
12194 buffer_local_flags for new buffer-local variables
12195 left_fringe_width, right_fringe_width, fringes_outside_margins,
12196 scroll_bar_width, and vertical_scroll_bar_type.
12197 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12198 default-* variables for them.
12199
12200 * dispnew.c: Make (many) trivial substitutions for renamed and
12201 new macros in dispextern.h, frame.h and window.h.
12202 (mode_line_string): No need to adjust width for mode lines, as it
12203 is already adjusted by the caller.
12204 (marginal_area_string): Handle fringes inside/outside margins.
12205
12206 * frame.c: Make (many) trivial substitutions for renamed and
12207 new macros in dispextern.h, frame.h and window.h.
12208 (make_frame): Initialize left_fringe_width, right_fringe_width,
12209 fringe_cols, scroll_bar_actual_width, border_width,
12210 internal_border_width, column_width, line_height, x_pixels_diff,
12211 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12212 members with values suitable for a non-window frames.
12213
12214 * gtkutil.c: Make (many) trivial substitutions for renamed and
12215 new macros in dispextern.h, frame.h and window.h.
12216
12217 * indent.c: Make (few) trivial substitutions for renamed and
12218 new macros in dispextern.h, frame.h and window.h.
12219
12220 * keyboard.c: Make (many) trivial substitutions for renamed and
12221 new macros in dispextern.h, frame.h and window.h.
12222 (make_lispy_event): Use window positions returned from
12223 window_from_coordinates when constructing the lisp event for
12224 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12225 (incorrect) values locally.
12226 (make_lispy_movement): Use window positions returned from
12227 window_from_coordinates when constructing the lisp event, rather
12228 than calculating (incorrect) values locally.
12229
12230 * scroll.c: Make (some) trivial substitutions for renamed and
12231 new macros in dispextern.h, frame.h and window.h.
12232
12233 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12234 scroll-bars.
12235
12236 * sysdep.c: Make (few) trivial substitutions for renamed and
12237 new macros in dispextern.h, frame.h and window.h.
12238
12239 * term.c: Make (some) trivial substitutions for renamed and
12240 new macros in dispextern.h, frame.h and window.h.
12241
12242 * widget.c: Make (few) trivial substitutions for renamed and
12243 new macros in dispextern.h, frame.h and window.h.
12244
12245 * window.c: Make (many) trivial substitutions for renamed and
12246 new macros in dispextern.h, frame.h and window.h.
12247 (make_window): Initialize new members
12248 left_margin_cols, right_margin_cols, left_fringe_width,
12249 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12250 and vertical_scroll_bar_type.
12251 (coordinates_in_window): Adapt to new fringe/margin positions
12252 and per-window fringes and scroll-bars.
12253 Fix bug related to incorrectly adjusting coordinates by
12254 frame's internal_border_width (the effect normally negible since
12255 the internal_border_width is typically 0 or 1 pixel, but very
12256 noticeable for an internal_border_width of e.g. 25 pixels).
12257 Upon successful return (other than ON_NOTHING), the coordinates
12258 are now always properly converted to window relative for the
12259 given display element.
12260 (window_from_coordinates): Add new parameters wx and wy to
12261 return the window relative x and y position in the returned
12262 window and part. A null arg means, don't return the position.
12263 All callers changed.
12264 (adjust_window_margins): New function which may reduce the width
12265 of the display margins if a window's text area is too small after
12266 resizing or splitting windows.
12267 (size_window): Fix bug that did not account for display margin
12268 widths when checking the minimum width of a window; use
12269 adjust_window_margins.
12270 (set_window_buffer): Call Fset_window_fringes and
12271 Fset_window_scroll_bars to setup per-window elements.
12272 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12273 existing display margin, fringe widths, and scroll bar settings
12274 (e.g. after splitting a window or resizing the frame).
12275 All callers changed.
12276 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12277 (Fsplit_window): Duplicate original window's display margin,
12278 fringe, and scroll-bar settings; then call Fset_window_buffer with
12279 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12280 window to only preserve the display margins in one of the windows.
12281 When splitting horizontally, call adjust_window_margins on both
12282 windows to ensure that the text area of the new windows is non too
12283 narrow. This fixes a bug which could cause Emacs to trap if the
12284 width of the split window was less than the width of the display
12285 margins.
12286 (window_box_text_cols): Rename from window_internal_width.
12287 All uses changed. Adapt to per-window fringes and scroll bars.
12288 Fix bug that caused vertical separator to be subtracted also on
12289 window frames. Fix another bug that did not reduce the returned
12290 value by the columns used for display margins.
12291 (window_scroll_line_based): Fix bug related to scrolling too much
12292 when display margins are present (implicitly fixed by the fix to
12293 window_box_text_cols).
12294 (scroll_left, scroll_right): Fix bug related to scrolling too far
12295 by default when display margins are present (implicitly fixed by
12296 the fix to window_box_text_cols).
12297 (struct saved_window): Rename members left to left_col, top to
12298 top_line, width to total_cols, height to total_lines, orig_top to
12299 orig_top_line, orig_height to orig_total_lines. All uses changed.
12300 New members left_margin_cols, right_margin_cols,
12301 left_fringe_width, right_fringe_width, fringes_outside_margins,
12302 scroll_bar_width, and vertical_scroll_bar_type for saving
12303 per-window display elements.
12304 (Fset_window_configuration): Restore display margins, fringes,
12305 and scroll bar settings. This fixes a bug which caused display
12306 margins to be discarded when saving and restoring a window
12307 configuration.
12308 (save_window_save): Save display margins, fringes, and scroll bar
12309 settings. This fixes a bug which caused display margins to be
12310 discarded when saving and restoring a window configuration.
12311 (Fset_window_margins): Do nothing if display margins are not
12312 really changed. Otherwise, call adjust_window_margins to ensure
12313 the text area doesn't get too narrow. This fixes a bug which
12314 could cause Emacs to trap if setting display margins wider than
12315 the width of the window.
12316 (Fset_window_fringes): New defun to allow user to specifically set
12317 this window's fringe widths and position vs. display margins.
12318 (Fwindow_fringes): New defun to return window's actual fringe settings.
12319 (Fset_window_scroll_bars): New defun to allow user to specifically
12320 set this window's scroll bar width and position.
12321 (Fwindow_scroll_bars): New defun to return window's actual scroll
12322 bar settings.
12323 (compare_window_configurations): Also compare display margins,
12324 fringes, and scroll bar settings.
12325 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12326
12327 * xdisp.c: Make (many) trivial substitutions for renamed and
12328 new macros in dispextern.h, frame.h and window.h.
12329 (window_box_width): Adapt to per-window fringes and scroll bars,
12330 and new fringe vs. display margin position. Note that returned
12331 value is no longer guaranteed to be a whole multiple of the frame
12332 column width, since per-window fringes may now be any width.
12333 (window_box_left_offset): New function like window_box_left, but
12334 value is relative to left border of window (rather than frame).
12335 (window_box_right_offset): New function like window_box_right,
12336 but value is relative to left border of window.
12337 (window_box_left): Adapt to per-window fringes and scroll bars,
12338 and new fringe vs. display margin position. Simplify by using
12339 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12340 (window_box): Allow null args for unnecessary return values;
12341 change/simplify relevant callers.
12342 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12343 and new fringe vs. display margin position.
12344 Use window_box_left_offset and window_box_right_offset
12345 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12346 scroll bars, and new fringe vs. display margin position.
12347 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12348 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12349 fringe vs. display margin position.
12350 (hscroll_window_tree): Use window_box_width instead of window_box.
12351 (redisplay_window): Adapt to per-window scroll bars.
12352 (draw_glyphs): Rework to handle per-window fringes and scroll
12353 bars, and new fringe vs. display margin position.
12354 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12355 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12356 bars, and new fringe vs. display margin position. Fix bug which
12357 increased total width of full_width rows by width of scroll bars
12358 although window's total width already includes that.
12359 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12360 (expose_area): Simplify using window_box_left_offset.
12361 (x_draw_vertical_border): Handle per-window scroll bar settings,
12362 mixing windows with left, right and no scroll bars.
12363
12364 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12365 where it's used in x_list_fonts (for clarity).
12366 (frame_update_line_height): Remove unused function; functionality
12367 is now done directly when setting the default font in x_set_font.
12368
12369 * xfns.c: Make (many) trivial substitutions for renamed and
12370 new macros in dispextern.h, frame.h and window.h.
12371
12372 * xmenu.c: Make (some) trivial substitutions for renamed and
12373 new macros in dispextern.h, frame.h and window.h.
12374
12375 * xterm.h (struct x_output): Move members left_pos, top_pos,
12376 border_width, pixel_height, pixel_width, line_height,
12377 internal_border_width, vertical_scroll_bar_extra,
12378 left_fringe_width, right_fringe_width, fringe_cols,
12379 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12380 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12381 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12382 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12383 (PIXEL_WIDTH, PIXEL_HEIGHT)
12384 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12385 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12386 frame.h and renamed [see frame.h changes].
12387 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12388 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12389 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12390 and renamed [see frame.h changes].
12391
12392 * xterm.c: Make (several) trivial substitutions for renamed and
12393 new macros in dispextern.h, frame.h and window.h.
12394 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12395 (scroll_run): Adapt to new fringe position.
12396 (glyph_rect): Use window coordinates returned from
12397 window_from_coordinates rather than frame_to_window_pixel_xy.
12398 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12399 scroll-bars.
12400 (handle_one_xevent): Simplify a USE_GTK conditional.
12401 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12402 (fringes are now inside margins, i.e. always in the clipping area).
12403 All callers changed.
12404 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12405 directly, then call compute_fringe_widths. Don't call
12406 frame_update_line_height.
12407
12408 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12409 border_width, pixel_height, pixel_width, line_height,
12410 internal_border_width, vertical_scroll_bar_extra,
12411 left_fringe_width, right_fringe_width, fringe_cols,
12412 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12413 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12414 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12415 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12416 (PIXEL_WIDTH, PIXEL_HEIGHT)
12417 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12418 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12419 frame.h and renamed [see frame.h changes].
12420 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12421 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12422 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12423 and renamed [see frame.h changes].
12424
12425 * w32term.c: Make (several) trivial substitutions for renamed and
12426 new macros in dispextern.h, frame.h and window.h.
12427 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12428 (glyph_rect): Use window coordinates returned from
12429 window_from_coordinates rather than frame_to_window_pixel_xy.
12430 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12431 scroll-bars.
12432 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12433 (fringes are now inside margins, i.e. always in the clipping area).
12434 All callers changed.
12435 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12436 directly, then call compute_fringe_widths. Don't call
12437 frame_update_line_height.
12438
12439 * w32console.c: Make (few) trivial substitutions for renamed and
12440 new macros in dispextern.h, frame.h and window.h.
12441
12442 * w32fns.c: Make (many) trivial substitutions for renamed and
12443 new macros in dispextern.h, frame.h and window.h.
12444
12445 * w32menu.c: Make (few) trivial substitutions for renamed and
12446 new macros in dispextern.h, frame.h and window.h.
12447
12448 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12449 border_width, pixel_height, pixel_width, line_height,
12450 internal_border_width, vertical_scroll_bar_extra,
12451 left_fringe_width, right_fringe_width, fringe_cols,
12452 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12453 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12454 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12455 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12456 (PIXEL_WIDTH, PIXEL_HEIGHT)
12457 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12458 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12459 frame.h and renamed [see frame.h changes].
12460 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12461 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12462 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12463 and renamed [see frame.h changes].
12464
12465 * macterm.c: Make (several) trivial substitutions for renamed and
12466 new macros in dispextern.h, frame.h and window.h.
12467 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12468 (glyph_rect): Use window coordinates returned from
12469 window_from_coordinates rather than frame_to_window_pixel_xy.
12470 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12471 scroll-bars.
12472 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12473 (fringes are now inside margins, i.e. always in the clipping area).
12474 All callers changed.
12475 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12476 directly, then call compute_fringe_widths. Don't call
12477 frame_update_line_height.
12478
12479 * macfns.c: Make (several) trivial substitutions for renamed and
12480 new macros in dispextern.h, frame.h and window.h.
12481 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12482
12483 * macmenu.c: Make (few) trivial substitutions for renamed and
12484 new macros in dispextern.h, frame.h and window.h.
12485
12486 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12487 and line_height, and use corresponding new members in struct
12488 frame. All uses changed.
12489 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12490 superseeded by corresponding macros in frame.h.
12491
12492 * msdos.c: Make (several) trivial substitutions for renamed and
12493 new macros in dispextern.h, frame.h and window.h.
12494 (IT_note_mouse_highlight): Use updated window coordinates returned
12495 by window_from_coordinates, rather than adjusting them locally.
12496 (internal_terminal_init): No need to initialize line_height here;
12497 it now defaults to 1.
12498
12499 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12500
12501 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12502 dropping `down' events.
12503
12504 2003-05-24 Andreas Schwab <schwab@suse.de>
12505
12506 * coding.c (find_safe_codings): Fix last change.
12507
12508 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12509
12510 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12511
12512 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12513
12514 * xdisp.c (display_mode_element): Increase max depth.
12515 Simplify the error handling code. Use a different error string
12516 for the case where we hit the depth limit.
12517
12518 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12519
12520 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12521
12522 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12523
12524 * intervals.c (get_local_map): Don't get char-property of previous
12525 point any more: get_pos_property already does it and better.
12526
12527 2003-05-21 Dave Love <fx@gnu.org>
12528
12529 [Merged from unicode branch.]
12530
12531 * xfns.c (x_window, x_window): Use use_xim.
12532
12533 * xterm.c (use_xim): Initialize.
12534 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12535 (x_term_init): Maybe set use_xim.
12536
12537 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12538
12539 2003-05-21 Jason Rumney <jasonr@gnu.org>
12540
12541 * unexw32.c (_start): Remove _fmode initialization.
12542
12543 * emacs.c (main) [WINDOWSNT]: Move it here.
12544
12545 2003-05-20 Dave Love <fx@gnu.org>
12546
12547 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12548
12549 2003-05-19 Richard M. Stallman <rms@gnu.org>
12550
12551 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12552 as value for QCfont attribute.
12553 (realize_default_face): lface should already exist; crash if not.
12554 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12555
12556 * frame.c (Fignore_event): Doc fix.
12557
12558 2003-05-19 Kenichi Handa <handa@m17n.org>
12559
12560 * coding.c (decode_coding_string): Handle post-read-conversion
12561 even if the coding doesn't require decoding.
12562
12563 2003-05-18 Richard M. Stallman <rms@gnu.org>
12564
12565 * callproc.c (Fcall_process_region): Doc fix.
12566
12567 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12568
12569 * lread.c (Fload): Print a message if package is obsolete.
12570
12571 * window.c (Fselect_window): Add optional `norecord' arg.
12572 (select_window_1): Fold into Fselect_window.
12573 (select_window_norecord): New function.
12574 (temp_output_buffer_show): Use it. Preserve current buffer.
12575
12576 * window.h (Fselect_window): Update declaration.
12577
12578 * window.c (delete_window, Fother_window, Fset_window_configuration):
12579 * minibuf.c (read_minibuf):
12580 * macterm.c (x_new_focus_frame):
12581 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12582 * callint.c (Fcall_interactively):
12583 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12584
12585 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12586
12587 2003-05-17 David Kastrup <dak@gnu.org>
12588
12589 * process.c (read_process_output): Back out change from 2003-03-09.
12590
12591 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12592
12593 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12594
12595 * textprop.c (text_property_stickiness): New arg `buffer'.
12596
12597 * intervals.h (text_property_stickiness): New arg `buffer'.
12598 (get_pos_property): Declare.
12599
12600 * intervals.c (get_local_map): Use get_pos_property, to obey
12601 stickiness and empty overlays.
12602 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12603 (merge_properties, intervals_equal, merge_properties_sticky):
12604 Use XCAR, XCDR.
12605 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12606
12607 2003-05-17 Richard M. Stallman <rms@gnu.org>
12608
12609 * minibuf.c (read_minibuf): If buffer is empty, record the default
12610 in the history.
12611 (Fminibuffer_complete_word): When deleting the overlap, take account
12612 of its real position.
12613
12614 * fns.c (map_char_table): Fix previous change.
12615
12616 * syntax.c (find_defun_start):
12617 When open_paren_in_column_0_is_defun_start,
12618 return beginning of buffer.
12619
12620 * lisp.h (map_char_table): Declare added arg.
12621
12622 * fns.c (map_char_table): New arg TABLE gets the master table.
12623 All calls changed.
12624 Process default and inheritance, resorting to Faref if necessary.
12625
12626 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12627 (Faccessible_keymaps): Pass new arg to map_char_table.
12628
12629 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12630
12631 * casetab.c (set_case_table): Pass new arg to map_char_table.
12632
12633 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12634
12635 * lisp.h (specbinding_func): New typedef.
12636 (struct specbinding): Use specbinding_func, to put the `volatile'
12637 in the right place.
12638
12639 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12640 to avoid GCC warning.
12641
12642 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12643
12644 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12645
12646 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12647
12648 * keyboard.c (apply_modifiers): Don't fill the other cache.
12649
12650 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12651
12652 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12653
12654 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12655 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12656 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12657 (Fset_window_configuration, Fcurrent_window_configuration)
12658 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12659 (Fpos_visible_in_window_p, mark_window_cursors_off)
12660 (window_internal_height, window_internal_width, Frecenter)
12661 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12662 (replace_buffer_in_all_windows, init_window_once, init_window)
12663 (syms_of_window, keys_of_window): Move from lisp.h.
12664 * lisp.h: Move window.c declarations to window.h.
12665
12666 * bytecode.c: Include window.h.
12667 * emacs.c: Include window.h.
12668
12669 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12670 (keyremap): Add `parent' field.
12671 (keyremap_step): Use it. Remove `parent' argument.
12672 (read_key_sequence): Setup and use the new `parent' field.
12673
12674 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12675
12676 * keyboard.c (adjust_point_for_property): Ensure termination.
12677
12678 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12679
12680 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12681 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12682 duplicated handling of function-key-map and key-translation-map
12683 in read_key_sequence.
12684 (read_key_sequence): Use them.
12685
12686 * keyboard.c (adjust_point_for_property): Try harder to move point
12687 to the non-sticky end of an invisible property.
12688
12689 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12690 property intangible as well.
12691
12692 2003-05-10 Andreas Schwab <schwab@suse.de>
12693
12694 * xmenu.c (single_menu_item): Change last parameter to void* to
12695 avoid warning.
12696
12697 2003-05-09 Richard M. Stallman <rms@gnu.org>
12698
12699 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
12700 Bind Qinhibit_modification_hooks to t so there will be no GC.
12701 Rename local `tem' to `save_deactivate_mark'.
12702
12703 * eval.c (specpdl_ptr): Declare volatile.
12704 (unbind_to): Copy the whole binding and decrement specpdl_ptr
12705 before doing the work of unbinding it.
12706
12707 * lisp.h (struct specbinding): Declare elements volatile.
12708 (specpdl_ptr): Declare volatile.
12709
12710 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
12711
12712 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
12713 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
12714
12715 2003-05-08 Dave Love <fx@gnu.org>
12716
12717 * coding.c (Vlast_coding_system_used): Doc fix.
12718
12719 2003-05-07 Jason Rumney <jasonr@gnu.org>
12720
12721 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
12722 when system does not support them.
12723
12724 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
12725
12726 * fileio.c (Qwrite_region_annotate_functions): New var.
12727 (build_annotations): Use it to process the global part of the hook.
12728 (syms_of_fileio): Init and staticpro it.
12729
12730 * keyboard.c (safe_run_hooks_error): Display a message instead of
12731 silently ignoring the error.
12732
12733 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
12734
12735 * keyboard.c (input_available_signal): Mark static.
12736 (menu_bar_items): Use map_keymap.
12737 (menu_bar_one_keymap): Remove.
12738 (menu_bar_item): Adjust arglist (for use in map_keymap).
12739 Properly hide a second binding when not both are keymaps.
12740
12741 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
12742 (single_keymap_panes): Use it and map_keymap.
12743 (single_menu_item): Use skp as well.
12744
12745 * keymap.h (map_keymap_function_t): New type.
12746 (map_keymap): Declare.
12747
12748 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
12749 (map_keymap_call, Fmap_keymap): New functions.
12750 (syms_of_keymap): Defsubr map-keymap.
12751
12752 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12753
12754 * gtkutil.c (create_dialog, make_widget_for_menu_item)
12755 (make_menu_item, create_menus, xg_update_menu_item): Don't call
12756 ..._with_mnemonic functions for menu items.
12757
12758 2003-05-01 Kenichi Handa <handa@m17n.org>
12759
12760 * coding.c (coding_system_accept_latin_extra_p): Delete this
12761 function.
12762 (find_safe_codings): Pay attention to
12763 the property tranlsation-table-for-encode of each codings.
12764 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
12765
12766 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
12767
12768 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
12769
12770 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
12771
12772 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
12773
12774 * lisp.h (CHECK): Wrap args in parenthesis.
12775 (specbind): Fix doc: symbol = Qnil is not supported any more.
12776
12777 * bytecode.c (Fbyte_code) <unwind-protect>:
12778 Use Fprogn rather than 0 and Qnil.
12779
12780 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
12781 `double', and `triple' modifiers as well.
12782
12783 2003-04-30 Richard M. Stallman <rms@gnu.org>
12784
12785 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
12786
12787 * alloc.c (abort_on_gc): New variable.
12788 (Fgarbage_collect): Abort if abort_on_gc is set.
12789
12790 * lisp.h (abort_on_gc): Add decl.
12791
12792 * eval.c (Fsignal): Clear abort_on_gc.
12793
12794 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
12795 Reinit FORMAT_START and END before second scan.
12796
12797 * xdisp.c (move_it_vertically_backward): Do the final big else
12798 even if nlines is 0.
12799
12800 * xdisp.c (redisplay_internal): Finish the per-frame loop
12801 even if redisplay is suspended by input.
12802
12803 2003-04-24 Andrew Choi <akochoi@shaw.ca>
12804
12805 * macterm.c (x_list_fonts): Return all fonts that match if
12806 maxnames = -1.
12807
12808 2003-04-25 Kenichi Handa <handa@m17n.org>
12809
12810 * syntax.c (skip_chars): Fix previous change.
12811
12812 2003-04-24 Kenichi Handa <handa@m17n.org>
12813
12814 * syntax.c (skip_chars): Make the code faster by using the common
12815 technique of *p, *stop, and *endp.
12816
12817 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12818
12819 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
12820 tool_bar_items so GTK tool bar expose callback does not access items
12821 being updated.
12822
12823 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
12824
12825 * eval.c (Fapply): Undo last change and add a comment about why.
12826
12827 2003-04-18 Miles Bader <miles@gnu.org>
12828
12829 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
12830 pickier PARSE_MULTIBYTE_SEQ.
12831
12832 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
12833
12834 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
12835 Use XCDR, XCAR, CONSP.
12836 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
12837 (Fapply): Remove unnecessary GCPRO.
12838
12839 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
12840
12841 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
12842
12843 * buffer.h: Don't hardcode BEG==1.
12844
12845 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
12846
12847 2003-04-16 Richard M. Stallman <rms@gnu.org>
12848
12849 * xdisp.c (try_window, try_window_reusing_current_matrix):
12850 When at end of window, set window_end_pos to Z-ZV.
12851
12852 * buffer.c (Foverlay_recenter): Doc fix.
12853
12854 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
12855
12856 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
12857
12858 2003-04-14 Andrew Choi <akochoi@shaw.ca>
12859
12860 * macterm.c (mac_check_for_quit_char): Don't check more often than
12861 once a second.
12862
12863 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
12864
12865 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
12866 specially, so that they can't hide an implicit switch-frame event.
12867 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
12868 (head_table): Use switch-frame as event_kind for select-window.
12869 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
12870
12871 * editfns.c (Fformat): Lisp_Object/int mixup.
12872 (format2): Remove unused var numargs.
12873
12874 2003-04-11 Kenichi Handa <handa@m17n.org>
12875
12876 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
12877 (Qafter_insert_file_set_coding): New variable.
12878 (syms_of_fileio): Initialize and staticpro it. Delete declaration
12879 for after-insert-file-adjust-coding-function.
12880 (Finsert_file_contents): Call Qafter_insert_file_set_coding
12881 instead of Vafter_insert_file_adjust_coding_function.
12882
12883 2003-04-11 Kenichi Handa <handa@m17n.org>
12884
12885 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
12886
12887 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
12888 string. Callers changed.
12889
12890 2003-04-10 Kenichi Handa <handa@m17n.org>
12891
12892 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
12893 (syms_of_fileio): Declare it as a lisp variable.
12894 (Finsert_file_contents):
12895 Call Vafter_insert_file_adjust_coding_function before calling
12896 decode-format.
12897
12898 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12899
12900 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
12901 get GtkAdjustment as widget now is a GtkRange.
12902
12903 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
12904 GtkRange to avoid memory leak.
12905
12906 2003-04-09 Kenichi Handa <handa@m17n.org>
12907
12908 * xfaces.c (Vface_font_rescale_alist): New variable.
12909 (struct font_name): New member rescale_ratio.
12910 (font_rescale_ratio): New function.
12911 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
12912 (better_font_p): On comparing point sized, pay attention to
12913 recale_ratio member of fonts.
12914 (build_scalable_font_name): Reflect font->rescale_ratio in the
12915 font name.
12916 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12917
12918 * lread.c (read1): Before calling index, check if the 2nd
12919 arguemnt is in ASCII range.
12920
12921 2003-04-08 Richard M. Stallman <rms@gnu.org>
12922
12923 * fileio.c (Ffile_symlink_p): Doc fix.
12924
12925 * editfns.c (Fformat): Translate positions of text properties
12926 in the format string to apply them to the result.
12927
12928 * fileio.c (Finsert_file_contents): Doc fix.
12929 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
12930
12931 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
12932
12933 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
12934
12935 2003-04-08 Steven Tamm <steventamm@mac.com>
12936
12937 * mac.c (init_mac_osx_environment): Switch libexec and bin so
12938 that self-contained application finds libexec files.
12939
12940 2003-04-08 Kenichi Handa <handa@m17n.org>
12941
12942 * coding.c (code_convert_region_unwind):
12943 Set Vlast_coding_system_used to the argument.
12944 (code_convert_region): If post-read-conversion function changed
12945 the value of last-coding-sytem, keep the new value in
12946 coding->symbol so that it won't be overridden.
12947 (run_pre_post_conversion_on_str): Likewise.
12948 (coding_system_accept_latin_extra_p): New function.
12949 (find_safe_codings): Pay attention to characters registered in
12950 latin-extra-code-table.
12951
12952 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
12953
12954 * Makefile.in (md5.o): Add missing dependency info.
12955
12956 2003-04-06 Richard M. Stallman <rms@gnu.org>
12957
12958 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
12959
12960 * marker.c (verify_bytepos): New function.
12961
12962 * intervals.c (set_intervals_multibyte_1): When becoming
12963 multibyte, adjust right and left child sizes to a whole set of
12964 characters. If an interval gets zero total-length, delete it.
12965 If an interval consists of just its children, delete one of them.
12966
12967 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
12968 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
12969
12970 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
12971 All calls deleted.
12972 (lisp_malloc): Do the work here directly.
12973
12974 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
12975
12976 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
12977 char tables.
12978
12979 2003-04-04 Kenichi Handa <handa@m17n.org>
12980
12981 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
12982 destructively change "%S" to "%s".
12983
12984 2003-04-03 Miles Bader <miles@gnu.org>
12985
12986 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
12987 always set.
12988
12989 2003-04-01 Dave Love <fx@gnu.org>
12990
12991 * xfns.c (xpm_lookup_color): Grok "opaque".
12992
12993 2003-03-31 Andrew Choi <akochoi@shaw.ca>
12994
12995 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
12996 parent window ID.
12997
12998 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
12999
13000 * macterm.h (struct mac_output): Define x_pixels_diff and
13001 y_pixels_diff.
13002
13003 2003-03-31 Juanma Barranquero <lektu@terra.es>
13004
13005 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13006 blockinput.h and files included from it.
13007
13008 2003-03-31 Kim F. Storm <storm@cua.dk>
13009
13010 The following changes consolidates the common code related to
13011 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13012 files into frame.c.
13013
13014 * frame.c: Include blockinput.h.
13015 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13016 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13017 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13018 related vars here.
13019 (struct frame_parm_table, frame_parms): New table for describing
13020 frame parameters and their associated Q-variable.
13021 The order of the parameters corresponds to the sequence of the
13022 frame_parm_handlers table in redisplay_interface.
13023 (x_fullscreen_move, x_set_frame_parameters)
13024 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13025 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13026 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13027 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13028 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13029 Generic functions for processing of frame parameters.
13030 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13031 (display_x_get_resource, x_get_resource_string): Functions for
13032 generic access to X resources.
13033 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13034 (x_default_parameter, Fx_parse_geometry): Functions for generic
13035 access to frame parameters.
13036 (x_figure_window_size): Generic calculation of frame size.
13037 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13038 (syms_of_frame): Intern and staticpro frame parameter variables.
13039 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13040 Defsubr Sx_get_resource and Sx_parse_geometry.
13041
13042 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13043 parameter related vars defined in frame.c.
13044 (EMACS_CLASS): Define here.
13045 (enum FULLSCREEN_*): Define here.
13046 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13047 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13048 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13049 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13050 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13051 (x_set_visibility, x_set_autoraise, x_set_autolower)
13052 (x_set_unsplittable, x_set_vertical_scroll_bars)
13053 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13054 (x_figure_window_size): Add prototypes.
13055
13056 * dispextern.h (frame_parm_handler): New typedef.
13057 (struct redisplay_interface): New member frame_parm_handlers.
13058 (enum resource_types): Move declaration here.
13059 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13060 (x_default_parameter): Add prototypes.
13061
13062 * window.c: Remove extern decl for frame parameter vars.
13063 (change_window_heights): New generic function;
13064 replaces x_change_window_heights. All users changed.
13065
13066 * window.h (change_window_heights): Add prototype.
13067
13068 * xfaces.c: Remove extern decl for frame parameter vars.
13069
13070 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13071 (struct w32_display_info): Fix type of xrdb member.
13072 (enum FULLSCREEN_*): Remove.
13073 Remove prototypes for generic functions (in frame.h).
13074
13075 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13076 parameters now defined in frame.h and frame.c.
13077 (Vx_resource_name): Remove. Use generic var.
13078 (enum x_frame_parms): Remove (bogus, unused enum).
13079 (check_x_display_info): Make non-static (for frame.c).
13080 (struct x_frame_parm_table, x_frame_parms): Remove.
13081 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13082 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13083 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13084 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13085 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13086 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13087 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13088 Remove. Use generic functions instead.
13089 (enum resource_types): Remove.
13090 (x_set_scroll_bar_default_width): New global function (for frame.c).
13091 (Fx_create_frame): Depend on x_figure_window_size to add space for
13092 toolbar and setup size_hint_flags.
13093 (x_frame_parm_handlers): New table for redisplay_interface.
13094 (syms_of_xfns): Don't intern/staticpro removed vars.
13095
13096 * xterm.c: Remove unnecessary extern declarations.
13097 (x_fullscreen_adjust): Remove. Use generic instead.
13098 (x_redisplay_interface): Add x_frame_parm_handlers member.
13099
13100 * w32gui.h (XrmDatabase): New (dummy) typedef.
13101
13102 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13103 (struct w32_display_info): Fix type of xrdb member.
13104 (enum FULLSCREEN_*): Remove.
13105 (x_fullscreen_adjust): Remove prototype.
13106
13107 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13108 parameters now defined in frame.h and frame.c.
13109 (Vx_resource_name): Remove. Use generic var.
13110 (enum x_frame_parms): Remove (bogus, unused enum).
13111 (check_x_display_info): Make non-static (for frame.c).
13112 (struct x_frame_parm_table, x_frame_parms): Remove.
13113 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13114 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13115 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13116 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13117 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13118 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13119 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13120 Remove. Use generic functions instead.
13121 (enum resource_types): Remove.
13122 (x_set_scroll_bar_default_width): New global function (for frame.c).
13123 (Fx_create_frame): Depend on x_figure_window_size to add space for
13124 toolbar and setup size_hint_flags.
13125 (w32_frame_parm_handlers): New table for redisplay_interface.
13126 (syms_of_w32fns): Don't intern/staticpro removed vars.
13127
13128 * w32term.c: Remove unnecessary extern declarations.
13129 (x_fullscreen_adjust): Remove. Use generic instead.
13130 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13131
13132 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13133
13134 * macgui.h (XrmDatabase): New (dummy) typedef.
13135
13136 * macterm.h (EMACS_CLASS): Remove.
13137 (struct mac_display_info): Add xrdb member.
13138 (struct mac_output): Add want_fullscreen member.
13139
13140 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13141 parameters now defined in frame.h and frame.c.
13142 (Vx_resource_name): Remove. Use generic var.
13143 (check_x_display_info): Make non-static (for frame.c).
13144 (struct x_frame_parm_table, x_frame_parms): Remove.
13145 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13146 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13147 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13148 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13149 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13150 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13151 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13152 Remove. Use generic functions instead.
13153 (enum resource_types): Remove.
13154 (x_set_scroll_bar_default_width): New global function (for frame.c).
13155 (mac_frame_parm_handlers): New table for redisplay_interface.
13156 (syms_of_macfns): Don't intern/staticpro removed vars.
13157
13158 * macterm.c: Remove unnecessary extern declarations.
13159 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13160
13161 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13162 included from it (atimer.h and systime.h).
13163
13164 2003-03-30 Andreas Schwab <schwab@suse.de>
13165
13166 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13167 parameters for shift_glyphs_for_insert.
13168
13169 * macterm.c (x_redisplay_interface): Add missing entry for
13170 draw_vertical_window_border.
13171
13172 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13173
13174 * fileio.c (Fexpand_file_name): In the no-handler case, after
13175 expanding, look again for a handler and invoke it. This is needed
13176 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13177 expansion produces "/user@host:/bar/../baz" which needs to be
13178 expanded again for the finame result "/user@host:/baz".
13179
13180 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13181
13182 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13183 of area to be redrawn for better performance.
13184
13185 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13186
13187 * xterm.c (take_vertical_position_into_account): Remove.
13188 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13189 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13190 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13191 (x_set_toolkit_scroll_bar_thumb): Simplify.
13192 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13193 (XTread_socket): Remove unused var.
13194 (x_make_frame_invisible): Replace goto with else.
13195
13196 * xdisp.c (set_vertical_scroll_bar): New fun.
13197 (redisplay_window): Use it.
13198
13199 2003-03-26 Richard M. Stallman <rms@gnu.org>
13200
13201 * xdisp.c (update_tool_bar): Recompute tool bar if
13202 update_mode_lines is set. Set w->update_mode_line
13203 only if the tool bar contents actually change.
13204 (update_menu_bar): Undo previous change.
13205
13206 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13207
13208 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13209 (xg_frame_set_char_size): Calculate scroll bar width before frame
13210 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13211 (xg_separator_p): Check for all documented separator types.
13212 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13213 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13214
13215 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13216 so tool bar gets updated.
13217
13218 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13219
13220 * data.c (store_symval_forwarding): Re-instate part of the code
13221 that was deleted with too much enthusiasm.
13222
13223 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13224
13225 * data.c (store_symval_forwarding): Delete special read-only
13226 hack for type == -1, since we now use ->constant instead.
13227 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13228
13229 * buffer.c (overlays_in): Declare static.
13230 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13231 `constant' field rather than the variable's `type' field.
13232
13233 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13234
13235 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13236
13237 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13238
13239 * fns.c [MAC_OSX]: Do not redefine vector.
13240
13241 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13242
13243 * macgui.h: Remove definition of No_Cursor.
13244
13245 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13246
13247 * xdisp.c: Define No_Cursor.
13248 (x_write_glyphs, notice_overwritten_cursor)
13249 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13250 (note_mouse_highlight): Remove Mac-specific code.
13251 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13252
13253 2003-03-24 John Paul Wallington <jpw@gnu.org>
13254
13255 * xdisp.c (redisplay_window): If mini window's buffer is not
13256 empty, then redisplay it like other windows.
13257
13258 2003-03-23 Kim F. Storm <storm@cua.dk>
13259
13260 * w32term.c (w32_draw_window_cursor): Fix last change.
13261
13262 2003-03-23 Kenichi Handa <handa@m17n.org>
13263
13264 * alloc.c (make_string_from_bytes, make_specified_string):
13265 Add `const' for the arg CONTENTS.
13266
13267 * lisp.h (make_string_from_bytes, make_specified_string):
13268 Prototypes adjusted.
13269
13270 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13271
13272 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13273
13274 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13275 (XG_SB_RANGE): New define.
13276
13277 * gtkutil.c (xg_fixed_handle_expose): New function.
13278 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13279 expose events.
13280 (xg_update_scrollbar_pos): Take two more arguments, left and width
13281 of scroll bar including borders.
13282 Clear left and right part outside scroll bar separately as some
13283 themes have bars that are not an even number of pixels.
13284 Don't set reallocate_redraws, don't call
13285 gdk_window_process_all_updates.
13286 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13287 so no need to change it. Calculate size and value with XG_SB_RANGE.
13288
13289 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13290 Pass left and width of scroll bar including borders to
13291 xg_update_scrollbar_pos.
13292
13293 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13294
13295 * Makefile.in: Make sure space precedes end-of-line backslashes.
13296
13297 2003-03-22 Kim F. Storm <storm@cua.dk>
13298
13299 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13300 Add generic versions here. Remove system specific versions
13301 defined elsewhere.
13302
13303 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13304 Add prototypes.
13305
13306 * xterm.h (STORE_NATIVE_RECT): New macro.
13307
13308 2003-03-21 Kim F. Storm <storm@cua.dk>
13309
13310 * xdisp.c (get_glyph_string_clip_rect):
13311 Use FRAME_INTERNAL_BORDER_WIDTH.
13312
13313 * dispextern.h (struct redisplay_interface): Add active_p
13314 argument to draw_window_cursor member. All uses changed.
13315
13316 2003-03-21 Kim F. Storm <storm@cua.dk>
13317
13318 The following changes consolidate code related to writing and
13319 inserting glyphs, exposing frame, the tool bar, the mouse face,
13320 the output cursor, and help echo from xterm.c, w32term.c and
13321 macterm.c into xdisp.c. It also generalizes the use of the
13322 window_part enum instead of using numeric values throughout.
13323
13324 * xdisp.c: Consolidate gui-independent code here.
13325 Include keymap.h.
13326 (Qhelp_echo): Import.
13327 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13328 (help_echo_string, help_echo_window, help_echo_object)
13329 (previous_help_echo_string, help_echo_pos): Declare here.
13330 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13331 (estimate_mode_line_height): Define here. Handle windowing
13332 systems directly (without using estimate_mode_line_height_hook).
13333 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13334 (update_window_cursor, update_cursor_in_window_tree)
13335 (fast_find_position, fast_find_string_pos)
13336 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13337 (expose_area, expose_line, expose_overlaps, expose_window)
13338 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13339 declared static as they are only used locally in xdisp.c.
13340 (draw_glyphs): Rename from x_draw_glyphs and make static.
13341 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13342 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13343 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13344 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13345 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13346 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13347 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13348 (note_mouse_highlight, x_clear_window_mouse_face)
13349 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13350 (x_intersect_rectangles): New generic functions for use by xdisp.c
13351 and GUI front-ends.
13352 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13353 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13354
13355 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13356 (NativeRectangle): Generic typedef for rectangle type.
13357 (enum window_part): Move here from window.c.
13358 (struct redisplay_interface): New members flush_display_optional,
13359 define_frame_cursor, clear_frame_area, draw_window_cursor,
13360 draw_vertical_window_border, shift_glyphs_for_insert.
13361 Rename member clear_mouse_face to clear_window_mouse_face.
13362 (estimate_mode_line_height_hook): Remove hook.
13363 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13364 (tool_bar_item_info): Remove prototype.
13365 (help_echo_string, help_echo_window, help_echo_object)
13366 (previous_help_echo_string, help_echo_pos)
13367 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13368 (x_stretch_cursor_p, output_cursor): Declare extern.
13369 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13370 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13371 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13372 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13373 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13374 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13375 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13376 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13377 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13378 Add prototypes.
13379 (mode_line_string, marginal_area_string): Fix prototypes.
13380
13381 * window.c (enum window_part): Move to dispextern.h.
13382 (coordinates_in_window): Use enum window_part member names
13383 instead of numbers to describe return value.
13384 (struct check_window_data): Change part member to window_part.
13385 (check_window_containing): Return window_part unaltered.
13386 (window_from_coordinates): Change part arg from int to enum
13387 window_part. Allow part arg to be null. All users changed.
13388
13389 * window.h (window_from_coordinates): Fix prototype.
13390
13391 * term.c (estimate_mode_line_height): Move to xdisp.c.
13392
13393 * keyboard.c (make_lispy_event): Use enum window_part.
13394
13395 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13396 window_part instead of int in arg list. Users changed.
13397
13398 * xterm.h (No_Cursor): Declare as None for X.
13399 (struct mac_output): Replace member cross_cursor by hand_cursor.
13400
13401 * xterm.c: Remove consolidated defines and code.
13402 (BETWEEN): Remove unused macro.
13403 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13404 (x_define_frame_cursor, x_clear_frame_area)
13405 (x_draw_window_cursor): New X-specific functions for RIF.
13406 (x_redisplay_interface): Add new members.
13407
13408 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13409
13410 * w32term.h (struct w32_output): Remove cross_cursor member.
13411
13412 * w32term.c: Remove consolidated defines and code.
13413 (BETWEEN): Remove unused macro.
13414 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13415 (w32_define_frame_cursor, w32_clear_frame_area)
13416 (w32_draw_window_cursor): New W32-specific functions for RIF.
13417 (w32_redisplay_interface): Add new members.
13418
13419 * w32gui.h (No_Cursor): Define as 0 for W32.
13420 (XRectangle): Add X compatible rectangle type.
13421 (NativeRectangle): Declare as RECT for W32.
13422 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13423
13424 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13425
13426 * w32console.c: Remove consolidated defines and code.
13427
13428 * msdos.h (Display_Info): Add generic typedef.
13429
13430 * msdos.c: Remove consolidated defines and code.
13431 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13432
13433 * macterm.h (struct mac_output): Replace member cross_cursor by
13434 hand_cursor.
13435 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13436
13437 * macterm.c: Remove consolidated defines and code.
13438 (BETWEEN): Remove unused macro.
13439 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13440 (mac_define_frame_cursor, mac_clear_frame_area)
13441 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13442 (x_redisplay_interface): Add new members.
13443
13444 * macgui.h (No_Cursor): Define as 0 for Mac.
13445 (XRectangle): Add X compatible rectangle type.
13446 (NativeRectangle): Declare as Rect for Mac.
13447 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13448
13449 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13450 (x_set_cursor_color): Use x_display_and_set_cursor.
13451
13452 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13453 included from it. Add dependency on keymap.h.
13454
13455 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13456
13457 2003-03-21 Kenichi Handa <handa@m17n.org>
13458
13459 * fileio.c (Fexpand_file_name): Fix previous change.
13460
13461 2003-03-19 Kenichi Handa <handa@m17n.org>
13462
13463 * fileio.c (Ffile_name_directory): Reconstruct file name by
13464 make_specified_string.
13465 (Ffile_name_nondirectory, Ffile_name_as_directory)
13466 (Fdirectory_file_name, Fexpand_file_name)
13467 (Fsubstitute_in_file_name): Likewise.
13468 (Fread_file_name): Compare decoded homedir with DIR and
13469 DEFAULT_FILENAME.
13470
13471 * alloc.c (make_specified_string): If NCHARS is negative, count
13472 the number of characters.
13473
13474 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13475
13476 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13477 all widgets.
13478
13479 * gtkutil.h: Removed xg_ignore_next_thumb.
13480
13481 2003-03-18 Kenichi Handa <handa@m17n.org>
13482
13483 * coding.c (Vchar_coding_system_table): Remove this variable.
13484 (Vcoding_system_safe_chars): New variable.
13485 (intersection): Remove this function.
13486 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13487 all codings in SAFE_CODINGS.
13488 (Ffind_coding_systems_region_internal): Adjust for the change of
13489 find_safe_codings. Get generic coding systems from
13490 Vcoding_system_safe_chars.
13491 (Fdefine_coding_system_internal): New function.
13492 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13493 Initialize and staticpro Vcoding_system_safe_chars.
13494
13495 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13496
13497 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13498 equal old values before updating.
13499
13500 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13501
13502 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13503
13504 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13505
13506 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13507 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13508 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13509 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13510 (xg_create_scroll_bar): Pass bar to button event callback.
13511 (xg_find_top_left_in_fixed): New function.
13512 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13513 whole scroll bar area. Get old position with
13514 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13515 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13516 dragging is in progress. Calculate whole as for Motif.
13517 Remove code that saved last values. Call gtk_range functions to
13518 set scroll bar sizes.
13519
13520 * gtkutil.h: Removed xg_ignore_next_thumb.
13521
13522 2003-03-17 Juanma Barranquero <lektu@terra.es>
13523
13524 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13525 and files included from it.
13526
13527 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13528
13529 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13530 multiple occurrences of the same keymap under different prefixes.
13531 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13532
13533 2003-03-16 Jason Rumney <jasonr@gnu.org>
13534
13535 * w32gui.h: Use HDC for Display.
13536
13537 * w32term.c (w32_encode_char): Prevent double-byte chars from
13538 crashing Emacs.
13539
13540 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13541 as binary.
13542
13543 2003-03-16 Juanma Barranquero <lektu@terra.es>
13544
13545 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13546
13547 2003-03-16 Kim F. Storm <storm@cua.dk>
13548
13549 The following changes consolidate some of the gui-independent
13550 parts of the processing and drawing of "glyph strings" from
13551 xterm.c, w32term.c, and macterm.c into xdisp.c.
13552
13553 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13554 21 bits (this reduces number of faces from 4M to 2M).
13555 Replace W32 specific w32_font_type member (2 bits) by generic
13556 font_type member (3 bits) for portability.
13557 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13558 (enum draw_glyphs_face): Define here.
13559 (struct glyph_string): Define here. Merge W32 and X versions.
13560 (struct redisplay_interface): New members per_char_metric,
13561 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13562 (VCENTER_BASELINE_OFFSET): Define here.
13563 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13564 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13565
13566 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13567 (dump_glyph_string): Moved here.
13568 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13569 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13570 (fill_composite_glyph_string, fill_glyph_string)
13571 (fill_image_glyph_string, fill_stretch_glyph_string)
13572 (left_overwritten, left_overwriting, right_overwritten)
13573 (right_overwriting, get_char_face_and_encoding)
13574 (set_glyph_string_background_width, compute_overhangs_and_x)
13575 (append_glyph, append_composite_glyph, produce_image_glyph)
13576 (take_vertical_position_into_account, append_stretch_glyph)
13577 (produce_stretch_glyph): New generic functions (based on X version).
13578 Call platform specific functions through rif.
13579 (INIT_GLYPH_STRING): New macro, hides W32 details.
13580 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13581 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13582 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13583 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13584 (notice_overwritten_cursor):
13585 Generic functions exported to platform modules. Users changed.
13586
13587 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13588 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13589 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13590 New macros for consolidated code.
13591
13592 * xterm.c: Remove consolidated defines and code.
13593 (x_per_char_metric, x_encode_char)
13594 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13595 (x_redisplay_interface): Add new members.
13596
13597 * w32gui.h (Display): Add dummy typedef for consolidation.
13598 (XChar2b): Define alias for wchar_t for consolidation.
13599 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13600
13601 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13602 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13603 New macros for consolidation.
13604
13605 * w32term.c: Remove consolidated defines and code.
13606 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13607 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13608 (w32_per_char_metric): Change font_type arg to int for RIF.
13609 (w32_encode_char): Return int according to RIF requirements.
13610 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13611 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13612 x_get_glyph_overhangs.
13613 (w32_redisplay_interface): Add new members.
13614
13615 * macgui.h (XChar2b): Move typedef here for consolidation.
13616 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13617
13618 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13619 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13620 consolidation.
13621
13622 * macterm.c: Remove consolidated defines and code.
13623 (mac_per_char_metric): New function for RIF.
13624 (mac_encode_char): Adapt to new RIF requirements.
13625 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13626 (x_redisplay_interface): Add new members.
13627
13628 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13629
13630 * keymap.c (Vmenu_events): New var.
13631 (syms_of_keymap): Initialize it.
13632 (where_is_internal): Check more carefully what is a menu event.
13633
13634 2003-03-14 Richard M. Stallman <rms@gnu.org>
13635
13636 * lread.c (read1): After #!, exit loop on eof.
13637
13638 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13639
13640 * gtkutil.h: Add declaration for xg_frame_cleared.
13641
13642 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13643
13644 * gtkutil.c (struct xg_last_sb_pos): New structure.
13645 (handle_fixed_child): New function.
13646 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13647 and force a redraw on them.
13648 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13649 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13650 so we can avoid unneeded redraws.
13651 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13652 and force a redraw on the scroll bar.
13653 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13654 if xg_last_sb_pos shows the positions are up to date.
13655 (xg_frame_cleared): New function.
13656
13657 2003-03-13 Kenichi Handa <handa@m17n.org>
13658
13659 * coding.c (Fdetect_coding_region): Fix docstring.
13660 (Fdetect_coding_string): Fix docstring.
13661
13662 2003-03-13 Andreas Schwab <schwab@suse.de>
13663
13664 * gtkutil.c: Add prototype for create_menus.
13665
13666 * data.c (long_to_cons): Fix type of top.
13667
13668 * xselect.c (selection_data_to_lisp_data): Use int instead of
13669 long for an integer of size 4.
13670
13671 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13672 (xg_tool_bar_help_callback): Likewise.
13673
13674 2003-03-12 Andreas Schwab <schwab@suse.de>
13675
13676 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13677
13678 2003-03-12 Kim F. Storm <storm@cua.dk>
13679
13680 The following changes consolidate the fringe handling from
13681 xterm.c, w32term.c, and macterm.c into xdisp.c.
13682
13683 * xdisp.c: Consolidate fringe handling code here.
13684 (left_bits, right_bits, continued_bits, continuation_bits)
13685 (ov_bits, zv_bits): Define fringe bitmaps.
13686 (fringe_bitmaps): New array holding fringe bitmaps.
13687 (draw_fringe_bitmap): Draw a specific bitmap; call display
13688 specific drawing routine via rif->draw_fringe_bitmap.
13689 (draw_row_fringe_bitmaps): Generic replacement for
13690 x_draw_row_fringe_bitmaps; all callers changed.
13691 (compute_fringe_widths): Generic replacement for
13692 x_compute_fringe_widths; all callers changed.
13693
13694 * dispextern.h (enum fringe_bitmap_type): Define here.
13695 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13696 (fringe_bitmaps): Declare extern.
13697 (struct redisplay_interface): New member draw_fringe_bitmap.
13698 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
13699
13700 * xterm.c: Remove generic fringe code.
13701 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13702 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13703
13704 * w32term.c: Remove generic fringe code.
13705 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
13706 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
13707
13708 * macterm.c: Remove generic fringe code.
13709 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
13710 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
13711
13712 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
13713
13714 * print.c (Fprin1_to_string): Return unibyte string if possible.
13715
13716 2003-03-09 David Kastrup <dak@gnu.org>
13717
13718 * process.c (read_process_output): We have allocated enough space
13719 for readmax and carryover, so actually use the alloted space.
13720
13721 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13722
13723 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
13724 toolkit scrollbar click.
13725
13726 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
13727 for USE_GTK.
13728 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
13729 also.
13730 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
13731 scrollbar and control is pressed, call x_scroll_bar_handle_click.
13732
13733 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
13734
13735 * gtkutil.c (xg_get_scroll_id_for_window): New function.
13736 (xg_tool_bar_item_expose_callback): New function.
13737 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
13738 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
13739 on the tool bar widget.
13740 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
13741 to expose on the tool bar item widgets.
13742
13743 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13744
13745 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
13746 struct image* when deciding to update (struct image* may have been
13747 deleted from the image cache).
13748
13749 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
13750 the event isn't for a frame (i.e. for dialogs).
13751
13752 2003-03-07 Kenichi Handa <handa@m17n.org>
13753
13754 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
13755 composition components reaches the limit, terminate composing.
13756 (COMPOSITION_OK): New macro.
13757 (detect_coding_iso2022): Use it if an escape sequence for
13758 composition is found.
13759 (coding_restore_composition): Adjust the number of composition
13760 components if it is not sane.
13761
13762 2003-03-06 Juanma Barranquero <lektu@terra.es>
13763
13764 * w32term.h (struct w32_display_info): Add xrdb member to support
13765 passing resources via -xrm on Windows.
13766
13767 * w32term.c (w32_make_rdb): New function.
13768 (w32_term_init): Use it to initialize xrdb member of w32_display_info
13769 struct. Delete leftover code.
13770
13771 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
13772 for resources passed on the command line.
13773
13774 * w32reg.c (w32_get_rdb_resource): New function.
13775 (x_get_string_resource): Use it, so resources passed with -xrm
13776 supercede the ones in the registry.
13777
13778 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13779
13780 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
13781 instead of x_top_window_to_frame.
13782
13783 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13784
13785 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
13786 when restarting Emacs.
13787
13788 2003-03-03 Richard M. Stallman <rms@gnu.org>
13789
13790 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
13791 to run kill-buffer-query-functions.
13792 (Qkill_buffer_query_functions): New var.
13793 (syms_of_buffer): Init and staticpro it.
13794
13795 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13796
13797 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
13798
13799 2003-02-25 Kim F. Storm <storm@cua.dk>
13800
13801 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
13802 If centering point failed to make whole line visible and vscroll
13803 is non-zero, disable vscroll and try centering point again.
13804
13805 * lread.c (read1): Accept `single space' syntax like (? x).
13806
13807 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13808
13809 * keyboard.c (cancel_hourglass_unwind): Surround with
13810 #ifdef HAVE_X_WINDOWS
13811
13812 2003-02-25 Kenichi Handa <handa@m17n.org>
13813
13814 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
13815 process only when "subprocesses" is defined.
13816
13817 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
13818
13819 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
13820
13821 2003-02-24 Juanma Barranquero <lektu@terra.es>
13822
13823 * callint.c (fix_command): Declare as static void and move before
13824 Fcall_interactively.
13825
13826 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
13827 (syms_of_xdisp): Don't initialize Qwhen.
13828
13829 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13830
13831 * keyboard.c (cancel_hourglass_unwind): New function.
13832 (command_loop_1): Cancel hourglass with unwind-protect.
13833
13834 2003-02-23 Richard M. Stallman <rms@gnu.org>
13835
13836 * callint.c (fix_command): New subroutine, from Fcall_interactively.
13837 Detect (when ... (region-beginning)) etc.
13838 (Fcall_interactively): Call fix_command.
13839 (Qif, Qwhen): New variables.
13840 (syms_of_callint): Init and staticpro them.
13841
13842 * regex.c (print_partial_compiled_pattern): Output to stderr.
13843
13844 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13845
13846 * dired.c (directory_files_internal): Don't expand directory.
13847 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
13848 instead. From Lars Hansen <larsh@math.ku.dk>.
13849
13850 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
13851
13852 * fns.c (string_to_multibyte): Remove unused var i.
13853 (Flanginfo): Fix int/Lisp_Object mixup.
13854 (void_call2): New fun.
13855 (Fmap_char_table): Use it in place of call2.
13856
13857 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
13858
13859 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
13860
13861 * keymap.c (copy_keymap_1): Make it static.
13862
13863 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
13864
13865 2003-02-22 David Ponce <david@dponce.com>
13866
13867 * lread.c (Fload): Don't check STRING_MULTIBYTE.
13868
13869 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13870
13871 * process.h: Removed subtty field from struct Lisp_Process.
13872
13873 * process.c (create_process): Remove setting of subtty.
13874 (emacs_get_tty_pgrp): New function.
13875 (Fprocess_running_child_p, process_send_signal):
13876 Call emacs_get_tty_pgrp instead of ioctl.
13877 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
13878
13879 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
13880
13881 * keymap.c (Fdefine_key): Doc fix.
13882
13883 2003-02-21 Juanma Barranquero <lektu@terra.es>
13884
13885 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
13886
13887 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
13888 POLLING_PROBLEM_IN_SELECT.
13889
13890 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
13891 Delete #undef of POLLING_PROBLEM_IN_SELECT.
13892
13893 * s/hpux10-20.h: New file.
13894
13895 * process.c (wait_reading_process_input):
13896 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
13897
13898 2003-02-20 Kenichi Handa <handa@m17n.org>
13899
13900 * fontset.c (check_fontset_name): If NAME is nil, return the
13901 default fontset.
13902 (override_font_info): New function.
13903 (Fset_fontset_font): Document that NAME nil means the default fontset.
13904 (Ffontset_info): If FONTSET is not the default fontset, merge
13905 FONTSET onto the copy of the default fontset, and work on that
13906 copy. Document that NAME nil means the default fontset.
13907 (Ffontset_font): Document that NAME nil means the default fontset.
13908
13909 * process.c (setup_process_coding_systems): If the process's
13910 in/out descriptor is -1, do nothing.
13911
13912 2003-02-19 Andreas Schwab <schwab@suse.de>
13913
13914 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
13915 Add prototypes.
13916
13917 2003-02-19 Kenichi Handa <handa@m17n.org>
13918
13919 * xfaces.c (try_alternative_families): Try all scalable fonts if
13920 Vscalable_fonts_allowed is not Qt.
13921
13922 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13923
13924 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
13925
13926 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13927
13928 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
13929 names.
13930
13931 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
13932 (sorted_font_list): Move allocation of struct font_name to
13933 x_face_list_fonts.
13934 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
13935 (Fx_list_fonts): Set maxnames to -1 to get all font names.
13936
13937 2003-02-18 Kim F. Storm <storm@cua.dk>
13938
13939 * lread.c (read1): Fix last change.
13940 "`" is not always special. Allow "?" after a character constant.
13941
13942 2003-02-18 Andrew Choi <akochoi@shaw.ca>
13943
13944 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
13945
13946 2003-02-18 Andreas Schwab <schwab@suse.de>
13947
13948 * window.c (window_scroll_pixel_based): Move outside a
13949 multi-glyph character before setting new window start.
13950
13951 * xdisp.c (in_display_vector_p): New function.
13952 * dispextern.h (in_display_vector_p): Declare.
13953
13954 2003-02-18 Kim F. Storm <storm@cua.dk>
13955
13956 * lread.c (read1): Fix and relax read syntax.
13957 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
13958 Only recognize "," after dotted-pair dot if inside backquote.
13959 Never include "`" or "," (inside backquote) in a symbol.
13960 Allow dotted-pair dot after a character constant.
13961 Allow "`" and "," (inside backquote) after a character constant.
13962
13963 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13964
13965 * gtkutil.c (xg_tool_bar_expose_callback): New function.
13966 (xg_create_tool_bar): Force style of tool bar to be horizontal with
13967 icons. Set name of tool bar to emacs-toolbar.
13968 (update_frame_tool_bar): Connect expose event to
13969 xg_tool_bar_expose_callback.
13970
13971 2003-02-17 Richard M. Stallman <rms@gnu.org>
13972
13973 * keyboard.c (this_command_key_count_reset): New variable.
13974 Initiatize to 0 where this_command_key_count is set.
13975 (read_char): Save and restore this_command_key_count_reset
13976 around input method code.
13977 (read_char): If this_command_key_count_reset, echo reread commands.
13978 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
13979
13980 2003-02-17 Kenichi Handa <handa@m17n.org>
13981
13982 * fns.c (string_to_multibyte): Always return a multibyte string.
13983
13984 2003-02-16 Jason Rumney <jasonr@gnu.org>
13985
13986 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
13987 Negative max_fonts parameter means list all.
13988
13989 2003-02-14 Dave Love <fx@gnu.org>
13990
13991 * fns.c (Flanginfo): Doc fix.
13992
13993 2003-02-13 Kim F. Storm <storm@cua.dk>
13994
13995 * lread.c (read_escape): Interpret \s as a SPACE character, except
13996 for \s-X in a character constant which still is the super modifier.
13997 (read1): Signal an `invalid read syntax' error if a character
13998 constant is immediately followed by a digit or symbol character.
13999
14000 * search.c (Fmatch_data): Doc fix. Explicitly state that
14001 match-data is undefined if last search failed.
14002
14003 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14004 All uses changed.
14005
14006 2003-02-12 Juanma Barranquero <lektu@terra.es>
14007
14008 * eval.c (Fdefmacro): Fix typo.
14009
14010 2003-02-12 Kim F. Storm <storm@cua.dk>
14011
14012 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14013 macro is a string, convert meta modifiers in string when copying
14014 the string into a vector.
14015
14016 2003-02-11 Kim F. Storm <storm@cua.dk>
14017
14018 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14019
14020 2003-02-11 Kenichi Handa <handa@m17n.org>
14021
14022 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14023
14024 2003-02-10 Kim F. Storm <storm@cua.dk>
14025
14026 * process.c: Doc fixes.
14027 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14028
14029 2003-02-10 Kenichi Handa <handa@m17n.org>
14030
14031 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14032
14033 * process.c (QCfilter_multibyte): New variable.
14034 (setup_process_coding_systems): New function.
14035 (Fset_process_buffer, Fset_process_filter):
14036 Call setup_process_coding_systems.
14037 (Fstart_process): Initialize the member `filter_multibyte' of
14038 struct Lisp_Process.
14039 (create_process): Call setup_process_coding_systems.
14040 (Fmake_network_process): New keyward `:filter-multibyte'.
14041 Initialize the member `filter_multibyte' of struct Lisp_Process.
14042 Call setup_process_coding_systems.
14043 (server_accept_connection): Call setup_process_coding_systems.
14044 (read_process_output): If the process has a filter, decide the
14045 multibyteness of a string to given to the filter by
14046 `filter_multibyte' member of the process. If the process doesn't
14047 have a filter and the result of conversion is unibyte, use
14048 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14049 multibyte form.
14050 (Fset_process_coding_system): Call setup_process_coding_systems.
14051 (Fset_process_filter_multibyte): New function.
14052 (Fprocess_filter_multibyte_p): New function.
14053 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14054 Defsubr Sset_process_filter_multibyte and
14055 Sprocess_filter_multibyte_p.
14056
14057 * process.h (struct Lisp_Process): New member filter_multibyte.
14058
14059 * lisp.h (setup_process_coding_systems): Add prototype.
14060
14061 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14062 process, update coding systems for the process.
14063
14064 2003-02-09 Kenichi Handa <handa@m17n.org>
14065
14066 * fns.c (string_to_multibyte): New function.
14067 (Fstring_to_multibyte): New function.
14068 (syms_of_fns): Defsubr it.
14069
14070 2003-02-08 Andreas Schwab <schwab@suse.de>
14071
14072 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14073 instead of the substitution.
14074
14075 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14076
14077 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14078
14079 * xmenu.c (menu_position_func): Adjust menu popup position so that
14080 the menu is fully visible.
14081
14082 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14083
14084 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14085 (x_make_frame_invisible, x_wm_set_icon_position):
14086 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14087
14088 * xfns.c (x_set_name, x_set_title): Ditto.
14089
14090 2003-02-04 Richard M. Stallman <rms@gnu.org>
14091
14092 * keyboard.c (echo_now): Update before_command_echo_length.
14093 (Freset_this_command_lengths): Reset this_command_key_count etc.
14094 immediately rather than arranging to do it later.
14095 (before_command_key_count_1, before_command_echo_length_1)
14096 (before_command_restore_flag): Vars deleted.
14097 (add_command_key): Don't handle before_command_restore_flag.
14098 (read_char, record_menu_key): Don't update before_command_key_count or
14099 before_command_echo_length.
14100 (read_char): Don't handle before_command_restore_flag.
14101
14102 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14103 in direct-output clauses if it wouldn't be called in the ordinary case.
14104
14105 2003-02-04 Kim F. Storm <storm@cua.dk>
14106
14107 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14108
14109 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14110
14111 * gtkutil.c (remove_from_container): Copying list is not needed.
14112 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14113 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14114 on list returned from gtk_container_get_children to avoid memory leak.
14115
14116 2003-02-01 Jason Rumney <jasonr@gnu.org>
14117
14118 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14119 local malloc.
14120 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14121 definitions in xpm.h.
14122 (init_xpm_functions): New function.
14123 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14124 (init_external_image_libraries): Try to load libXpm.dll.
14125
14126 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14127 timestamp.
14128
14129 2003-01-31 Dave Love <fx@gnu.org>
14130
14131 * syntax.c (Fskip_chars_forward)
14132 (open-paren-in-column-0-is-defun-start): Doc fix.
14133
14134 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14135
14136 * fileio.c: Support // at start of name for Cygwin (just added proper
14137 preprocessor tests).
14138
14139 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14140
14141 * Makefile.in: Use @EXEEXT@ for Cygwin.
14142
14143 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14144
14145 * s/cygwin.h: Added for Cygwin port.
14146
14147 2003-01-31 Juanma Barranquero <lektu@terra.es>
14148
14149 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14150 when including gif_lib.h.
14151 (init_gif_functions, init_tiff_functions): New functions.
14152 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14153 Windows. Disable color table lookups. Call library functions
14154 through pointers determined at runtime.
14155 (init_external_image_libraries): Try to load libungif.dll and
14156 libtiff.dll.
14157
14158 2003-01-31 Kenichi Handa <handa@m17n.org>
14159
14160 * xdisp.c (SKIP_GLYPHS): New macro.
14161 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14162
14163 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14164
14165 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14166
14167 2003-01-30 Dave Love <fx@gnu.org>
14168
14169 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14170 (Fgarbage_collect): Use them.
14171 (init_alloc, syms_of_alloc): Set them up.
14172
14173 2003-01-30 Juanma Barranquero <lektu@terra.es>
14174
14175 * w32fns.c (init_external_image_libraries): Add missing operator.
14176
14177 2003-01-29 Jason Rumney <jasonr@gnu.org>
14178
14179 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14180 an alternative name for jpeg.dll.
14181
14182 2003-01-29 Kenichi Handa <handa@m17n.org>
14183
14184 * xdisp.c (set_cursor_from_row): Pay attention to string display
14185 properties.
14186
14187 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14188
14189 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14190 <escape>.
14191 (keycode_to_xkeysym_table): Reformat and add more comments.
14192 (XTread_socket): Drop special case for backspace.
14193
14194 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14195
14196 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14197 values in old-style RGB specs.
14198
14199 2003-01-27 Juanma Barranquero <lektu@terra.es>
14200
14201 * w32fns.c (init_external_image_libraries): Try alternate names for the
14202 jpeg dll.
14203
14204 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14205
14206 * gtkutil.c (create_dialog, xg_separator_p)
14207 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14208 before calling strcmp or strlen.
14209
14210 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14211
14212 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14213 and handle image load failure.
14214
14215 2003-01-26 Jason Rumney <jasonr@gnu.org>
14216
14217 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14218 New functions.
14219 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14220 Disable color table lookups. Call jpeg library functions
14221 through pointers determined at runtime.
14222 (init_external_image_libraries): Try to load jpeg.dll.
14223
14224 2003-01-25 Richard M. Stallman <rms@gnu.org>
14225
14226 * lisp.h: Declare format2 instead of format1.
14227
14228 * fileio.c (barf_or_query_if_file_exists):
14229 Call format2 instead of format1.
14230
14231 * editfns.c (format2): New function, replaces format1
14232 but takes exactly two Lisp Objects as format args.
14233
14234 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14235
14236 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14237
14238 * xterm.h: Change to return value of x_dispatch_event to int.
14239
14240 * xterm.c (x_filter_event): New function.
14241 (event_handler_gdk, XTread_socket): Call x_filter_event.
14242 (x_dispatch_event): Change to return value of finish.
14243 (event_handler_gdk): Use return value from x_dispatch_event.
14244
14245 * xfns.c (x_window): Call create_frame_xic for GTK version to
14246 initialize input methods.
14247
14248 * gtkutil.h: Add (void) prototypes.
14249
14250 * gtkutil.c (create_menus): Remove code that puts the help menu to
14251 the right.
14252
14253 2003-01-25 Jason Rumney <jasonr@gnu.org>
14254
14255 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14256 [HAVE_PNG]: Sync with xfns.c version.
14257 (png_load): Adjust colors for Windows. Use Windows
14258 bitmaps. Disable color table lookups.
14259 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14260 (init_png_functions): New function.
14261 (png_read_from_memory, png_load): Call png library functions
14262 through pointers determined at runtime.
14263 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14264 (init_external_image_libraries): New function.
14265 (init_xfns): Call it.
14266
14267 2003-01-24 Andreas Schwab <schwab@suse.de>
14268
14269 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14270
14271 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14272
14273 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14274 of static initializer.
14275
14276 2003-01-24 Dave Love <fx@gnu.org>
14277
14278 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14279 architectures.
14280
14281 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14282 Use __alignof__.
14283
14284 2003-01-24 Kenichi Handa <handa@m17n.org>
14285
14286 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14287 It it is nonzero, don't pretend that an invisible area doesn't exist.
14288 (command_loop_1): Call adjust_point_for_property with proper
14289 second arg.
14290
14291 2003-01-22 Jason Rumney <jasonr@gnu.org>
14292
14293 Sync changes with xterm.c and xfns.c.
14294
14295 * w32term.c (x_draw_glyph_string_foreground)
14296 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14297
14298 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14299 phys_cursor's hpos is overwritten. This is still not completely
14300 correct, as it doesn't really make sense to use hpos at all to
14301 get the cursor glyph (as that is relative to the width of the
14302 characters on the line, which may have changed during the update).
14303
14304 * w32term.c (notice_overwritten_cursor): Handle the special case
14305 of the cursor being in the first blank non-text line at the
14306 end of a window.
14307
14308 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14309 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14310 Compute from the x position returned by x_draw_glyphs.
14311
14312 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14313 except for NO_CURSOR and system caret, to make phys_cursor_width
14314 contain what its name suggests.
14315 (notice_overwritten_cursor): Consider the cursor image erased if
14316 the output area intersects the cursor image in y-direction.
14317
14318 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14319 note_mode_line_highlight and extend.
14320
14321 * w32term.c (last_window): New variable.
14322 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14323 (note_mouse_movement): Remove reimplemented code in #if 0.
14324
14325 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14326 not update_mode_lines, and always set it to 1.
14327
14328 2003-01-21 Jason Rumney <jasonr@gnu.org>
14329
14330 * w32fns.c (IDC_HAND): Define it if system headers don't.
14331
14332 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14333
14334 * w32term.h (struct w32_output): New member hand_cursor.
14335 (WM_EMACS_SETCURSOR): New message definition.
14336
14337 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14338 function w32_define_cursor.
14339 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14340 position, change member name output_data.x to output_data.w32 and
14341 add function w32_define_cursor.
14342 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14343 and change member name output_data.x to output_data.w32.
14344 (w32_initialize_display_info):
14345 Setup dpyinfo->vertical_scroll_bar_cursor.
14346
14347 * w32fns.c (Vx_hand_shape): New variable.
14348 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14349 WM_EMACS_SETCURSOR.
14350 (x-create-frame): Setup Cursor types.
14351
14352 2003-01-21 David Ponce <david@dponce.com>
14353
14354 * w32term.c (w32_encode_char): For DIM=1 charset, set
14355 ccl->reg[2] to -1 before calling ccl_driver.
14356 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14357 <handa@m17n.org> on 2002-09-30.)
14358 (w32_draw_relief_rect): Declare all args.
14359 (w32_define_cursor): New.
14360
14361 * w32fns.c (w32_load_cursor): New function.
14362 (w32_init_class): Use it.
14363 (x_put_x_image): Declare all args.
14364
14365 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14366
14367 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14368
14369 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14370
14371 * gtkutil.c: Must include stdio.h before termhooks.h
14372
14373 2003-01-21 Dave Love <fx@gnu.org>
14374
14375 * alloc.c (Fgc_status): Print zombie list.
14376 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14377 Fix assignment of zombies.
14378 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14379 Don't take car of non-cons.
14380
14381 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14382
14383 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14384
14385 2003-01-20 David Ponce <david@dponce.com>
14386
14387 * w32menu.c (digest_single_submenu): Declare all args.
14388
14389 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14390 changes in xmenu.c:
14391
14392 (parse_single_submenu): Use individual keymap's prompt
14393 string as pane name, if there is one.
14394 (set_frame_menubar): Save menu_items_n_panes from each call to
14395 parse_single_submenu and use it when calling digest_single_submenu.
14396
14397 2003-01-20 Steven Tamm <steventamm@mac.com>
14398
14399 * macterm.c (XTread_socket): Check for valid, visible window
14400 before sending a scroll-wheel event.
14401
14402 2003-01-20 Richard M. Stallman <rms@gnu.org>
14403
14404 * xdisp.c (redisplay_window): If mini window's buffer is not
14405 a minibuffer, then redisplay it like other windows.
14406
14407 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14408
14409 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14410 external tool bar before setting tool bar height.
14411
14412 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14413
14414 * xterm.c (handle_one_xevent): Surround popup_activated
14415 with #ifdef:s for non-toolkit version.
14416
14417 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14418 (gtkutil.o): New file.
14419 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14420 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14421
14422 * gtkutil.c: New file for GTK version.
14423
14424 * gtkutil.h: New file for GTK version.
14425
14426 * xterm.h: Add xt_or_gtk_widget.
14427 Include gtk files for USE_GTK.
14428 (struct x_output): Add toolbar_height.
14429 (struct x_output): Add GTK widgets and Gdk size_hints.
14430 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14431 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14432 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14433
14434 * xterm.c: Include gtkutil.h for USE_GTK.
14435 (free_frame_menubar): Declare extern void for USE_GTK.
14436 (note_mouse_highlight): Check popup_activated for USE_GTK.
14437 (xt_action_hook): Don't compile if USE_GTK.
14438 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14439 (xg_scroll_callback): New function.
14440 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14441 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14442 for USE_GTK.
14443 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14444 xg_show_scroll_bar for USE_GTK.
14445 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14446 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14447 (event_handler_gdk): New function for USE_GTK.
14448 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14449 (handle_one_xevent): Make sure widget is mapped before
14450 calling x_real_positions for USE_GTK.
14451 (XTread_socket): Add GTK event loop for USE_GTK.
14452 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14453 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14454 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14455 (x_iconify_frame): Add code for USE_GTK.
14456 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14457 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14458 is in gtkutil.c.
14459 (x_term_init): Add initialization for GTK.
14460 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14461
14462 * xmenu.c: Include gtkutil.h for USE_GTK.
14463 (Fx_popup_menu): Use current position if x and y is NIL.
14464 (single_menu_item, single_menu_item, Fx_popup_dialog):
14465 Check for USE_GTK.
14466 (popup_widget_loop): New function for USE_GTK.
14467 (x_activate_menubar): Add code for USE_GTK.
14468 (popup_activate_callback, popup_deactivate_callback)
14469 (menu_highlight_callback, menubar_selection_callback):
14470 Add USE_GTK versions.
14471 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14472 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14473 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14474 is in gtkutil.c.
14475 (popup_selection_callback): New version for USE_GTK.
14476 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14477 one USE_X_TOOLKIT version.
14478 (xmenu_show): Call create_and_show_popup_menu.
14479 (dialog_selection_callback): New version for USE_GTK.
14480 (create_and_show_dialog): New fuction, one USE_GTK version and
14481 one USE_X_TOOLKIT version.
14482 (xdialog_show): Call create_and_show_dialog.
14483
14484 * xfns.c: Include gtkutil for USE_GTK.
14485 (x_window_to_frame, x_any_window_to_frame)
14486 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14487 (x_top_window_to_frame): Add code for USE_GTK.
14488 (x_set_background_color): Call xg_set_background_color for GTK.
14489 (x_set_menu_bar_lines): Check for USE_GTK.
14490 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14491 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14492 (x_window): Call xg_create_frame_widgets for USE_GTK.
14493 (Fx_create_frame): Check for USE_GTK
14494 (Fx_file_dialog): New implementation for USE_GTK.
14495
14496 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14497 (update_menu_bar): Add check for USE_GTK.
14498 (update_tool_bar): Add check for USE_GTK and external tool bar.
14499 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14500 (redisplay_internal): Add check for USE_GTK and popup_activated.
14501 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14502 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14503 (display_menu_bar): Add check for USE_GTK
14504
14505 * lisp.h (Vx_resource_name): Declare extern.
14506
14507 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14508 for USE_GTK.
14509 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14510
14511 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14512 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14513 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14514
14515 * fileio.c (Fread_file_name): Add check for USE_GTK.
14516
14517 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14518 Add check for USE_GTK.
14519
14520 * config.in: Added HAVE_GTK
14521
14522 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14523
14524 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14525
14526 * charset.h (Funibyte_char_to_multibyte): Export.
14527
14528 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14529
14530 * xmenu.c (mouse_position_for_popup): New function.
14531 (Fx_popup_menu): Call mouse_position_for_popup for X and
14532 mouse_position_hook for others.
14533
14534 2003-01-17 Kim F. Storm <storm@cua.dk>
14535
14536 * editfns.c (Finsert): Mention `string-make-multibyte' and
14537 `string-as-multibyte' in doc string.
14538
14539 2003-01-17 Kenichi Handa <handa@m17n.org>
14540
14541 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14542
14543 * editfns.c (Fformat): Convert an unibyte char argument that is
14544 formatted by "%c" to multibyte if the total result must be a
14545 multibyte string.
14546
14547 2003-01-16 Kim F. Storm <storm@cua.dk>
14548
14549 * process.c (set-process-filter): Document unibyte/multibyte-ness
14550 of string argument.
14551
14552 2003-01-16 Kenichi Handa <handa@m17n.org>
14553
14554 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14555
14556 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14557 (re_search_2): Likewise.
14558
14559 2003-01-15 Kenichi Handa <handa@m17n.org>
14560
14561 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14562 buffer is unibyte.
14563
14564 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14565
14566 * fns.c (Fsubstring): Clarify doc string.
14567
14568 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14569 (Fprevious_char_property_change)
14570 (Fnext_single_char_property_change)
14571 (Fprevious_single_char_property_change, Fnext_property_change)
14572 (Fnext_single_property_change, Fprevious_property_change)
14573 (Fprevious_single_property_change, Fadd_text_properties)
14574 (Fput_text_property, Fset_text_properties)
14575 (Fremove_text_properties, Fremove_list_of_text_properties)
14576 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14577
14578 2003-01-14 Kim F. Storm <storm@cua.dk>
14579
14580 * process.h (struct Lisp_Process): New member plist replaces old
14581 member private_vars. All uses changed.
14582
14583 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14584 (QCplist): Rename from QCvars. Change all uses.
14585 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14586 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14587 (syms_of_process): Intern, staticpro, defsubr these.
14588 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14589
14590 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14591
14592 * m/delta.h: Remove (obsolete).
14593
14594 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14595
14596 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14597 behaviour in front of symlinks.
14598 (Fdelete_file): Raise an error on directories.
14599
14600 2003-01-13 Dave Love <fx@gnu.org>
14601
14602 * fns.c (Freverse): Use QUIT.
14603
14604 2003-01-13 Richard M. Stallman <rms@gnu.org>
14605
14606 * minibuf.c (minibuffer_completion_contents):
14607 Error if point is inside prompt.
14608
14609 * keyboard.c (command_loop_1): Don't redisplay directly
14610 if there's a post-command-hook.
14611
14612 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14613 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14614
14615 2003-01-12 Kim F. Storm <storm@cua.dk>
14616
14617 * process.h (struct Lisp_Process): New member private_vars.
14618
14619 * process.c (QCvars): New variable.
14620 (syms_of_process): Intern and staticpro it.
14621 (Fset_process_contact): Removed function.
14622 (Fprocess_variable, Fset_process_variable): New functions.
14623 (syms_of_process): Defsubr them.
14624 (Fstart_process): Initialize private_vars plist to nil.
14625 (Fmake_network_process): New arg :vars to setup the private
14626 variables for new network process.
14627 (server_accept_connection): Copy server's private variables to
14628 client process.
14629
14630 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14631 crashes). Code rewritten and simplified. Now directly aligns the
14632 pointer and recalculates pure_bytes_used, rather than aligning the
14633 size and adjusting the pointer.
14634
14635 2003-01-11 Kim F. Storm <storm@cua.dk>
14636
14637 * process.c (Fset_process_contact): New function.
14638 (syms_of_process): defsubr it.
14639 (make-network-process): Update doc.
14640
14641 2003-01-10 Andreas Schwab <schwab@suse.de>
14642
14643 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14644 Reported by Berthold Gunreben <b.gunreben@web.de>.
14645
14646 2003-01-10 Dave Love <fx@gnu.org>
14647
14648 * composite.c (syms_of_composite): Make composition_hash_table weak.
14649
14650 2003-01-09 Kim F. Storm <storm@cua.dk>
14651
14652 * process.c (Fmake_network_process): Convert new port number
14653 to host byte order for `:service t' case. From Mario Lang.
14654
14655 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14656
14657 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14658 instead of XtAppProcessEvent.
14659
14660 * xterm.c (handle_one_xevent): New function.
14661 (x_dispatch_event): New function.
14662 (XTread_socket): Call handle_one_xevent.
14663
14664 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14665
14666 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14667 call XQueryPointer to get coordinates.
14668 (popup_get_selection): Do not set popup_activated_flag to zero,
14669 let popup_deactivate_callback do that. Needed for Motif.
14670 Call x_dispatch_event instead of XtDispatchEvent.
14671 (xmenu_show): Calculate root coordinate from frame top/left position.
14672
14673 2003-01-08 Kim F. Storm <storm@cua.dk>
14674
14675 * process.c (server_accept_connection): Fix recording of new
14676 connection's local address in :local property of contact info.
14677 (Fmake_network_process): Record local network address for new
14678 client processes in :local property of contact info.
14679 (format-network-address): Add arg OMIT-PORT. Change callers.
14680
14681 2003-01-07 Dave Love <fx@gnu.org>
14682
14683 * Makefile.in (fns.o): Depend on coding.h.
14684
14685 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14686
14687 * minibuf.c (Fread_variable): Doc fix.
14688
14689 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14690 use the same test as for custom-variable-p.
14691
14692 2003-01-05 Richard M. Stallman <rms@gnu.org>
14693
14694 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14695 Count LAST_LINE_MISFIT in scroll margin for end of window.
14696 Move label too_near_end before setting SCROLL_MARGIN_POS.
14697 Set LAST_LINE_MISFIT before jumping there.
14698
14699 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
14700 scroll_conservatively case. If scrolling that much doesn't change
14701 STARTP, move it down one line.
14702
14703 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
14704 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
14705
14706 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
14707 selected frame.
14708
14709 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
14710 (syms_of_keymap): Staticpro them.
14711 (Fapropos_internal): Initialize them and clear them out.
14712 Don't GCPRO them.
14713
14714 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
14715 Doc fixes.
14716
14717 * lisp.h: New misc type Lisp_Save_Value.
14718 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
14719 (XSAVE_VALUE): New macro.
14720 (struct Lisp_Save_Value): New data type.
14721 (union Lisp_Misc): Add u_save_value alternative.
14722 (make_save_value): Declare.
14723
14724 * alloc.c (make_save_value): New function.
14725
14726 * xterm.c (x_catch_errors): Save dpy using make_save_value.
14727 (x_catch_errors_unwind): Call XSync.
14728
14729 2003-01-01 Richard M. Stallman <rms@gnu.org>
14730
14731 * window.c (window_scroll_pixel_based): Partially undo last change.
14732
14733 * keyboard.c (command_loop_1): Call adjust_point_for_property
14734 in direct action cases for Qforward_char and Qbackward_char.
14735 Set already_adjusted so it won't be done twice.
14736
14737 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
14738
14739 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
14740 type definition of size_t.
14741
14742 2003-01-02 Steven Tamm <steventamm@mac.com>
14743
14744 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
14745 distinguish Carbon GUI builds from X11 builds on darwin.
14746
14747 2002-12-30 Steven Tamm <steventamm@mac.com>
14748
14749 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
14750 to default to t.
14751
14752 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
14753
14754 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
14755
14756 2002-12-28 Steven Tamm <steventamm@mac.com>
14757
14758 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
14759 allow building in a different directory than source. Uses some
14760 GNU Make extensions, but there is no other make on Mac OS X.
14761
14762 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
14763
14764 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
14765 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
14766 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
14767 (Fstring_to_number): Mention the returned value in the doc strings.
14768
14769 2002-12-23 Richard M. Stallman <rms@gnu.org>
14770
14771 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
14772 <scroll-down-aggressively>: Doc fix.
14773
14774 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
14775 string as pane name, if there is one.
14776 (set_frame_menubar): Save menu_items_n_panes from each call to
14777 parse_single_submenu and use it when calling digest_single_submenu.
14778
14779 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
14780 Don't try to make last line fully visible if it is past end of window.
14781
14782 2002-12-22 Steven Tamm <steventamm@mac.com>
14783
14784 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
14785 (mac_menu_show): Add support for hierarchical popup menus.
14786 (add_menu_item): Remove indentation support.
14787 (fill_submenu, fill_menu): Create hierarchical menus
14788 instead of using indentation.
14789
14790 2002-12-22 Richard M. Stallman <rms@gnu.org>
14791
14792 * xdisp.c (try_cursor_movement): Don't call try_window here.
14793 (redisplay_window): Never redisplay minibuffer when inactive.
14794
14795 * window.c (select_window_1): Undo 9/21 change.
14796
14797 2002-12-22 Steven Tamm <steventamm@mac.com>
14798
14799 * macterm.c (XTread_socket): Call KeyTranslate for control and
14800 meta to deal correctly shifted non-alpha characters, like C-S-5
14801 being treated like C-%. Do not look for shift key to deal
14802 with masking off control-key with mac-reverse-ctrl-meta.
14803
14804 2002-12-21 Richard M. Stallman <rms@gnu.org>
14805
14806 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
14807 If it is non-nil, run timers. Use an unwind-protect to requeue
14808 the events that were read ahead.
14809 (popup_get_selection_unwind): New subroutine.
14810 (popup_get_selection_queue): File-scope variable now holds that queue.
14811 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
14812 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
14813 Use an unwind-protect to pop down the dialog box.
14814 (xdialog_show_unwind): New subroutine implements that.
14815
14816 * xdisp.c (row_containing_pos): Change exit test using last_y.
14817 (try_window_id): Abort if row_containing_pos returns null.
14818
14819 * lread.c (load_error_handler): New function.
14820 (Fload): Handle errors in Fsubstitute_in_file_name.
14821 Don't expect Fsignal to return.
14822
14823 * eval.c: Errors and throws work right with interrupt blocking.
14824 (struct catchtag): New elt interrupt_input_blocked.
14825 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
14826 (internal_catch, Fcondition_case, internal_condition_case)
14827 (internal_condition_case_1, internal_condition_case_2): Save it.
14828 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
14829
14830 * editfns.c (Fformat): Add parens.
14831
14832 * dired.c (file_name_completion): Fix that change.
14833 Delete special quit-handling code; just use QUIT.
14834
14835 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
14836
14837 * dired.c (file_name_completion): Close directory on error
14838 just as in directory_files_internal.
14839
14840 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
14841
14842 * window.c (Fset_window_configuration): Set old_point to correct
14843 value when new_current_buffer == current_buffer.
14844
14845 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
14846
14847 Revisited my earlier fix for the following entry in etc/PROBLEMS:
14848 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14849 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14850
14851 These changes were in part based upon suggestions made by Peter
14852 'Luna' Runestig [peter@runestig.com].
14853
14854 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
14855 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
14856 (g_b_init_get_sid_identifier_authority ): Add several static
14857 global variables.
14858
14859 * w32.c (globals_of_w32): New function. Used to initialize those
14860 global variables that must always be initialized on startup even
14861 when the global variable initialized is non zero. Its primary
14862 purpose at this time is to set the global variables
14863 g_b_init_is_windows_9x, g_b_init_open_process_token,
14864 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
14865 g_b_init_get_sid_identifier_authority to 0 on startup.
14866 Called from main.
14867
14868 * w32.c (is_windows_9x): Perform initialization only if
14869 g_b_init_is_windows_9x is equal to 0. On initialization set
14870 g_b_init_is_windows_9x equal to 1.
14871
14872 * w32.c (open_process_token): Perform initialization only if
14873 g_b_init_open_process_token is equal to 0. On initialization set
14874 g_b_init_open_process_token equal to 1.
14875
14876 * w32.c (get_token_information): Perform initialization only if
14877 g_b_init_get_token_information is equal to 0. On initialization
14878 set g_b_init_get_token_information equal to 1.
14879
14880 * w32.c (lookup_account_sid): Perform initialization only if
14881 g_b_init_lookup_account_sid is equal to 0. On initialization
14882 set g_b_init_lookup_account_sid equal to 1.
14883
14884 * w32.c (get_sid_identifier_authority): Perform initialization
14885 only if g_b_init_get_sid_identifier_authority is equal to 0.
14886 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
14887
14888 * w32fns.c (globals_of_w32fns): New function. Used to initialize
14889 those global variables that must always be initialized on startup
14890 even when the global variable initialized is non zero.
14891 Its primary purpose at this time is to initialize the global variable
14892 track_mouse_event_fn.
14893
14894 * w32fns.c (w32_wnd_proc): Remove initialization of
14895 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
14896
14897 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
14898
14899 * w32menu.c (globals_of_w32menu): New function. Used to
14900 initialize those global variables that must always be initialized
14901 on startup even when the global variable initialized is non zero.
14902 Its primary purpose at this time is to initialize the global
14903 variables get_menu_item_info and set_menu_item_info.
14904
14905 * w32menu.c (initialize_frame_menubar): Remove initialization of
14906 get_menu_item_info and set_menu_item_info.
14907
14908 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
14909
14910 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
14911 Declare them.
14912
14913 * emacs.c (main): Call globals_of_w32 prior to calling
14914 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
14915 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
14916 is defined.
14917
14918 * w32term.c (x_update_window_begin): Fix Windows API error
14919 detected by BoundsChecker. Test to determine if
14920 w32_system_caret_hwnd is NULL prior to attempting to use
14921 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
14922
14923 * w32term.c (x_update_window_end): Fix Windows API error
14924 detected by BoundsChecker. Test to determine if
14925 w32_system_caret_hwnd is NULL prior to attempting to use
14926 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
14927
14928 2002-12-17 Kenichi Handa <handa@m17n.org>
14929
14930 * coding.c (coding_system_require_warning): New variable.
14931 (syms_of_coding): DEFVAR it.
14932
14933 * coding.h (coding_system_require_warning): Extern it.
14934
14935 * fileio.c (choose_write_coding_system): Even if
14936 Vcoding_system_for_write is non-nil, if
14937 coding_system_require_warning is nonzero, call
14938 Vselect_safe_coding_system_function.
14939
14940 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
14941
14942 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
14943 (lisp): Add font-core.
14944
14945 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
14946
14947 * textprop.c (text_read_only): New arg `propval'.
14948 (get_char_property_and_overlay): Remove unused var `next_overlay'.
14949 (verify_interval_modification): Use text_read_only's new arg.
14950
14951 2002-12-13 Kenichi Handa <handa@m17n.org>
14952
14953 * coding.c (Funencodable_char_position): Set pend correctly.
14954
14955 2002-12-12 Jason Rumney <jasonr@gnu.org>
14956
14957 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
14958 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
14959 Be more careful about when help_events are generated.
14960
14961 2002-12-12 Steven Tamm <steventamm@mac.com>
14962
14963 * macterm.c (mac_check_for_quit_char): Correctly set the
14964 modifiers of the event to 0.
14965 * mac.c (sys_select): Duplicate rfds before calling select to
14966 ensure that rfds survive the while loop.
14967
14968 2002-12-11 Kim F. Storm <storm@cua.dk>
14969
14970 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
14971 row_containing_pos returned NULL.
14972
14973 2002-12-10 Steven Tamm <steventamm@mac.com>
14974
14975 * mac.c (sys_read): Fix sys_read to not call select if IO is
14976 non-blocking.
14977 (sys_select): Fix sys_select to not use a timeout larger than
14978 the one given.
14979
14980 2002-12-10 Juanma Barranquero <lektu@terra.es>
14981
14982 * editfns.c (Fformat): Use alloca, not _alloca.
14983
14984 2002-12-09 Richard M. Stallman <rms@gnu.org>
14985
14986 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
14987 as the last thing.
14988
14989 2002-12-09 Dave Love <fx@gnu.org>
14990
14991 * s/sol2-8.h: Removed. (Not necessary.)
14992
14993 2002-12-09 Matthew Swift <swift@alum.mit.edu>
14994
14995 * editfns.c (Fformat): Handle precision in string conversion
14996 specifiers like libc functions do (ie, print at most that many
14997 characters).
14998
14999 2002-12-08 Richard M. Stallman <rms@gnu.org>
15000
15001 * xdisp.c (row_containing_pos): Check more carefully
15002 whether charpos is really in the row before returning it.
15003
15004 2002-12-07 Steven Tamm <steventamm@mac.com>
15005
15006 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15007
15008 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15009 each stack frame. This may change as it could be time consuming.
15010
15011 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15012 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15013 (mac_initialize): Add code to check for pressing of quit_char
15014 in the OS event queue.
15015
15016 * mac.c (sys_select): Call mac_check_for_quit_char every second
15017 while blocking on select.
15018
15019 * mac.c (sys_read): Use sys_select to test for input first
15020 before calling read, to allow C-g to break.
15021
15022 2002-12-07 Richard M. Stallman <rms@gnu.org>
15023
15024 * minibuf.c (Fcompleting_read): Doc fix.
15025
15026 * lread.c (syms_of_lread) <load-history>: Doc fix.
15027
15028 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15029
15030 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15031 autoload.
15032
15033 * data.c (Fdefalias): Record in load-history redefining an autoload.
15034
15035 * alloca.c: Undo ifdef change accidentally made on 12-04.
15036
15037 2002-12-06 Francesco Potorti` <pot@gnu.org>
15038
15039 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15040
15041 2002-12-04 Richard M. Stallman <rms@gnu.org>
15042
15043 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15044
15045 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15046
15047 * alloca.c: Don't use #error.
15048
15049 2002-12-03 Dave Love <fx@gnu.org>
15050
15051 * buffer.c (Qucs_set_table_for_input): New.
15052 (Fget_buffer_create): Use it.
15053 (Qset_buffer_major_mode_hook): Deleted.
15054 (Fset_buffer_major_mode): Revert previous change.
15055 (init_buffer_once): Intern ucs-set-table-for-input.
15056 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15057 Add &Qucs_set_table_for_input.
15058
15059 2002-12-03 Andreas Schwab <schwab@suse.de>
15060
15061 * callint.c (Fcall_interactively): Use next_event only if less
15062 than key_count.
15063
15064 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15065
15066 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15067 names to 255 characters.
15068
15069 * macterm.c (XTread_socket): If all frames have been collapsed,
15070 expand the first one before handling drag-and-drop events.
15071
15072 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15073 which is detected by autoconf.
15074
15075 2002-12-01 Steven Tamm <steventamm@mac.com>
15076
15077 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15078 offset in two hints table to allow prebinding to be redone and
15079 allow the executable to be stripped.
15080
15081 2002-11-29 Dave Love <fx@gnu.org>
15082
15083 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15084 already provided.
15085
15086 2002-11-29 Richard M. Stallman <rms@gnu.org>
15087
15088 * xdisp.c (start_display): Check more intelligently for
15089 whether the line is continued.
15090 (move_it_vertically_backward): Clear it->continuation_lines_width.
15091
15092 2002-11-28 Dave Love <fx@gnu.org>
15093
15094 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15095 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15096
15097 2002-11-27 Steven Tamm <steventamm@mac.com>
15098
15099 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15100 more descriptive error output from lread.c:Fload upon most require
15101 cycles during boostrapping.
15102
15103 2002-11-27 Jason Rumney <jasonr@gnu.org>
15104
15105 * fileio.c (Finsert_file_contents): Give a more appropriate error
15106 for files bigger than 2Gb when off_t is 32 bit.
15107
15108 * dired.c (Ffile_attributes): Don't return negative file sizes for
15109 files bigger than 2Gb when off_t is 32 bit.
15110
15111 2002-11-27 Dave Love <fx@gnu.org>
15112
15113 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15114
15115 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15116 Test GETPGRP_VOID instead.
15117 [BSD_TERMIOS]: Remove definitions (never used).
15118
15119 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15120 Don't define.
15121 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15122
15123 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15124
15125 2002-11-25 Jason Rumney <jasonr@gnu.org>
15126
15127 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15128 supported.
15129
15130 2002-11-25 Dave Love <fx@gnu.org>
15131
15132 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15133
15134 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15135
15136 2002-11-25 Andreas Schwab <schwab@suse.de>
15137
15138 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15139
15140 2002-11-24 Steven Tamm <steventamm@mac.com>
15141
15142 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15143 determine the size of pointers alloced in unexed space instead
15144 of using possibly invalid emacs_zone pointers. This fixes the
15145 binary incompatibility problems caused by updates to libSystem.B.
15146
15147 2002-11-24 Richard M. Stallman <rms@gnu.org>
15148
15149 * search.c (Fstring_match): Doc fix.
15150
15151 * callint.c (Fcall_interactively): If a command fails because
15152 `*' detects a read-only buffer, but RECORD_FLAG is set,
15153 record it anyway if the args don't actually do tty input.
15154
15155 2002-11-22 Dave Love <fx@gnu.org>
15156
15157 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15158
15159 * keyboard.c (interrupt_signal): Provide forward declaration.
15160 (kbd_buffer_store_event): Don't declare interrupt_signal.
15161
15162 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15163
15164 2002-11-21 Richard M. Stallman <rms@gnu.org>
15165
15166 * eval.c (interactive_p): Skip any number of bytecode
15167 and special form frames, in any order.
15168
15169 2002-11-20 Jason Rumney <jasonr@gnu.org>
15170
15171 * w32fns.c (convert_mono_to_color_image): New function.
15172 (xbm_load, xbm_load_image): Use it when foreground or background
15173 is explicitly set.
15174
15175 2002-11-19 Dave Love <fx@gnu.org>
15176
15177 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15178
15179 2002-11-18 Jason Rumney <jasonr@gnu.org>
15180
15181 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15182 (XPutPixel): Swap blue and red.
15183 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15184 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15185 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15186 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15187
15188 2002-11-18 Dave Love <fx@gnu.org>
15189
15190 * m/orion105.h (HAVE_ALLOCA): Don't define.
15191
15192 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15193
15194 * m/intel386.h: Don't include alloca.h or define alloca.
15195
15196 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15197 malloc, realloc, calloc.
15198
15199 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15200 (bcmp): Don't define.
15201
15202 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15203
15204 * m/amdahl.h: Don't define LIB_STANDARD.
15205
15206 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15207
15208 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15209
15210 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15211 Don't include alloca.h.
15212
15213 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15214
15215 * regex.c (_GNU_SOURCE): Don't define.
15216
15217 * process.c (_GNU_SOURCE): Don't define.
15218
15219 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15220
15221 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15222
15223 * s/sol2-8.h: Include sol2-6.h.
15224
15225 2002-11-18 Miles Bader <miles@gnu.org>
15226
15227 * dispextern.h (struct face): Add `overstrike' field.
15228 * xterm.c (x_draw_glyph_string_foreground)
15229 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15230 * xfaces.c (load_face_font): Set `face->overstrike' based on
15231 result from choose_face_font.
15232 (best_matching_font, choose_face_font): Add `needs_overstrike'
15233 argument, and use it to return whether overstriking is desirable
15234 for this face/font combo.
15235 (set_font_frame_param: Pass new argument to choose_face_font.
15236
15237 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15238
15239 This change is my fix for the following entry in etc/PROBLEMS:
15240 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15241 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15242
15243 * w32.c: Added wrapper functions around the win32 API functions
15244 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15245 GetSidIdentifierAuthority. These wrapper functions serve two
15246 purposes:
15247 1. They ensure that the wrapped function can never be called
15248 when Emacs is running on an operating system on which they are
15249 not supported (Microsoft Windows 95 / 98 / ME).
15250 2. They call the wrapped functions via function pointers rather
15251 than calling them directly. This avoids taking advantage of the
15252 undocumented fact that although these functions are not supported
15253 in the 9x branch of Microsoft Windows, the functions do exist in
15254 the version of advapi32.dll that is found in the 9x branch of
15255 Microsoft Windows.
15256
15257 * w32.c (init_user_info): Replace the calls to the win32 API
15258 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15259 and GetSidIdentifierAuthority with calls to the newly added
15260 wrapper functions.
15261
15262 * w32.h: Added extern declarations for the following functions:
15263 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15264 syms_of_w32menu, and void syms_of_fontset.
15265
15266 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15267 function pointer track_mouse_event_fn in the handler for the
15268 WM_SETFOCUS message.
15269
15270 * w32menu.c (initialize_frame_menubar): Add code to
15271 reinitialize the function pointers set_menu_item_info and
15272 get_menu_item_info.
15273
15274 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15275
15276 * sound.c: Added a partial implementation of play-sound-internal
15277 for Microsoft Windows. Added various #ifdef / #else / #endif
15278 code blocks to separate the code that will compile under
15279 Microsoft Windows from the code that is specific to GNU/Linux.
15280 Moved several blocks of code around to make this separation of code
15281 into Windows compatible and GNU/Linux compatible code blocks easier.
15282
15283 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15284
15285 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15286 added support for play-sound-internal under Windows would be
15287 included in the build of Emacs.
15288
15289 2002-11-16 Jason Rumney <jasonr@gnu.org>
15290
15291 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15292
15293 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15294
15295 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15296
15297 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15298 (adjust_point_for_property): Move out of display and invisible even if
15299 we were already inside before (in case a property was added while
15300 we weren't looking). Be more careful when handling invisible props.
15301 Skip invisible text as if it really wasn't there at all.
15302
15303 2002-11-15 Jason Rumney <jasonr@gnu.org>
15304
15305 * w32term.c (x_draw_image_foreground)
15306 (w32_draw_image_foreground_1): Use standard copy and invert
15307 operations to draw images.
15308
15309 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15310 depth of 1.
15311 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15312 (XPutPixel): Don't invert bits here.
15313
15314 2002-11-15 Jason Rumney <jasonr@gnu.org>
15315
15316 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15317 (w32_draw_image_foreground_1): Handle image masks.
15318 (x_draw_image_glyph_string): Don't BitBlt transparently.
15319
15320 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15321 (x_from_xcolors): Adjust RGB values for W32.
15322 (image_background, image_background_transparent)
15323 (postprocess_image, x_to_xcolors, x_disable_image)
15324 (x_build_heuristic_mask): Adapt for W32 and enable.
15325 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15326 (xbm_load): Remove unused variable.
15327
15328 2002-11-14 Richard M. Stallman <rms@gnu.org>
15329
15330 * buffer.c (syms_of_buffer): Doc fix.
15331
15332 2002-11-14 Dave Love <fx@gnu.org>
15333
15334 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15335
15336 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15337 * xmenu.c (unuse_menu_items, digest_single_submenu):
15338 * xfns.c (x_put_x_image):
15339 * xdisp.c (message2_nolog, set_message):
15340 * undo.c (record_point):
15341 * terminfo.c (tparam):
15342 * syntax.c (scan_sexps_forward):
15343 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15344 * composite.c (update_compositions):
15345 * cm.c (calccost, cmgoto):
15346 * charset.c (c_string_width): Declare all args (per C99).
15347
15348 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15349
15350 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15351 Don't declare.
15352
15353 * emacs.c (main) [!VMS]: Avoid third arg.
15354
15355 * fns.c (Fcopy_sequence): Doc fix.
15356 (Fmap_char_table): Cast `call2'.
15357
15358 2002-11-14 Francesco Potorti` <pot@gnu.org>
15359
15360 * s/sol2-8.h: New file.
15361
15362 2002-11-14 Kim F. Storm <storm@cua.dk>
15363
15364 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15365 dependency on `risky-local-variable' and the :propertize form.
15366
15367 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15368
15369 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15370
15371 * syntax.c (scan_sexps_forward): Undo last patch.
15372 Use a more obvious fix: check eob before updating the syntax table.
15373
15374 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15375
15376 * syntax.c (scan_sexps_forward): Update syntax table before reading
15377 a char rather than after so we don't update the table past eob.
15378
15379 2002-11-09 Dave Love <fx@gnu.org>
15380
15381 * buffer.c (Fset_buffer_major_mode): Fix last change.
15382
15383 * regex.c (regexec): Fix pmatch declaration.
15384
15385 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15386
15387 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15388 to self-inserting characters.
15389 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15390
15391 * coding.c (Vtranslation_table_for_input): New.
15392 (syms_of_coding): DEFVAR it.
15393
15394 2002-11-08 Juanma Barranquero <lektu@terra.es>
15395
15396 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15397 window.
15398
15399 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15400
15401 * process.c (Fformat_network_address): Remove unused locals p,
15402 cp, and i.
15403
15404 2002-11-06 Dave Love <fx@gnu.org>
15405
15406 * buffer.c (Qset_buffer_major_mode_hook): New.
15407 (Fset_buffer_major_mode): Use it.
15408
15409 2002-11-06 Richard M. Stallman <rms@gnu.org>
15410
15411 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15412 and stop_polling.
15413
15414 * process.c (wait_reading_process_input):
15415 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15416 Avoid initialization for auto Lisp_Object var.
15417
15418 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15419
15420 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15421
15422 2002-11-05 Richard M. Stallman <rms@gnu.org>
15423
15424 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15425
15426 * callint.c (Fcall_interactively): New local filter_specs.
15427 (Fcall_interactively): Check for progn as well as let.
15428 Add a gcpro.
15429 (Qprogn): New variable.
15430 (syms_of_callint): Staticpro and init Qprogn.
15431
15432 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15433
15434 * lread.c (Feval_buffer): Doc fix.
15435
15436 2002-11-04 Dave Love <fx@gnu.org>
15437
15438 * keyboard.c (read_char): Always translate iff
15439 Vkeyboard_translate_table is a char table and c is valid.
15440
15441 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15442 and fix C types.
15443
15444 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15445
15446 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15447
15448 * editfns.c (get_pos_property): Don't hardcode Qfield.
15449
15450 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15451 overlays. Also handle `invisible' prop.
15452
15453 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15454
15455 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15456 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15457
15458 2002-11-01 Andreas Schwab <schwab@suse.de>
15459
15460 * editfns.c (Fmessage): Revert last change to properly handle %%.
15461
15462 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15463
15464 * xmenu.c (unuse_menu_items): New fun.
15465 (menu_items_inuse): New var.
15466 (syms_of_xmenu): Initialize it.
15467 (init_menu_items): Use it to detect re-entrance.
15468 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15469 (Fx_popup_menu): Remove spurious XSETFRAME.
15470
15471 * editfns.c (find_field): Make an exception for nil fields.
15472
15473 2002-11-01 Dave Love <fx@gnu.org>
15474
15475 * m/gec63.h: Deleted.
15476
15477 2002-10-31 Dave Love <fx@gnu.org>
15478
15479 * xterm.c (XTread_socket): Fix last change.
15480 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15481
15482 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15483
15484 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15485
15486 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15487
15488 * editfns.c (overlays_around, get_pos_property): New funs.
15489 (find_field): Use them.
15490 Also be careful not to modify POS before its last use.
15491 (Fmessage): Don't Fformat if there's nothing to format.
15492
15493 2002-10-30 Dave Love <fx@gnu.org>
15494
15495 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15496 [HAVE_PTY_H]; Include pty.h.
15497
15498 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15499
15500 * xterm.c (Qeql): Declare.
15501 (Vx_keysym_table): New.
15502 (syms_of_xterm): Initialize it.
15503 (XTread_socket): Use it. Deal with ASCII keysyms.
15504 (XSetIMValues) [HAVE_X11R6]: Prototype.
15505
15506 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15507 (lispy_kana_keys): Comment out.
15508 (make_lispy_event) [XK_kana_A]: Comment out.
15509 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15510 Fix sprintf call.
15511
15512 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15513 regexp.h change).
15514 (TERMINFO, LIBS_TERMCAP): Define.
15515
15516 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15517 (bcmp): Define conditional on HAVE_BCMP.
15518 (NO_SIOCTL_H): Don't define.
15519 (TIOCSIGSEND): Don't make conditional on IRIX6.
15520
15521 * s/sol2-5.h: Don't include strings.h.
15522 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15523
15524 * s/irix6-0.h (IRIX6): Don't define.
15525 (bcopy, bcmp, bzero): Don't undef.
15526
15527 * s/irix6-5.h: Don't include strings.h.
15528 (IRIX6): Don't define.
15529 (bcopy, bcmp, bzero): Don't undef.
15530
15531 * syntax.c (Fforward_comment): Doc fix.
15532
15533 2002-10-29 Kim F. Storm <storm@cua.dk>
15534
15535 * process.c (Fsignal_process): Allow PROCESS to be specified by
15536 name in addition to pid (as integer or string).
15537
15538 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15539
15540 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15541 environments.
15542
15543 2002-10-27 Kim F. Storm <storm@cua.dk>
15544
15545 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15546
15547 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15548
15549 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15550
15551 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15552
15553 2002-10-26 Richard M. Stallman <rms@gnu.org>
15554
15555 * editfns.c (Fformat): Detect invalid format letters for floats.
15556
15557 2002-10-25 Kenichi Handa <handa@m17n.org>
15558
15559 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15560 (x_set_title): Likewise.
15561
15562 2002-10-25 Juanma Barranquero <lektu@terra.es>
15563
15564 * macgui.h:
15565 * w32gui.h: Remove definition of XColor.
15566
15567 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15568
15569 2002-10-24 Kim F. Storm <storm@cua.dk>
15570
15571 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15572 Callers changed (supply dummy arg).
15573
15574 * lisp.h (get_window_cursor_type): Update prototype.
15575
15576 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15577 get_window_cursor_type to track system caret.
15578
15579 2002-10-24 Kim F. Storm <storm@cua.dk>
15580
15581 * process.c (Fformat_network_address): New function.
15582 (syms_of_process): Defsubr it.
15583 (list_processes_1): Use it to format :local/:remote address if
15584 service/host is not set; before Emacs would crash in that case.
15585 (Fmake_network_process): Don't use Ffind_operation_coding_system
15586 to setup coding system if host or service is not set.
15587
15588 2002-10-23 Juanma Barranquero <lektu@terra.es>
15589
15590 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15591
15592 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15593 COLORREF.
15594
15595 * macgui.h:
15596 * w32gui.h: Add definition of XColor.
15597
15598 * macfns.c:
15599 * w32fns.c:
15600 * xfaces.c: Remove definition of XColor.
15601
15602 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15603
15604 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15605
15606 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15607 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15608 window if it is dedicated.
15609 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15610 (Vspecial_display_function): Update docstring.
15611
15612 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15613 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15614 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15615
15616 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15617
15618 * casefiddle.c (casify_region): Don't treat a prefix char as part
15619 of a word when at the beginning.
15620
15621 2002-10-17 Juanma Barranquero <lektu@terra.es>
15622
15623 * lread.c (syms_of_lread): Fix typos.
15624
15625 2002-10-17 Dave Love <fx@gnu.org>
15626
15627 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15628
15629 2002-10-16 Richard M. Stallman <rms@gnu.org>
15630
15631 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15632
15633 2002-10-14 Juanma Barranquero <lektu@terra.es>
15634
15635 * w16select.c (syms_of_win16select): Fix docstring for
15636 `selection-coding-system'.
15637
15638 * w32select.c (syms_of_w32select): Likewise.
15639
15640 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15641
15642 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15643 a backslash-quoted char.
15644 (scan_lists, scan_sexps_forward): Pacify the compiler.
15645
15646 2002-10-13 Richard M. Stallman <rms@gnu.org>
15647
15648 * window.c (window_scroll): Set immediate_quit.
15649
15650 * print.c (print): When backquote form is the car of a list,
15651 output in old style. Use old_backquote_output to output all
15652 comma forms inside it in old style too.
15653
15654 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15655
15656 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15657
15658 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15659 batch mode).
15660
15661 * lread.c (Fload): Doc fix (load-suffixes).
15662
15663 2002-10-10 Steven Tamm <steventamm@mac.com>
15664
15665 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15666 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15667 Also switch the default to Qnil from Qt.
15668
15669 2002-10-08 Kenichi Handa <handa@m17n.org>
15670
15671 * coding.c (code_convert_region): When we need more GAP for
15672 conversion, pay attention to the case that coding->produced is not
15673 greater than coding->consumed.
15674
15675 2002-10-07 Richard M. Stallman <rms@gnu.org>
15676
15677 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15678
15679 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15680
15681 * macmenu.c (mac_menu_show): Add j to count menu items; match
15682 menu_item_selection to it to find selected item.
15683
15684 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15685
15686 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15687 cases. The correct fix is to pass ReparentNotify to Xt.
15688 The shell widget interprets ConfigureNotify differently depending
15689 on if it has been reparented or not.
15690
15691 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15692
15693 * editfns.c (Fformat_time_string): Doc fix.
15694
15695 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15696
15697 * fns.c (Flength): Doc fix.
15698
15699 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
15700
15701 * keyboard.c (keyremap): New struct.
15702 (read_key_sequence): Use it: globally replace keytran_foo with
15703 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
15704 keytran_next and fkey_next to just `next'.
15705
15706 2002-10-04 Steven Tamm <steventamm@mac.com>
15707
15708 * macterm.c (keycode_to_xkeysym_table): Change return to be
15709 treated like an X keysym.
15710
15711 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15712
15713 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
15714 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
15715 This is to also handle x/y changes that occur because of a resize.
15716
15717 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
15718
15719 * frame.c (Vdelete_frame_functions): New variable.
15720 (syms_of_frame): Initialize and defvar it.
15721 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
15722 it when frame's `tooltip' parameter is non-nil.
15723
15724 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
15725
15726 * w32fns.c (x_create_tip_frame): Likewise.
15727
15728 * macfns.c (x_create_tip_frame): Likewise.
15729
15730 2002-09-30 Kenichi Handa <handa@m17n.org>
15731
15732 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
15733 -1 before calling ccl_driver.
15734
15735 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
15736 Only when it is non-nil, handle composition sequence.
15737 (setup_coding_system) <0>: Don't force composition handling.
15738
15739 * Makefile.in (lisp, shortlisp): Add utf-16.elc
15740
15741 2002-09-29 Richard M. Stallman <rms@gnu.org>
15742
15743 * search.c (Freplace_match): Adjust match data for the substitution
15744 just made in the buffer.
15745
15746 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
15747 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
15748
15749 2002-09-27 Richard M. Stallman <rms@gnu.org>
15750
15751 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
15752 (read_char): Use them. Do all exits thru the end of the function.
15753
15754 2002-09-27 Kenichi Handa <handa@etl.go.jp>
15755
15756 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
15757 is nil.
15758
15759 2002-09-26 Richard M. Stallman <rms@gnu.org>
15760
15761 * regex.h (__restrict_arr): Don't define if already defined.
15762
15763 * coding.c (run_pre_post_conversion_on_str):
15764 Save and restore Vdeactivate_mark.
15765
15766 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
15767
15768 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
15769
15770 2002-09-26 Kenichi Handa <handa@etl.go.jp>
15771
15772 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
15773 nonzero, try face's family at first. Otherwise try FAMILY at first.
15774 (choose_face_font): If C is a single byte char or latin-1, call
15775 try_font_list with PREFER_FACE_FAMILY 1.
15776
15777 2002-09-21 Richard M. Stallman <rms@gnu.org>
15778
15779 * window.c (select_window_1): Don't select frame.
15780 Set frame's selected window only when frame itself is selected.
15781 (Fselect_window): Doc fix.
15782
15783 2002-09-18 Kim F. Storm <storm@cua.dk>
15784
15785 * process.c (make-network-process): Doc fix (there is no
15786 network-server-log-function hook).
15787
15788 2002-09-18 Richard M. Stallman <rms@gnu.org>
15789
15790 * print.c (print): Clear out the unused parts of Vprint_number_table.
15791 (syms_of_print): Doc fix for `print-number-table'.
15792
15793 * unexelf.c (unexec): Undo previous change.
15794
15795 2002-09-17 Andreas Schwab <schwab@suse.de>
15796
15797 * m/alpha.h [LINUX]: Don't define DATA_START.
15798
15799 2002-09-16 Dave Love <fx@gnu.org>
15800
15801 * unexelf.c (unexec): Deal with .got, reinstating change from
15802 25-08-1999.
15803
15804 2002-09-13 Richard M. Stallman <rms@gnu.org>
15805
15806 * s/sol2-6.h (UNEXEC): Comment out definition.
15807
15808 * unexsol.c (unexec): Don't downcase first letter of error msg.
15809
15810 * xfaces.c (Fcolor_supported_p): Just one arg is required.
15811
15812 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
15813
15814 * unexsol.c: Include buffer.h, charset.h, coding.h.
15815
15816 2002-09-11 Richard M. Stallman <rms@gnu.org>
15817
15818 * unexsol.c: Don't use report_file_error; do it by hand
15819 using dlerror.
15820
15821 * process.c (wait_reading_process_input, both versions):
15822 Before calling turn_on_atimers, call stop_polling.
15823
15824 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
15825
15826 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
15827 we go to too_near_end, call clear_glyph_matrix.
15828 (redisplay_window): After make_cursor_line_fully_visible,
15829 call clear_glyph_matrix and bypass `goto done'.
15830
15831 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
15832 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
15833
15834 2002-09-10 Richard M. Stallman <rms@gnu.org>
15835
15836 * fileio.c (Fdo_auto_save): Catch error making directory.
15837 Only call push_message if we need to.
15838 At the same time, make an unwind-protect to pop it.
15839 Rename local message_p to old_message_p.
15840 (do_auto_save_make_dir, do_auto_save_eh): New functions.
15841 (do_auto_save_unwind): Don't call pop_message.
15842
15843 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
15844
15845 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
15846
15847 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
15848
15849 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
15850
15851 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
15852
15853 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
15854 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
15855 (re_match_2_internal): Be more careful with infinite loops.
15856
15857 2002-09-10 Kim F. Storm <storm@cua.dk>
15858
15859 * macros.c (end_kbd_macro): New function.
15860 (Fend_kbd_macro): Use it.
15861
15862 * macros.h (end_kbd_macro): Declare extern.
15863
15864 * keyboard.c (Fdiscard_input): If defining keyboard macro,
15865 end and save it instead of discarding it.
15866
15867 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
15868
15869 * s/sol2-6.h: Fix typo. Add comment.
15870
15871 2002-09-09 Richard M. Stallman <rms@gnu.org>
15872
15873 * regex.c (regnum_t): Use signed int, not unsigned int.
15874
15875 * s/sol2-6.h: New file.
15876
15877 * s/sol2-5.h (UNEXEC): Definition deleted.
15878
15879 2002-09-08 Kim F. Storm <storm@cua.dk>
15880
15881 * macros.c (executing_macro_index): Change type to EMACS_INT.
15882 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
15883
15884 * macros.h (executing_macro_index): Change type to EMACS_INT.
15885
15886 2002-09-06 Richard M. Stallman <rms@gnu.org>
15887
15888 * casetab.c (set_case_table): Make canon table point to eqv table.
15889
15890 2002-09-06 Juanma Barranquero <lektu@terra.es>
15891
15892 * coding.c (syms_of_coding): Fix spacing.
15893
15894 * composite.c (Fcompose_region_internal)
15895 (Fcompose_string_internal): Likewise.
15896
15897 * data.c (Flsh): Likewise.
15898
15899 * fontset.c (Fset_fontset_font): Likewise.
15900
15901 * macfns.c (Fx_server_max_request_size): Likewise.
15902
15903 * w16select.c (syms_of_win16select): Likewise.
15904
15905 * w32select.c (syms_of_w32select): Likewise.
15906
15907 * xselect.c (syms_of_xselect): Likewise.
15908
15909 2002-09-05 Richard M. Stallman <rms@gnu.org>
15910
15911 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
15912 call EXTEND_RANGE_TABLE and return a proper value.
15913 (set_image_of_range): Don't call set_image_of_range_1
15914 if no TRANSLATE or if range includes all of Latin-1.
15915 Only call it for the Latin-1 part of the range.
15916 For other cases, make two separate ranges,
15917 one for the original specified characters and one for
15918 their case-conversions.
15919
15920 2002-09-04 Richard M. Stallman <rms@gnu.org>
15921
15922 * s/sol2-5.h (UNEXEC): Use unexsol.o.
15923
15924 * window.c (displayed_window_lines): Correct for one-off bug
15925 in HEIGHT on non-window displays.
15926
15927 * regex.c (set_image_of_range_1): New function.
15928 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
15929 Return a value to indicate running out of memory.
15930 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
15931 (extend_range_table_work_area): New subroutine.
15932 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
15933 Different calling conventions, and used from set_image_of_range{,_1}.
15934 (IMMEDIATE_QUIT_CHECK): Definitions moved.
15935
15936 2002-09-04 Juanma Barranquero <lektu@terra.es>
15937
15938 * makefile.w32-in: All dependencies updated.
15939
15940 2002-09-01 Richard M. Stallman <rms@gnu.org>
15941
15942 * unexsol.c: New file.
15943
15944 * xfns.c (Qbox): Declare external, don't define.
15945
15946 * xdisp.c (redisplay_window) <force-start case>:
15947 If point is on semi-visible last line, reposition
15948 it at previous line.
15949
15950 * alloc.c (display_malloc_warning): Use display-warning.
15951 (malloc_warning_1): Function deleted.
15952
15953 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
15954
15955 * lread.c (read1): Handle #! by skipping the line.
15956
15957 2002-08-31 Richard M. Stallman <rms@gnu.org>
15958
15959 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
15960 Don't include LDFLAGS.
15961 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
15962
15963 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
15964
15965 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
15966 member of x_display_info unless we compile for some window system.
15967
15968 2002-08-31 Kim F. Storm <storm@cua.dk>
15969
15970 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
15971 (get_window_cursor_type): Don't use them.
15972 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
15973
15974 2002-08-30 Kenichi Handa <handa@etl.go.jp>
15975
15976 * xdisp.c (get_next_display_element): Fix previous change.
15977
15978 2002-08-30 Andrew Choi <akochoi@shaw.ca>
15979
15980 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
15981 (expose_window): Use it to fix the display of overlapping
15982 rows (merge code from xterm.c).
15983
15984 * macfns.c (Qbox): Add extern declaration.
15985
15986 2002-08-30 Juanma Barranquero <lektu@terra.es>
15987
15988 * w32fns.c (Qbox): Make extern.
15989 (syms_of_w32fns): Remove initialization of Qbox.
15990
15991 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
15992
15993 * xfns.c (Fx_open_connection): Fix error message.
15994
15995 2002-08-30 Kim F. Storm <storm@cua.dk>
15996
15997 The following changes consolidates the handling of the cursor
15998 type in xdisp.c, moving duplicate code and functionality from
15999 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16000
16001 * frame.h (enum text_cursor_kinds): Consolidated here.
16002 Added DEFAULT_CURSOR value.
16003 (struct frame) <desired_cursor, cursor_width>
16004 <blink_off_cursor, blink_off_cursor_width>: New fields.
16005 Consolidated from output_x, output_w32 and output_mac structs.
16006 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16007 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16008
16009 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16010 Variables consolidated here.
16011 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16012 (Vcursor_in_non_selected_windows): Renamed from
16013 cursor_in_non_selected_windows and changed to Lisp_Object.
16014 (syms_of_xdisp): Define and staticpro new and moved variables.
16015 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16016 consolidated here. Recognize Qhollow setting.
16017 (set_frame_cursor_types): New function to set frame cursor types
16018 based on the frame parameters.
16019 (get_window_cursor_type): New function to calculate new cursor
16020 type and width for the specified window. Based on duplicated
16021 code consolidated here.
16022 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16023 check buffer-local alternate-cursor-type and blink-cursor-alist
16024 before using built-in blink off methods.
16025
16026 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16027
16028 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16029 (get_specified_cursor_type, get_window_cursor_type)
16030 (set_frame_cursor_types): Added prototypes.
16031
16032 * macfns.c (x_specified_cursor_type): Removed.
16033 (x_set_cursor_type): Use set_frame_cursor_types.
16034 (Qbar, Qbox): Removed.
16035 (syms_of_macfns): Don't intern or staticpro them.
16036
16037 * macterm.c (x_specified_cursor_type): Remove prototype.
16038 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16039 (x_display_and_set_cursor): Use get_window_cursor_type.
16040 Remove unused local variables cursor_non_selected, active_cursor.
16041 Redraw cursor if hbar cursor width changes.
16042 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16043
16044 * macterm.h (enum text_cursor_kinds): Removed.
16045 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16046 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16047 (FRAME_DESIRED_CURSOR): Macro removed.
16048
16049 * w32fns.c (Vblink_cursor_alist): Removed.
16050 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16051 (syms_of_w32fns): Don't intern, staticpro, or define them.
16052 (x_specified_cursor_type): Removed.
16053 (x_set_cursor_type): Use set_frame_cursor_types.
16054
16055 * w32term.c (x_specified_cursor_type): Remove prototype.
16056 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16057 (x_display_and_set_cursor): Use get_window_cursor_type.
16058 Remove unused local variables cursor_off_state.
16059 Redraw cursor if hbar cursor width changes.
16060 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16061
16062 * w32term.h (enum text_cursor_kinds): Removed.
16063 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16064 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16065 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16066 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16067 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16068 w32_highlight_frame.
16069
16070 * xfns.c (Vblink_cursor_alist): Removed.
16071 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16072 (syms_of_xfns): Don't intern, staticpro, or define them.
16073 (x_specified_cursor_type): Removed.
16074 (x_set_cursor_type): Use set_frame_cursor_types.
16075
16076 * xterm.c (x_specified_cursor_type): Remove prototype.
16077 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16078 (x_display_and_set_cursor): Use get_window_cursor_type.
16079 Remove unused local variables cursor_off_state.
16080 Redraw cursor if hbar cursor width changes.
16081
16082 * xterm.h (enum text_cursor_kinds): Removed.
16083 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16084 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16085 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16086 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16087 (x_specified_cursor_type): Remove prototype.
16088
16089 2002-08-28 Richard M. Stallman <rms@gnu.org>
16090
16091 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16092 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16093 (Vblink_cursor_alist): New variable.
16094 (syms_of_w32fns): Initialize and defvar it.
16095 (x_specified_cursor_type): Recognize Qbox for filled box.
16096 Exceptions are hollow boxes.
16097 (Qbox, Qhollow): New variables.
16098 (syms_of_w32fns): Initialize and staticpro them.
16099
16100 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16101 New macros.
16102 (struct w32_output): New fields blink_off_cursor,
16103 blink_off_cursor_width.
16104 (FRAME_CURSOR_WIDTH): New macro.
16105
16106 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16107 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16108
16109 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16110 for bar cursor.
16111
16112 * w32term.c (expose_overlaps): New function.
16113 (expose_window): Use it to fix the display of overlapping rows.
16114
16115 2002-08-28 Simon Josefsson <jas@extundo.com>
16116
16117 * xfns.c (Fx_open_connection): Improve help when X connection
16118 fails, xhost is insecure and xauth is better.
16119
16120 2002-08-28 Juanma Barranquero <lektu@terra.es>
16121
16122 * makefile.w32-in: Add missing dependencies on w32term.h and
16123 composite.h.
16124
16125 * emacs.c (USAGE1): Add missing newline.
16126
16127 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16128
16129 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16130
16131 2002-08-27 Richard M. Stallman <rms@gnu.org>
16132
16133 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16134 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16135 (Vblink_cursor_alist): New variable.
16136 (syms_of_xfns): Initialize and defvar it.
16137 (x_specified_cursor_type): Recognize Qbox for filled box.
16138 Exceptions are hollow boxes.
16139 (Qbox, Qhollow): New variables.
16140 (syms_of_xfns): Initialize and staticpro them.
16141
16142 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16143 New macros.
16144 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16145
16146 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16147 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16148
16149 * emacs.c (main): Handle --script.
16150 (USAGE1): Mention --script.
16151 (standard_args): Define sort order for --script.
16152
16153 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16154
16155 * xdisp.c (redisplay_updating_p): Variable removed.
16156 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16157 New variables.
16158 (init_iterator): Don't free realized faces if
16159 inhibit_free_realized_faces is set.
16160 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16161 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16162 initialize Qinhibit_free_realized_faces.
16163
16164 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16165 when iterator is adding glyphs to a glyph matrix.
16166
16167 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16168
16169 * xdisp.c (get_next_display_element): In unibyte case, don't use
16170 octal form for such eight-bit characters that can be converted to
16171 multibyte char.
16172
16173 2002-08-26 Kim F. Storm <storm@cua.dk>
16174
16175 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16176 foreground and background colors. From Joe Buehler.
16177
16178 2002-08-26 Miles Bader <miles@gnu.org>
16179
16180 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16181
16182 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16183
16184 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16185 defined instead of MAC_OSX.
16186
16187 * s/darwin.h (select): Define select to sys_select only if
16188 HAVE_CARBON is defined.
16189 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16190 (DONT_REOPEN_PTY): #def it.
16191
16192 * macterm.c (XTread_socket): Remove code to call
16193 SendEventToEventTarget for keys with command modifiers when
16194 mac_command_key_is_meta is nil.
16195
16196 2002-08-24 Andreas Schwab <schwab@suse.de>
16197
16198 * eval.c (Fdefvar): Fix last change.
16199
16200 2002-08-23 Richard M. Stallman <rms@gnu.org>
16201
16202 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16203 Record variables in load history as (defvar . VAR).
16204 (Fdefvar): Don't record in load history if no initial value.
16205 (Qdefvar): New variable.
16206 (syms_of_eval): Init and staticpro it.
16207
16208 * lread.c (syms_of_lread): Doc fix.
16209 (build_load_history): Use Fmember to see if a definition
16210 is already in the Vload_history element.
16211
16212 * process.c (Fstart_process): Remove /: from program name.
16213
16214 * emacs.c (decode_env_path): Don't add /: if file name handler
16215 has a `safe-magic' property.
16216
16217 * callproc.c (Fcall_process): Remove /: from program name.
16218
16219 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16220
16221 * regex.c (PATFETCH): Remove the translating fetch.
16222 (PATFETCH_RAW): Rename to PATFETCH.
16223 (set_image_of_range): New fun.
16224 (SET_RANGE_TABLE_WORK_AREA): Use it.
16225 (regex_compile): Don't translate the pattern chars so eagerly.
16226 Only do it when inserting an `exactn' bytecode or when handling
16227 a char-range.
16228 (mutually_exclusive_p): Avoid empty statement.
16229
16230 2002-08-22 Kim F. Storm <storm@cua.dk>
16231
16232 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16233 end up on a partially visible line; this reverts a specific part
16234 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16235 display error which has been reported several times now.
16236 However it introduces the problem that changes was supposed to fix.
16237 See my comments in the source if you want to debug this further.
16238
16239 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16240
16241 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16242
16243 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16244
16245 * msdos.c (croak): Add `void' to definition.
16246
16247 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16248 Don't define them, they are defined in msdos.c.
16249
16250 * mem-limits.h [MSDOS]: Declare etext.
16251
16252 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16253 `const' since CORRECT_DIR_SEPS modifies its target.
16254
16255 2002-08-19 Kim F. Storm <storm@cua.dk>
16256
16257 * keyboard.c (Fclear_this_command_keys): Add optional arg
16258 KEEP-RECORD to avoid clearing lossage when we just want to clear
16259 the current key sequence (kmacro needs this).
16260
16261 2002-08-19 Kenichi Handa <handa@localhost>
16262
16263 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16264
16265 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16266 cons, return Qnil.
16267
16268 2002-08-17 Richard M. Stallman <rms@gnu.org>
16269
16270 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16271
16272 * sysdep.c [!VMS]: Include sys/files.h.
16273
16274 * editfns.c (save_restriction_restore): Defend from unchained marker.
16275
16276 * buffer.c (overlays_at): Handle extending vec uniformly.
16277 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16278
16279 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16280
16281 * mac.c (init_mac_osx_environment): New function.
16282
16283 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16284
16285 2002-08-14 Kim F. Storm <storm@cua.dk>
16286
16287 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16288 executing macro before appending to it (when used from Lisp).
16289 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16290 which is called prior to each iteration of macro (for kmacro.el).
16291 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16292
16293 * lisp.h (Fexecute_kbd_macro): Update prototype.
16294
16295 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16296
16297 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16298
16299 * xselect.c (QUTF8_STRING): New variable.
16300 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16301 (x_atom_to_symbol): Likewise.
16302 (x_get_local_selection): New argument local_request. If it is
16303 nonzero, call handler_fn with the second arg nil.
16304 (x_handle_selection_request): Call x_get_local_selection with
16305 local_request 0.
16306 (lisp_data_to_selection_data): Don't encode the string here.
16307 (Fx_get_selection_internal): Call x_get_local_selection with
16308 local_request 1.
16309 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16310
16311 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16312
16313 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16314
16315 2002-08-13 Richard M. Stallman <rms@gnu.org>
16316
16317 * minibuf.c (Fminibufferp): New function.
16318 (syms_of_minibuf): Defsubr it.
16319 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16320
16321 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16322
16323 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16324
16325 2002-08-12 Richard M. Stallman <rms@gnu.org>
16326
16327 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16328 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16329 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16330 already.
16331
16332 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16333
16334 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16335
16336 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16337 (Vmac_pass_command_to_system): New variable.
16338 (Vmac_pass_control_to_system): New variable.
16339 (do_mouse_moved): Check wp with is_emacs_window.
16340 (XTread_socket): Check window_ptr with is_emacs_window.
16341 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16342 events back to Mac Toolbox for processing, depending on values of
16343 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16344 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16345 Vmac_pass_control_to_system.
16346
16347 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16348
16349 * coding.c (unencodable_char_position): New function.
16350 (Funencodable_char_position): New function.
16351 (syms_of_coding): Defsubr Funencodable_char_position.
16352
16353 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16354
16355 * mac.c (sys_select) [MAC_OSX]: New function.
16356
16357 * macterm.c (MakeMeTheFrontProcess): New function.
16358 (mac_initialize): Call MakeMeTheFrontProcess.
16359
16360 * s/darwin.h: Define select to sys_select.
16361
16362 2002-08-09 Richard M. Stallman <rms@gnu.org>
16363
16364 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16365
16366 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16367
16368 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16369 end of the buffer.
16370
16371 2002-08-08 Ken Raeburn <raeburn@gnu.org>
16372
16373 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16374
16375 * puresize.h (BASE_PURESIZE): Increase to 910000.
16376
16377 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16378
16379 * coding.c (Ffind_operation_coding_system): For write-region, if
16380 VISIT is a filename, make it the target.
16381
16382 2002-08-07 Richard M. Stallman <rms@gnu.org>
16383
16384 * alloc.c (mark_object): Detect long lists for debugging.
16385 (mark_object_loop_halt): New variable.
16386
16387 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16388
16389 * data.c (Fmake_variable_frame_local): Doc fix.
16390
16391 2002-08-01 David Ponce <david@dponce.com>
16392
16393 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16394 (malloc_widget_value, free_widget_value)
16395 (w32_free_submenu_strings): Use them.
16396
16397 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16398 (push_menu_pane, push_menu_item, single_keymap_panes)
16399 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16400 (single_submenu, set_frame_menubar)
16401 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16402
16403 (Fx_popup_menu): Don't show pop up menu until preceding one is
16404 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16405
16406 * w32menu.c: Changes adapted from xmenu.c
16407 (set_frame_menubar): First parse all submenus,
16408 then make widget_value trees from them.
16409 Don't allocate any widget_value objects
16410 until we are done with the parsing.
16411 (parse_single_submenu): New function.
16412 (digest_single_submenu): New function.
16413 (single_submenu): Function deleted, replaced by those two.
16414
16415 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16416
16417 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16418 returns a valid window pointer before proceeding for keyDown and
16419 autoKey events.
16420
16421 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16422
16423 * macterm.c (USE_CARBON_EVENTS): New macro.
16424 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16425 (x_iconify_frame): Call CollapseWindow.
16426 (Vmac_reverse_ctrl_meta): New variable.
16427 (Vmac_wheel_button_is_mouse_2): New variable.
16428 (init_mac_drag_n_drop): New function.
16429 (mac_do_receive_drag): New function.
16430 (mac_handle_service_event): New function.
16431 (init_service_handler): New function.
16432 (mac_to_emacs_modifiers): New function.
16433 (mac_event_to_emacs_modifiers): New function.
16434 (mac_get_mouse_btn): New function.
16435 (mac_convert_event_ref): New function.
16436 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16437 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16438 mac_get_mouse_btn.
16439 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16440
16441 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16442 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16443 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16444 TOOL_BAR_EVENT for MAC_OS as well.
16445 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16446 as for WINDOWS_NT.
16447 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16448
16449 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16450
16451 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16452
16453 * xdisp.c (forward_to_next_line_start): Fix a condition that
16454 lead to a newline being skipped.
16455
16456 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16457
16458 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16459
16460 2002-08-01 Richard M. Stallman <rms@gnu.org>
16461
16462 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16463
16464 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16465
16466 * macfns.c: #undef init_process before #define-ing it.
16467
16468 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16469 HAVE_CARBON is defined.
16470
16471 2002-07-31 Richard M. Stallman <rms@gnu.org>
16472
16473 * xmenu.c (set_frame_menubar): First parse all submenus,
16474 then make widget_value trees from them.
16475 Don't allocate any widget_value objects
16476 until we are done with the parsing.
16477 (parse_single_submenu): New function.
16478 (digest_single_submenu): New function.
16479 (single_submenu): Function deleted, replaced by those two.
16480
16481 2002-07-30 Juanma Barranquero <lektu@terra.es>
16482
16483 * w32proc.c (syms_of_ntproc): Fix docstring of
16484 `w32-get-true-file-attributes'.
16485
16486 2002-07-28 Richard M. Stallman <rms@gnu.org>
16487
16488 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16489 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16490
16491 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16492
16493 * keyboard.c (make_lispy_event):
16494 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16495 Explicitly clear up_modifier in event->modifiers.
16496
16497 2002-07-27 Richard M. Stallman <rms@gnu.org>
16498
16499 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16500
16501 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16502 for bar cursor.
16503
16504 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16505
16506 * coding.c (detect_coding_iso2022): While checking a byte sequence
16507 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16508 it in the normal loop.
16509
16510 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16511
16512 * xterm.c (expose_overlaps): New function.
16513 (expose_window): Use it to fix the display of overlapping rows.
16514
16515 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16516
16517 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16518
16519 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16520 since it only depends on XUINT.
16521
16522 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16523 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16524 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16525 Macros deleted.
16526
16527 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16528 its value over other approaches.
16529 * sysdep.c (start_of_data): Don't define the function if a macro
16530 form has been defined.
16531
16532 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16533
16534 * xdisp.c (redisplay_updating_p): New variable.
16535 (init_iterator): Don't free realized faces when
16536 redisplay_updating_p is set.
16537 (redisplay_internal): Set redisplay_updating_p while updating
16538 the display.
16539
16540 2002-07-23 Richard M. Stallman <rms@gnu.org>
16541
16542 * editfns.c (Fmessage): Treat "" like nil.
16543
16544 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16545
16546 * xdisp.c (face_before_or_after_it_pos):
16547 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16548
16549 2002-07-22 Juanma Barranquero <lektu@terra.es>
16550
16551 * callproc.c (init_callproc) [DOS_NT]:
16552 Initialize Vshared_game_score_directory to nil.
16553 (syms_of_callproc) [DOS_NT]: Likewise.
16554
16555 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16556
16557 * xdisp.c (display_line): Replace an abort with xassert.
16558
16559 2002-07-21 Richard M. Stallman <rms@gnu.org>
16560
16561 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16562 and END_UNCHANGED when setting buffer_unchanged_p.
16563 Use current_matrix_up_to_date_p to decide whether to use
16564 try_cursor_movement.
16565
16566 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16567
16568 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16569
16570 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16571 Set to nil if dir does not exist.
16572 (syms_of_callproc): Init unconditionally and simply.
16573
16574 * buffer.c (Fbuffer_list): Doc fix.
16575
16576 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16577
16578 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16579
16580 * buffer.c (mmap_realloc): When shrinking, make sure number of
16581 pages to unmap is rounded towards zero.
16582
16583 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16584 (XSETINT): Deleted.
16585
16586 * m/att3b.h (XINT): Don't define.
16587 (VALBITS, VALMASK, XTYPE): Deleted.
16588 (DATA_SEG_BITS): Define.
16589 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16590 ARRAY_MARK_FLAG): Deleted.
16591 (DATA_SEG_BITS): Define.
16592 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16593 (DATA_SEG_BITS): Define.
16594
16595 2002-07-20 Richard M. Stallman <rms@gnu.org>
16596
16597 * print.c (print_error_message): New args CONTEXT and CALLER.
16598 Calls changed.
16599
16600 * lisp.h (print_error_message): Declare new args.
16601
16602 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16603 and CONTEXT to print_error_message, don't print them here.
16604 For a Quit, don't use Vsignaling_function.
16605 Call message_log_maybe_newline.
16606
16607 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16608
16609 2002-07-20 Kim F. Storm <storm@cua.dk>
16610
16611 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16612
16613 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16614
16615 * bytecode.c (struct byte_stack): Pointers into byte string now
16616 point to const.
16617 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16618 const.
16619 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16620 * coding.c (encode_eol, detect_coding, detect_eol):
16621 (decode_coding, encode_coding, detect_coding_system):
16622 Source strings now treated as const.
16623 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16624 modify Lisp string contents.
16625 * coding.h (decode_coding, encode_coding, detect_coding,
16626 detect_eol): Declarations updated.
16627 * composite.c (compose_chars_in_text): Treat Lisp string contents
16628 as const.
16629 * dispnew.c (safe_bcopy): Source pointer now points to const.
16630 * lisp.h (STRING_COPYIN): New macro.
16631 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16632 (internal_with_output_to_temp_buffer): Declarations updated.
16633 * print.c (temp_output_buffer_setup):
16634 (internal_with_output_to_temp_buffer): Buffer name argument is now
16635 pointer to const.
16636 * sound.c (struct sound_device): Function pointer field "write"
16637 buffer argument now points to const.
16638 (vox_write): Buffer argument points to const.
16639 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16640 contents as const.
16641 * sysdep.c (emacs_write): Buffer pointer now const.
16642 * term.c (encode_terminal_code): Buffer pointer now const.
16643 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16644 (x_face_list_fonts, x_update_menu_appearance):
16645 (hash_string_case_insensitive): Treat Lisp string contents as const.
16646
16647 2002-07-19 Juanma Barranquero <lektu@terra.es>
16648
16649 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16650
16651 * fileio.c (syms_of_fileio): Likewise.
16652 (Ffile_name_as_directory): Fix argument name in docstring.
16653 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16654
16655 2002-07-18 Richard M. Stallman <rms@gnu.org>
16656
16657 * data.c (Fdefalias): Doc fix.
16658
16659 2002-07-17 Dave Love <fx@gnu.org>
16660
16661 * intervals.h (text_property_stickiness): Use P_.
16662
16663 * ccl.c: Remove `emacs' conditionals.
16664 (ccl_backtrace_table): Fix size spec.
16665 (ccl_driver): Fix type errors.
16666
16667 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16668
16669 * alloc.c (xstrdup, make_string, make_unibyte_string)
16670 (make_multibyte_string, build_string): String pointer args now
16671 point to const.
16672 * charset.c (find_charset_in_text, c_string_width):
16673 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16674 * fileio.c (report_file_error):
16675 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16676 (count_combining_before, count_combining_after, insert_1_both):
16677 (insert, insert_and_inherit, insert_string):
16678 (insert_before_markers, insert_before_markers_and_inherit):
16679 * lread.c (intern, oblookup, hash_string):
16680 * minibuf.c (temp_echo_area_glyphs):
16681 * search.c (fast_c_string_match_ignore_case):
16682 * sysdep.c (emacs_open, set_file_times):
16683 * xfaces.c (xstricmp):
16684 * xdisp.c (store_frame_title, string_char_and_length):
16685 (message_dolog, message2, message2_nolog, set_message): Likewise.
16686 (set_message_1): Cast message string argument to const pointer.
16687 * editfns.c (general_insert_function): Insertion function now
16688 takes pointer to const for input data.
16689 * charset.h (find_charset_in_text, c_string_width):
16690 (parse_str_as_multibyte): Declarations updated.
16691 * dispextern.h (xstricmp): Declaration updated.
16692 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16693 (count_size_as_multibyte, count_combining_before):
16694 (count_combining_after, insert_1, insert_1_both, message_dolog):
16695 (insert, insert_and_inherit, insert_before_markers)
16696 (insert_before_markers_and_inherit, set_message, message2):
16697 (message2_dolog, build_string, make_string, make_unibyte_string):
16698 (make_multibyte_string, intern, oblookup, report_file_error):
16699 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
16700 (emacs_open, xstrdup): Declarations updated.
16701 * systime.h (set_file_times): Declaration updated.
16702
16703 * charset.c (find_charset_in_text, lisp_string_width): Use const
16704 for pointer to lisp string data.
16705 * charset.h (FETCH_STRING_CHAR_ADVANCE):
16706 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
16707 * coding.c (Ffind_coding_systems_region_interval):
16708 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
16709 (Fmake_directory_internal, Fdelete_directory):
16710 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
16711 * fontset.c (font_family_registry, fs_query_fontset):
16712 (list_fontsets):
16713 * frame.c (Fframe_parameter):
16714 * keyboard.c (cmd_error_internal):
16715 * keymap.c (Fdescribe_buffer_bindings):
16716 * lread.c (complete_filename_p, openp):
16717 * minibuf.c (Fminibuffer_complete_word):
16718 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
16719 (face_before_or_after_it_pos, next_element_from_string):
16720 (get_overlay_arrow_glyph_row, display_mode_element):
16721 (decode_mode_spec_coding):
16722 * xterm.c (same_x_server): Likewise.
16723
16724 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
16725 settings of non-existent fields.
16726
16727 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
16728 copy a lisp value.
16729
16730 * lread.c (Fintern_soft): Use string macros instead of
16731 Lisp_String fields.
16732 * keyboard.c (echo_char, parse_modifiers_uncached):
16733 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
16734 * textprop.c (validate_interval_range, interval_of): Likewise.
16735
16736 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
16737
16738 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16739 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
16740 XSTRING()->size_byte.
16741
16742 * lisp.h (SDATA, SREF): Produce rvalue.
16743 (SSET): New macro.
16744 * alloc.c (make_event_array): Use SSET for storing into a string.
16745 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
16746 a string.
16747 * casefiddle.c (casify_object): Use SSET.
16748 * charset.h (FETCH_STRING_CHAR_ADVANCE)
16749 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
16750 address of string contents.
16751 * data.c (Faref): Use SDATA.
16752 (Faset): Use SDATA, SSET.
16753 * dired.c (directory_files_internal): Use SSET.
16754 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
16755 (Fread_file_name): Use SREF, SSET.
16756 * fns.c (concat): Use SSET.
16757 (concat, Fdelete): Use SDATA.
16758 * insdel.c (insert_from_string_1): Use SDATA.
16759 * keyboard.c (Fevent_convert_list): Use SREF.
16760 * lread.c (Fload): Use SDATA, SSET.
16761 * macfns.c (validate_x_resource_name): Use SSET.
16762 * process.c (status_message): Use SSET.
16763 * search.c (wordify): Use SDATA.
16764 (Freplace_match): Use SREF.
16765 * w32fns.c (validate_x_resource_name): Use SSET.
16766 * xfns.c (validate_x_resource_name): Use SSET.
16767 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
16768
16769 2002-07-16 Richard M. Stallman <rms@gnu.org>
16770
16771 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
16772
16773 * xdisp.c (reconsider_clip_changes):
16774 Don't test prevent_redisplay_optimizations_p.
16775 (redisplay_internal): Test prevent_redisplay_optimizations_p
16776 along with clip_changed in some cases.
16777 (try_window_id): Likewise.
16778 (redisplay_window): New local var buffer_unchanged_p.
16779
16780 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
16781
16782 * process.c (create_process): Test USG_SUBTTY_WORKS.
16783 (process_send_signal): Clean up handling of GID.
16784 Detect errors in ioctls meant to set GID.
16785
16786 * window.c (temp_output_buffer_show):
16787 Don't set prevent_redisplay_optimizations_p.
16788
16789 2002-07-15 Juanma Barranquero <lektu@terra.es>
16790
16791 * eval.c (Fdefvaralias): Add docstring argument.
16792
16793 2002-07-15 Ken Raeburn <raeburn@gnu.org>
16794
16795 * lisp.h (STRING_INTERVALS): Produce rvalue.
16796 (STRING_SET_INTERVALS): New macro.
16797 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
16798 * fns.c (Fstring_as_multibyte): Likewise.
16799 * intervals.c (balance_possible_root_interval, delete_interval)
16800 (create_root_interval, copy_intervals_to_string): Likewise.
16801 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
16802 instead of 0.
16803
16804 2002-07-14 Ken Raeburn <raeburn@gnu.org>
16805
16806 * lisp.h (STRING_SET_CHARS): New macro.
16807 (SCHARS, SBYTES): Produce rvalues.
16808 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
16809 * fns.c (concat): Likewise.
16810 * lread.c (read_vector): Likewise.
16811
16812 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
16813 (STRING_SET_UNIBYTE): New macro.
16814 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
16815 length of -1) changed to use STRING_SET_UNIBYTE.
16816 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16817 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
16818 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
16819 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
16820 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
16821 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
16822 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
16823 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
16824 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
16825 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
16826 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
16827 STRING_BYTES or indirection changed to SCHARS, SBYTES,
16828 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
16829 unchanged for now.
16830
16831 2002-07-13 Kim F. Storm <storm@cua.dk>
16832
16833 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
16834
16835 2002-07-12 Richard M. Stallman <rms@gnu.org>
16836
16837 * fileio.c (Fwrite_region): Doc fix.
16838
16839 * print.c (print_error_message): Don't handle Vsignaling_function here.
16840
16841 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
16842 (command_loop_1): Avoid certain actions after memory-full error.
16843
16844 * eval.c (Fsignal): Don't call cancel_hourglass.
16845 For a memory-full error, don't call Vsignal_hook_function
16846 and don't set Vsignaling_function.
16847
16848 * process.c (process_send_signal): Add abort call.
16849
16850 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
16851
16852 * keymap.c (Fkey_binding): Fix typo.
16853
16854 2002-07-11 Richard M. Stallman <rms@gnu.org>
16855
16856 * alloc.c (Vmemory_full): New variable.
16857 (Vmemory_signal_data): Rename from memory_signal_data.
16858 Uses changed.
16859 (syms_of_alloc): Defvar them.
16860 (memory_full, buffer_memory_full): Set Vmemory_full.
16861
16862 * lisp.h (Vmemory_full): Add declaration.
16863 (current_column, indented_beyond_p): Change declaration.
16864
16865 * indent.c (last_known_column): Declare as double, not float.
16866 (current_column, current_column_1, string_display_width)
16867 (position_indentation): Return `double'.
16868 (indented_beyond_p): Arg `column' is `double'. Callers changed.
16869
16870 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
16871 (back_to_previous_visible_line_start)
16872 (reseat_at_next_visible_line_start, next_element_from_buffer):
16873 Use `double', not `float', when calling indented_beyond_p.
16874
16875 * s/hpux11.h (BROKEN_SA_RESTART): Define.
16876
16877 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
16878
16879 2002-07-11 Juanma Barranquero <lektu@terra.es>
16880
16881 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
16882 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
16883 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
16884 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
16885 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
16886 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
16887
16888 2002-07-10 Juanma Barranquero <lektu@terra.es>
16889
16890 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
16891 All callers changed.
16892
16893 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
16894
16895 * data.c (Fdefalias): Add an optional `docstring' argument.
16896 (set_internal, Fsetq_default): Use XCAR/XCDR.
16897
16898 * composite.c (HASH_VALUE, HASH_KEY):
16899 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
16900
16901 2002-07-09 Kenichi Handa <handa@etl.go.jp>
16902
16903 * callproc.c (Fcall_process): Fix previous change.
16904
16905 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
16906
16907 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
16908 Add support for hash-tables.
16909 (Ftry_completion): Return t even if the string appears multiple times.
16910
16911 * fns.c (Fnconc): Use XCDR.
16912 (Fprovide): Use CONSP and XCDR.
16913 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16914 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
16915 (Fmake_hash_table): Accept `:size nil'.
16916 (Fmakehash): Delete: moved to subr.el.
16917 (syms_of_fns): Don't defsubr makehash.
16918
16919 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
16920 (HASH_TABLE_SIZE): Move from fns.c.
16921
16922 2002-07-07 Richard M. Stallman <rms@gnu.org>
16923
16924 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
16925 Instead just return 0 when there is something to be done.
16926 (try_scrolling): If make_cursor_line_fully_visible returns 0,
16927 retry scrolling as if cursor were off the bottom.
16928 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
16929 return CURSOR_MOVEMENT_MUST_SCROLL.
16930 (redisplay_window): If make_cursor_line_fully_visible returns 0,
16931 go to try_to_scroll.
16932
16933 * buffer.c (Fbuffer_local_value): Store current value into its binding
16934 so we get the up-to-date value for the binding that is loaded.
16935
16936 * eval.c (Fdefmacro): Doc fix.
16937
16938 2002-07-05 Dave Love <fx@gnu.org>
16939
16940 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
16941 correctly.
16942
16943 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
16944 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
16945 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
16946 CCL_LookupCharConstTbl.
16947 (syms_of_ccl): Defvar translation-hash-table-vector.
16948
16949 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16950
16951 * xdisp.c: Remove unused variable `face'.
16952
16953 2002-07-04 Juanma Barranquero <lektu@terra.es>
16954
16955 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
16956 obsolescence information.
16957
16958 2002-07-03 Andrew Choi <akochoi@shaw.ca>
16959
16960 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
16961 pattern. Search cache first.
16962 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
16963 for Japanese font.
16964 (XLoadQueryFont): Use it.
16965
16966 2002-07-02 Richard M. Stallman <rms@gnu.org>
16967
16968 * keymap.c (Fdefine_key): Doc fix.
16969
16970 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
16971
16972 2002-07-02 Juanma Barranquero <lektu@terra.es>
16973
16974 * keymap.c (syms_of_keymap): Fix typo.
16975
16976 2002-07-01 Andrew Choi <akochoi@shaw.ca>
16977
16978 * s/darwin.h: Define POSIX_SIGNALS.
16979
16980 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
16981 and FSRefMakePath to convert FSSpec returned with Apple Event to
16982 Posix pathname.
16983 (mac_initialize) [TARGET_API_MAC_CARBON]:
16984 Call init_required_apple_events and disable the `Quit' menu item
16985 provided automatically by the Carbon Toolbox.
16986
16987 2002-07-01 Dave Love <fx@gnu.org>
16988
16989 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16990 for K&R.
16991
16992 * xterm.c: Fix prototype for K&R.
16993
16994 * term.c (costs_set): Declare static, non-initialized for pcc.
16995
16996 2002-07-01 Richard M. Stallman <rms@gnu.org>
16997
16998 * keyboard.c (timer_last_idleness_start_time): New variable.
16999 (timer_start_idle): Set that.
17000 (read_key_sequence): Use that to reset timer_idleness_start_time
17001 to previous value.
17002
17003 * window.c (Frecenter): With arg, set optional_new_start.
17004
17005 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17006
17007 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17008 buffer for completion.
17009
17010 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17011
17012 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17013
17014 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17015
17016 * keyboard.c (readable_filtered_events): New function that filters
17017 FOCUS_IN_EVENT depending on parameter.
17018 (readable_events): Calls readable_filtered_events, not filtering
17019 FOCUS_IN_EVENT.
17020 (get_filtered_input_pending): New function, filtering parameter passed
17021 to readable_filtered_events.
17022 (get_input_pending): Calls get_filtered_input_pending, not filtering
17023 FOCUS_IN_EVENT.
17024 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17025 FOCUS_IN_EVENT.
17026
17027 * xterm.h (struct x_output): Add focus_state.
17028
17029 * xterm.c (x_focus_changed): New function.
17030 (x_detect_focus_change): New function.
17031 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17032 EnterNotify and LeaveNotify to track X focus changes.
17033
17034 2002-06-28 Andreas Schwab <schwab@suse.de>
17035
17036 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17037
17038 2002-06-27 Kim F. Storm <storm@cua.dk>
17039
17040 * xdisp.c (mode_line_string_list, mode_line_string_face)
17041 (mode_line_string_face_prop): New variables.
17042 (store_mode_line_string): New function.
17043 (display_mode_element): Use store_mode_line_string to
17044 add mode-line string elements to mode_line_string_list
17045 when mode_line_string_list is non-nil.
17046 (Fformat_mode_line): Now returns propertized string by
17047 default. New arg NO-PROPS to ignore properties.
17048 (decode_mode_spec): Only add two dashes for %- in propertized
17049 mode-line string.
17050 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17051
17052 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17053
17054 * minibuf.c (minibuffer_completion_contents): Add return type.
17055
17056 2002-06-27 Juanma Barranquero <lektu@terra.es>
17057
17058 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17059
17060 2002-06-26 Juanma Barranquero <lektu@terra.es>
17061
17062 * fileio.c (read_file_name_cleanup): Add missing return.
17063
17064 2002-06-26 Richard M. Stallman <rms@gnu.org>
17065
17066 * window.c (Frecenter): Don't set force_start flag.
17067
17068 * minibuf.c (do_completion, Fminibuffer_complete_word)
17069 (Fminibuffer_completion_help): Complete just the text before point.
17070 (minibuffer_completion_contents): New function.
17071
17072 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17073
17074 * frame.c (frames_bury_buffer): Function deleted.
17075
17076 2002-06-25 Miles Bader <miles@gnu.org>
17077
17078 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17079 the end of callint_message, allow for a terminating '\0'.
17080
17081 2002-06-24 Juanma Barranquero <lektu@terra.es>
17082
17083 * w32select.c: Include composite.h.
17084
17085 * w16select.c: Likewise.
17086
17087 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17088
17089 * callproc.c (Fcall_process): If code detection is necessary,
17090 call detect_coding directly here.
17091
17092 * coding.c (detect_eol): Preserve coding->cmp_data.
17093
17094 * w16select.c (Fw16_get_clipboard_data):
17095 * w32fns.c (w32_to_x_font):
17096 * w32select.c (Fw32_get_clipboard_data):
17097 * xselect.c (selection_data_to_lisp_data):
17098 * xterm.c (XTread_socket): Disable composition handling.
17099
17100 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17101
17102 * print.c (temp_output_buffer_setup): Kill all local variables.
17103
17104 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17105
17106 * lread.c (Fread): Remove redundant and imprecise declaration.
17107
17108 * xfns.c (check_x_display_info): Use check_x_frame.
17109
17110 * .gdbinit (xprintsym): Use the new `xname' field.
17111 (xsymbol): Use it.
17112
17113 2002-06-22 Jason Rumney <jasonr@gnu.org>
17114
17115 * w32fns.c (file_dialog_callback): New function.
17116 (Fx_file_dialog): Allow selecting directories as well as files.
17117
17118 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17119
17120 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17121 OpenBSD. Add support for mipseb-*-netbsd* machines.
17122
17123 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17124
17125 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17126 black and white before scrolling. Restore frame background and
17127 foreground color after scrolling.
17128 (do_window_update): Call XClearWindow before calling expose_frame.
17129 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17130 FRAME_FOREGROUND_PIXEL of frame.
17131
17132 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17133 test Mac command key as <ALT> key.
17134
17135 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17136
17137 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17138
17139 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17140 Lookup keys in function-key-map immediately so that key-translation-map
17141 can be applied earlier.
17142 Remove function_key_possible and key_translation_possible, replaced
17143 by checking `keytran_start < t'.
17144
17145 * .gdbinit (xsymbol): Use the new `xname' field.
17146
17147 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17148
17149 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17150 test Mac command key as <ALT> key.
17151
17152 * mac.c (do_applescript): Call initialize_applescript if necessary
17153 when first called. Dispose of result_desc only when there is no error.
17154 (Fdo_applescript): Use %d format specifier instead of %ld.
17155
17156 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17157
17158 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17159 of FrontWindow for cases keyDown and autoKey.
17160
17161 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17162 Vdefault_fontset to Monaco with mac-roman coding.
17163
17164 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17165 init_process before and after inclusion of Carbon/Carbon.h, resp.
17166
17167 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17168 cursor_gc.
17169 (add_font_name_table_entry): New function.
17170 (init_font_name_table): Use add_font_name_table_entry; add italic,
17171 bold, and bold-italic entries for truetype fonts.
17172
17173 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17174 for Mac too.
17175 (try_font_list) [MAC_OS]: If no font matches given registry, try
17176 fonts with any registry matching face_family.
17177 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17178
17179 * s/darwin.h: If autoconf detects the Ncurses library, define
17180 LIBS_TERMCAP to -lncurses to use it.
17181
17182 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17183
17184 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17185
17186 2002-06-15 Richard M. Stallman <rms@gnu.org>
17187
17188 * window.c (Fset_window_configuration): Explicitly preserve
17189 the point value that new_current_buffer had at the start.
17190
17191 2002-06-14 Juanma Barranquero <lektu@terra.es>
17192
17193 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17194 Fix typos.
17195
17196 2002-06-14 Kim F. Storm <storm@cua.dk>
17197
17198 * insdel.c (insert_1_both, insert_from_string_1)
17199 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17200 insert happened in the end_unchanged region. Otherwise, the
17201 redisplay may be confused and duplicate the last line in the
17202 buffer [seen after save-buffer when require-final-newline==t].
17203
17204 2002-06-13 Jason Rumney <jasonr@gnu.org>
17205
17206 * w32.c (init_environment): Remove EMACSLOCKDIR.
17207 (stat): Swap _S_IFDIR and _S_IFREG.
17208
17209 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17210
17211 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17212 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17213 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17214 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17215 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17216 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17217 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17218 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17219 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17220 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17221 SELECTION_REQUEST_EVENT, selection_clear_event to
17222 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17223 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17224 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17225 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17226 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17227 no_event to NO_EVENT.
17228
17229 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17230
17231 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17232
17233 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17234
17235 * intervals.c (textget): Don't forget to `return'.
17236 (lookup_char_property): Use XCAR/XCDR.
17237
17238 2002-06-12 Juanma Barranquero <lektu@terra.es>
17239
17240 * xdisp.c (Fformat_mode_line): Fix typo.
17241
17242 2002-06-12 Kim F. Storm <storm@cua.dk>
17243
17244 * xdisp.c (Fformat_mode_line): New function.
17245 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17246 (store_frame_title_char, store_frame_title): Use unconditionally.
17247 (init_xdisp): Defsubr Fformat_mode_line.
17248 Initialize frame_title_buf etc. unconditionally.
17249
17250 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17251
17252 * keyboard.c (read_key_sequence):
17253 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17254 things through those maps after downcasing events.
17255 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17256 applies after function-key-map.
17257 Make sure that keytran can be done in the middle in the sequence.
17258 Be careful not to throw away events past the one we downcase.
17259
17260 * lread.c (read_integer): Remove unused var `tem'.
17261 (read1): Fix int/Lisp_Object mixup.
17262
17263 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17264
17265 2002-06-11 Richard M. Stallman <rms@gnu.org>
17266
17267 * keyboard.c (readable_events): Ignore any number of
17268 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17269
17270 2002-06-09 Miles Bader <miles@gnu.org>
17271
17272 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17273 (parse_rgb_list, tty_lookup_color): New functions.
17274 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17275 (color_distance, Fcolor_distance): New functions.
17276 (TTY_SAME_COLOR_THRESHOLD): New macro.
17277 (Qtty_color_standard_values): New variable.
17278 (syms_of_xfaces): Initialize new vars & functions.
17279
17280 2002-06-08 Colin Walters <walters@verbum.org>
17281
17282 * textprop.c (Vchar_property_alias_alist): New variable.
17283 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17284
17285 * intervals.c (lookup_char_property): New function for looking up
17286 overlay and text properties, created from textget.
17287 (textget): Use it.
17288
17289 * intervals.h (lookup_char_property): Declare.
17290 (Vchar_property_alias_alist): Declare.
17291
17292 * buffer.c (Foverlay_get): Use lookup_char_property.
17293
17294 2002-06-07 Sam Steingold <sds@gnu.org>
17295
17296 * xselect.c (lisp_data_to_selection_data): Fix last change:
17297 *data_ret is not a Lisp string, while unibyte_string is.
17298
17299 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17300
17301 * xselect.c (lisp_data_to_selection_data): Fix last change:
17302 set size_ret.
17303
17304 2002-06-07 Andreas Schwab <schwab@suse.de>
17305
17306 * m/amdx86-64.h: New file.
17307
17308 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17309
17310 * fns.c (Fstring_make_unibyte): Doc fix.
17311
17312 * xselect.c (lisp_data_to_selection_data): If the requested type
17313 is STRING, call string_make_unibyte to encode the selected text
17314 as a string.
17315
17316 * window.c (Fset_window_hscroll): Doc fix.
17317
17318 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17319
17320 * fileio.c (choose_write_coding_system):
17321 Call select-safe-coding-system properly.
17322
17323 2002-06-03 Richard M. Stallman <rms@gnu.org>
17324
17325 * xdisp.c (message_with_string): Error if STRING is not a string.
17326
17327 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17328
17329 * fileio.c (choose_write_coding_system): Pass FILE arg to
17330 Vselect_safe_coding_system_function.
17331
17332 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17333
17334 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17335
17336 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17337
17338 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17339 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17340 * keymap.c (describe_command): Likewise.
17341 * minibuf.c (read_minibuf): Likewise.
17342
17343 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17344 Cast `current_column' return value to int.
17345 (back_to_previous_visible_line_start)
17346 (reseat_at_next_visible_line_start, next_element_from_buffer):
17347 Cast `indented_beyond_p' 3rd arg to float.
17348
17349 * indent.c (last_known_column): Now a float.
17350 (current_column_1, position_indentation, current_column)
17351 (string_display_width): Return float.
17352 (Fcurrent_column): Cast `current_column' return value to int.
17353 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17354 (indented_beyond_p): Third arg now a float.
17355 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17356
17357 * lisp.h (current_column): Now returns float.
17358 (indented_beyond_p): 3rd arg now a float.
17359
17360 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17361
17362 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17363 is Qcompound_text_with_extensions.
17364
17365 * xselect.c (lisp_data_to_selection_data): Always set selection
17366 type as string if x_encode_text returns streingp non-NULL.
17367
17368 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17369
17370 2002-05-30 Richard M. Stallman <rms@gnu.org>
17371
17372 * window.c (Fset_window_configuration): Correct the handling
17373 of point in current buffer, to work with multiple windows.
17374
17375 2002-05-29 Colin Walters <walters@verbum.org>
17376
17377 * lread.c (Fread_from_string): Don't depend on order of evaluation
17378 for C function parameters.
17379
17380 2002-05-28 Richard M. Stallman <rms@gnu.org>
17381
17382 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17383 way for blinked-off state and for a nonselected window.
17384
17385 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17386 instead, see if the new start pos is at beginning of line.
17387
17388 * fileio.c (Fwrite_region): If START is a string, don't
17389 make any annotations.
17390
17391 * eval.c (syms_of_eval): Doc fix.
17392
17393 2002-05-28 Colin Walters <walters@debian.org>
17394
17395 * emacs.c (USAGE1): Add --no-splash.
17396 (standard_args): Ditto.
17397
17398 2002-05-28 Colin Walters <walters@gnu.org>
17399
17400 * lread.c (readchar_count): New variable.
17401 (readchar): Increment it.
17402 (unreadchar): Decrement it.
17403 (read_multibyte): Decrement it.
17404 (Vread_with_symbol_positions): New variable.
17405 (Vread_symbol_positions_list): New variable.
17406 (read_internal_start): New function, created from Fread and
17407 Fread_from_string. Handle Vread_symbol_positions_list and
17408 Vread_with_symbol_positions.
17409 (readevalloop, Fread, Fread_from_string): Use it.
17410 (read1): Use readchar_count to add symbol positions to
17411 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17412 (syms_of_lread): DEFVAR_LISP and initialize them.
17413
17414 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17415 (substitute_object_recurse, substitute_object_in_subtree)
17416 (substitute_in_interval): Prototype.
17417 (read_multibyte): Return c if it's less than zero.
17418
17419 2002-05-28 Kim F. Storm <storm@cua.dk>
17420
17421 * fileio.c (Fread_file_name_internal): Added brute-force
17422 speed up for using predicate file-directory-p.
17423
17424 2002-05-28 Kim F. Storm <storm@cua.dk>
17425
17426 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17427 New variables.
17428 (syms_of_fileio): DEFVAR_LISP them.
17429 (read_file_name_cleanup): New unwind function.
17430 (Fread_file_name_internal): Only return completions satifying
17431 Vread_file_name_predicate. Temporarily unwind protect and rebind
17432 default-directory while checking completions against the predicate.
17433 (Fread_file_name): Added PREDICATE argument. Specbind it to
17434 Vread_file_name_predicate during completion.
17435 Call Vread_file_name_function to read the file name if non-nil.
17436
17437 * lisp.h (Fread_file_name): Now has 6 args.
17438
17439 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17440 predicate for Fread_file_name when reading directory name.
17441 Supply Qnil for predicate in other calls to Fread_file_name.
17442
17443 2002-05-26 Miles Bader <miles@gnu.org>
17444
17445 * term.c (tty_capable_p): New function.
17446 * dispextern.h (tty_capable_p): New function declaration.
17447 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17448 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17449
17450 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17451
17452 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17453 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17454 (Vwrite_region_annotate_functions): Docstring fix.
17455
17456 2002-05-23 Kim F. Storm <storm@cua.dk>
17457
17458 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17459 phys_cursor's hpos is overwritten. This is still not completely
17460 correct, as it doesn't really make sense to use hpos at all to
17461 get the cursor glyph (as that is relative to the width of the
17462 characters on the line, which may have changed during the update).
17463
17464 2002-05-22 Jason Rumney <jasonr@gnu.org>
17465
17466 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17467 Lisp_Object.
17468 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17469 Use modified enumfont_t struct.
17470
17471 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17472
17473 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17474 Handle the `hbar' cursor type.
17475 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17476
17477 * w32fns.c (Qhbar): New variable.
17478 (x_specified_cursor_type): Use it.
17479
17480 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17481
17482 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17483 now, when the address is needed.
17484
17485 2002-05-21 Colin Walters <walters@gnu.org>
17486
17487 * Makefile.in (shortlisp): Add font-core.el.
17488
17489 2002-05-20 Richard M. Stallman <rms@gnu.org>
17490
17491 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17492
17493 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17494 equivalent key bindings here.
17495
17496 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17497
17498 Change symbol structure to contain a lisp object for the symbol
17499 name:
17500 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17501 object field named "xname".
17502 (SYMBOL_NAME): New macro.
17503 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17504 name field.
17505 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17506 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17507 instead of name field.
17508 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17509 SYMBOL_NAME instead of XSYMBOL and name field.
17510 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17511 instead of XSYMBOL and name field.
17512 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17513 and SYMBOL_NAME instead of XSYMBOL and name field.
17514 * coding.c (Fread_coding_system, code_convert_region1)
17515 (code_convert_string1, code_convert_string_norecord)
17516 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17517 XSYMBOL and name field.
17518 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17519 (Fmake_variable_buffer_local, Fmake_local_variable)
17520 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17521 of XSYMBOL and name field.
17522 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17523 XSYMBOL and name field.
17524 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17525 instead of XSYMBOL and name field.
17526 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17527 XSYMBOL and name field.
17528 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17529 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17530 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17531 instead of XSYMBOL and name field.
17532 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17533 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17534 (parse_solitary_modifier, Fexecute_extended_command):
17535 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17536 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17537 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17538 of XSYMBOL and name field.
17539 (describe_command, describe_translation): Use SYMBOL_NAME and
17540 assignment instead of XSYMBOL and name field and XSETSTRING.
17541 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17542 instead of XSYMBOL and name field.
17543 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17544 name field and XSETSTRING.
17545 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17546 of XSYMBOL and name field.
17547 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17548 assignment instead of XSYMBOL and name field and XSETSTRING.
17549 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17550 XSTRING instead of XSYMBOL and name field.
17551 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17552 and XSTRING instead of XSYMBOL and name field.
17553 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17554 and XSTRING instead of XSYMBOL and name field.
17555 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17556 XSTRING instead of XSYMBOL and name field.
17557 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17558 of XSYMBOL and name field.
17559 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17560 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17561
17562 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17563
17564 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17565 and XCDR real rvalues in most configurations.
17566
17567 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17568 Don't take the address of the cdr part of a cons cell; instead, track
17569 the parent cell and call XSETCDR, or set the variable for the head
17570 of the list if we haven't started down the list yet.
17571
17572 2002-05-19 Richard M. Stallman <rms@gnu.org>
17573
17574 * doc.c (reread_doc_file): Don't ask for confirmation.
17575
17576 2002-05-18 Jason Rumney <jasonr@gnu.org>
17577
17578 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17579 (xbm_load_image): Use it.
17580 (xbm_load): Ditto.
17581 (xbm_read_bitmap_data): Reverted to xfns.c version.
17582 From David Ponce <david@dponce.com>.
17583
17584 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17585
17586 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17587 2.02 and later.
17588
17589 2002-05-16 Juanma Barranquero <lektu@terra.es>
17590
17591 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17592
17593 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17594
17595 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17596 meaningful test.
17597 (read_char_minibuf_menu_prompt): Fix typo.
17598
17599 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17600
17601 * eval.c (Fcommandp): Doc fix.
17602
17603 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17604
17605 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17606 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17607 (Fset_keymap_parent): Gcpro a bit more.
17608 (access_keymap): Gcpro around meta_map call and around the main loop.
17609 (get_keyelt): Gcpro when following indirect references.
17610 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17611 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17612 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17613 Remove useless ad-hoc remap code.
17614
17615 2002-05-13 Richard M. Stallman <rms@gnu.org>
17616
17617 * search.c (search_buffer): Give up boyer moore search if inverse
17618 translation change charset_base.
17619
17620 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17621
17622 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17623 characters is carried over from the previous block of text, adjust
17624 coding->produced to account for the extra character.
17625
17626 2002-05-11 Andreas Schwab <schwab@suse.de>
17627
17628 * coding.c (intersection): Keep the elements of the returned list
17629 in the same order as in the first list.
17630
17631 2002-05-11 Kim F. Storm <storm@cua.dk>
17632
17633 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17634 only update cmm_size if realloc actually succeeds.
17635 Testing with initial size of 2 elements revealed that using
17636 realloc on GNU/Linux would cause a random trap in xmalloc
17637 later on, so I rewrote the code to use malloc/bcopy/free instead
17638 of realloc.
17639
17640 2002-05-10 Jason Rumney <jasonr@gnu.org>
17641
17642 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17643
17644 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17645
17646 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17647 parens, to ensure correct evaluation order.
17648
17649 2002-05-10 Kim F. Storm <storm@cua.dk>
17650
17651 * keymap.c (Vemulation_mode_map_alists): New variable.
17652 (syms_of_keymap): DEFVAR_LISP it.
17653 (current_minor_maps): Process keymap alists in that list before
17654 minor-mode-overriding-map-alist and minor-mode-map-alist.
17655
17656 2002-05-09 Richard M. Stallman <rms@gnu.org>
17657
17658 * search.c (Freplace_match): Doc fix.
17659
17660 2002-05-09 Kim F. Storm <storm@cua.dk>
17661
17662 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17663 Enlarge cursor rectangle drawn around image with non-zero relief.
17664
17665 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17666 Enlarge cursor rectangle drawn around image with non-zero relief.
17667
17668 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17669 Enlarge cursor rectangle drawn around image with non-zero relief.
17670
17671 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17672
17673 * xselect.c (lisp_data_to_selection_data): Don't set selection
17674 type if comes from the Lisp object's car. If the selection
17675 contains a pure ASCII text, always return QSTRING as its type.
17676
17677 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17678
17679 * mac.c (mac-cut-function): Doc fix.
17680
17681 2002-05-05 Richard M. Stallman <rms@gnu.org>
17682
17683 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17684
17685 2002-05-04 Jason Rumney <jasonr@gnu.org>
17686
17687 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17688 for event-click-count.
17689
17690 * process.c (init_process): Only add server subfeature if we can
17691 use non-blocking I/O.
17692
17693 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17694
17695 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17696 repeatedly.
17697
17698 2002-05-03 Jason Rumney <jasonr@gnu.org>
17699
17700 * process.c (Fmake_network_process): Only support server sockets
17701 when we can make them non-blocking.
17702
17703 * s/ms-w32.h (HAVE_SELECT): Define.
17704
17705 * w32.h (FILE_NDELAY): New flag.
17706
17707 * w32.c (sys_getpeername, fcntl): New functions.
17708 (_sys_read_ahead): Temporarily block on non-blocking sockets.
17709
17710 * w32proc.c: Include sys/file.h.
17711
17712 2002-05-03 Colin Walters <walters@verbum.org>
17713
17714 * callproc.c (Vgame_score_directory): Renamed to
17715 Vshared_game_score_directory.
17716
17717 2002-04-30 Richard M. Stallman <rms@gnu.org>
17718
17719 * s/gnu.h [emacs]: Include stdio.h.
17720 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
17721
17722 * eval.c (do_autoload): Error if called while preparing to dump.
17723
17724 * fns.c (Frequire): Error if need to load while preparing to dump.
17725
17726 2002-04-28 Colin Walters <walters@verbum.org>
17727
17728 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
17729 Default to "~/.emacs.d/games".
17730
17731 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
17732
17733 * lread.c (openp): Change arg exec_only to predicate.
17734 (build_load_history): Use XCAR/XCDR.
17735 (Flocate_file_internal): New fun.
17736 (syms_of_lread): Defsubr it.
17737 (Fload): Update call to openp.
17738
17739 * lisp.h (openp): Update prototype.
17740
17741 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
17742 * w32proc.c (sys_spawnve):
17743 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
17744 * w32.c (check_windows_init_file):
17745 * sound.c (Fplay_sound_internal):
17746 * process.c (Fstart_process):
17747 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
17748 * mac.c (run_mac_command):
17749 * emacs.c (init_cmdargs):
17750 * callproc.c (Fcall_process): Update call to openp.
17751
17752 * textprop.c (remove_properties): Don't use XCAR without CONSP.
17753
17754 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
17755
17756 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17757
17758 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
17759 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
17760
17761 2002-04-28 Richard M. Stallman <rms@gnu.org>
17762
17763 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
17764
17765 * eval.c (Fcommandp): New arg for_call_interactively.
17766 * lisp.h (Fcommandp): Declare new arg.
17767
17768 2002-04-28 Jason Rumney <jasonr@gnu.org>
17769
17770 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
17771
17772 * w32.c (stat, fstat): Use file index information to generate
17773 inodes for directories where available.
17774
17775 2002-04-26 Andrew Choi <akochoi@shaw.ca>
17776
17777 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
17778 [HAVE_CARBON]: Include Mac object files.
17779
17780 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
17781 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
17782 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
17783 MAC_OSX, and MAC_OS instead of macintosh.
17784
17785 * editfns.c [MAC_OS8]: Include stdio.h.
17786
17787 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
17788
17789 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
17790 Apple Monaco.
17791
17792 * process.c (QCfamily, QCfilte): Declare extern.
17793 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
17794 calling select.
17795
17796 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
17797
17798 * tparam.c [MAC_OSX]: Don't define BC and UP.
17799
17800 * config.in [HAVE_CARBON]: Add.
17801
17802 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
17803 Move here from mac/src and mac/inc.
17804
17805 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
17806
17807 2002-04-26 Gerd Moellmann <gerd@gnu.org>
17808
17809 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
17810 Compute phys_cursor_width from the x position returned
17811 by x_draw_glyhs, which is cheaper.
17812 (x_display_and_set_cursor): Compute the buffer-local value
17813 of `cursor-in-non-selected-windows' only when needed.
17814
17815 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17816
17817 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
17818 cursor on a stretch glyph has a width that depends on
17819 x_stretch_cursor_p.
17820
17821 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17822
17823 * abbrev.c (abbrev-start-location): Doc fix.
17824
17825 * indent.c (Fvertical_motion): Fix last change.
17826
17827 2002-04-25 Gerd Moellmann <gerd@gnu.org>
17828
17829 * indent.c (Fvertical_motion): Move to the start of the line
17830 containing PT before moving up or down.
17831
17832 2002-04-24 Gerd Moellmann <gerd@gnu.org>
17833
17834 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
17835 case of writing a whole row, more or less analogous to the case of
17836 writing only parts of a row.
17837
17838 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
17839 0 for NO_CURSOR.
17840
17841 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
17842
17843 2002-04-23 Colin Walters <walters@verbum.org>
17844
17845 * buffer.c (syms_of_buffer): Doc fix.
17846
17847 2002-04-23 Gerd Moellmann <gerd@gnu.org>
17848
17849 * xterm.c (notice_overwritten_cursor): Handle the special case
17850 of the cursor being in the first blank non-text line at the
17851 end of a window.
17852
17853 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17854 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17855 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
17856 bar cursors only, to make phys_cursor_width contain what its name
17857 suggests.
17858 (notice_overwritten_cursor): Consider the cursor image erased if
17859 the output area intersects the cursor image in y-direction.
17860
17861 2002-04-23 Simon Marshall <simon@gnu.org>
17862
17863 * xfns.c (x_set_mouse_color): Change default for cross_cursor
17864 to XC_hand2.
17865
17866 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17867
17868 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
17869
17870 2002-04-22 Kim F. Storm <storm@cua.dk>
17871
17872 * textprop.c (remove_properties): Fixed trap for malformed plist.
17873
17874 2002-04-22 Richard M. Stallman <rms@gnu.org>
17875
17876 * cmds.c (Fend_of_line): Handle intangible text in mid line.
17877
17878 * window.c (make_window): Initialize height_fixed_p,
17879 last_cursor_off_p, and p->cursor_off_p slots.
17880
17881 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17882
17883 * fns.c (use-dialog-box): Doc fix.
17884
17885 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17886
17887 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
17888 variables `row', `i' and `area'.
17889 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
17890 toolkit library.
17891
17892 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
17893
17894 * xfaces.c (clear_font_table): Don't free the default font of
17895 a frame even if it's on another display.
17896 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
17897 that could be Qt.
17898
17899 2002-04-19 Juanma Barranquero <lektu@terra.es>
17900
17901 * indent.c (Fmove_to_column): Remove unused local variable
17902 `next_boundary_byte'.
17903 (current_column_1): Likewise.
17904
17905 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
17906
17907 * msdos.c (Qhbar): New variable.
17908 (syms_of_msdos): Intern and staticpro it.
17909 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
17910 cursor type.
17911
17912 2002-04-19 Dave Lambert <dlambert@acm.org>
17913
17914 Theses change implement an underscore-like (`hbar') cursor.
17915
17916 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17917
17918 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
17919 Handle the `hbar' cursor type.
17920 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17921
17922 * xfns.c (Qhbar): New variable.
17923 (syms_of_xfns): Intern and staticpro it.
17924 (x_specified_cursor_type): Handle `hbar' cursor.
17925
17926 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
17927 not defined.
17928
17929 2002-04-18 Richard M. Stallman <rms@gnu.org>
17930
17931 * textprop.c (remove_properties): New arg LIST allows scanning
17932 either a list or a plist.
17933 (interval_has_some_properties_list): New function, like
17934 interval_has_some_properties using list instead of plist.
17935 All callers changed.
17936 (Fremove_list_of_text_properties): New function.
17937 (syms_of_textprop): Defsubr it.
17938
17939 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17940
17941 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
17942
17943 2002-04-17 Juanma Barranquero <lektu@terra.es>
17944
17945 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
17946
17947 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
17948
17949 * window.c (coordinates_in_window): Don't report on margin area
17950 if its width is zero.
17951
17952 2002-04-16 Jason Rumney <jasonr@gnu.org>
17953
17954 * w32fns.c (Fx_file_dialog): Decode file name before using.
17955
17956 * w32term.c (construct_drag_n_drop): Likewise.
17957
17958 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
17959
17960 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
17961 store load-history in pure space.
17962
17963 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
17964
17965 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
17966
17967 * xterm.c (Qlatin_1, Qutf_8): New vars.
17968 (syms_of_xterm): Initialize them.
17969 (XTread_socket): Eliminate incorrect optimization that tried to avoid
17970 decoding the output of X*LookupString.
17971 Always use latin-1 to decode the output of XLookupString.
17972 Try Xutf8LookupString if XmbLookupString failed.
17973
17974 * region-cache.c (new_region_cache): Use BEG.
17975
17976 2002-04-16 Gerd Moellmann <gerd@gnu.org>
17977
17978 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
17979 configuration files.
17980 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
17981 returns 0.
17982
17983 2002-04-15 Andreas Schwab <schwab@suse.de>
17984
17985 * config.in: Regenerated using autoheader.
17986
17987 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
17988 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
17989 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
17990 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
17991 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
17992 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
17993 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
17994 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
17995 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
17996 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
17997 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
17998 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
17999 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18000 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18001 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18002 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18003 STACK_DIRECTION, now set by autoconf.
18004
18005 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18006
18007 * dispnew.c (marginal_area_string): Sort arguments.
18008
18009 * dispextern.h (marginal_area_string): Add prototype.
18010
18011 2002-04-13 Richard M. Stallman <rms@gnu.org>
18012
18013 * fileio.c (Finsert_file_contents):
18014 Don't call temp_output_buffer_setup--do just part, by hand.
18015
18016 * coding.c (run_pre_post_conversion_on_str):
18017 Don't call temp_output_buffer_setup--do just part, by hand.
18018
18019 * keyboard.c (command_loop_1): Don't call start_hourglass
18020 or cancel_hourglass when executing a macro.
18021
18022 * marker.c (count_markers): New function.
18023
18024 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18025 grow without limit. Move recently used elements to the front.
18026
18027 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18028
18029 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18030
18031 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18032
18033 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18034 rows marginal areas.
18035 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18036 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18037
18038 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18039
18040 2002-04-12 Dave Love <fx@gnu.org>
18041
18042 * dispnew.c (marginal_area_string): New.
18043
18044 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18045 (Qleft_margin, Qright_margin): Declare.
18046 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18047
18048 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18049 note_mode_line_highlight and extended.
18050
18051 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18052 (make_lispy_event): Deal with mouse events in margins.
18053
18054 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18055
18056 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18057
18058 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18059 than deactivating the mark if tmm is set to `lambda'.
18060 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18061 Use a single event for HELP_EVENT.
18062 (Fexecute_extended_command): Save last_point_position.
18063
18064 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18065
18066 * lisp.h (Fpropertize): Add prototype.
18067
18068 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18069
18070 2002-04-10 Colin Walters <walters@verbum.org>
18071
18072 * config.in: Add HAVE_SHARED_GAME_DIR.
18073
18074 * callproc.c (Vgame_score_directory): New variable.
18075 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18076
18077 2002-04-10 Richard M. Stallman <rms@gnu.org>
18078
18079 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18080
18081 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18082
18083 * minibuf.c (read_minibuf): Use empty_string.
18084 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18085 Short-circuit the search as soon as it "failed".
18086 (Fall_completions): Allow lambda forms and lists of strings for alist.
18087 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18088 when require_match is nil.
18089 (Ftest_completion): Rename from `test_completion' and export to elisp.
18090 Call the predicate also when alist is a list.
18091 Obey Vcompletion_regexp_list.
18092 (do_completion, Fminibuffer_complete_and_exit): Use it.
18093 (Fassoc_string): Rename from `assoc_for_completion'.
18094 Allow list of strings as well and export to elisp.
18095
18096 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18097
18098 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18099
18100 2002-04-08 Juanma Barranquero <lektu@terra.es>
18101
18102 * w32.c (sys_accept): Don't hide variable `s'.
18103
18104 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18105
18106 * callint.c (Fcall_interactively): Use INTEGERP instead of
18107 NUMBERP for checking Vhistory_length.
18108
18109 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18110
18111 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18112 Doc fix to reflect it.
18113
18114 2002-04-04 Richard M. Stallman <rms@gnu.org>
18115
18116 * xdisp.c (display_mode_element): New arg RISKY.
18117 Disregard text props found or specified within a variable
18118 that isn't marked risky-local-variable.
18119 (Qrisky_local_variable): New variable.
18120 (syms_of_xdisp): Init and staticpro it.
18121
18122 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18123
18124 * undo.c (record_point): New fun.
18125 (record_delete, record_insert): Use it.
18126
18127 2002-04-03 Juanma Barranquero <lektu@terra.es>
18128
18129 * doc.c (Fdocumentation): Add missing parentheses.
18130 (Fdocumentation_property): Likewise.
18131
18132 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18133
18134 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18135 data is 0, just return nil.
18136
18137 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18138
18139 * msdos.c (syms_of_msdos): Fix last change with
18140 mouse_autoselect_window.
18141
18142 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18143
18144 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18145 mouse_autoselect_window.
18146
18147 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18148
18149 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18150 with system-specific keysyms. Use it also for unknown function keys.
18151
18152 * doc.c (reread_doc_file): Return whether reload was attempted.
18153 (Fdocumentation, Fdocumentation_property): Don't try to reload
18154 if the doc is 0 and only ask once.
18155
18156 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18157
18158 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18159
18160 * keyboard.c (read_char): If the event was Qselect_window,
18161 restore timer_idleness_start_time to its previous value.
18162
18163 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18164
18165 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18166
18167 * region-cache.c (new_region_cache): Use BEG.
18168
18169 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18170 Use BEG and BEG_BYTE.
18171
18172 * doc.c (get_doc_string): Return nil if the location is wrong.
18173 (reread_doc_file): New fun.
18174 (Fdocumentation, Fdocumentation_property):
18175 Call it if get_doc_string fails.
18176 (Fsnarf_documentation): Make it work for a dumped Emacs.
18177
18178 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18179 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18180
18181 * charset.c (Fstring): Allow 0 arguments.
18182
18183 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18184
18185 * process.c (DATAGRAM_CONN_P, list_processes_1)
18186 (Fprocess_datagram_address, Fset_process_datagram_address)
18187 (Fset_network_process_options, server_accept_connection):
18188 Fix some int/Lisp_Object confusions (thank you union types).
18189
18190 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18191
18192 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18193
18194 * w32term.c: Likewise.
18195 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18196
18197 * keyboard.c (Qselect_window): New symbol.
18198 (head_table): Use it.
18199 (keys_of_keyboard): Bound select-window event to handle-select-window.
18200 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18201
18202 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18203 (last_window): New variable.
18204 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18205 (note_mouse_movement): Remove reimplemented code in #if 0.
18206 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18207 Emacs windows.
18208
18209 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18210
18211 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18212
18213 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18214 Callers changed.
18215
18216 2002-03-30 Richard M. Stallman <rms@gnu.org>
18217
18218 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18219 loop whenever it stops making progress.
18220
18221 * widget.c (set_frame_size): Don't call change_frame_size.
18222
18223 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18224
18225 * dispnew.c (direct_output_for_insert):
18226 Call mark_window_display_accurate.
18227
18228 2002-03-29 Jason Rumney <jasonr@gnu.org>
18229
18230 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18231
18232 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18233
18234 * Makefile.in (lread.o): Depend on coding.h.
18235
18236 * lread.c (openp, Fload): Encode the file name before passing it
18237 to `stat', `access', and `emacs_open'.
18238 (openp): GCPRO the encoded file name. Don't recompute Lisp
18239 strings unnecessarily.
18240
18241 2002-03-29 Kim F. Storm <storm@cua.dk>
18242
18243 * fns.c (Flax_plist_put): Doc fix.
18244
18245 2002-03-28 Miles Bader <miles@gnu.org>
18246
18247 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18248
18249 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18250
18251 * process.c (set-network-process-options): Add usage.
18252 (make-network-process): Doc fix.
18253
18254 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18255
18256 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18257
18258 2002-03-26 Richard M. Stallman <rms@gnu.org>
18259
18260 * fns.c (Fsubstring_no_properties): New function.
18261 (Flax_plist_get, Flax_plist_put): New functions.
18262 (syms_of_fns): defsubr them.
18263
18264 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18265 don't test or alter w->update_mode_line.
18266
18267 * window.c (Fdisplay_buffer): Doc fix.
18268
18269 2002-03-24 Richard M. Stallman <rms@gnu.org>
18270
18271 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18272
18273 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18274
18275 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18276 (Fdefmacro): Handle `(declare ...)'.
18277 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18278 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18279
18280 2002-03-24 Jason Rumney <jasonr@gnu.org>
18281
18282 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18283 (xbm_file_p): Add prototypes.
18284 (xbm_format, xbm_image_p): Sync with xfns.c.
18285 (reflect_byte): New function.
18286 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18287 (xbm_load_image): Create bitmaps with a depth of 1.
18288 (init_xfns): Enable XBM images.
18289
18290 2002-03-23 Jason Rumney <jasonr@gnu.org>
18291
18292 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18293 correctly. Do not pass up_modifier to keyboard buffer.
18294
18295 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18296
18297 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18298
18299 * Makefile.in (bootstrapclean): New target.
18300 (bootstrap-temacs, bootstrap-doc): Remove.
18301 (bootstrap-emacs): Use a bog-standard `temacs'.
18302 Don't bother to build a DOC file.
18303
18304 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18305
18306 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18307 in temacs even if !CANNOT_DUMP.
18308 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18309
18310 * alloc.c (check_pure_size): Only output a warning.
18311
18312 2002-03-22 Jason Rumney <jasonr@gnu.org>
18313
18314 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18315 supported.
18316
18317 * w32term.c (zv_bits): Declare as short, for word alignment.
18318 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18319 (syms_of_w32term): Define x-use-underline-position-properties.
18320
18321 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18322 (clear_image_cache): Block input, fix logic, clear matrices in
18323 all frames that share this cache.
18324
18325 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18326
18327 * emacs.c (main): Update the Copyright year in the blurb printed
18328 by "emacs --version".
18329
18330 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18331
18332 * xterm.c (XTread_socket): If XK_ISO_Lock and
18333 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18334 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18335
18336 2002-03-21 Kim F. Storm <storm@cua.dk>
18337
18338 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18339 menu-bar bindings in keymap and local-map properties _are_ used.
18340 But try keymap property first in accordance with 2002-01-03 patch.
18341 Added comment describing why this is not always reliable.
18342 (tool_bar_items): Ditto for tool-bar.
18343
18344 2002-03-21 Jason Rumney <jasonr@gnu.org>
18345
18346 * w32fns.c (x_clear_image_1): Disable color table code.
18347
18348 2002-03-21 Kim F. Storm <storm@cua.dk>
18349
18350 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18351 removed the wrong version of the DEFUN macro; fixed it.
18352
18353 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18354 Fmember rather than Fmemq).
18355 (Fprovide): Check that subfeatures is a list.
18356
18357 * process.c (QCfeature, QCdatagram): Removed variables.
18358 (QCtype, Qdatagram): New variables.
18359 (network_process_featurep): Removed function.
18360 (Fmake_network_process): Removed :feature check.
18361 Use :type 'datagram instead of :datagram t to create a datagram
18362 socket. This allows us to add other connection types (e.g. raw
18363 sockets) later in a consistent manner.
18364 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18365 supported subfeatures for feature make-network-process.
18366 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18367 Intern and staticpro QCtype and Qdatagram.
18368 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18369
18370 * xfns.c: (QCtype): Remove duplicate declaration and
18371 initialization (is now declared in process.c).
18372
18373 * w32fns.c: (QCtype): Remove duplicate declaration and
18374 initialization (is now declared in process.c).
18375
18376 2002-03-21 Richard M. Stallman <rms@gnu.org>
18377
18378 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18379 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18380 when jumping to `fail' to avoid undoing reg changes in the
18381 last iteration of the loop.
18382 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18383
18384 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18385 Depend on process.h.
18386
18387 2002-03-20 Jason Rumney <jasonr@gnu.org>
18388
18389 Most of the following changes are still conditional on HAVE_IMAGES
18390 which is not set by default on Windows.
18391
18392 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18393
18394 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18395 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18396 (four_corners_best, x_clear_image_1, x_clear_image)
18397 (x_alloc_image_color, postprocess_image)
18398 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18399 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18400 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18401
18402 * w32gui.h (struct XImage): Define.
18403
18404 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18405 extract mouse co-ordinates.
18406
18407 2002-03-20 Jason Rumney <jasonr@gnu.org>
18408
18409 * w32.c (init_winsock): Dynamically load new server and UDP
18410 socket functions.
18411 (socket_to_fd): New function.
18412 (sys_socket): Use it.
18413 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18414 (sys_recvfrom, sys_sendto): New wrapper functions.
18415
18416 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18417 and initialization.
18418
18419 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18420
18421 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18422
18423 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18424 Don't use "sun" as a variable, it's a predefined constant on Sun
18425 machines.
18426
18427 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18428
18429 * bytecode.c (Fbyte_code): Revert last change.
18430
18431 2002-03-19 Kim F. Storm <storm@cua.dk>
18432
18433 * makefile.w32-in (LIBS): Add $(WSOCK32).
18434 From David Ponce <dponce@voila.fr>.
18435
18436 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18437
18438 * process.c (wait_reading_process_input): Move variables `pname'
18439 and `pnamelen' down where they are used.
18440
18441 * bytecode.c (Fbyte_code): Discard unused computed value to
18442 prevent gcc warning.
18443
18444 * lisp.h (Fplist_member): Add prototype.
18445
18446 2002-03-18 Kim F. Storm <storm@cua.dk>
18447
18448 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18449 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18450
18451 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18452 Remove explicit GNU_LINUX settings for datagram support.
18453
18454 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18455
18456 * process.c (Fmake_network_process): Remove unused variable `sa'.
18457 Doc fix. Add usage:.
18458 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18459
18460 2002-03-17 Richard M. Stallman <rms@gnu.org>
18461
18462 * xdisp.c (cursor_type_changed): New variable.
18463 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18464 Clear it when clearing windows_or_buffers_changed.
18465 (try_cursor_movement, redisplay_window, try_window_id)
18466 (try_window_reusing_current_matrix): Test cursor_type_changed
18467 along with windows_or_buffers_changed.
18468
18469 * window.h (cursor_type_changed): New variable.
18470
18471 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18472 not update_mode_lines, and always set it to 1.
18473
18474 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18475 if no frames needed redrawing.
18476
18477 2002-03-17 Kim F. Storm <storm@cua.dk>
18478
18479 The following changes add support for network server processes,
18480 datagram connections, and local (unix) sockets.
18481
18482 * process.h (struct Lisp_Process): New member log.
18483 Doc fix: Member command used to indicate stopped network process.
18484 Doc fix: Member childp contains plist for network process.
18485 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18486
18487 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18488 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18489 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18490 New variables.
18491 (NETCONN1_P): New macro.
18492 (DATAGRAM_SOCKETS): New conditional symbol.
18493 (datagram_address): New array.
18494 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18495 (status_message): Use concat3.
18496 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18497 for a stopped network process.
18498 (Fset_process_buffer): Update contact plist for network process.
18499 (Fset_process_filter): Ditto. Don't enable input for stopped
18500 network processes. Server must listen, even if filter is t.
18501 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18502 New functions.
18503 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18504 (Fprocess_contact): Added KEY argument. Handle datagrams.
18505 (list_processes_1): Optionally show only processes with the query
18506 on exit flag set. Dynamically adjust column widths. Omit tty
18507 column if not needed. Report stopped network processes.
18508 Identify server and datagram network processes.
18509 (Flist_processes): New optional arg `query-only'.
18510 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18511 (conv_lisp_to_sockaddr, set_socket_options)
18512 (network_process_featurep, unwind_request_sigio): New helper functions.
18513 (Fprocess_datagram_address, Fset_process_datagram_address):
18514 (Fset_network_process_options): New lisp functions.
18515 (Fopen_network_stream): Removed. Now defined in simple.el.
18516 (Fmake_network_process): New lisp function. Code is based on previous
18517 Fopen_network_stream, but heavily reworked with new property list based
18518 argument list, support for datagrams, server processes, and local
18519 sockets in addition to old client-only functionality.
18520 (server_accept_connection): New function.
18521 (wait_reading_process_input): Use it to handle incoming connects.
18522 Do not enable input on a new connection if process is stopped.
18523 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18524 (send_process): Handle datagram sockets.
18525 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18526 network process is indicated by setting command field to t .
18527 (Fprocess_send_eof): No-op if datagram connection.
18528 (Fstatus_notify): Don't read input for a stream server socket or a
18529 stopped network process.
18530 (init_process): Initialize datagram_address array.
18531 (syms_of_process): Intern and staticpro new variables, defsubr new
18532 functions.
18533
18534 2002-03-16 Jason Rumney <jasonr@gnu.org>
18535
18536 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18537 startup case.
18538
18539 2002-03-16 Richard M. Stallman <rms@gnu.org>
18540
18541 * xdisp.c (redisplay_internal, redisplay_windows):
18542 Use list_of_error to call internal_condition_case_1.
18543 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18544 so as to catch all errors with no possibility of debugger redisplay.
18545 (list_of_error): New variable.
18546 (syms_of_xdisp): Init and staticpro it.
18547
18548 * print.c (print_object): Delete `\ ' from printed rep of frame.
18549
18550 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18551
18552 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18553 until its implementation is fixed.
18554
18555 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18556
18557 * xfns.c (png_load): Remove unused variable `gamma_str'.
18558
18559 2002-03-14 Richard M. Stallman <rms@gnu.org>
18560
18561 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18562
18563 2002-03-14 Miles Bader <miles@gnu.org>
18564
18565 * intervals.c (adjust_for_invis_intang): New function.
18566 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18567 work for dealing with invisible+intangible regions. Do so before
18568 and after both forward and backward movements, to handle both
18569 front-sticky and rear-sticky cases.
18570 * textprop.c (text_property_stickiness): Function moved here from
18571 `editfns.c'.
18572 * intervals.h (text_property_stickiness): New declaration.
18573 * editfns.c (char_property_eq): Function removed.
18574 (text_property_stickiness): Function moved to `textprop.c'.
18575
18576 2002-03-13 Jason Rumney <jasonr@gnu.org>
18577
18578 * config.in: Add STRFTIME_NO_POSIX2.
18579
18580 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18581 and %OX when underlying strftime does not.
18582
18583 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18584
18585 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18586 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18587 line) to avoid annoying flicker.
18588 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18589 (XTread_socket): Mark it static.
18590
18591 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18592
18593 2002-03-13 Kim F. Storm <storm@cua.dk>
18594
18595 * puresize.h (BASE_PURESIZE): Increase to 775000.
18596
18597 2002-03-12 Juanma Barranquero <lektu@terra.es>
18598
18599 * editfns.c (syms_of_editfns): Fix typo.
18600
18601 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18602
18603 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18604 Include termopt.h for interrupt_input.
18605
18606 2002-03-11 Andreas Schwab <schwab@suse.de>
18607
18608 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18609
18610 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18611
18612 * xterm.c (note_mouse_movement): Put code for
18613 x_autoselect_window_p in #if 0.
18614
18615 * lread.c (Fload): Don't assume that message_with_string uses the
18616 string it is given like a C string.
18617
18618 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18619
18620 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18621
18622 * xterm.c (XTread_socket): Add call to x_session_check_input and
18623 x_session_have_connection.
18624 (x_initialize): Add call to x_session_initialize.
18625
18626 * termhooks.h (enum event_kind): Add save_session_event.
18627
18628 * keyboard.c: Add Emacs event save_session_event.
18629
18630 * emacs.c (main): Add call to syms_of_xsmfns.
18631
18632 * lisp.h (syms_of_xsmfns): Declare extern.
18633
18634 * config.in: Add HAVE_X_SM.
18635
18636 * Makefile.in (LIBXT): Add -lSM -lICE
18637 if HAVE_X_SM and not USE_X_TOOLKIT.
18638 (XOBJ): New file xsmfns.c added.
18639
18640 * xsmfns.c: New file for X session management.
18641
18642 2002-03-09 Jason Rumney <jasonr@gnu.org>
18643
18644 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18645 read-only when setting modified time.
18646
18647 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18648
18649 * xdisp.c (move_it_vertically_backward): At the end of the function,
18650 when moving forward by lines, treat terminal frames specially.
18651
18652 * keyboard.c (echo_char): Make sure to add a separator between
18653 keys even if echo_dash hasn't been called.
18654
18655 * xdisp.c: Use new string macros.
18656 (update_echo_area): Pass number of bytes to message3 instead of
18657 number of chars.
18658 (set_message_1): Don't access a string's size_byte directly.
18659 (decode_mode_spec_coding): Use number of bytes of eoltype string
18660 instead number of chars.
18661
18662 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18663
18664 2002-03-08 Juanma Barranquero <lektu@terra.es>
18665
18666 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18667 24-bit.
18668
18669 2002-03-06 Jason Rumney <jasonr@gnu.org>
18670
18671 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18672
18673 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18674
18675 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18676 (cancel_echoing, echo_length, echo_truncate): Changed to
18677 work with new kboard definition.
18678 (echo_now): Use message3_nolog instead of message2_nolog.
18679
18680 * alloc.c (mark_kboards): Mark echo_string.
18681
18682 * keyboard.h (ECHOBUFSIZE): Removed.
18683 (struct kboard): Member echoptr removed, member echobuf renamed
18684 to echo_string.
18685
18686 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18687 message3 instead of message2 to display the message using STRING's
18688 text properties.
18689
18690 2002-03-05 Andreas Schwab <schwab@suse.de>
18691
18692 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18693
18694 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18695
18696 * frame.c (default-frame-alist): Explain that setting it doesn't
18697 affect existing frames.
18698
18699 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
18700
18701 * indent.c (skip_invisible): Fix my brain fart.
18702
18703 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
18704
18705 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
18706
18707 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
18708 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
18709 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
18710 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
18711 and variables to use EMACS_INT instead of just int.
18712
18713 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
18714
18715 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
18716
18717 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
18718 environment, pass it down with corrected value.
18719
18720 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18721
18722 * lread.c (read_filtered_event): Do not call start_hourglass
18723 before returning.
18724
18725 2002-03-04 Juanma Barranquero <lektu@terra.es>
18726
18727 * w32term.c (x_display_and_set_cursor): Fix typo.
18728
18729 2002-03-03 Richard M. Stallman <rms@gnu.org>
18730
18731 * fileio.c (Fmake_temp_name): Doc fix.
18732
18733 2002-03-03 Gary Wong <gtw@gnu.org>
18734
18735 * termcap.c [!emacs]: Replace ospeed for building standalone
18736 libtermcap, for binary compatibility.
18737
18738 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
18739
18740 2002-03-03 Richard M. Stallman <rms@gnu.org>
18741
18742 * xrdb.c (file_p): Rename arg `path' to `filename'.
18743
18744 * abbrev.c (Fexpand_abbrev): Increment plist as use count
18745 only if it is an integer.
18746
18747 * xfns.c (png_load): Set screen_gamma based on f->gamma.
18748 If png_get_sRGB gives an answer, call png_set_gamma
18749 using the default image gamma value.
18750
18751 * lread.c (read1): When reading from a file, default string to
18752 multibyte only if it has some multibyte characters.
18753
18754 * print.c (print_object): Output multibyte chars 128...255
18755 using \x even if ! print_escape_multibyte.
18756
18757 * xdisp.c (display_mode_element): Move the places where
18758 bytepos, charpos, this, and lisp_string are set.
18759 Use lisp_string to set bytepos.
18760
18761 * xdisp.c (redisplay_internal):
18762 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
18763
18764 * xdisp.c (display_mode_element): Merge properties specified with
18765 :propertize onto those that come with the string.
18766
18767 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
18768
18769 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
18770 automatic-hscrolling. Users changed.
18771 <hscroll-margin>: Renamed from automatic-hscroll-margin.
18772 Users changed.
18773 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
18774
18775 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
18776
18777 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
18778
18779 2002-03-02 Kim F. Storm <storm@cua.dk>
18780
18781 * window.c (Fminibuffer_selected_window): New function.
18782 (syms_of_window): Defsubr it.
18783
18784 2002-03-01 Kim F. Storm <storm@cua.dk>
18785
18786 * window.h (struct window): New member phys_cursor_width.
18787
18788 * window.c (make_window, replace_window): Init phys_cursor_width.
18789
18790 * xterm.c (x_display_and_set_cursor): Blink box cursor using
18791 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18792
18793 * w32term.c (x_display_and_set_cursor): Blink box cursor using
18794 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
18795
18796 * lisp.h (GCPRO6): New macro.
18797
18798 * process.c (Fopen_network_stream): Use GCPRO6.
18799
18800 2002-03-01 Kim F. Storm <storm@cua.dk>
18801
18802 * process.c (Qconnect, Qfailed): New variables.
18803 (syms_of_process): Intern and staticpro them.
18804 (Fprocess_status): Document connect and failed return values.
18805 [NON_BLOCKING_CONNECT]: New conditional.
18806 (connect_wait_mask, num_pending_connects): New variables.
18807 (status_message): Convert Qfailed status.
18808 (Fopen_network_stream): Added support for non-blocking connect.
18809 New optional args: filter, sentinel, non_blocking. Doc updated.
18810 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
18811 (deactivate_process): Handle pending non-blocking connect.
18812 (wait_reading_process_input): Poll for status of non-blocking
18813 connects. Exec sentinel directly when connect succeeds.
18814 (status_notify): Don't read process output if not yet connected.
18815
18816 2002-02-28 Kim F. Storm <storm@cua.dk>
18817
18818 * window.c: (minibuf_selected_window): Renamed from
18819 Vminibuf_selected_window. Users changed.
18820 (syms_of_window): Staticpro it.
18821
18822 2002-02-26 Kim F. Storm <storm@cua.dk>
18823
18824 The following changes add a new Vminibuf_selected_window variable
18825 which is similar to Vminibuf_scroll_window, but which is only set
18826 on entry to the minibuffer (from a non-minibuffer window):
18827
18828 * window.c: (Vminibuf_selected_window): New variable.
18829 (struct save_window_data): New member minibuf_selected_window.
18830 (Fset_window_configuration): Restore Vminibuf_selected_window.
18831 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
18832 Set minibuf_scroll_window member to nil if minibuf_level is 0.
18833 (compare_window_configurations): Compare minibuf_selected_window.
18834
18835 * window.h: (Vminibuf_selected_window): Declare extern.
18836
18837 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
18838 entry to minibuffer or on entry from a non-minibuffer window.
18839
18840 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
18841 Vminibuf_selected_window instead of Vminibuf_scroll_window.
18842
18843 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
18844 instead of Vminibuf_scroll_window when deciding in which window
18845 the region should be highlighted. Consequently, the region remains
18846 highlighteded even when a completion buffer is also displayed.
18847
18848 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
18849
18850 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
18851
18852 * xselect.c (Qcompound_text_with_extensions): Renamed from
18853 Qcompound_text_no_extensions.
18854 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
18855
18856 2002-02-26 Juanma Barranquero <lektu@terra.es>
18857
18858 * w32proc.c (syms_of_ntproc): Doc fix.
18859
18860 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18861
18862 * intervals.h: Include "dispextern.h" unconditionally.
18863
18864 2002-02-24 Jason Rumney <jasonr@gnu.org>
18865
18866 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
18867 and disp-table.elc.
18868 (lisp): Add emacs-lisp/backquote.elc.
18869
18870 2002-02-24 Kim F. Storm <storm@cua.dk>
18871
18872 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
18873 The validation of the event type was too strict as it didn't
18874 allow string events; buffer names are used in bindings for
18875 menu-bar-select-buffer (see `menu-bar-update-buffers').
18876
18877 2002-02-23 Kim F. Storm <storm@cua.dk>
18878
18879 The following changes rework my patch of 2002-02-06 which
18880 added command remapping by entering the commands directly into
18881 the keymaps. Now, command remapping uses an explicit `remap'
18882 prefix in the keymaps, i.e. [remap COMMAND].
18883
18884 * keymap.c (Qremap, remap_command_vector): New variables.
18885 (is_command_symbol): Remove function.
18886 (Fdefine_key): No longer accept a symbol for KEY.
18887 Added validation of [remap COMMAND] argument for KEY.
18888 The DEF is no longer required to be a symbol when remapping a command.
18889 (Fremap_command): New function to remap command through keymaps.
18890 (Flookup_key): Perform command remapping initiated by
18891 Fremap_command directly for speed.
18892 (Fkey_binding): Use Fremap_command for command remapping.
18893 (where_is_internal): Handle new command remapping representation.
18894 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
18895 staticpro them. Defsubr Fremap_command.
18896
18897 * keymap.h (Fremap_command): Declare extern.
18898 (is_command_symbol): Remove extern.
18899
18900 * keyboard.c (command_loop_1): Use Fremap_command for command
18901 remapping; now try command remapping for all symbols.
18902
18903 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18904
18905 * coding.h (run_pre_post_conversion_on_str): Add prototype.
18906
18907 2002-02-23 Jason Rumney <jasonr@gnu.org>
18908
18909 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
18910 on the string before encoding it.
18911 (Fw32_get_clipboard_data): Run post-read-conversion on the string
18912 after decoding it.
18913
18914 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
18915
18916 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18917
18918 * w32term.c (enter_timestamp): Remove unused static variable to
18919 prevent warning.
18920
18921 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
18922
18923 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
18924
18925 * w16select.c (Fw16_get_clipboard_data): Fix last change.
18926
18927 * xselect.c (selection_data_to_lisp_data): Fix last change.
18928
18929 2002-02-22 Jason Rumney <jasonr@gnu.org>
18930
18931 * w32term.h (struct w32_output): New member menu_command_in_progress.
18932
18933 * w32menu.c (menubar_selection_callback): Free the menu and
18934 clear the menu_command_in_progress flag.
18935
18936 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
18937 (menu_free_timer): New variable.
18938 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
18939 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
18940 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
18941 menu command is in progress.
18942 <WM_COMMAND>: Set the menu_command_in_progress flag.
18943 Kill any menu_free_timer that is running.
18944
18945 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
18946 Call ExtTextOutA rather than ExtTextOut.
18947
18948 2002-02-22 Eli Zaretskii <eliz@gnu.org>
18949
18950 * puresize.h (BASE_PURESIZE): Increase to 755000.
18951
18952 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18953
18954 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
18955 on the string before encoding it.
18956 (Fw16_get_clipboard_data): Run post-read-conversion on the string
18957 after decoding it.
18958
18959 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
18960
18961 Support for ICCCM Extended Segments in X selections:
18962
18963 * xselect.c <Qcompound_text_no_extensions>: New variable.
18964 (syms_of_xselect): Intern and staticpro it.
18965 (selection_data_to_lisp_data): Run post-read-conversion on decoded
18966 selection text.
18967 (lisp_data_to_selection_data): If next-selection-coding-system is
18968 compound-text-no-extensions, set the type of selection to be
18969 compound-text.
18970
18971 * xterm.h (x_encode_text): Update prototype.
18972
18973 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
18974 callers changed. If SELECTIONP is non-zero, run the
18975 pre-write-conversion function before encoding the selection text.
18976
18977 2002-02-21 Kim F. Storm <storm@cua.dk>
18978
18979 * frame.c (syms_of_frame): Change mouse-highlight default to t.
18980
18981 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
18982 Correct composing of language-change event.
18983
18984 2002-02-20 Kim F. Storm <storm@cua.dk>
18985
18986 * keyboard.c (menu_bar_items): Don't include keymap or local-map
18987 bindings at PT when building menu (the menu is not updated often
18988 enough for this to work reliable).
18989 (tool_bar_items): Likewise.
18990 (current_active_maps): Removed unused (and buggy) function.
18991
18992 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18993
18994 * xfns.c (gif_load): Use correct width and height for GIF images.
18995
18996 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
18997
18998 * floatfns.c (Fatan): Accept an optional second arg and call
18999 atan2 if passed 2 args.
19000
19001 2002-02-18 Jason Rumney <jasonr@gnu.org>
19002
19003 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19004
19005 2002-02-17 Jason Rumney <jasonr@gnu.org>
19006
19007 * w32term.c (x_autoselect_window_p): New variable.
19008 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19009 (note_mouse_movement): Use it.
19010
19011 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19012
19013 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19014
19015 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19016 New variables.
19017 (syms_of_w32fns): Intern and staticpro them.
19018 (x_frame_parms) <"fullscreen">: New parameter.
19019 (x_fullscreen_move, x_set_fullscreen): New functions.
19020 (x_set_frame_parameters): Support Qfullscreen.
19021 (x_real_positions): Save x/y_pixels_diff frame params.
19022 (x_figure_window_size): Support full-screen frames.
19023 (Fx_create_frame): Default the fullscreen parameter.
19024
19025 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19026 (x_fullscreen_adjust): New functions.
19027 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19028 fullscreen. Call x_check_fullscreen_move, and set the
19029 want_fullscreen member of output_data.w32
19030 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19031
19032 * w32term.h: New enum for FULLSCREEN_* constants.
19033 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19034 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19035 (x-fullscreen-adjust): New prototype.
19036
19037 2002-02-17 Kim F. Storm <storm@cua.dk>
19038
19039 * frame.c (Vmouse_highlight): New variable.
19040 (syms_of_frame): DEFVAR_LISP it.
19041
19042 * frame.h (Vmouse_highlight): Declare extern.
19043
19044 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19045
19046 * xterm.c (disable_mouse_highlight): Removed variable.
19047 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19048 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19049 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19050 and on after keyboard input.
19051 (x_term_init): Initialize mouse_face_hidden.
19052
19053 * msdos.h (struct display_info): Add mouse_face_hidden.
19054
19055 * msdos.c (disable_mouse_highlight): Removed variable.
19056 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19057 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19058 (internal_terminal_init): Initialize mouse_face_hidden.
19059 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19060 and on after keyboard input.
19061
19062 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19063
19064 * w32term.c (disable_mouse_highlight): Removed variable.
19065 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19066 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19067 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19068 and on after keyboard input.
19069 (w32_initialize_display_info): Initialize mouse_face_hidden.
19070
19071 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19072
19073 * msdos.c (last_mouse_window): New variable.
19074 (dos_rawgetc): Fix last change--if the mouse is in the same window
19075 as recorded in last_mouse_window, don't select this window.
19076
19077 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19078
19079 * msdos.c (x_autoselect_window_p): New variable.
19080 (syms_of_msdos): Defvar it.
19081 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19082 which the last mouse movement occured, unless it is already selected.
19083
19084 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19085 New variables.
19086 (syms_of_xdisp): DEVFAR them.
19087 (hscroll_window_tree): Use automatic_hscroll_margin and
19088 Vautomatic_hscroll_step to compute the amount of window scrolling.
19089
19090 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19091
19092 * xterm.c (x-autoselect-window): New variable.
19093 (note_mouse_movement): Use it.
19094
19095 * keyboard.c: Do not include "systime.h" twice.
19096
19097 2002-02-15 Andreas Schwab <schwab@suse.de>
19098
19099 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19100
19101 * alloc.c (NSTATICS): Increase to 1280.
19102
19103 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19104
19105 * alloc.c (NSTATICS): Bump to 1026.
19106
19107 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19108 (Vx_super_keysym): New variables.
19109 (syms_of_xterm): DEFVAR_LISP them.
19110 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19111 variables to determine which keys to use for the various modifiers.
19112
19113 2002-02-13 Kim F. Storm <storm@cua.dk>
19114
19115 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19116 (mode_line_in_non_selected_windows): New variable.
19117 (syms_of_window): DEFVAR_BOOL it.
19118
19119 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19120 Use mode_line_in_non_selected_windows.
19121 (mode_line_in_non_selected_windows): Declare extern.
19122 (Vmode_line_in_non_selected_windows): Removed extern.
19123
19124 2002-02-13 Richard M. Stallman <rms@gnu.org>
19125
19126 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19127 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19128 (Fclear_this_command_keys): Doc fixes.
19129
19130 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19131 (update_face_from_frame_parameter): Increment face_change_count
19132 and windows_or_buffers_changed to force redisplay using changed faces.
19133
19134 * xdisp.c (QCpropertize): New variable.
19135 (mode_line_proptrans_alist): New variable.
19136 (display_mode_element): New arg PROPS; all calls changed.
19137 Implement this, for strings.
19138 Handle literal output of strings by sharing the
19139 main-line code for strings, using local var `literal'.
19140 Handle :propertize feature.
19141 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19142 mode_line_proptrans_alist.
19143
19144 2002-02-11 Kim F. Storm <storm@cua.dk>
19145
19146 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19147 (syms_of_window): DEFVAR_LISP it.
19148
19149 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19150 (CURRENT_MODE_LINE_FACE_ID): Use it.
19151 (Vmode_line_in_non_selected_windows): Declare extern.
19152
19153 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19154 to get mode line face.
19155
19156 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19157
19158 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19159 variables; cus-start.el doesn't need them anymore.
19160
19161 2002-02-09 Kim F. Storm <storm@cua.dk>
19162
19163 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19164 reduction. This fixes a display problem where stray newlines were
19165 inserted in the window (corrected by C-l). Clarified code (IMHO).
19166
19167 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19168
19169 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19170
19171 * xdisp.c (display_mode_lines): Fix last change.
19172
19173 2002-02-09 Jason Rumney <jasonr@gnu.org>
19174
19175 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19176 match each other.
19177 (w32_load_system_font): Prevent Cleartype fonts from loading.
19178 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19179
19180 2002-02-09 Kim F. Storm <storm@cua.dk>
19181
19182 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19183 (CURRENT_MODE_LINE_HEIGHT): Use it.
19184 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19185
19186 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19187 (pos_visible_p, handle_face_prop): Likewise.
19188 (display_mode_lines): Likewise, but for the real selected window.
19189 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19190
19191 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19192 in non-selected windows.
19193 (realize_basic_faces): Realize it.
19194 (syms_of_term): Intern and staticpro it.
19195
19196 2002-02-08 Kim F. Storm <storm@cua.dk>
19197
19198 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19199 Changed mail addresses to emacs-devel@gnu.org.
19200
19201 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19202
19203 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19204 ~user, and there's no such user, don't discard everything before ~user.
19205
19206 * floatfns.c (Fround): Doc fix.
19207
19208 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19209
19210 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19211
19212 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19213
19214 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19215
19216 2002-02-07 Kim F. Storm <storm@cua.dk>
19217
19218 * keymap.c (where_is_internal): Only check whether definition is
19219 remapped if it fulfills is_command_symbol.
19220
19221 2002-02-07 Andreas Schwab <schwab@suse.de>
19222
19223 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19224
19225 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19226
19227 2002-02-06 Kim F. Storm <storm@cua.dk>
19228
19229 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19230 defining command remapping. Doc updated.
19231 (Flookup_key): Remap command through keymap if KEY is a symbol.
19232 (is_command_symbol): New function.
19233 (Fkey_binding): Use it. New optional argument NO-REMAP.
19234 Doc updated. Callers changed. Perform command remapping via
19235 recursive call unless that arg is non-nil.
19236 (where_is_internal): New argument no_remap. Callers changed.
19237 Call recursively to find original key bindings for a remapped
19238 comand unless that arg is non-nil.
19239 (Fwhere_is_internal): New optional argument NO-REMAP.
19240 Doc updated. Callers changed. Pass arg to where_is_internal.
19241
19242 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19243 (is_command_symbol): Add prototype.
19244
19245 * keyboard.c (Vthis_original_command): New variable.
19246 (syms_of_keyboard): DEFVAR_LISP it.
19247 (command_loop_1): Set it, and perform command remapping.
19248
19249 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19250
19251 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19252
19253 2002-02-06 Jason Rumney <jasonr@gnu.org>
19254
19255 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19256
19257 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19258
19259 * charset.c (get_charset_id): Use if-else instead of ?:.
19260
19261 2002-02-06 Richard M. Stallman <rms@gnu.org>
19262
19263 * filelock.c (S_ISLNK): Define if not defined.
19264
19265 2002-02-03 Richard M. Stallman <rms@gnu.org>
19266
19267 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19268
19269 * lread.c (read1): Redesign strategy for force_multibyte and
19270 force_singlebyte. Now is_multibyte records whether read_buffer
19271 is multibyte. Encountering any multibyte character makes it so.
19272
19273 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19274
19275 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19276 with the same sequence, map that sequence to f10 rather than f0.
19277
19278 2002-02-03 Andreas Schwab <schwab@suse.de>
19279
19280 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19281 latter never being defined on GNU/Linux.
19282
19283 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19284
19285 * xfaces.c (realize_default_face): Don't set the weight and slant of
19286 the default face to Qnormal, unless these attributes are unspecified.
19287
19288 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19289
19290 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19291 Call cancel_hourglass unconditionally.
19292
19293 * eval.c (Fsignal): Remove duplicated declaration of
19294 the variable `display_hourglass_p'.
19295
19296 2002-01-31 Richard M. Stallman <rms@gnu.org>
19297
19298 * editfns.c (region_limit): Nicer error message.
19299
19300 * coding.c (decode_composition_emacs_mule):
19301 Give up if NCOMPONENT gets too large to index `component'.
19302
19303 * callint.c (check_mark): New arg to specify clearer error message.
19304 Callers changed.
19305
19306 2002-01-27 Richard M. Stallman <rms@gnu.org>
19307
19308 * minibuf.c (Fcompleting_read): Doc fix.
19309
19310 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19311
19312 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19313 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19314 Fix doc-strings.
19315
19316 2002-01-26 Richard M. Stallman <rms@gnu.org>
19317
19318 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19319
19320 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19321 and scroll_up_aggressively.
19322
19323 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19324
19325 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19326
19327 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19328
19329 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19330 (Fprevious_property_change, Fprevious_single_property_change):
19331 Stay within the narrowed-buffer boundaries.
19332
19333 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19334
19335 * term.c (Ftty_display_color_cells): New function.
19336 (syms_of_term): Defsubr it.
19337 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19338 argument name to DISPLAY. Doc fix.
19339
19340 * dispextern.h: Add prototype for set_tty_color_mode and
19341 tty_setup_colors.
19342
19343 2002-01-24 Jason Rumney <jasonr@gnu.org>
19344
19345 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19346 If region left to draw is not what was expected, mark the frame as
19347 garbaged.
19348
19349 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19350 Combine the regions returned by BeginPaint and GetUpdateRect.
19351
19352 2002-01-23 Jason Rumney <jasonr@gnu.org>
19353
19354 * w32term.c (x_update_window_begin): Only hide caret if
19355 w32_use_visible_system_caret is set.
19356 (x_update_window_end): Only show caret if
19357 w32_use_visible_system_caret is set.
19358 (syms_of_w32term): Handle SystemParametersInfo call failing.
19359
19360 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19361
19362 2002-01-22 Richard M. Stallman <rms@gnu.org>
19363
19364 * unexelf.c (unexec): Define n so as to cause compilation error
19365 for the code where people have often written n instead of nn.
19366
19367 * .gdbinit (hookpost-run): Defined.
19368
19369 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19370
19371 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19372
19373 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19374
19375 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19376 if fullscreen is being set.
19377
19378 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19379
19380 * minibuf.c (Fminibuffer_contents)
19381 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19382 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19383
19384 2002-01-21 Richard M. Stallman <rms@gnu.org>
19385
19386 * window.c (check_frame_size): Fix minimum height calculation.
19387
19388 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19389
19390 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19391 height before comparison.
19392 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19393
19394 2002-01-20 Jason Rumney <jasonr@gnu.org>
19395
19396 * w32term.c (w32_system_caret_width): Remove.
19397 (w32_use_visible_system_caret): New user flag.
19398 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19399 Windows reports a screen reader running.
19400 (x_update_window_begin): Hide the system caret.
19401 (x_update_window_end): Show the system caret.
19402 (x_display_and_set_cursor): Don't draw a cursor when
19403 w32_use_visible_system_caret is set. Do not adjust width.
19404
19405 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19406 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19407 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19408 the user requests it. Use system default width when creating.
19409 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19410
19411 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19412 New window messages.
19413
19414 2002-01-20 Richard M. Stallman <rms@gnu.org>
19415
19416 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19417
19418 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19419
19420 * doprnt.c (doprnt1): Fix typos in error call.
19421
19422 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19423
19424 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19425
19426 2002-01-20 Jason Rumney <jasonr@gnu.org>
19427
19428 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19429 that Windows returns. If a double check fails, try to guess how
19430 ExtTextOut is going to act.
19431
19432 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19433 in place of stricmp.
19434 (w32_list_synthesized_fonts): Removed.
19435 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19436 (struct enumfont_t): New element; list.
19437 (enum_font_cb2): List all style and charset variations of a font.
19438 (Fw32_select_font): New optional argument; include_proportional.
19439 Exclude vertical fonts. Exclude proportional fonts unless
19440 include_proportional is non-nil.
19441 (w32_enable_synthesized_fonts): Change to a boolean.
19442 (Fw32_send_sys_command): Doc fix.
19443
19444 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19445
19446 * dispnew.c (update_frame): Move the variable `tem' to the block
19447 where it is used.
19448
19449 2002-01-19 Jason Rumney <jasonr@gnu.org>
19450
19451 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19452 call to face-set-after-frame-default.
19453
19454 2002-01-18 Richard M. Stallman <rms@gnu.org>
19455
19456 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19457 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19458
19459 2002-01-17 Richard M. Stallman <rms@gnu.org>
19460
19461 * window.c (enlarge_window): When exceeding size of parent,
19462 directly delete all the siblings instead of trying to resize it.
19463
19464 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19465
19466 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19467
19468 2002-01-16 Henrik Enberg <henrik@enberg.org>
19469
19470 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19471
19472 2002-01-16 Kim F. Storm <storm@cua.dk>
19473
19474 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19475 is invisible. This can happen if cursor is on top line of a
19476 window, and we switch to a buffer with a header line.
19477
19478 * w32term.c (x_erase_phys_cursor): Ditto.
19479
19480 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19481
19482 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19483 `dont_resize' only when used.
19484
19485 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19486
19487 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19488
19489 * xdisp.c (display_mode_element): When computing charpos, depend
19490 on multibyteness of elt, not the text in field.
19491
19492 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19493
19494 * buffer.c (Fkill_all_local_variables):
19495 Increment `update_mode_lines' only once.
19496
19497 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19498
19499 * lisp.h (adjust_after_replace_noundo)
19500 (Fupdate_coding_systems_internal): Add prototypes.
19501
19502 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19503
19504 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19505
19506 Support for the --color command-line argument and tty-color-mode
19507 frame parameter:
19508
19509 * term.c (tty_default_color_capabilities, tty_setup_colors)
19510 (set_tty_color_mode): New functions.
19511 (term_init): Call tty_default_color_capabilities.
19512 (Qtty_color_mode_alist): New variable.
19513 (syms_of_term): Intern and staticpro it.
19514
19515 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19516 frames.
19517 (do_switch_frame): For termcap frames, switch the tty
19518 color mode as specified by the frame's parameters.
19519 (Qtty_color_mode): New variable.
19520 (syms_of_frame): Intern and staticpro it.
19521
19522 * emacs.c (USAGE2): Add the --color option.
19523 (standard_args): Ditto.
19524
19525 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19526
19527 * xterm.h (struct x_output): New members want_fullscreen,
19528 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19529 y_pixels_outer_diff.
19530 New enum for FULLSCREEN_* constants.
19531 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19532 is NULL.
19533 (x_fullscreen_adjust): Add prototype.
19534
19535 * emacs.c (USAGE2): Add the new full-screen arguments.
19536 (standard_args): Ditto.
19537
19538 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19539 New variables.
19540 (syms_of_xfns): Intern and staticpro them.
19541 (x_frame_parms) <"fullscreen">: New parameter.
19542 (x_fullscreen_move, x_set_fullscreen): New functions.
19543 (x_set_frame_parameters): Support for Qfullscreen.
19544 (x_real_positions): More accurate computation of the frame position.
19545 (x_figure_window_size): Support full-screen frames.
19546 (Fx_create_frame): Default the fullscreen parameter.
19547
19548 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19549 (XTread_socket) <Expose>: Call x_check_fullscreen.
19550 <ConfigureNotify>: Don't resize to fullscreen.
19551 Call x_check_fullscreen_move, and set the want_fullscreen member of
19552 output_data.x.
19553
19554 2002-01-13 Jason Rumney <jasonr@gnu.org>
19555
19556 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19557 for mice with more than 3 buttons.
19558
19559 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19560 (w32_read_socket): Handle new "XBUTTON" messages.
19561
19562 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19563 (syms_of_w32fns): DEFVAR_BOOL it.
19564 (w32_wnd_proc): Handle new "XBUTTON" messages.
19565
19566 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19567
19568 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19569
19570 2002-01-13 Andreas Schwab <schwab@suse.de>
19571
19572 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19573
19574 2002-01-12 Andreas Schwab <schwab@suse.de>
19575
19576 * .gdbinit (xbuffer): Remove address operator since data is now a
19577 pointer.
19578
19579 2002-01-11 Richard M. Stallman <rms@gnu.org>
19580
19581 * insdel.c (adjust_after_replace_noundo): New function.
19582
19583 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19584
19585 2002-01-09 Jason Rumney <jasonr@gnu.org>
19586
19587 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19588 when checking for multiple frames.
19589
19590 2002-01-08 Richard M. Stallman <rms@gnu.org>
19591
19592 * window.c (delete_window): Rewrite the code for changing the
19593 selected window to handle the case where WINDOW is not a leaf.
19594
19595 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19596
19597 * process.c (send_process): Set src_multibyte to 1 after the call
19598 top setup_coding_system, not before the call.
19599
19600 2002-01-07 Jason Rumney <jasonr@gnu.org>
19601
19602 * xmenu.c (set_frame_menubar, xmenu_show):
19603 (xdialog_show): Initialize wv->help to Qnil.
19604
19605 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19606 (w32_dialog_show): Initialize wv->help to Qnil.
19607
19608 2002-01-06 Jason Rumney <jasonr@gnu.org>
19609
19610 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19611
19612 * w32menu.c (w32_menu_display_help): Revert last change.
19613
19614 * xmenu.c (menu_highlight_callback): Revert last change.
19615
19616 2002-01-06 Andreas Schwab <schwab@suse.de>
19617
19618 * insdel.c (make_gap_larger): Make sure buffer size does not
19619 overflow range of int.
19620
19621 2002-01-05 Jason Rumney <jasonr@gnu.org>
19622
19623 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19624 OVERLAPS_P.
19625
19626 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19627
19628 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19629 to the left or to the right of the pointer, put it against
19630 the left screen edge.
19631 (x_frame_parms): Add missing braces around initializer.
19632
19633 * w32term.c (x_setup_relief_colors): Don't compute an image's
19634 background color if it doesn't have a Pixmap.
19635 (notice_overwritten_cursor): Don't depend on
19636 output_cursor and updated_area. Compare pixel coordinates with
19637 window's cursor pixel coordinates.
19638 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19639 Call notice_overwritten_cursor with new arg list.
19640 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19641 unconditionally.
19642 (x_draw_image_relief): Use predefined macro instead of
19643 constant when the value of `tool_bar_button_relief' is negative.
19644
19645 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19646
19647 2002-01-04 Richard M. Stallman <rms@gnu.org>
19648
19649 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19650
19651 2002-01-03 Richard M. Stallman <rms@gnu.org>
19652
19653 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19654 (Fkey_binding): Try the `keymap' property map first.
19655 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19656 minor mode bindings.
19657
19658 2002-01-03 Kim F. Storm <storm@cua.dk>
19659
19660 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19661
19662 2002-01-02 Richard M. Stallman <rms@gnu.org>
19663
19664 * keyboard.c (read_key_sequence): Handle the keymap property
19665 before minor mode maps.
19666
19667 * editfns.c (Fformat): Update thissize from field_width
19668 based on the actual width, in the string case.
19669
19670 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19671
19672 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19673 when used as truth value to prevent gcc warnings.
19674
19675 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19676 * w32proc.c: Include <config.h>.
19677
19678 2002-01-01 Andreas Schwab <schwab@suse.de>
19679
19680 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19681 not EMACS_INT, to make them compatible with DEFVAR_INT.
19682 * lisp.h (max_specpdl_size): Adjust declaration.
19683
19684 2002-01-01 Richard M. Stallman <rms@gnu.org>
19685
19686 * print.c (print_object): Test print_escape_nonascii only for
19687 unibyte strings.
19688 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19689 when outputting to a multibyte buffer.
19690
19691 2001-12-29 Richard M. Stallman <rms@gnu.org>
19692
19693 * print.c (print_object): In multibyte string, use hex escapes.
19694 Use octal only for unibyte strings.
19695 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19696
19697 * lread.c (read_escape): New arg BYTEREP for reporting whether
19698 escape forces unibyte or multibyte.
19699 (read1): When reading a string, take note of that info.
19700
19701 2001-12-29 Ken Raeburn <raeburn@gnu.org>
19702
19703 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
19704 comparison to test lisp value returned by Fget.
19705
19706 2001-12-29 Richard M. Stallman <rms@gnu.org>
19707
19708 * lisp.h (max_specpdl_size): Add declaration.
19709
19710 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
19711
19712 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
19713 Handle modifier bits. Correct typo in error message.
19714
19715 2001-12-28 Richard M. Stallman <rms@gnu.org>
19716
19717 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
19718 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
19719 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19720 Update calls to Fdefine_abbrev.
19721 (write_abbrev): Update for changed data format.
19722 Don't list "system" abbrevs.
19723 (Fexpand_abbrev): Update use count with new data format.
19724 (describe_abbrev): Update for changed data format.
19725 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
19726
19727 * config.in (HAVE_MBSINIT): Add #undef.
19728
19729 * strftime.c (mbsinit): Define as no-op if not available.
19730
19731 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
19732 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
19733
19734 * keymap.c (Flookup_key): Error message if key has wrong data type.
19735 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
19736 (exclude_key): New variable.
19737
19738 2001-12-28 Gerd Moellmann <gerd@gnu.org>
19739
19740 * xterm.c (x_setup_relief_colors): Don't compute an image's
19741 background color if it doesn't have a Pixmap.
19742
19743 * xterm.c (notice_overwritten_cursor): Don't depend on
19744 output_cursor and updated_area. Compare pixel coordinates with
19745 window's cursor pixel coordinates.
19746 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19747 Call notice_overwritten_cursor with new arg list.
19748 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19749 unconditionally.
19750
19751 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
19752 height of the cursor line to the amount to scroll.
19753
19754 2001-12-27 Richard M. Stallman <rms@gnu.org>
19755
19756 * intervals.c (set_point_both): The position after an invisible,
19757 intangible character is not an acceptable stopping point.
19758
19759 2001-12-27 Ken Raeburn <raeburn@gnu.org>
19760
19761 * window.c (enlarge_window): In new preserve_before code, convert
19762 CURBEG from lisp object to integer before doing arithmetic.
19763
19764 2001-12-27 Richard M. Stallman <rms@gnu.org>
19765
19766 * bytecode.c (Fbyte_code): Undo previous change.
19767
19768 2001-12-26 Kim F. Storm <storm@cua.dk>
19769
19770 * keyboard.c (record_char): Ignore duplicate help-echo events only
19771 separated by mouse-movement. When tracking mouse, only record
19772 first and last mouse-movement event in same window.
19773 Don't record mouse-movement events in keyboard macros.
19774
19775 2001-12-25 Richard M. Stallman <rms@gnu.org>
19776
19777 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
19778 (Fenlarge_window): New arg PRESERVE_BEFORE.
19779
19780 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
19781 instead of Fstring_as_unibyte.
19782
19783 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19784
19785 The following changes remove mocklisp support:
19786
19787 * mocklisp.h, mocklisp.c: Files removed.
19788
19789 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
19790 `Qmocklisp' and `Qmocklisp_arguments'.
19791 Remove prototype of syms_of_mocklisp.
19792
19793 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
19794
19795 * callint.c: Do not include mocklisp.h.
19796 (Fcall_interactively): Do not test for mocklisp case.
19797
19798 * eval.c: Remove variables `Qmocklisp_arguments',
19799 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
19800 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
19801 Do not test for mocklisp case.
19802 (Fwhile): Remove unused variable `tem'.
19803 (syms_of_eval): Remove variable `moclisp-arguments'.
19804
19805 * data.c (wrong_type_argument): Remove mocklisp case.
19806
19807 * doc.c (Fdocumentation): Remove mocklisp case.
19808
19809 * emacs.c (main): Do not call syms_of_mocklisp.
19810
19811 2001-12-21 Richard M. Stallman <rms@gnu.org>
19812
19813 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
19814 to the left or to the right of the pointer, put it against
19815 the left screen edge.
19816
19817 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
19818
19819 * Makefile.in (distclean): Remove .gdbinit if we are building
19820 outside the source tree.
19821
19822 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
19823
19824 * w32.c (emacs_root_dir): New function.
19825
19826 * msdos.c (emacs_root_dir): New function.
19827
19828 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
19829 of the current drive as the fallback for default_directory.
19830
19831 * dired.c (file_name_completion): Run the elements of
19832 completion-ignored-extensions through ENCODE_FILE.
19833
19834 * lisp.h (scmp): Remove prototype, since it's now a static
19835 function private to dired.c.
19836
19837 2001-12-18 Richard M. Stallman <rms@gnu.org>
19838
19839 * dired.c (scmp): Function moved from minibuf.c.
19840 Delete multibyte handling--used only on encoded strings.
19841
19842 * minibuf.c (scmp): Function moved to dired.c.
19843
19844 * fns.c (merge): Add QUIT call.
19845
19846 2001-12-18 Dave Love <fx@gnu.org>
19847
19848 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
19849 language/georgian.el.
19850
19851 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
19852
19853 * Makefile.in (lisp, shortlisp): Synchronize with changes to
19854 lisp/Makefile.in:DONTCOMPILE.
19855
19856 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19857
19858 * xdisp.c (window_box_height): Do not return negative values.
19859 From Gerd Moellmann <gerd@gnu.org>.
19860
19861 * keyboard.c (head_table): Add missing braces around initializer.
19862
19863 * term.c (keys): Likewise.
19864
19865 * xfns.c (x_frame_parms, visual_classes): Likewise.
19866
19867 2001-12-17 Sam Steingold <sds@gnu.org>
19868
19869 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
19870 patch (COMPOSING_P, not COMPOSING).
19871
19872 2001-12-17 Richard M. Stallman <rms@gnu.org>
19873
19874 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
19875
19876 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
19877 before calling decode_coding.
19878
19879 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
19880
19881 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
19882 instead of only for COMPOSITION_DISABLED.
19883
19884 2001-12-16 Richard M. Stallman <rms@gnu.org>
19885
19886 * alloc.c (pure_alloc): After overflow, allocate just a small block.
19887
19888 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
19889
19890 * buffer.h (struct buffer): New field `display_error_modiff'.
19891 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
19892
19893 * window.c (Frecenter): Clear display_error_modiff field.
19894
19895 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
19896 Call redisplay_window, but not if display_error_modiff field says no.
19897 (redisplay_window_error): New function.
19898 (displayed_buffer): New variable.
19899 (redisplay_internal, redisplay_windows): Call the new functions
19900 instead of redisplay_window directly.
19901
19902 2001-12-15 Richard M. Stallman <rms@gnu.org>
19903
19904 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
19905
19906 2001-12-14 Andrew Innes <andrewi@gnu.org>
19907
19908 * makefile.w32-in (EMACSLOADPATH): Define.
19909 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
19910 (bootstrap-temacs): Remove dependency on bootstrap-clean.
19911
19912 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
19913
19914 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
19915 parameter have a numeric value all the time.
19916
19917 * w32fns.c (x_report_frame_params): Likewise.
19918
19919 2001-12-12 Richard M. Stallman <rms@gnu.org>
19920
19921 * fileio.c (Fwrite_region): Doc fix.
19922
19923 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
19924 (redisplay_internal): Call clear_image_cache only for window terminals.
19925
19926 2001-12-12 Gerd Moellmann <gerd@gnu.org>
19927
19928 * xdisp.c (move_it_vertically_backward): Change heuristic
19929 for the case that we didn't move far enough initially.
19930
19931 * window.c (Frecenter): Simplify computation in the case of window
19932 system frames and ARG < 0; use window_box_height.
19933
19934 2001-12-11 Richard M. Stallman <rms@gnu.org>
19935
19936 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
19937 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
19938
19939 2001-12-11 Andrew Innes <andrewi@gnu.org>
19940
19941 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
19942 arg is negative.
19943
19944 2001-12-11 Richard M. Stallman <rms@gnu.org>
19945
19946 * m/hp800.h: Split the __hpux conditional into the parts
19947 that are right for GNU/Linux too and the parts that are not.
19948 Use the former if GNU_LINUX.
19949 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
19950
19951 * s/gnu-linux.h (GNU_LINUX): Defined.
19952
19953 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19954
19955 * macros.c, msdos.c, w16select.c: Change doc-string comments to
19956 `new style' [w/`doc:' keyword].
19957
19958 2001-12-10 Jason Rumney <jasonr@gnu.org>
19959
19960 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
19961 before using.
19962
19963 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19964
19965 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
19966 keyword].
19967
19968 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
19969
19970 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
19971
19972 * s/hpux10.h (srand48): Don't undefine.
19973
19974 2001-12-09 Jason Rumney <jasonr@gnu.org>
19975
19976 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
19977 Add comment to explain where the struct came from.
19978 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
19979 (add_menu_item): Process pop-up menus first to avoid memory leak.
19980 (add_menu_item, w32_menu_display_help): Use `help' field as
19981 Lisp_Object.
19982 (w32_free_submenu_strings): Only free owner-drawn strings.
19983
19984 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19985
19986 * COPYING: Moved back.
19987
19988 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
19989 Add parentheses around && within ||.
19990
19991 * indent.c (compute_motion): Likewise.
19992
19993 * intervals.c (merge_properties_sticky): Likewise.
19994
19995 * coding.c (setup_coding_system, shrink_encoding_region)
19996 (Fdecode_sjis_char): Likewise.
19997
19998 2001-12-07 Andreas Schwab <schwab@suse.de>
19999
20000 * xdisp.c (display_mode_element): Don't read past end of string if
20001 it ends with '%'.
20002
20003 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20004 can hold.
20005
20006 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20007 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20008 type changed to Lisp_Object.
20009 (syms_of_data): DEFVAR_LISP them.
20010
20011 2001-12-07 Richard M. Stallman <rms@gnu.org>
20012
20013 * callproc.c (init_callproc): Set Vdata_directory based on the source
20014 location whenever Emacs was run uninstalled.
20015
20016 2001-12-06 Paul Eggert <eggert@twinsun.com>
20017
20018 * config.in (HAVE_WORKING_VFORK): New #undefs.
20019 * process.c (create_process):
20020 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20021 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20022 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20023 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20024 * m/intel386.h (HAVE_VFORK): Likewise.
20025 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20026 * m/mips.h (HAVE_VFORK): Likewise.
20027 * s/freebsd.h (vfork): Remove #define.
20028 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20029 * s/usg5-4-2.h: Fix comment about vfork.
20030
20031 2001-12-06 Richard M. Stallman <rms@gnu.org>
20032
20033 * s/hpux10.h (random): Add undef.
20034 (HAVE_RANDOM): Define it just once.
20035
20036 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20037
20038 * eval.c: Undo last change: the standard syntax is not wanted.
20039
20040 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20041
20042 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20043 scroll bars of the frame before deleting the frame itself. If the
20044 frame has a widget, delete the frame with XtDestroyWidget, and do
20045 not call XDestroyWindow before that.
20046
20047 2001-12-06 Kim F. Storm <storm@cua.dk>
20048
20049 * xfns.c (x_report_frame_params): Return actual fringe widths.
20050
20051 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20052
20053 2001-12-05 Andrew Innes <andrewi@gnu.org>
20054
20055 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20056 excessively large.
20057
20058 * insdel.c (make_gap_larger): New function.
20059 (make_gap_smaller): New function.
20060 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20061 Call make_gap_smaller if arg is negative.
20062
20063 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20064
20065 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20066 Pass a dummy argument when calling interrupt_signal.
20067 (parse_menu_item): Mark disabled items before checking for empty def.
20068 (read_char_minibuf_menu_prompt): Make safety more visible.
20069 (read_key_sequence): Add a `first_unbound' variable.
20070 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20071 unbound prefix as soon as we can detect it.
20072
20073 * doc.c (Fsnarf_documentation): Add prototype.
20074 (get_doc_string): Handle negative arguments.
20075 (Fdocumentation): Use AREF and ASIZE.
20076 Move the calls to get_doc_string to a single place.
20077 Don't confuse an interactive-spec for a docstring reference.
20078 (Fdocumentation_property): Take advantage of the fact that
20079 get_doc_string now ignores the sign of the docstring position.
20080
20081 * eval.c: Use standard syntax for usage in docstrings.
20082
20083 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20084
20085 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20086
20087 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20088
20089 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20090 constant when the value of `tool_bar_button_relief' is negative.
20091
20092 2001-12-02 Richard M. Stallman <rms@gnu.org>
20093
20094 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20095 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20096
20097 * fileio.c (read_non_regular): Delete Fsignal call.
20098
20099 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20100
20101 * lisp.h (run_hook_list_with_args): Undo last change.
20102
20103 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20104
20105 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20106
20107 2001-12-01 Jason Rumney <jasonr@gnu.org>
20108
20109 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20110
20111 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20112 [!WM_MOUSELEAVE]: Define.
20113
20114 * w32menu.c (current_popup_menu, get_menu_item_info):
20115 (set_menu_item_info): New vars.
20116 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20117 (w32_menu_show): Set current_popup_menu.
20118 (add_menu_item): Allocate new strings for owner-drawn menu items
20119 and help strings.
20120 Use owner-draw for disabled menu items again.
20121 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20122 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20123
20124 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20125 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20126 <WM_EXITMENULOOP>: Free menu strings.
20127 <WM_MOUSELEAVE>: Stop tracking mouse.
20128 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20129
20130 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20131 and mouse face.
20132
20133 2001-12-01 Kim F. Storm <storm@cua.dk>
20134
20135 The following changes add left-fringe and right-fringe
20136 frame parameters to adjust fringe widths, or remove one or
20137 both fringes.
20138
20139 * frame.h (struct frame): Remove trunc_area_pixel_width and
20140 trunc_area_cols fields.
20141 (Qleft_fringe, Qright_fringe): Declare.
20142 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20143
20144 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20145 (syms_of_frame): Initialize them.
20146
20147 * window.c (coordinates_in_window): Handle separate left and right
20148 fringe widths.
20149
20150 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20151 and fringe_cols fields.
20152 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20153 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20154 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20155 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20156 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20157 (x_compute_fringe_widths): Add prototype.
20158
20159 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20160 fill fringe evenly with small dashes.
20161 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20162 clip the new ZV bitmap to avoid jitter between rows.
20163 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20164 background. Don't draw fringe bitmaps if fringe width is zero.
20165 (x_compute_fringe_widths): New function.
20166 (x_new_font, x_set_window_size_1): Use it.
20167
20168 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20169 (x_set_frame_parameters): Process `font' parameter before other
20170 parameters as fringe widths depend on it.
20171 (x_set_fringe_width): New function.
20172 (x_figure_window_size): Use x_compute_fringe_widths.
20173 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20174 parameters.
20175
20176 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20177 (EmacsFrameSetCharSize): Ditto.
20178
20179 * w32term.h: Merged changes from xterm.h.
20180 * w32term.c: Merged changes from xterm.c.
20181 * w32fns.c: Merged changes from xfns.c.
20182
20183 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20184
20185 * COPYING: Removed.
20186
20187 2001-11-29 Dave Love <fx@gnu.org>
20188
20189 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20190 extra extra slot.
20191 (detect_coding_mask): Fix call of detect_coding_iso2022.
20192
20193 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20194
20195 * fileio.c (file-name-coding-system)
20196 (default-file-name-coding-system): Doc fix (links to referenced
20197 variables added).
20198
20199 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20200
20201 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20202 Add dummy uses of gcproN variables.
20203
20204 * category.c (describe_category, describe_category_1)
20205 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20206 (syms_of_category): Don't defsubr Sdescribe_categories.
20207
20208 2001-11-28 Richard M. Stallman <rms@gnu.org>
20209
20210 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20211
20212 * Makefile.in (lispdir): New variable, referring to build dir.
20213 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20214
20215 2001-11-28 Andrew Innes <andrewi@gnu.org>
20216
20217 * w32menu.c (w32_menu_display_help): Actually add the new argument
20218 OWNER.
20219
20220 2001-11-28 Jason Rumney <jasonr@gnu.org>
20221
20222 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20223 menu items. From David Ponce <dponce@wanadoo.fr>.
20224 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20225 conditionally.
20226 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20227 help event in the owner frame's keyboard buffer.
20228
20229 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20230 (Fx_show_tip): Don't subtract last width from row width.
20231
20232 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20233 (w32_read_socket): Use EQ to compare frames.
20234
20235 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20236
20237 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20238 OVERLAPS_P.
20239
20240 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20241
20242 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20243 `gcpro3' and `gcpro4'.
20244
20245 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20246
20247 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20248
20249 * ccl.c: Use AREF and ASIZE.
20250
20251 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20252
20253 * lisp.h (run_hook_list_with_args): Remove.
20254 (LIST_END_P): Fix call to wrong_type_argument.
20255 (make_fixnum_or_float): Use EMACS_INT rather than int.
20256
20257 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20258
20259 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20260 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20261
20262 * eval.c: Use AREF and ASIZE.
20263 (Ffetch_bytecode): Add the file name to the error message.
20264
20265 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20266 which match the end of the file-name.
20267 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20268 is not a valid env var, but leave it as is instead.
20269
20270 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20271 Make nil bindings in char-tables transparent.
20272 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20273
20274 2001-11-26 Richard M. Stallman <rms@gnu.org>
20275
20276 * textprop.c (set_text_properties_1): Allow START, END in either order.
20277 Do nothing if range is empty.
20278
20279 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20280
20281 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20282 (clean): Not here.
20283
20284 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20285
20286 * textprop.c (set_text_properties_1): Clearly mark that the
20287 interval should not be empty.
20288
20289 * intervals.c (graft_intervals_into_buffer):
20290 Don't call set_text_properties_1 on an empty interval.
20291
20292 2001-11-25 Richard M. Stallman <rms@gnu.org>
20293
20294 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20295
20296 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20297 don't lose the data in it.
20298
20299 2001-11-25 Juanma Barranquero <lektu@terra.es>
20300
20301 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20302
20303 * buffer.c (Fkill_buffer): Likewise.
20304
20305 * print.c (temp_output_buffer_setup): Likewise.
20306
20307 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20308
20309 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20310
20311 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20312
20313 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20314 Niemitalo <kon@iki.fi>.
20315
20316 2001-11-25 Jason Rumney <jasonr@gnu.org>
20317
20318 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20319
20320 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20321 (Fx_show_tip): Block input during frame creation.
20322 (Fx_show_tip, Fx_hide_tip): Enable.
20323
20324 2001-11-24 Richard M. Stallman <rms@gnu.org>
20325
20326 * lread.c (Fload): Detect recursive load error for more than 3
20327 nestings of the same file.
20328 (Vrecursive_load_depth_limit): Variable deleted.
20329 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20330
20331 2001-11-24 Jason Rumney <jasonr@gnu.org>
20332
20333 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20334 mouse position if either left or top is not specified.
20335
20336 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20337 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20338 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20339 (my_create_tip_window): Assign tip_window.
20340 (x_create_tip_frame): Use same defaults as X.
20341 (compute_tip_xy): Remove unused variable. Use full screen width.
20342 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20343
20344 * w32term.c (x_after_update_window_line): Doc fix.
20345 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20346 frames.
20347 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20348
20349 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20350 for all Windowed systems.
20351
20352 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20353
20354 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20355 realized, use the initial screen colors to clear the screen.
20356
20357 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20358
20359 * textprop.c (Fset_text_properties): Remove unused variables
20360 `unchanged', `prev_changed', `s' and `len'.
20361
20362 * search.c (Freplace_match): Remove unused variable `inslen'.
20363
20364 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20365
20366 2001-11-22 Jason Rumney <jasonr@gnu.org>
20367
20368 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20369 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20370 (my_create_tip_window): New function.
20371 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20372 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20373
20374 2001-11-20 Jason Rumney <jasonr@gnu.org>
20375
20376 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20377 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20378
20379 * w32fns.c (Vw32_system_coding_system): Remove.
20380 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20381
20382 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20383
20384 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20385 after build_annotations.
20386
20387 * syntax.c (describe_syntax): Add dummy arg.
20388 (describe_syntax_1): Update call to describe_vector.
20389
20390 * category.c (describe_category): Add dummy arg.
20391 (describe_category_1): Update call to describe_vector.
20392
20393 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20394 (describe_command, describe_translation): Add dummy second param.
20395 (describe_map): Call elt_describer with two arguments.
20396 (describe_vector_princ): Add `fun' parameter.
20397 Call it instead of the hardcoded `princ'.
20398 (describe_vector): Add arg `args'.
20399 Pass it as a new second argument to elt_describer.
20400
20401 * keymap.h (describe_vector): Update prototype.
20402
20403 * frame.c: Don't include keymap.h any more.
20404 (keys_of_frame): Remove.
20405
20406 * lisp.h (keys_of_frame): Remove declaration.
20407
20408 * emacs.c (main): Don't call `keys_of_frame' any more.
20409
20410 2001-11-14 Andreas Schwab <schwab@suse.de>
20411
20412 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20413 if defined, 0 otherwise.
20414 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20415 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20416
20417 2001-11-19 Richard M. Stallman <rms@gnu.org>
20418
20419 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20420
20421 2001-11-18 Jason Rumney <jasonr@gnu.org>
20422
20423 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20424 (x_draw_bar_cursor): If the background color of the glyph under
20425 the cursor equals the frame's cursor color, use the glyph's
20426 foreground color for drawing the bar cursor.
20427 (x_after_update_window_line): Clear internal border in different
20428 circumstances.
20429 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20430 (w32_draw_relief_rect): Correct relief by 1 pixel.
20431 (x_set_glyph_string_background_width):
20432 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20433 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20434 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20435 if cursor_in_non_selected_windows is false.
20436 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20437 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20438 Notice if cursor gets overwritten.
20439 (notice_overwritten_cursor): Renamed from
20440 note_overwritten_text_cursor. Rewritten to take glyph widths
20441 into account, and to take X positions as parameters.
20442 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20443 around call to x_draw_glyphs.
20444 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20445 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20446 color to use for image glyph reliefs.
20447 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20448 (glyph_rect): Remove unused variable `area'.
20449
20450 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20451 some items.
20452 (x_set_internal_border_width): Set frame garbaged when window
20453 doesn't exist yet.
20454 (Fx_create_frame): Accept zero tool_bar_button_relief.
20455 (x_clear_image_1, four_corners_best, image_background)
20456 (image_background_transparent): New functions.
20457 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20458 (gs_format): Add `:background' entry.
20459 (lookup_image): Set IMG's background color if specified.
20460 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20461 when appropriate.
20462 (x_clear_image_1): Reset `background_valid' and
20463 `background_transparent_valid' fields.
20464 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20465 calculating it here. Set IMG's background_transparent field.
20466 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20467 (enum png_keyword_index): Add PNG_BACKGROUND.
20468 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20469 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20470 (enum gif_keyword_index): Add GIF_BACKGROUND.
20471 (enum gs_keyword_index): Add GS_BACKGROUND.
20472 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20473 Pre-calculate image background color where necessary.
20474 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20475 Use display info's n_cbits entry for screen depth.
20476 (Fx_show_tip): Remove unused variables `buffer', `top',
20477 `left', `max_width' and `max_height'.
20478
20479 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20480
20481 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20482
20483 * puresize.h (BASE_PURESIZE): Increase to 750000.
20484
20485 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20486
20487 * frame.c (Fframe_live_p): Doc fix.
20488
20489 2001-11-18 Richard M. Stallman <rms@gnu.org>
20490
20491 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20492 (message_dolog_marker3): New static variables hold three markers.
20493 (syms_of_xdisp): Initialize and staticpro them.
20494 (message_dolog): Use message_dolog_marker1..3 instead of
20495 allocating markers each time. Unchain them when done.
20496
20497 2001-11-17 Richard M. Stallman <rms@gnu.org>
20498
20499 * doc.c (Fsnarf_documentation): Doc fix.
20500
20501 2001-11-17 Andreas Schwab <schwab@suse.de>
20502
20503 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20504
20505 2001-11-17 Richard M. Stallman <rms@gnu.org>
20506
20507 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20508
20509 2001-11-17 Jason Rumney <jasonr@gnu.org>
20510
20511 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20512
20513 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20514
20515 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20516 with invalid position.
20517
20518 2001-11-16 Richard M. Stallman <rms@gnu.org>
20519
20520 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20521
20522 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20523 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20524 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20525
20526 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20527
20528 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20529
20530 * fileio.c (build_annotations): Split off the tail.
20531 (build_annotations_2): New fun. Extracted from build_annotations.
20532 (Fwrite_region): Split the call to build_annotations into two
20533 calls to build_annotations and build_annotations_2.
20534
20535 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20536
20537 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20538 clear_waiting_for_input with argument.
20539
20540 * xterm.h (x_update_cursor): Remove duplicated prototype.
20541
20542 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20543
20544 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20545
20546 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20547
20548 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20549
20550 * fileio.c (choose_write_coding_system): New fun, extracted
20551 from Fwrite_region.
20552 (Fwrite_region): Use it.
20553
20554 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20555 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20556 (ml_apply, find_handler_clause): Add prototype.
20557
20558 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20559
20560 * config.in: Add #undef HAVE_COFF_H.
20561
20562 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20563 Required for ISC 4.1.
20564
20565 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20566
20567 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20568 Andrew Wiseman <a.wiseman@btclick.com>.
20569
20570 2001-11-16 Kim F. Storm <storm@cua.dk>
20571
20572 The following changes are made to clean up the various internal
20573 references to the fringes to actually use the term `fringe' for
20574 them. Previously, they were called `flags areas', `bitmap areas',
20575 `left/right side of windows', or implicitly as `flags' or
20576 `bitmaps':
20577
20578 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20579 Comments fixed. Use renamed symbols.
20580
20581 * dispnew.c: Comment fix. Use renamed symbols.
20582
20583 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20584 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20585 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20586
20587 * msdos.c: Comment fix.
20588
20589 * w32fns.c: Use renamed symbols.
20590
20591 * w32term.c: Comment fixes. Use renamed symbols.
20592 (fringe_bitmap_type): Renamed from bitmap_type.
20593 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20594 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20595 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20596
20597 * w32term.h: Comment fixes. Use renamed symbols.
20598 (fringes_extra): Renamed from flags_areas_extra.
20599 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20600 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20601 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20602 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20603 (FRAME_X_LEFT_FRINGE_WIDTH):
20604 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20605 (FRAME_X_RIGHT_FRINGE_WIDTH):
20606 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20607
20608 * widget.c: Use renamed symbols.
20609
20610 * window.c: Comment fixes. Use renamed symbols.
20611 (coordinates-in-window-p): Doc fix.
20612
20613 * xdisp.c: Comment fixes. Use renamed symbols.
20614
20615 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20616
20617 * xfns.c: Use renamed symbols.
20618
20619 * xterm.c: Comment fixes. Use renamed symbols.
20620 (fringe_bitmap_type): Renamed from bitmap_type.
20621 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20622 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20623 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20624
20625 * xterm.h: Comment fixes. Use renamed symbols.
20626 (fringes_extra): Renamed from flags_areas_extra.
20627 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20628 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20629 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20630 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20631 (FRAME_X_LEFT_FRINGE_WIDTH):
20632 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20633 (FRAME_X_RIGHT_FRINGE_WIDTH):
20634 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20635
20636 2001-11-15 Jason Rumney <jasonr@gnu.org>
20637
20638 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20639 work for most menu items. From David Ponce
20640 <david.ponce@wanadoo.fr>.
20641
20642 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20643
20644 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20645 Some x_set_* function expect to be called even if old and new
20646 value are equal.
20647
20648 * xdisp.c (build_desired_tool_bar_string): Accept zero
20649 tool_bar_button_relief.
20650
20651 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20652
20653 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20654
20655 * xterm.c (x_draw_bar_cursor): If the background color of the
20656 glyph under the cursor equals the frame's cursor color, use
20657 the glyph's foreground color for drawing the bar cursor.
20658
20659 * dispnew.c (direct_output_forward_char): Fix character/byte
20660 position comparison.
20661
20662 2001-11-15 Miles Bader <miles@gnu.org>
20663
20664 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20665 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20666 Update arguments to find_field.
20667 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20668 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20669 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20670 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20671
20672 2001-11-14 Richard M. Stallman <rms@gnu.org>
20673
20674 * editfns.c (Fpropertize): Allow call with 1 arg.
20675
20676 * dispextern.h (image_background, image_background_transparent):
20677 Conditionalize on HAVE_X_WINDOWS.
20678
20679 2001-11-13 Richard M. Stallman <rms@gnu.org>
20680
20681 * print.c (Fprin1_to_string): Doc fix.
20682
20683 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20684
20685 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20686
20687 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20688
20689 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20690
20691 * eval.c (syms_of_eval): Doc fix.
20692
20693 * coding.c (syms_of_coding): Doc fix.
20694
20695 * doc.c (Fsnarf_documentation): Doc fix.
20696
20697 * dispnew.c (syms_of_display): Doc fix.
20698
20699 * category.c (Fget_unused_category): Doc fix.
20700
20701 * buffer.c (syms_of_buffer): Doc fixes.
20702
20703 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
20704
20705 * print.c (prin1, print): Doc fix.
20706
20707 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20708
20709 * fontset.h: Remove declarations of variables
20710 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
20711
20712 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
20713 `Vclip_large_size_font'.
20714
20715 2001-11-13 Jason Rumney <jasonr@gnu.org>
20716
20717 * w32fns.c: Doc fix.
20718
20719 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20720
20721 * xfaces.c (Fface_attributes_as_vector): Doc fix.
20722
20723 * fns.c: Doc fix.
20724
20725 * emacs.c: Doc fix.
20726
20727 * coding.c: Doc fix.
20728
20729 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
20730 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
20731 `new style' [w/`doc:' keyword].
20732
20733 2001-11-12 Richard M. Stallman <rms@gnu.org>
20734
20735 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
20736 LeaveNotify events. Only FocusIn and FocusOut do that now.
20737 (x_display_and_set_cursor): Do display hollow cursors in active
20738 minibuffer windows when they are not selected.
20739
20740 2001-11-12 Jason Rumney <jasonr@gnu.org>
20741
20742 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20743 * w32term.c: Change doc-string comments to `new style'
20744 [w/`doc:' keyword]. Doc fixes.
20745
20746 * w32fns.c: Don't define max.
20747 (Fx_open_connection): Only execute once.
20748
20749 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20750
20751 * ccl.c: Change macros to use do-while block instead of if-else.
20752 Use braces to follow GNU Coding Standards.
20753
20754 2001-11-11 Richard M. Stallman <rms@gnu.org>
20755
20756 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
20757
20758 * lread.c (read_escape): Use end_of_file_error for reporting eof.
20759
20760 * insdel.c (replace_range): Use adjust_markers_for_replace
20761 instead of adjust_markers_for_delete and adjust_markers_for_insert.
20762
20763 * intervals.h (set_text_properties, set_text_properties_1): Declare.
20764
20765 * textprop.c (set_text_properties_1): New subroutine
20766 broken out of set_text_properties.
20767 (set_text_properties): Use set_text_properties_1.
20768
20769 * intervals.c (graft_intervals_into_buffer):
20770 Use set_text_properties_1 to clear out properties.
20771
20772 * search.c (Freplace_match): Use replace_range to insert
20773 and delete. Don't request property inheritance from
20774 surrounding text.
20775
20776 2001-11-10 Jason Rumney <jasonr@gnu.org>
20777
20778 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
20779 vertical fonts. Allow them if face name is explicitly specified.
20780 Do not give up if we find a font that cannot be converted to an xlfd.
20781
20782 2001-11-10 Gerd Moellmann <gerd@gnu.org>
20783
20784 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
20785 instead of malloc/free.
20786
20787 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20788
20789 * xfaces.c (merge_face_vectors): Use braces to follow GNU
20790 Coding Standards.
20791 (Finternal_set_lisp_face_attribute): Likewise.
20792
20793 * buffer.c (Fbury_buffer): Likewise.
20794
20795 * indent.c (current_column_1): Remove unused variable `prev_col'.
20796
20797 * coding.c (encode_coding): Use precomputed value of `src'.
20798 (encode_coding): Remove unused variable `src_end'.
20799 (code_convert_region): Remove unused variables `count'.
20800
20801 2001-11-07 Jason Rumney <jasonr@gnu.org>
20802
20803 * w32term.c (x_display_and_set_cursor): Do not move system caret
20804 if cursor_glyph is NULL.
20805
20806 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20807
20808 * keymap.c (access_keymap): Fix compilation error.
20809
20810 2001-11-07 Miles Bader <miles@gnu.org>
20811
20812 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
20813
20814 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20815
20816 * intervals.c (graft_intervals_into_buffer):
20817 Remove #ifdef'd-out code.
20818 (graft_intervals_into_buffer): Remove unused variable `middle'.
20819
20820 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
20821 code (eval-current-buffer).
20822 Change doc-string comments to `new style' [w/`doc:' keyword].
20823
20824 2001-11-06 Richard M. Stallman <rms@gnu.org>
20825
20826 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
20827
20828 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
20829
20830 * lread.c (read1): Fix behavior with nested backquoting.
20831
20832 * keyboard.c (make_lispy_event): Check integerness and fix
20833 Lisp_Object/int mixup.
20834
20835 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20836
20837 * fns.c (copy_hash_table): Remove unused variable `v'.
20838
20839 * fontset.c (fontset_font_pattern): Remove unused variable
20840 `family_registry'.
20841
20842 * indent.c (current_column_1): Remove unused variable `prev_col'.
20843
20844 2001-11-05 Richard M. Stallman <rms@gnu.org>
20845
20846 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
20847
20848 * buffer.c (Fkill_buffer): Don't delete auto save file
20849 if buffer is modified.
20850
20851 2001-11-05 Andrew Innes <andrewi@gnu.org>
20852
20853 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
20854 CHECK_NUMBER_CDR.
20855
20856 2001-11-05 Richard M. Stallman <rms@gnu.org>
20857
20858 * unexelf.c (unexec): Minor changes; clean up comments.
20859
20860 2001-11-05 Sam Steingold <sds@gnu.org>
20861
20862 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
20863
20864 2001-11-05 Andreas Schwab <schwab@suse.de>
20865
20866 * sound.c (sound_perror): Save errno from being clobbered.
20867
20868 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
20869
20870 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
20871 the program image directly.
20872
20873 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20874
20875 * buffer.h (Fbuffer_local_value): Add prototype.
20876
20877 2001-11-04 Richard M. Stallman <rms@gnu.org>
20878
20879 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
20880 and CHECK_BUFFER.
20881
20882 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
20883 (record_char): Likewise.
20884
20885 * keyboard.c (make_lispy_event): Don't insist a drag event must
20886 move to a different buffer position. Instead, check for moving at
20887 least double_click_fuzz.
20888
20889 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
20890
20891 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
20892
20893 * indent.c (current_column_1, Fmove_to_column): Separate the code
20894 for display-table glyphs from the code for buffer text, to fix
20895 bugs in the former.
20896
20897 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
20898
20899 * buffer.c (Fbuffer_local_value): New function.
20900 (syms_of_buffer): Defsubr it.
20901
20902 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
20903 value of `cursor-in-non-selected-windows'.
20904
20905 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
20906 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
20907 (syms_of_xdisp): Initialize it.
20908
20909 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20910
20911 * xfns.c (Fx_create_frame): Doc fix.
20912
20913 * coding.c: Change doc-string comments to `new style' [w/`doc:'
20914 keyword].
20915
20916 * eval.c (top_level_value, top_level_set): Remove commented and
20917 #ifdef'd-out code.
20918 (Fdefvar): Fix usage in doc-string.
20919
20920 2001-11-03 Richard M. Stallman <rms@gnu.org>
20921
20922 * xfns.c: Include unistd.h, if it exists.
20923
20924 * editfns.c: Move the include of ctype.h after unistd.h.
20925
20926 * gmalloc.c: Test BROKEN_PROTOTYPES.
20927
20928 2001-11-03 Ken Raeburn <raeburn@gnu.org>
20929
20930 * lisp.h (CHECK_STRING_CAR): New macro.
20931 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
20932 treating XCAR and XCDR as lvalues.
20933 (openp): Use CHECK_STRING_CAR.
20934 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
20935
20936 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
20937
20938 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
20939 (SIGMASKTYPE): Define.
20940
20941 * syssignal.h (sigunblock): Don't define if already defined.
20942
20943 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20944
20945 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
20946 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
20947 Fix typos in comments.
20948
20949 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
20950 and #ifdef'd-out code.
20951 Fix and reindent comments.
20952
20953 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
20954
20955 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
20956 argument `i' in macros.
20957
20958 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
20959 `i' in macros.
20960
20961 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
20962 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
20963 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
20964 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
20965 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
20966 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
20967 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
20968 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
20969 in macros.
20970
20971 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20972 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
20973 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
20974 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
20975 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
20976 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
20977 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
20978 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
20979 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
20980 (remove unused second argument).
20981
20982 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
20983
20984 * syntax.c (describe_syntax): New wrapper.
20985 (Finternal_describe_syntax_value): Rename from describe_syntax.
20986 Don't insert space at front and \n at the end.
20987 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
20988
20989 * regex.c (re_wctype): Try to fix some warnings.
20990 (regcomp, regexec): Don't forget the __restrict.
20991
20992 2001-11-02 Richard M. Stallman <rms@gnu.org>
20993
20994 * textprop.c (Fget_char_property): Doc fix.
20995
20996 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20997
20998 * process.c (Fstart_process): Add usage to doc-string.
20999
21000 * data.c (Fsetq_default): Ditto.
21001
21002 * callint.c (Finteractive): Ditto.
21003
21004 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21005
21006 * macros.c: Don't include keymap.h any more.
21007
21008 2001-11-01 Richard M. Stallman <rms@gnu.org>
21009
21010 * data.c (Fmake_local_variable): Doc fix.
21011
21012 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21013 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21014
21015 * keymap.c (Fdescribe_buffer_bindings): Print character property
21016 bindings along with or instead of the buffer local map.
21017 Make the overriding maps override what they should.
21018
21019 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21020
21021 * window.c (grow_mini_window): Fix typo in comment.
21022
21023 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21024
21025 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21026 (XTset_vertical_scroll_bar): Likewise.
21027
21028 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21029 instead of IMAGE_BACKGROUND.
21030
21031 * xfns.c (four_corners_best): Reindent.
21032
21033 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21034 Handle :box so that it is possible to specify sexprs.
21035
21036 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21037
21038 * s/hpux11.h: New file.
21039
21040 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21041
21042 * emacs.c (USAGE1): Show command line option --no-window-system
21043 instead of --no-windows in usage.
21044 (standard_args): Rename --no-windows to --no-window-system.
21045 (bug_reporting_address): Follow Emacs coding conventions.
21046
21047 * eval.c (Fcommandp): Doc fix.
21048 Change doc-string comments to `new style' [w/`doc:' keyword].
21049
21050 * frame.c (Fframe_live_p): Doc fix.
21051
21052 * buffer.c (selective-display-ellipses): Doc fix.
21053
21054 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21055
21056 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21057
21058 * xfaces.c (realize_x_face): If C is not a single-byte character,
21059 set the face's colors_copied_bitwise_p instead of the defaulted_p
21060 members which have a different meaning.
21061 (free_face_colors): Do nothing for a face whose colors have been
21062 copied bitwise.
21063
21064 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21065
21066 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21067
21068 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21069 [w/`doc:' keyword].
21070
21071 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21072
21073 * fns.c (require_unwind): Return Lisp_Object.
21074
21075 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21076
21077 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21078 (last-input-char): Revert doc-string to be the same as the
21079 doc-string of `last-input-event'.
21080
21081 * xdisp.c: Fix typos in comments.
21082
21083 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21084
21085 * window.c (grow_mini_window): Handle case that the root
21086 window is already smaller than the nominal mininum height.
21087
21088 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21089
21090 * emacs.c (main): Don't call keys_of_macros any more.
21091
21092 * lisp.h (keys_of_macros): Remove.
21093
21094 * macros.c (keys_of_macros): Remove.
21095
21096 * xfaces.c (Fface_attribute_relative_p): Declare args.
21097
21098 2001-10-30 Jason Rumney <jasonr@gnu.org>
21099
21100 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21101 (enum_font_cb2): Ignore fonts with vertical orientation.
21102
21103 2001-10-30 Richard M. Stallman <rms@gnu.org>
21104
21105 * keyboard.c (Finput_pending_p): Doc fix.
21106
21107 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21108
21109 * xterm.c (x_after_update_window_line): Don't run the code
21110 clearing in borders for rows whose visible height is 0.
21111
21112 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21113 resized_p flag is set. If not set, use the much less flickering
21114 method previously used.
21115
21116 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21117
21118 * frame.h (struct frame) <resized_p>: New member.
21119
21120 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21121 as large as the number of bytes to convert.
21122
21123 * lread.c (to_multibyte): New function.
21124 (read1): Use it.
21125
21126 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21127
21128 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21129
21130 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21131
21132 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21133 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21134 if the row's fill_line_p is set and drawing the last glyph with
21135 DRAW_IMAGE_{RAISED,SUNKEN}.
21136
21137 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21138
21139 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21140
21141 * xmenu.c: Include coding.h and charset.h.
21142 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21143 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21144 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21145 Explicitly set wv->help. Use `TRUE' rather than `True'.
21146 (menu_help_callback): Use empty_string.
21147
21148 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21149 (Fx_popup_dialog): Explicitly init f.
21150 (w32_menu_display_help): Use empty_string.
21151
21152 2001-10-29 Richard M. Stallman <rms@gnu.org>
21153
21154 * fns.c (Frequire): Detect recursive try to require the same
21155 feature 3 or more levels deep, and get error.
21156 (require_unwind): New subroutine.
21157 (require_nesting_list): New variable.
21158 (syms_of_fns): Init and staticpro it.
21159
21160 * print.c (print_object): Clarify indication of insertion type.
21161
21162 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21163
21164 * coding.c (syms_of_coding): Document that locale-coding-system is
21165 used for decoding input on X.
21166
21167 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21168
21169 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21170
21171 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21172 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21173
21174 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21175
21176 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21177 use NO_CURSOR if cursor_in_non_selected_windows is false.
21178
21179 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21180 the slant attribute if FRAME is t.
21181
21182 * xfns.c (x_set_internal_border_width): Set frame garbaged
21183 when X window doesn't exist yet.
21184
21185 * xterm.c (x_after_update_window_line): Clear internal border
21186 in different circumstances.
21187
21188 * xterm.c (XTread_socket) <KeyPress>: Don't use
21189 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21190 <handa@etl.go.jp>.
21191
21192 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21193
21194 * m/ibms390.h: New file. From Adam Thornton
21195 <athornton@sinenomine.net>.
21196
21197 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21198
21199 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21200
21201 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21202 a loop counter.
21203
21204 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21205
21206 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21207
21208 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21209 keyword].
21210 Fix typos in comments.
21211
21212 * emacs.c (bug_reporting_address): New function.
21213 Use it when displaying usage message.
21214
21215 * minibuf.c (read_minibuf): Remove unused external declaration of
21216 variable `Qread_only'.
21217
21218 * keymap.c (access_keymap): Remove unused variable `charset'.
21219
21220 2001-10-28 Miles Bader <miles@gnu.org>
21221
21222 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21223 Remove #ifdef'd-out code.
21224 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21225 (syms_of_xfaces): Initialize them.
21226
21227 2001-10-27 Jason Rumney <jasonr@gnu.org>
21228
21229 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21230 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21231 position using the system caret.
21232
21233 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21234 (w32_system_caret_height, w32_system_caret_x)
21235 (w32_system_caret_y): New variables for tracking system caret.
21236 (w32_initialize): Initialize them.
21237 (x_display_and_set_cursor): Make system caret follow the active cursor.
21238
21239 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21240 New messages types.
21241
21242 * w32term.c (note_mouse_highlight): Clear old help_echo.
21243
21244 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21245
21246 * xterm.c: Fix typo in a comment.
21247
21248 * emacs.c: Fix typos in comments.
21249 Remove unnecessary spaces.
21250 Change doc-string comments to `new style' [w/`doc:' keyword].
21251 (USAGE2): Fix typos in usage string.
21252
21253 * xterm.c: Fix typo in a comment.
21254
21255 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21256 emacs.c.
21257
21258 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21259
21260 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21261 instead of 1/2 line_height in the heuristic for skipping
21262 farther backward when target_y was not reached.
21263
21264 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21265 Display errno only if non-zero.
21266 (sound_warning): New function.
21267 (vox_configure): Don't treat failing to set sample rate as error.
21268 (various places): Improve error messages.
21269
21270 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21271
21272 * fileio.c (Faccess_file): Run the argument filename through
21273 Fexpand_file_name, before using it.
21274
21275 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21276 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21277
21278 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21279
21280 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21281
21282 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21283 Fix clearing in the case of scroll bars on the right.
21284
21285 2001-10-26 Juanma Barranquero <lektu@terra.es>
21286
21287 * w32gui.h (XImage): Add a dummy typedef.
21288
21289 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21290
21291 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21292
21293 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21294
21295 * frame.c (Fframe_parameter): Fix last change.
21296
21297 * fileio.c: Revert last change (which removed old commented-out
21298 version of expand-file-name). Add a comment that explains why
21299 this old version should not be removed.
21300
21301 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21302
21303 * frame.c (Fframe_parameter): Fix a bug whereby some
21304 ``artificial'' frame parameters, like `minibuffer' were not
21305 obtained by calling Fframe_parameters.
21306
21307 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21308 cursor differently.
21309
21310 * xdisp.c (move_it_vertically_backward): Compute line height
21311 differently. Add heuristic to try to be more compatible to 20.x.
21312
21313 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21314
21315 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21316
21317 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21318 boolean.
21319
21320 2001-10-25 Miles Bader <miles@gnu.org>
21321
21322 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21323 BG is a pointer to a structure, not a structure.
21324 (gif_format, png_format): Add missing commas.
21325
21326 2001-10-24 Richard M. Stallman <rms@gnu.org>
21327
21328 * xfaces.c (Fface_attributes_as_vector): New function.
21329 (syms_of_xfaces): Defsubr it.
21330
21331 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21332
21333 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21334 variable `area'.
21335
21336 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21337
21338 * search.c (scan_newline): Remove unused variable `selective_display'.
21339
21340 2001-10-25 Miles Bader <miles@gnu.org>
21341
21342 * dispextern.h (struct image): Add `background',
21343 `background_valid', and `background_transparent' fields.
21344 (image_background, image_background_transparent): New declarations.
21345 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21346 * xfns.c (image_background, image_background_transparent)
21347 (four_corners_best): New functions.
21348 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21349 (gs_format): Add `:background' entry.
21350 (lookup_image): Set IMG's background color if specified.
21351 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21352 when appropriate.
21353 (x_clear_image_1): Reset `background_valid' and
21354 `background_transparent_valid' fields.
21355 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21356 calculating it here. Set IMG's background_transparent field.
21357 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21358 (enum png_keyword_index): Add PNG_BACKGROUND.
21359 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21360 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21361 (enum gif_keyword_index): Add GIF_BACKGROUND.
21362 (enum gs_keyword_index): Add GS_BACKGROUND.
21363 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21364 Pre-calculate image background color where necessary.
21365 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21366 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21367 color to use for image glyph reliefs.
21368
21369 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21370
21371 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21372 in full-width rows.
21373
21374 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21375 Fix clearing of area not covered by scroll bar.
21376
21377 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21378
21379 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21380 and `real_start'.
21381 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21382 (glyph_rect): Remove unused variable `area'.
21383
21384 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21385
21386 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21387
21388 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21389 (row_containing_pos): Take additional argument DY.
21390 Treat rows ending in middle of char differently.
21391 (display_line): Handle tabs on window systems differently.
21392
21393 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21394 with additional argument.
21395
21396 * dispextern.h (row_containing_pos): Adjust prototype.
21397
21398 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21399 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21400 (try_window_id, try_window_reusing_current_matrix)
21401 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21402 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21403
21404 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21405
21406 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21407 gnuemacs).
21408 (HAVE_BOXES): Fix typo in comment.
21409 (push_menu_pane): Fix typo in comment.
21410
21411 * xdisp.c (display_prop_string_p): Remove unused local declaration
21412 of `Qwhen'.
21413 (single_display_prop_string_p): Remove unused local declarations
21414 of `Qwhen' and `Qmargin'.
21415 (string_buffer_position): Remove unused variable `around'.
21416 (store_frame_title): Remove unused variable `width'.
21417
21418 * window.c: Don't define max.
21419 (coordinates_in_window): Remove unused variable `uy'.
21420
21421 * widget.c: Don't define max.
21422
21423 * process.c: Don't define max.
21424 (create_process): Remove unused variable `buffer'.
21425
21426 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21427
21428 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21429
21430 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21431
21432 * xfaces.c (Finternal_set_lisp_face_attribute)
21433 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21434 frame is on a windowed display.
21435
21436 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21437
21438 * dispnew.c (sync_window_with_frame_matrix_rows):
21439 Fix handling of windows which aren't full-width, fix handling
21440 of marginal areas.
21441
21442 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21443
21444 2001-10-23 Andreas Schwab <schwab@suse.de>
21445
21446 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21447 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21448
21449 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21450
21451 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21452 REAL_END. Notice if cursor gets overwritten.
21453 (notice_overwritten_cursor): Take X positions as parameters.
21454 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21455 around call to x_draw_glyphs.
21456
21457 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21458
21459 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21460 instead of C) and usage.
21461
21462 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21463 of C) and usage.
21464
21465 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21466 `left', `max_width' and `max_height'.
21467
21468 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21469
21470 * xdisp.c (display_line): For a tab continued to the next line,
21471 set row's ends_in_middle_of_char_p.
21472
21473 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21474
21475 * xdisp.c (display_line): Fix computation of continuation lines
21476 width for TABs.
21477
21478 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21479
21480 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21481 `Qlaplace'.
21482
21483 * fileio.c: Remove unused code.
21484
21485 2001-10-22 Miles Bader <miles@gnu.org>
21486
21487 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21488 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21489 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21490
21491 2001-10-21 Jason Rumney <jasonr@gnu.org>
21492
21493 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21494
21495 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21496
21497 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21498 (Finsert_string): Avoid the multi-line string literals warning.
21499
21500 2001-10-22 Miles Bader <miles@gnu.org>
21501
21502 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21503 (Fdocumentation): Don't use it.
21504 (syms_of_doc): Don't initialize it.
21505
21506 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21507 * print.c (Fwith_output_to_temp_buffer): Likewise.
21508 * window.c (Fsave_window_excursion): Likewise.
21509 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21510 (Fsave_restriction): Likewise.
21511 * eval.c (Frun_hooks, Frun_hook_with_args)
21512 (Frun_hook_with_args_until_failure)
21513 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21514 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21515 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21516 (Funwind_protect, Fcondition_case): Likewise.
21517 * coding.c (Ffind_operation_coding_system): Likewise.
21518 * keyboard.c (Ftrack_mouse): Likewise.
21519
21520 2001-10-21 Miles Bader <miles@gnu.org>
21521
21522 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21523 (Fmake_hash_table): Add usage: string to doc string.
21524 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21525 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21526 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21527 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21528 (Fml_prefix_argument_loop): Likewise.
21529
21530 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21531
21532 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21533
21534 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21535 style' [w/`doc:' keyword].
21536
21537 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21538 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21539 comments to `new style' [w/`doc:' keyword].
21540
21541 2001-10-21 Jason Rumney <jasonr@gnu.org>
21542
21543 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21544
21545 * w32term.c (remember_mouse_glyph): New function.
21546 (w32_mouse_position): Use it.
21547 (note_mouse_movement): If the mouse moved off the glyph, remember
21548 its new position.
21549
21550 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21551 (w32_display_info): Add mouse_face_overlay.
21552
21553 * w32term.c (notice_overwritten_cursor): Renamed from
21554 note_overwritten_text_cursor. Rewritten to take glyph widths into
21555 account.
21556 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21557 (fast_find_string_pos): New function.
21558 (fast_find_position): Return the correct vpos. Add parameter
21559 STOP. In the final row, stop before glyphs having STOP as object.
21560 Don't consider glyphs that are not from a buffer.
21561 (fast_find_position) [0]: Add a presumably more correct version
21562 for after 21.1.
21563 (expose_window_tree, expose_frame): Don't compute intersections here.
21564 (expose_window): Do it here instead.
21565 (expose_window_tree, expose_window, expose_line): Return 1 when
21566 overwriting mouse-face.
21567 (expose_window): If W is the window currently being updated, mark
21568 the frame garbaged.
21569 (expose_frame): If mouse-face was overwritten, redo it.
21570 (x_use_underline_position_properties): New variable.
21571 (syms_of_xterm): DEFVAR_BOOL it.
21572 (x_draw_glyph_string): Add comment to use it in future.
21573 (x_draw_glyph_string): Restore clipping after drawing box.
21574 Fix a computation of the underline position.
21575 (w32_get_glyph_string_clip_rect): Minor cleanup.
21576 (x_fill_stretch_glyph_string): Remove an assertion.
21577 (x_produce_glyphs): Don't convert multibyte characters
21578 to unibyte characters in unibyte buffers.
21579 (cursor_in_mouse_face_p): New function.
21580 (x_draw_stretch_glyph_string): Use it to choose a different GC
21581 when drawing a cursor within highlighted text. Don't draw
21582 background again if it has already been drawn.
21583 (x_draw_glyph_string_box): Don't draw a full-width
21584 box just because the glyph row's full_width_p flag is set.
21585 (x_draw_glyphs): Fix computation of rightmost x for
21586 full-width rows.
21587 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21588 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21589 change bottom shadow accordingly. Some cleanup.
21590 (x_update_window_end): Handle overwritten mouse face
21591 also for tool bar windows.
21592 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21593 DRAW is DRAW_IMAGE_RAISED.
21594 (clear_mouse_face): Return 1 if text with mouse face was
21595 actually redrawn. Make the function static.
21596 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21597 optimize away highlighting if we pass over that same overlay again.
21598 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21599 to detect a case where we have to highlight a different region
21600 despite not having left the currently highlighted region.
21601 Set mouse_face_overlay in the x_display_info. Avoid changing the
21602 mouse pointer shape when show_mouse_face has already done it, or
21603 there is no need. Handle mouse-face and help-echo in strings.
21604 (glyph_rect): New function.
21605 (w32_mouse_position): Use it to raise the threshold for mouse
21606 movement event generation.
21607 (w32_initialize_display_info): Initialize the x_display_info's
21608 mouse_face_overlay.
21609 (w32_set_vertical_scroll_bar): Don't clear a zero height
21610 or width area.
21611 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21612 a widget to zero height.
21613
21614 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21615 Protect unibyte strings created by replacing their multibyte
21616 equivalents in menu_items.
21617 (w32_menu_show): Don't overwrite an item's name with its key
21618 description in case the description is a multibyte string.
21619 (single_submenu): Some cleanup.
21620
21621 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21622 (postprocess_image): New function.
21623 (lookup_image): Call it for all image types except PostScript.
21624 (x_kill_gs_process): Call postprocess_image.
21625 (tiff_error_handler, tiff_warning_handler): New functions.
21626 (tiff_load): Install them as handlers.
21627 (x_kill_gs_process): Recognize if someone has cleared the image
21628 cache under us.
21629 (valid_image_p): Protect better against invalid image
21630 specifications. Previous code could signal an error.
21631 (Fx_hide_tip, Fshow_tip): Doc fix.
21632 (Fv_max_tooltip_size): New variable.
21633 (syns_of_xfns): DEFVAR_LISP it.
21634 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21635 window buffer to *tip* right after creating the frame. Set frame's
21636 window_width. Use a maximum tooltip size specified by
21637 Vx_max_tooltip_size, if that has valid contents.
21638 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21639 Make sure the tooltip is completely visible.
21640 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21641 (Fx_create_frame): Adjust the frame's height for presence
21642 of the tool bar before calling x_figure_window_size.
21643 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21644 when the window gets smaller.
21645 (x_set_foreground_color): Set frame's cursor_pixel.
21646 (x_set_foreground_color, x_set_background_color): Cleaned up.
21647 (x_set_font): Handle case of x_new_fontset returning the same name
21648 as before, although there was a change in fontsets.
21649
21650 2001-10-21 Miles Bader <miles@gnu.org>
21651
21652 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21653 (Flogxor): Add usage: string to doc string.
21654 * charset.c (Fstring): Likewise.
21655 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21656 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21657
21658 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21659
21660 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21661
21662 * alloc.c: Reindent DEFUNs with doc: keywords.
21663
21664 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21665
21666 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21667 keyword].
21668
21669 See ChangeLog.9 for earlier changes.
21670
21671 ;; Local Variables:
21672 ;; coding: iso-2022-7bit
21673 ;; End:
21674
21675 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21676 Copying and distribution of this file, with or without modification,
21677 are permitted provided the copyright notice and this notice are preserved.
21678
21679 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4