* xmenu.c (popup_get_selection): Pop down on C-g.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
9f6fcdc5
JD
12004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xmenu.c (popup_get_selection): Pop down on C-g.
4 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5 pops down menu on C-g.
6 (xdialog_show): If dialog popped down and no button in the dialog was
7 pushed, call Fsignal to quit.
8 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
9 Fsignal to quit.
10
11 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
12
13 * gtkutil.c (xg_initialize): Install bindings for C-g so that
14 dialogs and menus pop down.
15
857ae68b
JD
162004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17
133c0116
JD
18 * gtkutil.c (update_frame_tool_bar): Make the value of
19 tool-bar-button-margin control margins of images in tool bar.
20
857ae68b
JD
21 * alloc.c (check_depth): New variable.
22 (overrun_check_malloc, overrun_check_realloc): Only add
23 overhead and write check pattern if check_depth is 1 (to handle
24 recursive calls). Increase/decrease check_depth in entry/exit.
25 (overrun_check_free): Only check for overhead if check_depth is 1.
26 Increase/decrease check_depth in entry/exit.
27
bd55c35c
JD
282004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
29
30 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
31 before touching input_available_clear_time, to avoid accessing it
32 from multiple threads.
33
66354420
JR
342004-12-23 Jason Rumney <jasonr@gnu.org>
35
36 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
37 of JPEG library.
38
55f4edbc
RS
392004-12-22 Richard M. Stallman <rms@gnu.org>
40
41 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
42
43 * lisp.h (Vundo_outer_limit): Fix decl.
44
45 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
46 Uses changed.
47 (syms_of_undo): Initialize appropriately.
48 (truncate_undo_list): If it's nil, there's no limit.
49
7a0ea9e3
KH
502004-12-22 Kenichi Handa <handa@m17n.org>
51
52 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
53
fda2922a
RS
542004-12-21 Richard M. Stallman <rms@gnu.org>
55
56 * eval.c (unwind_to_catch): Clear immediate_quit.
57
58 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
59 specially as `\ ' and `\-'.
60
61 * keyboard.c (kbd_buffer_store_event_hold):
62 In the code for while-no-input, handle immediate_quit.
63
64 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
65 Call that at the very start.
66 (undo_limit, undo_strong_limit, undo_outer_limit): Moved to undo.c.
67 (syms_of_alloc): Don't define undo-limit,
68 undo-strong-limit and undo-outer-limit here.
69
70 * undo.c (truncate_undo_list): Return void.
71 Take just one argument, the buffer.
72 Make it current, and inhibit recursive GC.
73 Access and update the undo list directly; return void.
74 Refer to the undo...limit variables directly.
75 Test undo_outer_limit only after counting the whole current command.
76 When it's exceeded, call the function in undo-outer-limit-function.
77 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
78 (Vundo_outer_limit_function): New variable.
79 (syms_of_undo): Define undo-limit, undo-strong-limit
80 and undo-outer-limit here, and undo-outer-limit-function.
81 Doc fixes.
82
83 * lisp.h (truncate_undo_list): Update decl.
84
852004-12-21 Piet van Oostrum <piet@cs.uu.nl>
86
87 * fileio.c (Fread_file_name): Delete duplicates in
88 file-name-history when history_delete_duplicates is true.
89
68c69027
ST
902004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
91
92 * macterm.c (mac_do_list_fonts): Fix memory leak
93
134579f2
RS
942004-12-20 Richard M. Stallman <rms@gnu.org>
95
96 * regex.c (re_match_2_internal) <symend, wordend>:
97 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
98
fbe6152f
ST
992004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
100
101 * macterm.c (endif, x_font_name_to_mac_font_name): Use
102 maccentraleurroman instead of maccentraleuropean
103 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
104 quickly finding a specific font without needing regexps.
105
fecad3f6
JD
1062004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
107
333f1b6f
JD
108 * syssignal.h: Declare main_thread.
109 (SIGNAL_THREAD_CHECK): New macro.
110
111 * keyboard.c (input_available_signal): Move thread checking code
112 to macro SIGNAL_THREAD_CHECK and call that macro.
113 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
114
115 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
116
117 * emacs.c: Define main_thread.
118 (main): Initialize main_thread.
119 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
120 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
121
122 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
123
124 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
125
126 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
127
128 * process.c (send_process_trap, sigchld_handler): Call
129 SIGNAL_THREAD_CHECK.
130
131 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
132
133 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
134
fecad3f6
JD
135 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
136 returning when xg_ignore_gtk_scrollbar is true.
137
2a84c6da
KS
1382004-12-14 Kim F. Storm <storm@cua.dk>
139
140 * keyboard.c (read_char): Save and restore echo_string when
141 handling input method.
142
d9c1ce9d
RS
1432004-12-13 Richard M. Stallman <rms@gnu.org>
144
145 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
146
147 * keyboard.c (Vthrow_on_input): New variable.
148 (syms_of_keyboard): Defvar and initialize it.
149 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
150
151 * lisp.h (QUIT): Check for Vthrow_on_input.
152 (Vthrow_on_input): Declare it.
153
a6495ed5
KS
1542004-12-13 Kim F. Storm <storm@cua.dk>
155
156 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
157 vector.
158
24a0e22f
RS
1592004-12-12 Richard M. Stallman <rms@gnu.org>
160
161 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
162
163 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
164 (Ftry_completion): Really use outer `zero'; eliminate inner one.
165
d6d31e57
KH
1662004-12-12 Kenichi Handa <handa@m17n.org>
167
168 * term.c (encode_terminal_code): Fix previous change.
169
6f8ffb88
SM
1702004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
171
fb6f5cbf
SM
172 * keyboard.c (handle_async_input): Remove pthread mutex handling.
173 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
174
6f8ffb88
SM
175 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
176 in macro arguments.
177
178 * minibuf.c (Ftry_completion, Fall_completions): Don't use
179 XFASTINT blindly.
180
181 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
182
c83c9f9d
JD
1832004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
184
2f25767f
JD
185 * w32term.c (x_calc_absolute_position): Remove calculation of
186 difference between inner and outer window. Don't subtract difference
187 for left and top calculations.
188
c83c9f9d
JD
189 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
190 for left and top calculations. Remove call to x_real_positions.
24a0e22f 191 [Bug report by Drew Adams in November]
c83c9f9d
JD
192 (x_check_expected_move): Do not set change_gravity to 1 when calling
193 x_set_offset.
194
cc1caa4e
RS
1952004-12-08 Richard M. Stallman <rms@gnu.org>
196
197 * xdisp.c (get_next_display_element): Use `escape-glyph' for
198 control chars and escaped octal codes.
199 (Qescape_glyph): New variable.
200 (syms_of_xdisp): Initialize it.
201 (escape_glyph_face): New variable.
202 (redisplay_window): Initialize it.
203
e0e30823
RS
2042004-12-07 Paul Eggert <eggert@cs.ucla.edu>
205
206 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
207 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
208
f415cacd
JD
2092004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
210
cf435f39
JD
211 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
212 reset_malloc_hooks.
213
6f8ffb88
SM
214 * keyboard.c (handle_async_input, input_available_signal):
215 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 216
f415cacd
JD
217 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
218
19b1f29a
SM
2192004-12-07 Stefan <monnier@iro.umontreal.ca>
220
221 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
222
223 * config.in: Regenerate.
224
ded997c1
JD
2252004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
226
453a4f1b
JD
227 * xmenu.c (Fx_popup_menu): Correct documentation about position.
228 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
229 if not given by a mouse click to correspond with x-popup-menu
230 documentation.
231
9a38524c
JD
232 * config.in: Regenerate.
233
aa477689
JD
234 * gtkutil.c: Include signal.h and syssignal.h.
235 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
236
237 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
238 new variables main_thread and alloc_mutex,
239 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
240 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
241 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
242 (UN)BLOCK_INPUT.
243 (emacs_blocked_free, emacs_blocked_malloc)
244 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
245 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
246 (reset_malloc_hooks): New function.
247
248 * lisp.h: Declare reset_malloc_hooks.
249
250 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
251
252 * keyboard.c: Conditionally include pthread.h
6f8ffb88 253 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
254 thread, block signal, send signal to main thread and return.
255
ded997c1 256 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 257 Set current folder in file chooser if default_filename is a directory.
ded997c1 258
c72b0edd
SM
2592004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
260
261 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
262 Remove redundant correctness checks.
263 (regex_compile): Fix up error codes for \{..\} expressions.
264
c721eee5
RS
2652004-12-05 Richard M. Stallman <rms@gnu.org>
266
267 * regex.c (regex_compile): Fix end-of-pattern case for space.
268
d8f96db8
ST
2692004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
270
6108209e
KS
271 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
272 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 273 crashes with invalid characters.
6108209e
KS
274 * macmenu.c (add_menu_item): Use it.
275 * image.c (image_load_quartz2d): Likewise.
276 * macfns.c (x_set_name, x_set_title): Likewise.
277 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
278 creating them each time for labels.
d8f96db8 279
ab67e8b6
RS
2802004-12-02 Richard M. Stallman <rms@gnu.org>
281
282 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
283 don't use it here.
284
285 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
286 (interactive_p): Skip Scalled_interactively_p frames
287 like Sinteractive_p frames.
b8217ea6 288 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
289
290 * data.c (Fmake_variable_buffer_local): Doc fix.
291 (Fmake_local_variable): Doc fix.
292
293 * insdel.c (insert_from_string_before_markers)
294 (insert_from_string): Don't modify buffer on empty insertion.
295
296 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
297
f86bdc80
ST
2982004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
299
300 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
301 menu text as UTF8 fails.
302
1cae6d39
KS
3032004-12-01 Kim F. Storm <storm@cua.dk>
304
305 * alloc.c: Add commentary for last change.
306 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
307 sizeof(size_t) != 4.
308 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
309 Use them. Also clear header and trailer of freed memory.
310 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
311 (string_overrun_cookie): Rename from string_overrun_pattern.
312 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
313
77ea0764
AS
3142004-12-01 Andreas Schwab <schwab@suse.de>
315
316 * lisp.h: Declare string_to_multibyte.
317
2d5cd4e6
KH
3182004-12-01 Kenichi Handa <handa@m17n.org>
319
320 * w32console.c (w32con_write_glyphs): Decide coding here.
321 Adjusted for the change of encode_terminal_code.
322
323 * term.c (encode_terminal_code): Don't make it "static".
324
25a0994a
KH
3252004-11-30 Kenichi Handa <handa@m17n.org>
326
19b1f29a 327 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 328 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
329 characters at once, and return a pointer to the result of encoding.
330 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
331 (insert_glyphs): Likewise.
332 (term_init): Initialize encode_terminal_bufsize to 0.
333
334 * coding.c (Vcode_conversion_workbuf_name): New variable.
335 (syms_of_coding): Initialize and staticpro it.
336 (set_conversion_work_buffer): New function.
337 (run_pre_post_conversion_on_str): Use it.
338 (run_pre_write_conversin_on_c_str): New function.
339
340 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
341
fc7a70cc
ST
3422004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
343
344 * keyboard.c: Don't undef SIGIO
345 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
346 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
347 (macfns.o): Don't depend on ccl.h.
348 * macfns.c (mac_frame_parm_handlers): Set handlers for
349 Qleft_fringe and Qright_fringe.
350 * macterm.c (mac_fill_rectangle_to_pixmap)
351 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
352 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
353 Put in #if 0.
354 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
355 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
356 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
357 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
358 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
359 XDrawImageString. Always draw background and foreground separately.
360 (x_draw_image_foreground): Use clipping instead of computing the
361 intersection rectangle.
362 (x_draw_image_glyph_string): Don't draw an image with mask to a
363 pixmap.
364 (x_redisplay_interface): Set flush_display_optional member to 0.
365 (XTread_socket): Correctly reset the TEConverter
366 object.
367
fc368889
KS
3682004-11-30 Kim F. Storm <storm@cua.dk>
369
370 * lisp.h: New defines to enable buffer overrun checking.
371 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
372 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
373
374 * alloc.c: Add more checks for buffer overruns.
375 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
376 xmalloc_overrun_check_trailer, overrun_check_malloc)
377 overrun_check_realloc, overrun_check_free): Add.
378 (GC_STRING_EXTRA, string_overrun_pattern): Add.
379 (check_sblock, allocate_string_data, compact_small_strings):
380 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
381 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
382 (check_string_free_list): Add.
383 (allocate_string, sweep_strings): Call check_string_free_list.
384
385 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
386 XMALLOC_OVERRUN_CHECK to avoid crash during load.
387
0af8cfe1
KS
3882004-11-29 Kim F. Storm <storm@cua.dk>
389
390 * fns.c (concat): Use SAFE_ALLOCA.
391
77220eeb
SM
3922004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
393
394 * sysdep.c (emacs_write): Don't use QUIT.
395
a778cf63
KH
3962004-11-29 Kenichi Handa <handa@m17n.org>
397
398 * buffer.c (init_buffer): Set current_buffer->directory to a
399 multibyte string made by string_to_multibyte.
400
77220eeb 401 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 402
e3177e43
AS
4032004-11-27 Andreas Schwab <schwab@suse.de>
404
405 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
406
407 * s/gnu-linux.h: Enable no-op gcpros on ia64.
408 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
409
77220eeb
SM
410 * filelock.c (lock_file_1): Call get_boot_time early.
411 Increase buffer size.
e3177e43 412
ca5e6fef
EZ
4132004-11-27 Eli Zaretskii <eliz@gnu.org>
414
415 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
416 is not defined.
417
e2811828
KS
4182004-11-27 Kim F. Storm <storm@cua.dk>
419
420 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
421 marker out of doc string.
422
7a262394
SM
4232004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
424
425 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
426 which was not mentioned in the log.
427
f33cc5a9
KS
4282004-11-26 Kim F. Storm <storm@cua.dk>
429
048bb03f
KS
430 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
431 angle bitmaps at top/bottom line.
432
f33cc5a9
KS
433 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
434 set it when it->method is set to next_element_from_display_vector.
435 (setup_for_ellipsis): Add LEN argument. Callers changed.
436 Set it->saved_face_id.
437 (get_next_display_element): Use loop instead of recursion.
438 Set it->saved_face_id. Combine duplicate code for ctr chars.
439 (next_element_from_display_vector): Do not set it->saved_face_id.
440 (next_element_from_ellipsis): Use setup_for_ellipsis.
441
670e8906
EZ
4422004-11-26 Eli Zaretskii <eliz@gnu.org>
443
444 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
445 prevent compiler warnings.
446
275464e7
SM
4472004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
448
1bf0e604
SM
449 * keyboard.c (command_loop_1): Print a message describing the key
450 the user just pressed when this key has no binding.
451
275464e7
SM
452 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
453 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
454
455 * lread.c (readchar): Check QUIT when `getc' is interrupted.
456
261b01c6
RS
4572004-11-24 Richard M. Stallman <rms@gnu.org>
458
459 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
460
461 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
462
a5bd504e
KS
4632004-11-24 Kim F. Storm <storm@cua.dk>
464
465 * xdisp.c (move_it_in_display_line_to, display_line):
466 Restore saved_face_id also when truncate-lines or hscrolled.
467
255e4140
JD
4682004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
469
470 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
471 x-use-old-gtk-file-dialog.
472
473 * xfns.c: Define x_use_old_gtk_file_dialog.
474 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
475 outside ifdef USE_GTK.
476
cab27d04
SM
4772004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
478
479 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
480 Don't use XFASTINT blindly.
481
482 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
483
484 * indent.c (skip_invisible): Avoid non-idempotent side-effects
485 in macro arguments.
486
487 * keymap.c (Flookup_key): Check INTEGERP before XINT.
488
489 * lread.c (oblookup): Don't use XFASTINT blindly.
490
491 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
492 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
493
11e0be49
KS
4942004-11-23 Kim F. Storm <storm@cua.dk>
495
4d721114
KS
496 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
497 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
498
11e0be49
KS
499 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
500 signal_p is zero and face name is unknown.
501 (Fx_list_fonts): Don't signal error in lookup_named_face.
502 (Fface_font): Signal error in lookup_named_face.
503 (ascii_face_of_lisp_face): Likewise.
504
505 * dispextern.h (lookup_named_face): Fix prototype.
506
507 * xdisp.c (handle_single_display_prop): Don't signal error in
508 lookup_named_face for unknown fringe face name.
509 (highlight_trailing_whitespace): Don't signal error in
510 lookup_named_face if trailing-whitespace face unknown.
511 (calc_line_height_property): Don't signal error in
512 lookup_named_face if specified face name is unknown.
513
514 * fringe.c (update_window_fringes): Show top row indicator if
515 window has header-line. Don't show arrow at bob and eob
516 if the boundary indicators are not used.
517 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
518
519 * window.c (set_window_buffer): Clear display_error_modiff.
520
0960a582
KS
5212004-11-22 Kim F. Storm <storm@cua.dk>
522
523 * fringe.c (update_window_fringes): Provide sensible fall-back
524 value for non-nil indicate-buffer-boundaries setting.
525
b0e9bb28
MR
5262004-11-22 Markus Rost <rost@ias.edu>
527
528 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
529
d0bce91e
SM
5302004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
531
532 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
533
e1814672
KS
5342004-11-21 Kim F. Storm <storm@cua.dk>
535
b7fd3518
KS
536 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
537
538 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
539 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
540
541 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
542 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
543
544 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
545 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
546
d0bce91e
SM
547 * xdisp.c (move_it_in_display_line_to, display_line):
548 Restore saved_face_id if overflow-newline-into-fringe is enabled and
549 line is continued before or in middle of element from display vector.
f01d4d05 550
f1a61389
KS
551 * indent.c (Fvertical_motion): Fix last change. Use another
552 method to detect if iterator moved too far ahead after reseat.
553
e1814672
KS
554 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
555 expand matrix width for overflow in zero-width area.
556 (append_glyph, append_composite_glyph, produce_image_glyph)
557 (append_stretch_glyph): Use it to avoid loop in redisplay.
558 (note_mode_line_or_margin_highlight): Don't let help-echo from
559 string override help-echo from image map.
560
2dafe1c9
LT
5612004-11-20 Luc Teirlinck <teirllm@auburn.edu>
562
d0bce91e 563 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
564 * callint.c (Fcall_interactively): Ditto.
565
fd6866c8 5662004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
567
568 * minibuf.c (Fminibuffer_complete_and_exit):
569 Fixup the case of the completed value, for case-indep completion.
570
dedbac89
RS
5712004-11-20 Richard M. Stallman <rms@gnu.org>
572
fd6866c8
RS
573 * lisp.h (Fread_from_minibuffer): Add arg in decl.
574
9d00469f 575 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 576 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 577
dedbac89 578 * search.c (Vsearch_spaces_regexp):
d0bce91e 579 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 580
2f672bb5
TTN
5812004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
582
583 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
584
f31a9a68
RS
5852004-11-19 Richard M. Stallman <rms@gnu.org>
586
587 * search.c (Vsearch_whitespace_regexp): New variable.
588 (syms_of_search): Defvar it.
589 (compile_pattern_1): Call re_set_whitespace_regexp with it.
590 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
591 is non-nil.
6de891db
RS
592 (struct regexp_cache): New element whitespace_regexp.
593 (syms_of_search): Initialize whitespace_regexp elements.
594 (compile_pattern): Compare whitespace_regexp elements.
595 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
596
597 * regex.c (regex_compile): Substitute whitespace_regexp
598 for spaces, if it is nonzero.
599 (whitespace_regexp): New variable.
600 (re_set_whitespace_regexp): New function.
601
cbc34cb3
KS
6022004-11-19 Kim F. Storm <storm@cua.dk>
603
604 * indent.c (Fvertical_motion): Fix last change.
605
b54a7539
KS
6062004-11-18 Kim F. Storm <storm@cua.dk>
607
608 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
609 Instead, move back again if reseating moves too far ahead.
610
6112004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
612
613 * xdisp.c (message3): Call clear_message.
614
5ff504fe
KS
6152004-11-17 Kim F. Storm <storm@cua.dk>
616
617 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
618
5ae53dcf
JD
6192004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
620
d0bce91e 621 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 622
6abf3a27 623 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
624 (x_menu_set_in_use): Also set popup_activated_flag.
625
5ff504fe 626 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
627 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
628
6abf3a27 629 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 630
ee31cd78
RS
6312004-11-16 Richard M. Stallman <rms@gnu.org>
632
6abf3a27
SM
633 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
634 Use map-keymap-internal to implement that.
ee31cd78
RS
635
636 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
637
6abf3a27
SM
6382004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
639
640 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
641 a window before using XWINDOW.
642
643 * window.c (make_window, Fselect_window, make_dummy_parent)
644 (save_window_save):
645 * frame.c (make_frame):
646 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
647
648 * lisp.h (NILP): Use EQ rather than XFASTINT.
649
b4d61105
KS
6502004-11-16 Kim F. Storm <storm@cua.dk>
651
6abf3a27 652 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 653
b4d61105
KS
654 * indent.c (Fvertical_motion): Fix last change. Only reseat when
655 moving backwards.
656
6572004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
658
659 * dispextern.h: Extern reseat_at_previous_visible_line_start.
660
ab5b02b0
KH
6612004-11-16 Kenichi Handa <handa@m17n.org>
662
663 * xdisp.c (display_mode_element): Fix previous change (calculate
664 end position of substring to display correctly).
665
c482cf97
KS
6662004-11-16 Kim F. Storm <storm@cua.dk>
667
668 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
669 Reported by Andrew M. Scott.
670
9f89426b
KS
6712004-11-15 Kim F. Storm <storm@cua.dk>
672
673 * fns.c (Fsafe_plist_get): New defun.
674 (syms_of_fns): Defsubr it.
675
676 * lisp.h (Fsafe_plist_get): Add EXFUN.
677
678 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
679 Use Fsafe_plist_get.
680 (note_mode_line_or_margin_highlight, note_mouse_highlight):
681 Fix image map element parsing. Use Fsafe_plist_get.
682
27418463
RS
6832004-11-15 Richard M. Stallman <rms@gnu.org>
684
685 * xdisp.c (get_next_display_element): Fix previous change.
686
a130b901
JD
6872004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
688
ef614e04
JD
689 * window.c (shrink_windows): Handle special case of one window left
690 when trying to shrink the final reminder. Grow windows if
691 total_removed is less than total_shrink.
692
a130b901
JD
693 * xmenu.c (pop_down_menu): Remove global variable current_menu,
694 extract pointer from arg with XSAVE_VALUE.
46303896
KS
695 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
696 Construct arg to record_unwind_protect with make_save_value.
a130b901 697
d9a03ad2
RS
6982004-11-13 Richard M. Stallman <rms@gnu.org>
699
700 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
701 (get_next_display_element): Fix previous change to apply only to \n.
702
703 * indent.c (Fvertical_motion): Scan to PT from start of line to
704 make iterator consistent.
705
706 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
707
b3935289
JD
7082004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
709
710 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
711
712 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
713 Record unwind with clean_up_file_dialog.
714
78819ebb
KS
715 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
716 Declare.
b3935289
JD
717
718 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
719
af89e871
JD
7202004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
721
457a8155 722 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 723 (xg_file_sel_destroy): Remove.
46303896
KS
724 (xg_file_response_cb, pop_down_file_dialog)
725 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 726 New functions.
6abf3a27
SM
727 (xg_get_file_with_chooser, xg_get_file_with_selection):
728 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
729 Move common code to xg_get_file_name. Return widget created.
730 (xg_get_file_name): Set name, transient for, modal and destroy
731 with parent here. Connect response signal to xg_file_response_cb,
732 connect delete-event to gtk_true. Record pop_down_file_dialog
733 for unwind. Do event loop and call x_menu_wait_for_event in loop.
734 (xg_create_widget): Make dialogs modal.
735
af89e871
JD
736 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
737 Lisp_Object.
738 (popup_get_selection): Move unwind protect ...
739 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
740 Move destroy of widget to pop_down_menu.
741 (popup_widget_loop): Move unwind protect ...
742 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
743 Move destroy of widget to pop_down_menu.
744 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 745 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
746 x_mouse_leave and grabbed = 0 to pop_down_menu.
747
5596fbf1
KS
7482004-11-13 Kim F. Storm <storm@cua.dk>
749
750 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
751 (syms_of_xdisp): DEFVAR_BOOL it.
752 (make_cursor_line_fully_visible, try_cursor_movement)
753 (try_window_id): Use it.
754
b9de078a
KS
7552004-11-12 Kim F. Storm <storm@cua.dk>
756
381f7091
KS
757 * dispextern.h (struct glyph_row): New member extra_line_spacing.
758 (struct it): New member max_extra_line_spacing.
759 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
760 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
761 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
762 part of last line is only extra line spacing (so the text on the
763 line is fully visible). Use helper macros.
764 Add W arg (to use them). All callers changed.
765 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
766 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
767
6abf3a27
SM
768 * window.c (window_scroll_pixel_based, Frecenter):
769 Use move_it_vertically_backward directly.
381f7091
KS
770 (Frecenter): Fix calculation of new start pos for negative arg.
771 Before, the new start pos was sometimes chosen too far back, so
772 the last line became only partially visible, and thus would be
773 either only semi-visible or automatically scrolled to the middle
774 of the window by redisplay.
775
776 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
777 (move_it_vertically_backward): Don't recure to move further back.
778 (move_it_vertically): Remove superfluous condition.
779 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 780 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
781 (display_tool_bar_line): Clear row->extra_line_spacing.
782 (try_scrolling): Use move_it_vertically_backward directly.
783 (redisplay_window): Likewise.
784 (compute_line_metrics): Set row->extra_line_spacing.
785 (display_line, display_string): Likewise.
786 (x_produce_glyphs): Update it->max_extra_line_spacing.
787
b9de078a
KS
788 * xmenu.c (pop_down_menu): Return nil.
789
c3438661
JD
7902004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
791
792 * xmenu.c (x_menu_wait_for_event): New function.
793 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
794 to handle timers.
df00f436
JD
795 (popup_widget_loop): Add argument do_timers.
796 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
797 do_timers to popup_widget_loop.
c3438661
JD
798 (xmenu_show): Call XMenuActivateSetWaitFunction so that
799 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 800 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 801 popup_get_selection.
f1d1cd24
JD
802 (pop_down_menu): New function.
803 (popup_get_selection, popup_widget_loop): Unwind protect to
804 pop_down_menu.
805 (popup_widget_loop): Add argument widget.
806 (create_and_show_popup_menu, create_and_show_dialog): Pass new
807 argument widget to popup_widget_loop.
c3438661 808
32e2fb04
SM
8092004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
810
811 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
812
0faf6806
KS
8132004-11-09 Kim F. Storm <storm@cua.dk>
814
815 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
816 Fix various comments referring to XEvents instead of input events.
817 (x_queue_event): Fix format strings.
818 (x_stop_queuing_selection_requests): Likewise.
819
820 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
821 (pint2hrstr): Add extra braces to silence compiler.
822
823 * print.c (print_object): Fix format string.
824
825 * lread.c (read1): Fix next_char matching.
826
827 * lisp.h (Fdelete): Add EXFUN.
828 (replace_range_2): Add prototype.
829
830 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
831
832 * intervals.h (NULL_INTERVAL_P): Add separate version when
833 ENABLE_CHECKING is not defined to silence compiler.
834 (compare_string_intervals): Add prototype.
835
836 * fringe.c (destroy_fringe_bitmap): Fix return type.
837 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
838
839 * emacs.c (Fdump_emacs): Fix format string.
840
841 * doc.c: Include <ctype.h>.
842 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
843
844 * data.c (store_symval_forwarding): Remove unused variables.
845
846 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
847
16bf4e32
JD
8482004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
849
850 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
851 to ${OLDXMENU}.
852
cdb805a9
KS
8532004-11-09 Kim F. Storm <storm@cua.dk>
854
855 * process.c (Fmake_network_process): Remove kludge for interrupted
856 connects on BSD. If connect is interrupted, just close socket and
857 start over rather than sleeping and retry with same socket.
858
d87a9ab8 8592004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 860
a8b16c80
JD
861 * .cvsignore: Add buildobj.lst.
862
d87a9ab8
JD
863 * doc.c: New variable Vbuild_files.
864 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
865 file names from buildobh.lst. Only attach docstrings from files
866 that are in Vbuild_files.
867 (syms_of_doc): Defvar Vbuild_files.
868
869 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
870 and w32*.o.
871 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 872 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
873
874 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
875 is linked.
876
b6709e77
KS
8772004-11-09 Kim F. Storm <storm@cua.dk>
878
879 * fringe.c (update_window_fringes): Update fringe bitmaps if
880 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
881 also update previous row to get rid of misc. artifacts.
882
bae9677d
KS
8832004-11-08 Kim F. Storm <storm@cua.dk>
884
885 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 886 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 887
3f8ea68c
EZ
8882004-11-08 Eli Zaretskii <eliz@gnu.org>
889
890 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
891 Don't include <sys/time.h> explicitly.
892 Include <stdio.h> unconditionally, not just on MacOS.
893
a653f812
KH
8942004-11-08 Kenichi Handa <handa@m17n.org>
895
896 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
897 don't pay attention to '\' before '*'.
898 (fontset_pattern_regexp): Change the meaning of the second arg.
899 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
900 (check_fontset_name): Try NAME as literal at first, and if it
901 failes, try NAME as pattern.
902
c37caf9d
JD
9032004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
904
905 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
906
b72915a7
AS
9072004-11-07 Andreas Schwab <schwab@suse.de>
908
78819ebb
KS
909 * lisp.h (Fmsdos_downcase_filename): Declare.
910 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
911 * fileio.c: Likewise.
912
238a44a8
JD
9132004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
914
915 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
916 comparisons with integers instead of Lisp_Object address.
917 (Fmsdos_set_keyboard): Declare argument allkeys.
918
919 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
920
78819ebb 921 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
922 int/Lisp_Object mixup.
923
924 * fileio.c: Ditto.
925
31141c13
ST
9262004-11-06 Steven Tamm <steventamm@mac.com>
927
928 * editfns.c: Need to include sys/time.h before resource.h on darwin.
929
f28c1bd9
RS
9302004-11-06 Richard M. Stallman <rms@gnu.org>
931
932 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
933
934 * xfaces.c (merge_named_face): GCPRO the face_name in the
935 named_merge_point struct that we make.
936 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
937
938 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
939 before deciding whether to inactivate mark.
940
59dede22
EZ
9412004-11-06 Lars Brinkhoff <lars@nocrew.org>
942
943 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
944 * editfns.c (Fget_internal_run_time): New function.
945 (syms_of_data): Defsubr it.
946 * fns.c (sxhash): As far as possible, merge calculation of
947 hash code for symbols and strings.
59dede22 948
27540e81
EZ
9492004-11-06 Eli Zaretskii <eliz@gnu.org>
950
951 * frame.c (syms_of_frame): Fix the example in the doc string.
952
df470e3b
JD
9532004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
954
955 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
956
957 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
958 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 959
4cc8522c
LT
9602004-11-05 Luc Teirlinck <teirllm@auburn.edu>
961
962 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
963
d4a42098
KS
9642004-11-05 Kim F. Storm <storm@cua.dk>
965
a8490886
KS
966 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
967
d4a42098
KS
968 * fileio.c (Ffile_modes): Doc fix.
969 (auto_save_1): Check for Ffile_modes nil value.
970
36a2b04c
KS
9712004-11-05 Kim F. Storm <storm@cua.dk>
972
973 * xselect.c (struct selection_event_queue, selection_queue)
974 (x_queue_selection_requests, x_queue_event)
975 (x_start_queuing_selection_requests)
976 (x_stop_queuing_selection_requests): Add new queue for selection
977 input events to replace previous XEvent queue in xterm.c.
978 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
979 (x_reply_selection_request): Adapt to new queue.
980 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
981 (x_handle_selection_request, x_handle_selection_clear): Make static.
982 (x_handle_selection_event): New function. May queue selection events.
983 (wait_for_property_change_unwind): Use save_value instead of cons.
984 Clear property_change_reply_object.
985 (wait_for_property_change): Abort if already waiting.
986 Use save_value instead of cons for unwind data.
987 (x_handle_property_notify): Skip events already arrived, but don't
988 free them, as "arrived" field is checked by wait_for_property_change,
989 and it will be freed by unwind or explicit unexpect_property_change.
990 (x_get_foreign_selection): Add to new queue.
991 (receive_incremental_selection): Don't unexpect wait_object when done
992 as it has already been freed by previous wait_for_property_change.
993
994 * xterm.h (x_start_queuing_selection_requests)
995 (x_stop_queuing_selection_requests, x_handle_selection_request)
996 (x_handle_selection_clear): Remove prototypes.
997 (x_handle_selection_event): Add prototype.
998
999 * xterm.c (handle_one_xevent): Don't queue X selection events
1000 here, it may be too late if we start queuing after we have already
1001 stored some selection events into the kbd buffer.
1002 (struct selection_event_queue, queue, x_queue_selection_requests)
1003 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
1004 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
1005 (x_catch_errors_unwind): Block input around final XSync.
1006
1007 * keyboard.h (kbd_buffer_unget_event): Add prototype.
1008
1009 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
1010 (kbd_buffer_unget_event): New function.
1011 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
1012 and use x_handle_selection_event.
1013 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
1014
9c3ad9e1
JD
10152004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1016
1017 * xselect.c (TRACE3): New debug macro.
1018 (x_reply_selection_request): Use it.
1019 (receive_incremental_selection): In call to TRACE0, the name of
1020 a symbol is in xname.
1021
a33b89de
KS
10222004-11-05 Kim F. Storm <storm@cua.dk>
1023
1024 * fontset.c (fontset_pattern_regexp): Use unsigned char.
1025
a872928c
JD
10262004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1027
88208bb8
JD
1028 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
1029
78819ebb 1030 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
1031
1032 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 1033 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
1034 * xfns.c (syms_of_xfns): ... to here.
1035
a872928c
JD
1036 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
1037 it doesn't start with /.
1038
b912921c
KH
10392004-11-04 Kenichi Handa <handa@m17n.org>
1040
1041 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
1042 treat it as a literal character.
1043
c524d9a6
KS
10442004-11-03 Kim F. Storm <storm@cua.dk>
1045
1046 * .gdbinit (ppt): New function.
1047
8cfd0f36
JD
10482004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1049
a11e1dce
JD
1050 * xterm.c (x_window_to_scroll_bar): Only call
1051 xg_get_scroll_id_for_window if toolkit scroll bars are used.
1052
8cfd0f36
JD
1053 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
1054 of save.
1055
a93563fd
AS
10562004-11-02 Andreas Schwab <schwab@suse.de>
1057
1058 * window.c (Fscroll_right): Fix last change.
1059
2b2d59d8
KS
10602004-11-02 Kim F. Storm <storm@cua.dk>
1061
1062 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
1063
10642004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1065
1066 * callproc.c (Fcall_process): Block input around vfork.
1067
ca28104d
KS
10682004-11-02 Kim F. Storm <storm@cua.dk>
1069
1070 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
1071 (syms_of_eval): Defsubr it.
1072
29bb7127
RS
10732004-11-02 Richard M. Stallman <rms@gnu.org>
1074
1075 * insdel.c (replace_range_2): New function.
1076
1077 * casefiddle.c (casify_region): Handle changes in byte-length
1078 using replace_range_2.
1079
1080 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
1081
b6189c3b 1082 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
1083 Subtract 1 from pos when checking previous newline for invisibility.
1084
1085 * window.c (window_scroll_pixel_based): Update preserve_y
1086 for header line if any.
1087 (Fscroll_left, Fscroll_right): Don't call interactive_p;
1088 use a new second argument instead.
1089
1090 * eval.c (Fcall_interactive_p): New function.
1091 (interactive_p): Don't test INTERACTIVE here.
1092 (Finteractive_p): Doc fix.
1093
1094 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
1095
b6189c3b 10962004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
1097
1098 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 1099 comparing font names.
a3fe4aaf 1100
2a00cdb4
JD
11012004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1102
f9d64bb3
JD
1103 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
1104 Fx_file_dialog if only directories should be read.
1105
1106 * lisp.h: Fx_file_dialog takes 5 parameters.
1107
32e2fb04
SM
1108 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
1109 Add parameter only_dir_p.
f9d64bb3
JD
1110 In Motif version, don't put DEFAULT_FILENAME in filter part of the
1111 dialog, just text field part. Do not add DEFAULT_FILENAME
1112 to list of files if it isn't there.
1113 In GTK version, pass only_dir_p parameter to xg_get_file_name.
1114
32e2fb04
SM
1115 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
1116 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
1117 a save dialog, add option kNavDontConfirmReplacement, change title
1118 to "Enter name", change text for save button to "Ok".
1119
32e2fb04
SM
1120 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
1121 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
1122
1123 * gtkutil.c (xg_get_file_with_chooser)
1124 (xg_get_file_with_selection): New functions, only defined ifdef
1125 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
1126 respectively.
1127 (xg_get_file_name): Add parameter only_dir_p.
1128 Call xg_get_file_with_chooser or xg_get_file_with_selection
1129 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
1130 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
1131
1132 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
1133
2a00cdb4
JD
1134 * config.in: Rebuild (added HAVE_GTK_FILE_*).
1135
f6749d5d
KS
11362004-11-01 Kim F. Storm <storm@cua.dk>
1137
32e2fb04
SM
1138 * process.c (connect_wait_mask, num_pending_connects):
1139 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 1140 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
1141 (IF_NON_BLOCKING_CONNECT): New helper macro.
1142 (wait_reading_process_output): Only declare and use local vars
1143 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 1144
1a99fe1a
JR
11452004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
1146
1147 * w32term.c (x_scroll_run): Delete region objects after use.
1148
fcdb28b4
JD
11492004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1150
495ef86b
JD
1151 * xmenu.c: Add prototypes for forward function declarations.
1152 (popup_get_selection): Remove parameter do_timers, remove call to
1153 timer_check.
32e2fb04
SM
1154 (create_and_show_popup_menu, create_and_show_dialog):
1155 Remove parameter do_timers from call to popup_get_selection.
495ef86b 1156
12e6566a
JD
1157 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
1158 tool_bar_items and assign the result to f->tool_bar_items if
1159 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
1160 tool_bar_items to assignment of result.
1161
fcdb28b4
JD
1162 * atimer.c (alarm_signal_handler): Do not call set_alarm if
1163 pending_atmers is non-zero.
1164
1a1a0c4c
KS
11652004-10-31 Kim F. Storm <storm@cua.dk>
1166
1167 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
1168
a36f1680
JW
11692004-10-28 Will <will@glozer.net>
1170
1171 * macterm.c: allow user to assign key modifiers to the Mac Option
1172 key via a 'mac-option-modifier' variable.
1173
32e2fb04 11742004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
1175
1176 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
1177 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
1178 (x_handle_selection_request, x_handle_selection_clear)
1179 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
1180
4f71c13f
RS
11812004-10-28 Richard M. Stallman <rms@gnu.org>
1182
1183 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1184
1185 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
1186
068f3848
SM
11872004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
1188
1189 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
1190 comment-starter over a 1-char one.
1191
4660a9e3
RS
11922004-10-27 Richard M. Stallman <rms@gnu.org>
1193
1194 * xdisp.c (get_next_display_element): In mode lines,
1195 treat newline and tab like other control characters.
1196
1197 * editfns.c (Fmessage): Doc fix.
1198
1199 * indent.c (vmotion): When moving up, check the newline before.
1200 Make prevline an int, not a Lisp_Object.
1201
233f3db6
KS
12022004-10-27 Kim F. Storm <storm@cua.dk>
1203
1204 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
1205 Only allocate info and discarded tables once.
1206
1207 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
1208 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
1209 (SAFE_FREE): Test it to determine if we need to unwind to free.
1210 Remove size arg. All users changed.
1211 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
1212
1442465d
JD
12132004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1214
1215 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
1216 (xg_destroy_widgets): Rename from remove_from_container.
1217 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
1218 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
1219 instead of remove_from_container.
1220 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
1221 (free_frame_tool_bar): Add comment.
1222
1223 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
1224 is not NULL before strcmp.
1225
c8636435
KS
12262004-10-26 Kim F. Storm <storm@cua.dk>
1227
1228 * callint.c (Fcall_interactively): Add 'U' code to get the
1229 up-event discarded by a previous 'k' or 'K' argument.
1230
5629f29b
DK
12312004-10-26 David Kastrup <dak@gnu.org>
1232
1233 * buffer.c (syms_of_buffer): Fix a few typos.
1234
4f2f546e
JD
12352004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1236
1237 * xsmfns.c: Put empty line between comment and function body.
1238 Use two spaces before comment end.
1239
fc1062f5
KH
12402004-10-25 Kenichi Handa <handa@m17n.org>
1241
1242 * fontset.c (fontset_pattern_regexp): Optimize for the case that
1243 PATTERN is full XLFD.
1244
be13f5e5
KH
12452004-10-24 Kenichi Handa <handa@m17n.org>
1246
1247 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
1248
1249 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
1250 (regex_compile): Return REG_ERANGEX if appropriate.
1251
d0ee2ed3
KH
12522004-10-22 Kenichi Handa <handa@m17n.org>
1253
1254 * editfns.c (Ftranslate_region_internal): New function.
1255 (syms_of_editfns): Defsubr it.
1256
63ea8ea5
JD
12572004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1258
1259 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
1260
c27ed90a
JD
12612004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
1262
068f3848
SM
1263 * xterm.h (x_output): New member `xic_base_fontname'.
1264 (FRAME_XIC_BASE_FONTNAME): New macro.
1265 (xic_free_xfontset): Declare.
c27ed90a 1266
068f3848
SM
1267 * xfns.c (xic_create_xfontset): Share fontsets between frames
1268 based on base_fontname.
1269 (xic_free_xfontset): New function.
1270 (free_frame_xic): Use it.
1271 (xic_set_xfontset): Ditto.
c27ed90a 1272
068f3848 1273 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
1274
1275
59508699
JR
12762004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
1277
1278 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
1279
dede2792
JD
12802004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1281
3aca2078
JD
1282 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
1283 XSync.
1284
dede2792
JD
1285 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
1286 New variables and constant.
1287 (main): Calculate heap_bss_diff. If we are dumping and the
1288 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
1289 and exec ourself again.
1290 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
1291 print a warning.
1292
1293 * lastfile.c: Make my_endbss and my_endbss_static available on all
1294 platforms.
1295
1296 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
1297 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
1298
1dc5ba01
LT
12992004-10-19 Luc Teirlinck <teirllm@auburn.edu>
1300
1301 * data.c (Flocal_variable_if_set_p): Doc fix.
1302
950090be
JR
13032004-10-19 Jason Rumney <jasonr@gnu.org>
1304
1305 * w32.c (init_environment): Set emacs_dir correctly when running
1306 emacs from the build directory.
1307
8550b998
RS
13082004-10-19 Richard M. Stallman <rms@gnu.org>
1309
1310 * editfns.c (Fdelete_and_extract_region):
1311 If region is empty, return null string.
1312
08dedea6
JD
13132004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1314
1dc5ba01 1315 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 1316 and canon_width.
068f3848 1317 (xg_frame_cleared): Remove.
08dedea6 1318
068f3848
SM
1319 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
1320 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
1321 (xg_create_scroll_bar): Put an event box widget between
1322 the scroll bar widget and the edit widget.
1323 (xg_show_scroll_bar): Show the parent widget (the event box).
1324 (xg_remove_scroll_bar): Destroy parent (the event box) also.
1325 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
1326 Move the parent (the event box) widget inside the fixed widget.
1327 Move window clear to xterm.c.
1328
068f3848 1329 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 1330
08dedea6 1331 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
1332 (x_scroll_bar_create, XTset_vertical_scroll_bar):
1333 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
1334 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
1335
8550b998 13362004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
1337
1338 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 1339
84338890
JD
13402004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1341
1342 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
1343 gdk_window_clear and move gdk_window_process_all_updates after
1344 clear so events are sent to the X server in correct order.
1345
6e1b0d8c
KH
13462004-10-18 Kenichi Handa <handa@m17n.org>
1347
1348 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
1349 comparing font names.
8550b998 1350 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
1351 (list_fontsets): Likewise.
1352
1353 * search.c (fast_string_match_ignore_case): New function.
1354
1355 * lisp.h (fast_string_match_ignore_case): Extern it.
1356
345e75a8
KS
13572004-10-17 Kim F. Storm <storm@cua.dk>
1358
1359 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
1360 than bitmap if there is not left fringe.
1361 (get_overlay_arrow_glyph_row): Also used on windows system.
1362 (display_line): Display overlay string if no left fringe.
1363
be13cbb7
JR
13642004-10-16 Jason Rumney <jasonr@gnu.org>
1365
1366 * w32fns.c (w32_font_match): Encode font name being matched.
1367
c2e2ede7
RS
13682004-10-16 Richard M. Stallman <rms@gnu.org>
1369
1370 * window.c (Fspecial_display_p): Doc fix.
1371
3584d95d
SM
13722004-10-15 Stefan <monnier@iro.umontreal.ca>
1373
1374 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
1375 Don't ignore menus, because where-is-internal already does it for us.
1376
699a0392
KS
13772004-10-15 Kim F. Storm <storm@cua.dk>
1378
b3c7a89b
KS
1379 * xdisp.c (redisplay_window): Only update fringes and vertical
1380 border on window frames.
699a0392 1381
4e382b0f
AS
13822004-10-14 Andreas Schwab <schwab@suse.de>
1383
1384 * m/ia64.h (DATA_SEG_BITS): Don't define.
1385
329a7be2
KS
13862004-10-14 Kim F. Storm <storm@cua.dk>
1387
1388 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 1389 in some X versions.
329a7be2 1390
982241b1
SM
13912004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1392
1393 * fns.c (map_char_table): Add missing gcpros.
1394
9238467d
SM
13952004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
1396
1397 * keymap.c (get_keymap): An autoload form is not a keymap.
1398
1399 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
1400
4440e3ca
KS
14012004-10-13 Kim F. Storm <storm@cua.dk>
1402
7cfdabde
KS
1403 * callproc.c (Fcall_process): Simplify handling of display arg.
1404 Resume `display_on_the_fly' once a coding system is determined.
1405
4440e3ca
KS
1406 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
1407
1c8dec6a
KS
14082004-10-12 Kim F. Storm <storm@cua.dk>
1409
1410 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
1411 caller, such as call-process, is not going to poll for input.
1412 (calc_line_height_property): Handle case where it->object is nil.
1413
1414 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
1415
170b174c
KH
14162004-10-12 Kenichi Handa <handa@m17n.org>
1417
9238467d
SM
1418 * xdisp.c (get_next_display_element):
1419 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
1420 chars in octal in unibyte buffer.
1421
b583964c
KS
14222004-10-12 Kim F. Storm <storm@cua.dk>
1423
1424 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
1425 are no ordinary bindings.
1426
29fabd8c
JD
14272004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1428
9238467d 1429 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 1430
c3f4c690
ST
14312004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1432
9238467d
SM
1433 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
1434 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 1435 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
1436 terminal frame.
1437 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
1438 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
1439 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
1440 Make a cancel file-open dialog be like C-g.
9238467d
SM
1441 * mac.c (mktime): Use emacs_mktime.
1442 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
1443 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 1444
9688f9eb
KS
14452004-10-10 Kim F. Storm <storm@cua.dk>
1446
1447 * keyboard.c (timer_resume_idle): New function to resume idle
1448 timer without resetting timers on the idle list.
1449 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
1450 (timer_start_idle, timer_stop_idle): Declare static.
1451 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
1452
1453 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
1454
f7f3a65f
ST
14552004-10-08 Steven Tamm <steventamm@mac.com>
1456
9238467d 1457 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 1458 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 1459 NULL where 0 should be used.
f7f3a65f
ST
1460 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
1461 objc/malloc.h
9238467d 1462 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 1463
3c7d999a
KS
14642004-10-07 Kim F. Storm <storm@cua.dk>
1465
1466 * xdisp.c (redisplay_window): Fix flicker on vertical line between
1467 windows. Update vertical line after drawing window fringes, but
1468 only if actually drawing any bitmaps--or there is no fringe.
1469
1470 * xterm.c (x_update_window_end): Likewise.
1471 * macterm.c (x_update_window_end): Likewise.
1472 * w32term.c (x_update_window_end): Likewise.
1473
1474 * fringe.c (draw_window_fringes): Return value now indicates if
1475 any fringe bitmaps were redrawn (or there are no fringes).
1476
1477 * dispextern.h (draw_window_fringes): Update prototype.
1478
bf06c82f
ST
14792004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1480
1481 * macfns.c (mac_get_window_bounds): Add extern.
1482 (x_real_positions): Use mac_get_window_bounds.
1483
1484 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
1485 xmenu.c (YAILOM).
3c7d999a 1486
bf06c82f
ST
1487 * macterm.c [!MAC_OSX]: Include Windows.h.
1488 (front_emacs_window): Rename from mac_front_window. All uses
1489 changed. Return the frontmost non-tooltip emacs window.
1490 (mac_get_window_bounds): New function.
1491 (x_calc_absolute_position): Use the difference of width and height
1492 between the inner and outer window.
1493 (x_set_offset): Specify window position by the coordinae of the
1494 outer window. Adjust the position if the title bar is completely
1495 outside the screen.
1496 (app_is_suspended, app_sleep_time): Remove unused variables.
1497 (do_app_resume, do_app_suspend): Remove their contents because
1498 window-activate/deactivate events will do the job.
1499 (do_zoom_window): Remove unused variables. Make compliant to the
1500 standard way of zooming. Set f->left_pos and f->top_pos.
1501 (XTread_socket): Don't use argument `expected'. Don't use
1502 FrontWindow to determine the clicked window. Exclude unprocessed
1503 mouseUp cases in the early stage. Add parentheses to fix operator
1504 precedence.
1505 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
1506
4cbbf6b7 15072004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
1508
1509 * config.in: Regenerate.
1510
1511 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
1512 HAVE_EXECSHIELD.
1513
b90ee8b5
JD
15142004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1515
1516 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
1517 a row if Alt or Meta has been found for that row. Also stop scanning
1518 for Keysyms for that row.
1519
904db1a2
KS
15202004-10-04 Kim F. Storm <storm@cua.dk>
1521
0207b8ad
KS
1522 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
1523 to list. Include overlay arrow bitmap in return value.
1524
25f7220c
KS
1525 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
1526 bars with fractional column width. If scroll bar separates two
1527 windows, move it towards the window it belongs to. Only update
1528 the padding area below the scroll bar widget when necessary,
1529 i.e. when scroll bar widget is created, moved, or resized.
1530
562020fe
KS
1531 * xdisp.c (define_frame_cursor1): Do not change frame cursor
1532 while tracking/dragging mouse.
1533 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
1534
37e34af7
KS
1535 * window.c (coordinates_in_window): Relax check for cursor
1536 on vertial border between mode lines.
1537 (Fset_window_fringes): Do not allow negative widths.
1538 (Fset_window_scroll_bars): Likewise.
1539
904db1a2
KS
1540 * .gdbinit (pp): Shorthand for p ARG + pr.
1541 (ff): New command: flush frame updates (X only).
1542
38fe4f64
MA
15432004-10-03 Michael Albinus <michael.albinus@gmx.de>
1544
1545 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
1546
9de36315
KH
15472004-09-30 Kenichi Handa <handa@m17n.org>
1548
07c381ad 1549 * process.c (send_process): Free composition data.
9de36315 1550
07c381ad 1551 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
1552
1553 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
1554 compositions to encode.
1555 (encode_coding_string): Likewise. Free composition data.
1556
b6189c3b 15572004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
1558
1559 * coding.c (code_convert_region): Free composition data.
9de36315 1560
f2a54fbc
KS
15612004-09-29 Kim F. Storm <storm@cua.dk>
1562
dc5d6435
KS
1563 * fringe.c: Remove limit on number of bitmaps.
1564 (fringe_bitmaps, fringe_faces): Change to pointers.
1565 (max_fringe_bitmaps): New var.
1566 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
1567 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
1568
1569 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
1570 (struct glyph_row): Reorder fringe_bitmap related fields.
1571 (struct it): Likewise.
1572
1573 * w32term.c (fringe_bmp): Change to pointer.
1574 (max_fringe_bmp): New var.
1575 (w32_define_fringe_bitmap): Expand fringe_bmp.
1576 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
1577 (w32_destroy_fringe_bitmap): Likewise.
1578
15792004-09-29 Kim F. Storm <storm@cua.dk>
1580
1581 * fringe.c: Simplify last change.
f2a54fbc
KS
1582 (lookup_fringe_bitmap): New function.
1583 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
1584 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
1585 Keep standard bitmaps in Vfringe_bitmaps.
1586 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
1587 (Fset_fringe_bitmap_face): Likewise.
1588
1589 * dispextern.h (lookup_fringe_bitmap): Add prototype.
1590 (valid_fringe_bitmap_p): Remove prototype.
1591
1592 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
1593
841a8bca
KS
15942004-09-29 Kim F. Storm <storm@cua.dk>
1595
1f2da365
KS
1596 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
1597 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
1598
841a8bca
KS
1599 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
1600
1601 * fringe.c (Vfringe_bitmaps): New variable.
1602 (syms_of_fringe): DEFVAR_LISP it.
1603 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
1604 Change arg to Lisp_Object and fail if not an integer.
1605 (get_fringe_bitmap_name, resolve_fringe_bitmap)
1606 (destroy_fringe_bitmap): New functions.
9238467d
SM
1607 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
1608 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
1609 clear its fringe property.
1610 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
1611 Fdestroy_fringe_bitmap.
1612 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
1613 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
1614 and set fringe property. Signal error if no free slots.
1615 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
1616 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
1617
1618 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
1619 symbols with a fringe property.
1620
4d965590
KS
16212004-09-27 Kim F. Storm <storm@cua.dk>
1622
1623 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
1624 Doc fix. Format may now be a symbol or alist, not a cons.
1625
1626 * fringe.c (update_window_fringes): Handle new formats of
1627 indicate-buffer-boundaries (symbol or alist). No longer
1628 allow a simple cons.
1629 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
1630
e888c2b3
JD
16312004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1632
9238467d 1633 * config.in: Rebuild.
e888c2b3 1634
83f1cb94
JD
16352004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1636
1637 * config.in: Rebuild.
1638
dd3b1d60 1639 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 1640
2c51754c
SM
16412004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
1642
1643 * xterm.c (x_term_init): Work around a bug in some X servers.
1644
3df5f8aa
RS
16452004-09-18 Richard M. Stallman <rms@gnu.org>
1646
557ca2c1
RS
1647 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
1648
3df5f8aa
RS
1649 * xdisp.c (try_window_reusing_current_matrix):
1650 Handle the case where we reach the old displayed text,
1651 out of sync with the old line boundary.
1652
9238467d 16532004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
1654
1655 * fileio.c (Finsert_file_contents): Fix case of replacement in a
1656 narrowed buffer.
1657
bfa02563
KS
16582004-09-14 Kim F. Storm <storm@cua.dk>
1659
a25fe164
KS
1660 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
1661
bfa02563
KS
1662 * xfaces.c (Qface_no_inherit): New var.
1663 (syms_of_xfaces): Intern and staticpro it.
1664 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
1665 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
1666 Don't increment face_change_count when face has non-nil
1667 face-no-inherit property.
1668
126f9c02
SM
16692004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
1670
892a8eb5
SM
1671 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
1672 (Fbyte_code): Remove dead code after `wrong_type_argument'.
1673
126f9c02 1674 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 1675 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 1676
c0ad3b38
KS
16772004-09-12 Kim F. Storm <storm@cua.dk>
1678
1679 * editfns.c (Fformat): Handle format strings with multiple text
1680 properties. Reverse text property list from the format string,
1681 so the positions are in increasing order.
1682
844fc085
JD
16832004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1684
1685 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
1686 x_uncatch_errors so that possible protocol errors are delivered.
1687
b106731c
EZ
16882004-09-10 Eli Zaretskii <eliz@gnu.org>
1689
21065c92
EZ
1690 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
1691 blockinput.h.
1692 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
1693 charset.h, and coding.h
9238467d 1694 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
1695 (term.o): Depend on window.h and keymap.h.
1696 (abbrev.o): Depend on syntax.h.
1697 (callint.o): Depend on keymap.h.
1698 (casefiddle.o): Depend on charset.h and keymap.h.
1699 (category.o): Depend on keymap.h.
1700 (coding.o): Depend on dispextern.h.
1701 (cmds.o): Depend on keyboard.h and keymap.h.
1702 (dispnew.o): Depend on indent.h and intervals.h.
1703 (doc.o): Depend on keymap.h.
1704 (editfns.o): Depend on frame.h.
1705 (emacs.o): Depend on dispextern.h.
1706 (fileio.o): Don't depend on ccl.h.
1707 (filelock.o): Depend on charset.h and coding.h.
1708 (frame.o): Depend on w32term.h and macterm.h.
1709 (insdel.o): Depend on region-cache.h.
1710 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
1711 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
1712 (search.o): Depend on $(INTERVALS_SRC).
1713 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
1714 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
1715 xterm.h, w32term.h, and macterm.h.
1716 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
1717 w32term.h, and macterm.h.
1718 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
1719 region-cache.h, xterm.h, w32term.h, and macterm.h.
1720 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
1721 (data.o): Depend on frame.h.
1722 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
1723 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
1724 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
1725 (intervals.o): Depend on keymap.h.
1726
9238467d
SM
1727 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
1728 Add debugging print-out to termscript.
b106731c 1729
64b7122d
RS
17302004-09-09 Richard M. Stallman <rms@gnu.org>
1731
1732 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
1733
5670531e
RS
17342004-09-08 Richard M. Stallman <rms@gnu.org>
1735
6cb4a892
RS
1736 * window.c (Fset_window_buffer): Doc fix.
1737
5670531e
RS
1738 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
1739
7e388eb7
JL
17402004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
1741
1742 * minibuf.c (history_delete_duplicates): New variable.
1743 (read_minibuf): Use it.
1744 (syms_of_minibuf): Create the corresponding lisp variable.
1745
370e3587
KS
17462004-09-08 Kim F. Storm <storm@cua.dk>
1747
1748 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
1749 overlay just before point.
1750
f844ba4e
LT
17512004-09-07 Luc Teirlinck <teirllm@auburn.edu>
1752
1753 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
1754 * buffer.c (reset_buffer, init_buffer_once):
1755 Handle auto_save_file_format field.
f844ba4e
LT
1756 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
1757 `buffer-auto-save-file-format'.
f844ba4e
LT
1758 * fileio.c: Delete declaration for removed Vauto_save_file_format.
1759 (build_annotations): Adapt to replacement of
1760 `auto-save-file-format' with the new buffer-local variable
1761 `buffer-auto-save-file-format'.
1762 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
1763
f0f90717
JR
17642004-09-07 Jason Rumney <jasonr@gnu.org>
1765
1766 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
1767
9238467d
SM
1768 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
1769 Handle Unicode menu titles.
f0f90717 1770
4e14f66c
KS
17712004-09-07 Kim F. Storm <storm@cua.dk>
1772
1773 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
1774 property from text property or overlay strings at point.
1775
9238467d 17762004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
1777
1778 * xmenu.c (update_submenu_strings): YAILOM.
1779 (set_frame_menubar): Make sure last_i is initialized.
1780
1f06d367
JR
17812004-09-03 Jason Rumney <jasonr@gnu.org>
1782
1806714a 1783 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
1784 (digest_single_submenu): Set lname and lkey in widget_value
1785 instead of name and key.
1786 (update_submenu_strings): New function.
1787 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1788 call update_submenu_strings.
1789
1790 * w32menu.c (globals_of_w32menu): Check for Unicode API.
1791 (digest_single_submenu, w32_menu_show): Encode menu strings as
1792 UTF-8 if Unicode API is available.
1793 (utf8to16): New function.
1794 (add_menu_item): Use it when calling Unicode API.
1806714a 1795
46540080
KS
17962004-09-03 Kim F. Storm <storm@cua.dk>
1797
1798 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
1799 in overlay or text-property strings; set cursor on corresponding
1800 glyph rather than at end of the string.
1801
9277ba61 18022004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 1803
9277ba61 1804 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
1805 set a new one before obtaining the global coordinate.
1806 Use FRAME_MAC_WINDOW.
1807 (x_set_name, x_set_title): Encode title to UTF8.
1808 Use SetWindowTitleWithCFString.
9277ba61
ST
1809 (Fx_server_version): Get correct OS version.
1810
1806714a
SM
1811 * macmenu.c (add_menu_item): Remove unused variable `i'.
1812 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
1813
1814 * macterm.c (x_update_end): Move SetPortWindowPort to inside
1815 BLOCK_INPUT.
1816 (x_set_offset): Use FRAME_MAC_WINDOW.
1817
1818 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
1819 nontext_cursor if it is on a scroll bar.
1820
1821 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
1822 Carbon support.
1806714a
SM
1823 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
1824 Use LIBS_CARBON.
9277ba61 1825
b10daec7
JD
18262004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1827
1828 * xfns.c (x_set_name_internal): New function. Check if we shall call
1829 xfree before ENCODE_UTF_8.
1830 (x_set_name, x_set_title): Call x_set_name_internal.
1831
f7e22385
JR
18322004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
1833
1834 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
1835 reload it.
1836
2bf436c3
JD
18372004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1838
1806714a 1839 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
1840 (single_submenu): Set lname and lkey in widget_value
1841 instead of name and key.
1842 (update_submenu_strings): New function.
1843 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1844 call update_submenu_strings.
1845
2bf436c3
JD
1846 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
1847 instead of name and key.
1848 (update_submenu_strings): New function.
1849 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 1850 call update_submenu_strings.
2bf436c3
JD
1851
1852 * gtkutil.h (_widget_value): Added lname and lkey.
1853
11715f92
ST
18542004-08-30 Steven Tamm <steventamm@mac.com>
1855
1856 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1857 by using different names for inner loop variables.
1858
5500be54
JD
18592004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1860
059cd329
JD
1861 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1862 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1863
5500be54
JD
1864 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1865 tool bar items is 0.
1866
383418e5
ST
18672004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1868
1869 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1870 strings in menu items.
1871 (single_submenu): Use ENCODE_MENU_STRING
1872 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1873 button release isn't passed to event loop
1874 (add_menu_item): Use SetMenuItemWithCFString
1875
6eb3ee72
ST
18762004-08-26 Steven Tamm <steventamm@mac.com>
1877
1878 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1879 tool-bar/menu click
1880 * macfns.c (Fx_file_dialog): Implemented using NavServices
1881
10b43ac3
JD
18822004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1883
2728b5d0
JD
1884 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1885
10b43ac3
JD
1886 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1887 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1888 (x_top_window_to_frame): Return 0 if wdesc is None.
1889
2ee3b79e
RS
18902004-08-22 Richard M. Stallman <rms@gnu.org>
1891
1892 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1893 HAVE_TERMIOS]: If there's no char for this signal, drop through
1894 and use system calls.
1895
1896 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1897
9a1ba2ea
KS
18982004-08-20 Kim F. Storm <storm@cua.dk>
1899
1900 * process.c (wait_reading_process_output): Rename from
1901 wait_reading_process_input. All uses changed.
1902 (wait_reading_process_output_1): Rename from
1903 wait_reading_process_input_1. All uses changed.
1904
1905 * dispnew.c (Fsleep_for): Remove obsolete code.
1906
295f3b30
KH
19072004-08-20 Kenichi Handa <handa@m17n.org>
1908
1909 * syntax.c (skip_chars): Fix for unibyte case.
1910
27615979
SM
19112004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1912
1913 * syntax.c (char_quoted): Mixup byte/char pos.
1914 (back_comment): Fixup globals in all cases.
1915
00267f94
JD
19162004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1917
1918 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1919 passing it to gtk_window_set_title.
1920
2439909e
KS
19212004-08-19 Kim F. Storm <storm@cua.dk>
1922
6ba0f14c
KS
1923 * process.c (wait_reading_process_input): Clean up.
1924 Add wait_for_cell, wait_proc, and just_wait_proc args
1925 to avoid overloading `read_kbd' and `do_display' args.
1926 Change read_kbd arg to int. All callers changed.
1927
2439909e
KS
1928 * process.c (process_send_signal): Use CDISABLE.
1929
1930 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1931
101c421e
KS
19322004-08-18 Kim F. Storm <storm@cua.dk>
1933
1934 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1935 forward to wait_reading_process_input via DO_DISPLAY arg.
1936 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1937 object, only process output from that process; also inhibit
1938 running timers if DO_DISPLAY==-2.
1939
c438dc33
KS
19402004-08-17 Kim F. Storm <storm@cua.dk>
1941
1942 * process.c (process_send_signal): Fix last change--use
1943 _POSIX_VDISABLE instead of CVDISABLE when available.
1944
8afc13c6
RS
19452004-08-16 Richard M. Stallman <rms@gnu.org>
1946
1947 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1948 Set VQUIT and VINTR chars to the standard ones if they are unset.
1949 [AIX]: Don't do that here. And don't force VINTR to standard
1950 when SIGNALS_VIA_CHARACTERS.
1951
c438dc33 1952 * process.c (process_send_signal)
8afc13c6
RS
1953 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1954 Do nothing if the character is CVDISABLE.
1955
1956 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1957
c438dc33 1958 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1959 Force POSITION to be between BEGV and ZV.
1960
6dad1714
JPW
19612004-08-14 John Paul Wallington <jpw@gnu.org>
1962
1963 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1964
1965 * fileio.c (Fread_file_name): Doc fix.
1966
1967 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1968
2bd77330
LT
19692004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1970
1971 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1972
c90e7e43
LT
19732004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1974
1975 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1976 Qdisabled_command_hook.
c90e7e43 1977 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1978 Qdisabled_command_hook.
c90e7e43
LT
1979 (syms_of_keyboard): Ditto.
1980
81909a1a
LT
19812004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1982
1983 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1984 (syms_of_keymap) <key-translation-map>: Doc fixes.
1985
0cedd530
SM
19862004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1987
1725a7c9
SM
1988 * window.c (window_list_1): YAILOM.
1989
0cedd530
SM
1990 * fileio.c (make_temp_name): Handle multibyte prefixes.
1991
2515a131
LT
19922004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1993
1994 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1995 Doc fix.
1996
c8b20fb7
KH
19972004-08-03 Kenichi Handa <handa@m17n.org>
1998
1999 * coding.c (decode_coding_string): Adjust coding->consumed, and
2000 etc. with shrinked_bytes.
2001
fb8b092b
KS
20022004-08-03 Kim F. Storm <storm@cua.dk>
2003
2004 * indent.c (compute_motion): Fix check for full width window
2005 in non-window case. Do not count left truncation glyph on
2006 window systems.
2007
df133612
LT
20082004-08-02 Luc Teirlinck <teirllm@auburn.edu>
2009
2010 * data.c (Finteractive_form): Doc fix.
2011
0f7a93c1
KS
20122004-08-02 Kim F. Storm <storm@cua.dk>
2013
2014 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
2015 properly accounting for continuation glyph on non-window systems.
2016 (Fcompute_motion): Use actual window width if WIDTH is nil, and
2017 actual window width/height if TOPOS is nil, properly accounting for
2018 continuation glyphs on non-window systems, and optional header lines.
2019 (vmotion): Let compute_motion calculate actual window width.
2020
2021 * window.c (window_scroll_line_based): Let compute_motion
2022 calculate actual window width.
2023
f491e1ed
KS
20242004-08-02 Kim F. Storm <storm@cua.dk>
2025
2026 * process.c (read_process_output): Use whole read buffer.
2027 Don't trigger adaptive read buffering on errors.
2028
83f64226
LT
20292004-07-31 Luc Teirlinck <teirllm@auburn.edu>
2030
2031 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
2032
2033 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
2034
2035 * callint.c (Fcall_interactively): Doc fix.
2036
8afc13c6
RS
20372004-07-30 Richard M. Stallman <rms@gnu.org>
2038
2039 * abbrev.c (Fexpand_abbrev): Undo previous change.
2040
7c111482
KS
20412004-07-30 Kim F. Storm <storm@cua.dk>
2042
2043 * editfns.c (Fformat): Allocate extra (dummy) element in info.
2044
ee945d08
LT
20452004-07-28 Luc Teirlinck <teirllm@auburn.edu>
2046
2047 * eval.c (Fdefvar, Fdefconst): Doc fixes.
2048
3f911c94
KS
20492004-07-27 Kim F. Storm <storm@cua.dk>
2050
2051 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
2052 we have ensured that the glyph fits on the current line (or returned
2053 MOVE_LINE_CONTINUED otherwise).
2054
f29ff8c7
KS
20552004-07-26 Kim F. Storm <storm@cua.dk>
2056
2057 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
2058 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
2059 if target position is at end of display line but char is not a newline.
2060
81159bb9
RS
20612004-07-25 Richard M. Stallman <rms@gnu.org>
2062
ab431b61
RS
2063 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
2064 instead of ON_VERTICAL_BORDER, when on scroll bar.
2065 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
2066
2067 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
2068
f29ff8c7 2069 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
2070 Take account of FRAME_INTERNAL_BORDER_WIDTH.
2071
2072 * alloc.c (check_cons_list): New function (contents commented out).
2073
fc820cc5
LT
20742004-07-24 Luc Teirlinck <teirllm@auburn.edu>
2075
2076 * xfaces.c (Fcolor_supported_p): Doc fix.
2077
2078 * frame.c (Fselect_frame, Fset_frame_selected_window)
2079 (Fframe_visible_p, Fraise_frame): Doc fixes.
2080
289978b5
LT
20812004-07-24 Richard M. Stallman <rms@gnu.org>
2082
78819ebb 2083 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
2084
2085 * fileio.c (Fwrite_region): Doc fix.
2086
2087 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
2088
2089 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
2090 only when a real abbrev is present.
2091
289978b5
LT
2092 * xfns.c (x_icon_verify): New function.
2093 (Fx_create_frame): Use it.
2094
63cc10ae
KS
20952004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
2096
2097 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
2098
36f826d4
KS
20992004-07-21 Kim F. Storm <storm@cua.dk>
2100
2101 * window.h (struct glyph_matrix): New members nrows_scale_factor
2102 and ncols_scale_factor.
2103
2104 * window.c (make_window): Initialize nrows_scale_factor and
2105 ncols_scale_factor members.
2106
2107 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
2108 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
2109 (required_matrix_height): Apply nrows_scale_factor.
2110 (required_matrix_width): Apply ncols_scale_factor.
2111
2112 * xdisp.c (display_line): Increment nrows_scale_factor and set
2113 fonts_changed_p if past last allocated row.
2114 (append_glyph, append_composite_glyph, produce_image_glyph)
2115 (append_stretch_glyph): Increment ncols_scale_factor and set
2116 fonts_changed_p if current area is full.
2117
5fc1c546
JD
21182004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2119
2120 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
2121
cb7516e5
LT
21222004-07-19 Luc Teirlinck <teirllm@auburn.edu>
2123
2124 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
2125 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
2126 (Fset_window_start, Fscroll_up, Fscroll_down)
2127 (Fother_window_for_scrolling, Fscroll_other_window)
2128 (Fsave_window_excursion, Fset_window_vscroll)
2129 (syms_of_window) <window-size-fixed>: Doc fixes.
2130
b6189c3b 21312004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
2132
2133 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
2134 ENCODE_SYSTEM for filenames.
2135
bfcf6608
ST
21362004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2137
2138 * mac.c (sys_select): Block input around call to
2139 ReceiveNextEvent to prevent breakage. Correctly handle
2140 blocking on event queue only by calling ReceiveNextEvent
2141 instead of select (since GUI events aren't on an fd).
2142 (sys_read): Remove function
2143 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
2144
e082ac9d
ST
21452004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2146
2147 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 2148 polling instead of 1 sec timeouts (like solaris).
e082ac9d 2149
cb7516e5 2150 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
2151 frame creation.
2152
2153 * keyboard.c: Undef SIGIO on Carbon
2154
2155 * atimer.c (alarm_signal_handler): Call alarm handlers after
2156 scheduling.
2157
2158 * eval.c (Feval): Remove quit_char test
2159
2160 * process.c (wait_reading_process_input): Remove clearing
2161 stdin for select call on process input.
2162
4b9da0fb
LT
21632004-07-18 Luc Teirlinck <teirllm@auburn.edu>
2164
1204e81c
LT
2165 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
2166 capitalization error in docstring.
4b9da0fb 2167
26503ad2
JB
21682004-07-17 Juanma Barranquero <lektu@terra.es>
2169
2170 * keyboard.c (not_single_kboard_state): Do nothing unless
2171 MULTI_KBOARD is defined.
2172
3751eb00
RS
21732004-07-17 Richard M. Stallman <rms@gnu.org>
2174
2175 * window.c (coordinates_in_window): Inside the window but outside
2176 its box to the L or R, return ON_VERTICAL_BORDER.
2177 (window_list_1): Rotate the list to start with WINDOW.
2178
2179 * print.c (print_preprocess): Test for print_depth at limit
2180 before entering in being_printed.
2181
2182 * keyboard.c (not_single_kboard_state): New function.
2183 (stuff_buffered_input): Now no-op only if no SIGTSTP.
2184
2185 * frame.c (Fdelete_frame): If we're in single_bboard_state on
2186 this kboard, and we delete its last frame, go to any_kboard_state.
2187
2188 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
2189
b6189c3b 21902004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
2191
2192 * w32fns.c (Fx_file_dialog): Encode strings in system coding
2193 system before passing them to OS functions for display.
2194
0f6af254
DK
21952004-07-15 David Kastrup <dak@gnu.org>
2196
f9253326
KS
2197 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
2198 Apparently fixes an abort condition.
0f6af254 2199
386c8f42
LT
22002004-07-14 Luc Teirlinck <teirllm@auburn.edu>
2201
2202 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
2203 instead of a cons.
2204
366511da
MB
22052004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
2206
2207 * keyboard.c (echo_dash): Do nothing if there already is a dash
2208 at the end of the echo string.
2209
f85409d3
KS
22102004-07-12 Kim F. Storm <storm@cua.dk>
2211
2212 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
2213 if GC_MARK_STACK.
2214
0ba2e87b
LT
22152004-07-10 Luc Teirlinck <teirllm@auburn.edu>
2216
da38045d
LT
2217 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
2218
0ba2e87b
LT
2219 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
2220 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
2221 (Freplace_buffer_in_windows, Fset_window_buffer)
2222 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
2223 (syms_of_window): Expand docstring of `display-buffer-function'.
2224
5668fbb8
LT
22252004-07-09 Luc Teirlinck <teirllm@auburn.edu>
2226
2227 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
2228 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
2229 that time values of the type (HIGH . LOW) are considered obsolete.
2230
a085bf9d
LT
22312004-07-06 Luc Teirlinck <teirllm@auburn.edu>
2232
669de2fb
LT
2233 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
2234 docstring.
2235
bac66325 2236 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 2237
8e975df9
JPW
22382004-07-06 John Paul Wallington <jpw@gnu.org>
2239
2240 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
2241
fa164e6a
JPW
2242 * fns.c (Fclear_string): Signal an error if STRING is not a string.
2243
2bac9bb1
JD
22442004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2245
2246 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
2247 instead of CGMainDisplayID (only in OSX 10.2 and later).
2248
316ef0dc
JPW
22492004-07-04 John Paul Wallington <jpw@gnu.org>
2250
2251 * fileio.c (read_file_name_completion_ignore_case): New variable.
2252 (syms_of_fileio): Declare and initialise it.
2253 (Fread_file_name): Bind `completion-ignore-case' to respect it.
2254
2a1a35c6
EZ
22552004-07-03 Eli Zaretskii <eliz@gnu.org>
2256
2257 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
2258 for event.x and event.y.
2259
33a72331
KH
22602004-07-01 Kenichi Handa <handa@m17n.org>
2261
2262 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
2263 after getting a new string by pre-write-conversion.
2264
9238467d 22652004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
2266
2267 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
2268 (x_calc_absolute_position): Remove unused var `child'.
2269
2270 * xfaces.c (x_supports_face_attributes_p)
2271 (Fdisplay_supports_face_attributes_p): YAILOM.
2272 (tty_supports_face_attributes_p): Remove unused var `i'.
2273
2274 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
2275 back_unibyte_ok.
2276
2277 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
2278
2279 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
2280
2281 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
2282
f96ec754
AS
22832004-06-30 Andreas Schwab <schwab@suse.de>
2284
2285 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
2286 (Finit_image_library): Pass LIBRARIES through to
2287 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
2288 (lookup_image_type): Pass Qnil as second argument to
2289 Finit_image_library.
2290
78819ebb 2291 * lisp.h (Finit_image_library): Declare.
f96ec754 2292
59feca74 22932004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 2294
31983645
AS
2295 * macterm.c (do_window_activate, do_window_deactivate): Remove.
2296 (XTread_socket): Send mouse button events to the toolbox
2297 dispatcher even when the mouse is grabbed. Don't process window
2298 activate events for non-Emacs windows. Replace function calls to
2299 do_window_activate and do_window_deactivate with their contents.
2300 Reset mouse grabbing status when a window is deactivated.
59feca74 2301
c61278bb
ST
23022004-06-29 Steven Tamm <steventamm@mac.com>
2303
2304 * macterm.c (mac_get_emulated_btn)
2305 (mac_event_to_emacs_modifiers): Fix emulated mouse button
2306 support to correctly mask out modifiers.
2307
c3762cbd
DK
23082004-06-29 David Kastrup <dak@gnu.org>
2309
2310 * search.c (Fset_match_data): Allow buffer before end of list
2311 which can happen if set-match-data is using a pre-consed list.
2312
c61278bb 23132004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
2314
2315 * macterm.c (XTread_socket): Correctly set the frame position
2316 after the window is moved.
2317
74cdfe05
JD
23182004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2319
2320 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
2321 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
2322 (xg_get_image_for_pixmap): Add workaround for monochrome displays
2323 so insensitive and activated icons look ok.
74cdfe05 2324
ef544dc8
JR
23252004-06-27 Jason Rumney <jasonr@gnu.org>
2326
2327 * w32fns.c (file_dialog_callback): Disable edit control if set
2328 to directories only on CDN_INITDONE message.
2329 (Fx_file_dialog): Default to directories only when prompt starts
2330 with "Dired".
2331
7b7990cc
KS
23322004-06-25 Kim F. Storm <storm@cua.dk>
2333
2334 * alloc.c (allocate_misc): Update total_free_markers.
2335 (free_misc): New function.
2336 (safe_alloca_unwind, free_marker): Use it.
2337
2338 * lisp.h (free_misc): Add prototype.
2339
2340 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
2341
d8c379f8
RS
23422004-06-24 Richard M. Stallman <rms@gnu.org>
2343
2344 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
2345 (syms_of_emacs): Lisp variables deleted.
2346
559cdd07
DK
23472004-06-23 David Kastrup <dak@gnu.org>
2348
94939b84
DK
2349 * search.c (Freplace_match): Adjust the match-data more thoroughly
2350 when replacing strings in the buffer.
2351 (Fmatch_data): When INTEGERS is non-nil and the last match was in
2352 a buffer, add the buffer as last element to the match data.
2353 (Fset_match_data): If an additional element of the match-data is a
2354 buffer, restore it to last_thing_searched.
c8d09ad8 2355 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
2356 (restore_match_data): Restore it again.
2357
dce417e7
LT
23582004-06-23 Luc Teirlinck <teirllm@auburn.edu>
2359
2360 * keymap.c (Ftext_char_description): Doc fix.
2361 * doc.c (Fsnarf_documentation): Doc fix.
2362
ef54b2d0
KS
23632004-06-22 Kim F. Storm <storm@cua.dk>
2364
b5bc4d05
KS
2365 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
2366
ef54b2d0
KS
2367 * lisp.h (struct Lisp_Save_Value): New member dogc.
2368 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
2369 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
2370 (SAFE_FREE_LISP): New macro.
2371
2372 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
2373 (make_save_value): Init new dogc member.
2374 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
2375
2376 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
2377 SAFE_FREE_LISP macros.
2378
3d33d993
KS
23792004-06-22 Kim F. Storm <storm@cua.dk>
2380
2381 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
2382 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
2383 in that memory area are unknown to GC. Add comments.
2384
2385 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
2386
5c917f98
KS
23872004-06-21 Kim F. Storm <storm@cua.dk>
2388
2389 * lisp.h (MAX_ALLOCA): Define here.
2390 (safe_alloca_unwind): Add prototype.
2391 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
2392
2393 * alloc.c (safe_alloca_unwind): New function.
2394
2395 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
2396
2397 * charset.c (Fstring): Use SAFE_ALLOCA.
2398
2399 * coding.c (MAX_ALLOCA): Remove define.
2400
2401 * data.c (MAX_ALLOCA): Remove define.
2402 (Faset): Use SAFE_ALLOCA.
2403
2404 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
2405
2406 * fns.c (string_make_multibyte, string_to_multibyte)
2407 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
2408 (MAX_ALLOCA): Remove define.
2409 (Fbase64_encode_region, Fbase64_encode_string)
2410 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
2411 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
2412 memory leak if encoding fails.
2413
2414 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
2415
9a09408e
EZ
24162004-06-21 Eli Zaretskii <eliz@gnu.org>
2417
2418 * print.c (Fwith_output_to_temp_buffer): Doc fix.
2419
376de739
RS
24202004-06-20 Richard M. Stallman <rms@gnu.org>
2421
2422 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
2423
2424 * search.c (match_limit): Cleaner err msg when no match data available.
2425
2426 * window.c (syms_of_window): Doc fix.
2427
2428 * keyboard.c (command_loop_1): Handle values `only' and `identity'
2429 for Vtransient_mark_mode.
2430
2431 * buffer.c (syms_of_buffer): Doc fix.
2432
acd81db9
DK
24332004-06-21 David Kastrup <dak@gnu.org>
2434
2435 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
2436 and unbinding of `case-fold-search' according to
2437 `completion-ignore-case' around calls of string-match and
2438 predicates, respectively. Should give satisfactory performance
2439 in all relevant cases.
2440
f303762d
JD
24412004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2442
95911c74
JD
2443 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
2444 clip_x/y_origin.
2445
a6cb6b78
JD
2446 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
2447
f303762d
JD
2448 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
2449
2450 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
2451 on Mac OSX.
2452
bbdb2684
LT
24532004-06-16 Luc Teirlinck <teirllm@auburn.edu>
2454
2455 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
2456
5ea48b1c
KS
24572004-06-16 Kim F. Storm <storm@cua.dk>
2458
2459 * dispextern.h (Vimage_types): Remove extern.
2460
803aac3e
MB
24612004-06-16 Miles Bader <miles@gnu.org>
2462
2463 * image.c (lookup_image_type): Initialize image type if necessary.
2464
cdc97764
KS
24652004-06-15 Kim F. Storm <storm@cua.dk>
2466
c4a5739c
KS
2467 * xdisp.c (try_cursor_movement): Exclude header line from scroll
2468 margin at top of window.
2469 (try_window_reusing_current_matrix): Calculate proper cursor position
2470 after scrolling up with non-zero scroll margin, as the old cursor
2471 position corresponds to value of PT before executing this command.
2472 (try_window_id): Consider scroll margin at bottom of window too;
2473 otherwise we fail to scroll when hl-line-mode is enabled.
2474
cdc97764
KS
2475 * syntax.c (skip_chars): Only recognize [:class:] when it has the
2476 proper format and class is a lower-case word.
2477
5b166323
JD
24782004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2479
2480 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 2481 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
2482 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
2483 xg_get_gdk_pixmap_and_mask.
cdc97764 2484
5b166323
JD
2485 * xterm.h (struct x_display_info): Typo in comment fixed.
2486
1ebd4f78
JB
24872004-06-14 Juanma Barranquero <lektu@terra.es>
2488
2489 * dispextern.h (Vimage_types): Make it conditional on
2490 HAVE_WINDOW_SYSTEM.
2491
2492 * image.c (Vimage_types): Move from xdisp.c.
2493 (Vimage_type_cache): New variable.
2494 (define_image_type): New argument indicating whether an image
2495 library was loaded; cache loaded status and return t on success,
2496 nil otherwise.
2497 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
2498 (w32_delayed_load): New function to load an image library from a
2499 list of possible filenames.
2500 (init_xpm_functions, init_png_functions, init_jpeg_functions)
2501 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 2502 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
2503 (Finit_image_library): New function, extracted from `init_image'.
2504 Try to initialize an image library on demand and cache whether we
2505 were successful or not.
2506 (syms_of_image): Initialize `Vimage_types' and
2507 `Vimage_type_cache'. Add recognized image types to Vimage_types.
2508 Export `init-image-library'.
2509 (init_image): Remove initialization of all image types, except xbm
2510 and pbm.
2511
2512 * xdisp.c (Vimage_types): Delete (moved to image.c).
2513
904ee128
AS
25142004-06-14 Andreas Schwab <schwab@suse.de>
2515
2516 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
2517 Avoid calling specbind when completion-regexp-list is empty.
2518
092de21d
RS
25192004-06-13 Richard M. Stallman <rms@gnu.org>
2520
2521 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2522 (re_wctype, re_iswctype, re_wctype_to_bit):
2523 Non-function definitions moved here from regex.c.
1ebd4f78 2524
092de21d
RS
2525 * regex.c (re_wctype, re_iswctype): Function defs longer static.
2526 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
2527 (re_wctype, re_iswctype, re_wctype_to_bit):
2528 Non-function definitions moved to regex.h.
2529
2530 * window.c (Fselect_window): Doc fix.
2531
2532 * syntax.c: Include regex.h.
2533 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
2534 If requested, make a list of classes, then check the scanned
2535 chars for membership in them.
2536 (in_classes): New function.
2537 Doc fix.
2538
2539 * keyboard.c (cmd_error): Don't call any_kboard_state
2540 if inside a recursive edit level.
2541
25422004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
2543
2544 * keyboard.c (command_loop): Call any_kboard_state before
2545 command_loop_2 when at top level.
2546
3ebc0939
AS
25472004-06-13 Andreas Schwab <schwab@suse.de>
2548
cea5d0d4
AS
2549 * print.c (print_object): Always use %ld for printing EMACS_INT.
2550
2551 * keyboard.c (cancel_hourglass_unwind): Return a value.
2552 (modify_event_symbol): Always use %ld for printing EMACS_INT.
2553 (Fexecute_extended_command): Likewise.
2554
2555 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
2556 avoid clashes.
2557 (SYNTAX): Likewise.
2558 (SYNTAX_WITH_FLAGS): Likewise.
2559 (SYNTAX_MATCH): Likewise.
2560
2561 * syntax.c (char_quoted): Avoid warning about undefined operation.
2562 (find_defun_start): Likewise.
2563 (scan_lists): Likewise.
2564 (INC_FROM): Likewise.
2565 (scan_sexps_forward): Likewise.
2566
be8c4ce4
AS
2567 * image.c: Include <ctype.h>.
2568
3ebc0939
AS
2569 * xfaces.c (face_attr_equal_p): Declare parameters.
2570
6fb41b5b
KH
25712004-06-13 Kenichi Handa <handa@m17n.org>
2572
2573 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
2574
fc3095ce
EZ
25752004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
2576
2577 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
2578
66189a40
KH
25792004-06-12 Kenichi Handa <handa@m17n.org>
2580
2581 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
2582 ccl_prog_stack_struct and update it.
2583 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
2584 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
2585 ccl->eof_ic on EOF.
2586 (ccl_debug_hook): New function.
2587 (struct ccl_prog_stack): New member eof_ic.
2588 (ccl_driver): Handle EOF in subrountine call correctly.
2589
25902004-06-11 Kenichi Handa <handa@m17n.org>
2591
2592 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
2593
1da71023
KS
25942004-06-11 Kim F. Storm <storm@cua.dk>
2595
2596 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
2597
e9efcef4
JB
25982004-06-11 Juanma Barranquero <lektu@terra.es>
2599
2600 * keyboard.c (Fposn_at_point): Doc fix.
2601
9b9ceb61
DK
26022004-06-11 David Kastrup <dak@gnu.org>
2603
2604 * search.c (match_limit): Don't flag an error if match-data
2605 exceeding the allocated search_regs.num_regs gets requested, just
2606 return Qnil.
2607
6e87ac8f
MB
26082004-06-08 Miles Bader <miles@gnu.org>
2609
2610 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
2611
0b0dea7b
JB
26122004-06-07 Juanma Barranquero <lektu@terra.es>
2613
2614 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
2615 (Fcurrent_time_string, Fcurrent_time_zone)
2616 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
2617
a0a23346
MB
26182004-06-07 Miles Bader <miles@gnu.org>
2619
08384afd 2620 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
2621 (push_named_merge_point): New function.
2622 (merge_named_face): New function.
2623 (merge_face_ref, face_at_buffer_position, face_at_string_position):
2624 Use `merge_named_face'.
2625 (merge_face_inheritance): Function removed.
c8d09ad8 2626 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
2627 Add new `err_msgs' and `named_merge_points' args. Return error
2628 status. Only print error messages if ERR_MSGS is true. Don't try to
2629 do :inherit attribute validation.
2630 (merge_face_heights): Handle `unspecified' in both directions.
2631 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
2632 Call `merge_face_ref' instead of `merge_face_inheritance'.
2633 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
2634 (compute_char_face, face_at_buffer_position)
2635 (face_at_string_position): Call `merge_face_ref' instead of
2636 `merge_face_vector_with_property'.
2637
12d5b185
KH
26382004-06-07 Kenichi Handa <handa@m17n.org>
2639
2640 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
2641 the necessary places.
2642
2e2d7ee6
KS
26432004-06-07 Kim F. Storm <storm@cua.dk>
2644
2645 * process.c (Fdelete_process): Undo 2004-05-28 change.
2646 Instead, call status_notify also for network process.
2647 (status_message): Use process instead of status as arg.
2648 Give messages "deleted" or "connection broken by remote peer" for
2649 an exited network process.
2650 (status_notify): Change call to status_message.
2651 (read_process_output): Increase readmax to 4096. Do not increase
2652 buffer size for datagram channels (default is now large enough).
2653
fcf0d299
ST
26542004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2655
2656 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
2657 problem due to newly defined variable.
2658
0722292b
MB
26592004-06-06 Miles Bader <miles@gnu.org>
2660
2661 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
2662 immediately if non-interactive or not initialized.
2663
ddfb8369
RS
26642004-06-05 Richard M. Stallman <rms@gnu.org>
2665
2666 * minibuf.c (Fcompleting_read): Doc fix.
2667
57015754
AS
26682004-06-05 Andreas Schwab <schwab@suse.de>
2669
2670 * macfns.c (x_create_tip_frame): Fix declaration after statement.
2671
23715ea6
JB
26722004-06-05 Juanma Barranquero <lektu@terra.es>
2673
2674 * keymap.c (Fdescribe_vector): Fix docstring.
2675 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
2676
8e330b22
MB
26772004-06-05 Miles Bader <miles@gnu.org>
2678
2679 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
2680 attributes have different values than the default face.
2681
9742a3a6
EZ
26822004-06-04 Eli Zaretskii <eliz@gnu.org>
2683
2684 * xfaces.c (x_supports_face_attributes_p): Make this function
2685 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
2686 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
2687 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 2688
9717e36c
MB
26892004-06-04 Miles Bader <miles@gnu.org>
2690
2691 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
2692 from Ftty_supports_face_attributes_p.
2693 (x_supports_face_attributes_p): New function.
2694 (Ftty_supports_face_attributes_p): Function deleted.
2695 (Fdisplay_supports_face_attributes_p): New function.
2696 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 2697 (face_attr_equal_p): New function.
9717e36c
MB
2698 (lface_equal_p): Use it.
2699
52deb19f
JB
27002004-06-03 Juanma Barranquero <lektu@terra.es>
2701
2702 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
2703 (Vw32_color_map): Fix typo in docstring.
2704 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
2705 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
2706 Make argument names match their use in docstring.
2707
86d373e6
JB
27082004-06-02 Juanma Barranquero <lektu@terra.es>
2709
2710 Work around bugs/problems with MinGW builds of graphics libraries
2711 called from MSVC builds of Emacs.
2712
2713 * image.c (lookup_image): Make pointer to img static.
2714 (png_read_from_memory): Disable "global" optimization.
2715
2fb0ce67
SM
27162004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
2717
c8d09ad8
SM
2718 * eval.c (Fcondition_case): Fix usage. Simplify.
2719
2fb0ce67
SM
2720 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
2721
50bf7673
ST
27222004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2723
2724 * macfns.c: Don't include ccl.h.
2725 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
2726 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
2727 TextUtils.h.
c8d09ad8 2728 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
2729 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
2730 display height/width.
2731 (compute_tip_xy, Vx_max_tooltip_size): Declare.
2732 (unwind_create_tip_frame, compute_tip_xy): New functions.
2733 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
2734 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
2735 and last_show_tip_args.
2fb0ce67 2736
50bf7673
ST
2737 * macgui.h [!MAC_OSX]: Include Gestalt.h.
2738 (Cursor, No_Cursor): New defines.
c8d09ad8 2739 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
2740 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
2741
2742 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
2743
2744 * macterm.c: Don't include Gestalt.h.
2745 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
2746 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
2747 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
2748 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
2749 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
2750 (construct_mouse_click, XTmouse_position)
2751 (x_scroll_bar_report_motion, x_calc_absolute_position)
2752 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
2753 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
2754 (note_mouse_movement): Clear the mouse face and reset the pointer
2755 shape when the pointer goes outside the frame without grabbing.
2756 (mac_front_window): New function.
2757 (mac_window_to_frame): New macro.
2758 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
2759 (do_window_activate, do_window_deactivate, do_app_resume)
2760 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
2761 (do_zoom_window, mac_do_receive_drag, XTread_socket)
2762 (mac_check_for_quit_char): Use mac_front_window and/or
2763 mac_window_to_frame.
2764 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
2765 scroll-bar click event.
2766 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 2767 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 2768 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 2769 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
2770 (do_window_update): Don't do anything if the updated window is the
2771 tooltip window.
2772 (do_mouse_moved): Handle mouse movement events here (previously in
2773 XTread_socket). Clear the mouse face if
2774 dpyinfo->mouse_face_hidden is set.
2775 (do_os_event, do_events): Remove (now in XTread_socket).
2776 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
2777 Loop until all the events in the queue are processed.
2778 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
2779 contents of do_os_event and do_events. Remove mouse movement
2780 handling (now in do_mouse_moved). Add the case where
2781 Vmouse_highlight has an integer value.
2782 (NewMacWindow): Remove.
2783 (make_mac_frame): Do what NewMacWindow previously did. Don't do
2784 excess initializations.
2785 (make_mac_terminal_frame): Previous initializations in
2786 make_mac_frame are moved here.
c8d09ad8
SM
2787 (mac_initialize_display_info):
2788 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
2789
2790 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
2791 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
2792
08fd1251
RS
27932004-05-29 Richard M. Stallman <rms@gnu.org>
2794
2795 * lisp.h (truncate_undo_list): Update decl.
2796
2797 * alloc.c (undo_outer_limit): New variable.
2798 (syms_of_alloc): Defvar it.
2799 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
2800
2801 * undo.c (truncate_undo_list): New arg LIMITSIZE.
2802
2803 * alloc.c (lisp_align_malloc): Check for base == 0
2804 regardless of HAVE_POSIX_MEMALIGN.
2805 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
2806
227ef0ff
SM
28072004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2808
2809 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
2810 (marker_blocks_pending_free): Remove.
2811 (Fgarbage_collect): Sweep after cleaning up undo-lists.
2812 Mark the undo lists after claning them up.
2813 Don't free block in marker_blocks_pending_free.
2814 (mark_buffer): Don't mark undo_list.
2815 (gc_sweep): Sweep hash-tables and strings first.
2816 Do free marker blocks that are empty.
2817
034a6113
SM
28182004-05-28 Jim Blandy <jimb@redhat.com>
2819
2820 * regex.c (print_partial_compiled_pattern): Add missing 'break'
2821 after 'case wordend'. For symbeg and symend, print to stderr,
2822 like the other cases.
2823
33594a8d
NF
28242004-05-28 Noah Friedman <friedman@splode.com>
2825
2826 * process.c (Fdelete_process): Do not call remove_process.
2827
ce50a847
SM
28282004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2829
2830 * alloc.c (struct backtrace): Remove.
2831 (Fgarbage_collect): Use the new mark_backtrace.
2832
2833 * eval.c (mark_backtrace): New function.
2834
2835 * minibuf.c (run_exit_minibuf_hook): New function.
2836 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
2837 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
2838
1e8dae36
KS
28392004-05-27 Kim F. Storm <storm@cua.dk>
2840
2841 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
2842 over display properties, e.g. images, that replace buffer text.
2843
846faa3b
KS
28442004-05-25 Kim F. Storm <storm@cua.dk>
2845
2846 * alloc.c (marker_blocks_pending_free): New var.
2847 (gc_sweep): Store free marker blocks on that list.
2848 (Fgarbage_collect): Free them after undo-list cleanup.
2849
2850 * process.c (wait_reading_process_input): Check connect_wait_mask
2851 before actually accepting connection in case it has already been
2852 accepted due to recursion.
2853
b6189c3b 28542004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 2855
ce50a847
SM
2856 * coding.c (Fset_safe_terminal_coding_system_internal):
2857 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 2858
71d5a208
RS
28592004-05-22 Richard M. Stallman <rms@gnu.org>
2860
2861 * alloc.c (Fmake_string): Doc fix.
2862
2863 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2864 and the alist pairs too.
2865
2866 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2867
2868 * emacs.c (main): Update copyright year.
2869
2870 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2871
2872 * insdel.c (del_range_2, replace_range): Don't write an anchor
2873 if the gap is empty.
2874
2875 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2876 scroll-down-aggressively is small but positive, put point
2877 near the screen edge.
2878
f63fd14e
JB
28792004-05-22 Juanma Barranquero <lektu@terra.es>
2880
2881 * keymap.c (Fdefine_key): Doc fix.
2882
4d12067c
KS
28832004-05-22 Kim F. Storm <storm@cua.dk>
2884
2885 * alloc.c (struct backtrace): Add debug_on_exit member.
2886 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2887 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2888 the removed cons cells.
2889 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2890 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2891 any cons cells pointing to unallocated stings.
2892 Do not lisp_free any marker blocks, as there may still be pointers
2893 to them from buffer undo lists at this stage of GC.
2894
2895 * keyboard.c (struct backtrace): Add debug_on_exit member.
2896 (Fcommand_execute): Clear it.
2897
931285e2
LT
28982004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2899
2900 * intervals.c (lookup_char_property): Do not prematurely return nil.
2901
669fa600
SM
29022004-05-19 Jim Blandy <jimb@redhat.com>
2903
2904 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 2905 beginning and end of symbols.
4d12067c 2906
669fa600
SM
2907 * regex.c (enum syntaxcode): Add Ssymbol.
2908 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2909 (re_opcode_t): New opcodes `symbeg' and `symend'.
2910 (print_partial_compiled_pattern): Print the new opcodes properly.
2911 (regex_compile): Parse the new operators.
ce50a847 2912 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
2913 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2914 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2915 (re_match_2_internal): Match symbeg and symend.
2916
2917 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2918
0d8c2e5c
KS
29192004-05-19 Kim F. Storm <storm@cua.dk>
2920
2921 * .gdbinit (xsymbol): Fix last change.
2922
669fa600
SM
29232004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2924
2925 * .gdbinit (xprintstr): New fun.
2926 (xstring, xprintsym): Use it.
2927
2928 * w32proc.c (create_child): Use INTMASK.
2929
2930 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2931 unmarked elements of the undo list.
2932
9a6a4c40
DP
29332004-05-18 David Ponce <david@dponce.com>
2934
2935 * print.c (print): Reset print_depth before to call print_object.
2936
f3c4ec74
JR
29372004-05-18 Jason Rumney <jasonr@gnu.org>
2938
2939 * w32console.c: Prefix RIF functions with w32con_ to avoid
2940 namespace clash with functions in term.c and w32term.c.
2941
2942 * w32menu.c (add_menu_item, w32_menu_display_help)
2943 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2944
0d8c2e5c 2945 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2946
6be49c3a
EZ
29472004-05-18 Eli Zaretskii <eliz@gnu.org>
2948
4d0b9a0a
EZ
2949 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2950
6be49c3a
EZ
2951 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2952 with make_number.
2953 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2954 with XINT.
2955
0bc90bba
KS
29562004-05-18 Kim F. Storm <storm@cua.dk>
2957
89d19988
KS
2958 * blockinput.h (INPUT_BLOCKED_P): New macros.
2959
2960 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2961 (Ftop_level): Unblock input if blocked.
2962
0bc90bba
KS
2963 * buffer.h (GET_OVERLAYS_AT): New macro.
2964 * msdos.c (IT_note_mouse_highlight): Use it.
2965 * textprop.c (get_char_property_and_overlay): Use it.
2966 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2967 * xfaces.c (face_at_buffer_position): Use it.
2968
2969 * print.c (print_object): Increase buf size.
2970
653bd0f6
JR
29712004-05-17 Jason Rumney <jasonr@gnu.org>
2972
2973 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2974 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2975 Lisp_Object using i member.
2976 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2977 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2978 consistently.
2979
2980 * w32proc.c (create_child): Use make_number instead of masking pid.
2981
2982 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2983 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2984 Use EQ to compare Lisp_Objects.
2985 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2986
2987 * w32term.c (w32_num_mouse_buttons): Rename from
2988 Vw32_num_mouse_buttons and make it an int.
2989
2990 * w32.c (init_environment): Use it.
2991
2992 * w32fns.c (w32_wnd_proc): Likewise.
2993
2994 * w32proc.c (w32_pipe_read_delay): Rename from
2995 Vw32_pipe_read_delay and make it an int.
2996
2997 * w32.c (_sys_read_ahead): Use it.
2998
2999 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
3000
3001 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
3002
3003 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
3004 (key_event): Don't mix Lisp_Object and int.
3005
3006 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
3007
3008 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
3009 modifiers in language change event.
3010
54b53ba7
KS
30112004-05-17 Kim F. Storm <storm@cua.dk>
3012
3013 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
3014 Such objects may be freed markers which still exist on an undo list.
3015
6e86a75d
JB
30162004-05-16 Juanma Barranquero <lektu@terra.es>
3017
3018 * data.c (Fset_default): Make argument names match their use in
3019 docstring.
3020
fc80da24
AS
30212004-05-15 Andreas Schwab <schwab@suse.de>
3022
3023 * emacs.c (gdb_array_mark_flag): Define.
3024 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
3025
c1380aa6
EZ
30262004-05-15 Eli Zaretskii <eliz@gnu.org>
3027
3028 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
3029 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
3030 defined for the MS-DOS build.
3031
89458937
SM
30322004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
3033
3034 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
3035
08020f9a
KH
30362004-05-14 Kenichi Handa <handa@m17n.org>
3037
3038 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
3039
a433994a
ST
30402004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3041
3042 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
3043 section to frame.c section.
3044 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 3045 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 3046
a433994a 3047 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 3048
a433994a 3049 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 3050
a433994a
ST
3051 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
3052 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
3053 (XTread_socket): Fix int/Lisp_Object mixup.
3054 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 3055
a433994a
ST
3056 * macterm.h (struct frame, struct face, struct image)
3057 (display_x_get_resource, Fx_display_color_p)
89458937
SM
3058 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
3059 Add prototypes.
a433994a 3060
b51a51b9
KS
30612004-05-14 Kim F. Storm <storm@cua.dk>
3062
3063 * process.c (wait_reading_process_input): Make reentrant.
3064 Make Available and Connecting non-static. Save and restore value
3065 of waiting_for_user_input_p.
3066
2bde1dd8
KS
30672004-05-13 Kim F. Storm <storm@cua.dk>
3068
3069 * keyboard.c (mark_kboards): Don't mark x and y members
3070 that are overloaded in selection request events.
3071
a267ab4d
SM
30722004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
3073
3074 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
3075
eb15ce9e
GM
30762004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
3077
3078 * window.c (Fdisplay_buffer, Fsplit_window)
3079 (split-height-threshold): Doc fix.
3080
7fc92635
JB
30812004-05-13 Juanma Barranquero <lektu@terra.es>
3082
3083 * xfaces.c (Ftty_supports_face_attributes_p)
3084 (Finternal_copy_lisp_face): Fix typo in docstring.
3085 (Finternal_get_lisp_face_attribute): Fix docstring.
3086
1ec2a572
JD
30872004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3088
3089 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
3090
ae9292e0
ST
30912004-05-11 Steven Tamm <steventamm@mac.com>
3092
3093 * macfns.c (Fx_create_frame): Default to using tool-bar by
3094 setting tool-bar-lines to 1 in default-frame-alist.
3095
30962004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
3097
3098 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
3099 (xpm_get_color_table_v, xpm_make_color_table_h)
3100 (xpm_put_color_table_h, xpm_get_color_table_h)
3101 (xpm_str_to_color_key, xpm_load_image, xpm_load)
3102 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 3103 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 3104
fe97e8df
ST
31052004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3106
a267ab4d 3107 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
3108 instead of FRAME_X_P
3109
b47e779e
KS
31102004-05-11 Kim F. Storm <storm@cua.dk>
3111
3112 * process.c (read_process_output): Grow decoding_buf when needed;
3113 this could cause a crash in allocate_string and compact_small_strings.
3114
cdc9b845
EZ
31152004-04-29 Jim Blandy <jimb@redhat.com>
3116
3117 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
3118 against proper opcode.
3119
aa7094ba
JB
31202004-05-10 Juanma Barranquero <lektu@terra.es>
3121
3122 * process.c (Fstart_process): Fix docstring.
3123
3124 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
3125 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
3126 (Fsplit_char, Fchar_charset): Make argument names match their use
3127 in docstring.
3128
e109331a
RS
31292004-05-10 Richard M. Stallman <rms@gnu.org>
3130
3131 * print.c (print_preprocess): Use being_printed, loop_count and
3132 halftail to detect overdeep nesting and cyclic cdr chains.
3133
9a28b921
AS
31342004-05-10 Andreas Schwab <schwab@suse.de>
3135
78819ebb 3136 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
3137
3138 * fileio.c (Frename_file): Remove extra argument in call to
3139 Fmake_symbolic_link.
3140
e2c02c1a
KS
31412004-05-10 Kim F. Storm <storm@cua.dk>
3142
3143 * xdisp.c (calc_line_height_property): Use string position when
3144 object is a string.
3145
cfe9d13e
KH
31462004-05-10 Kenichi Handa <handa@m17n.org>
3147
a57e8159
KH
3148 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
3149 inhibit-modification-hooks to t temporarily before calling
3150 Ferase_buffer.
3151
3152 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
3153 inhibit-modification-hooks to t temporarily before calling
3154 Ferase_buffer.
3155
3156 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
3157 inhibit-modification-hooks to t temporarily before calling
3158 Ferase_buffer.
3159
cfe9d13e
KH
3160 * fns.c (count_combining): Delete it.
3161 (concat): Don't check combining bytes.
3162
ceb96489
JR
31632004-05-09 Jason Rumney <jasonr@gnu.org>
3164
3165 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
3166 (globals_of_w32fns): Set it.
3167
b6189c3b 31682004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
3169
3170 * data.c (Fquo): Simplify.
3171
28712a21
JB
31722004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
3173
3174 * data.c (Fquo): If any argument is float, do the computation in
3175 floating point.
3176
0f0af7a8
JB
31772004-05-08 Juanma Barranquero <lektu@terra.es>
3178
88214ef6
JB
3179 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
3180 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
3181 Fix spelling of Emacs on docstring.
3182 (Fset_process_coding_system, Fprocess_coding_system)
3183 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
3184 Make argument names match their use in docstring.
3185 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
3186 Fix docstring.
3187
0f0af7a8
JB
3188 * editfns.c (Finsert_buffer_substring): Make argument names match their
3189 use in docstring.
3190
3191 * syntax.c (Fmodify_syntax_entry): Fix docstring.
3192
2a316a84
ST
31932004-05-07 Steven Tamm <steventamm@mac.com>
3194
3195 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
3196 around call to ReceiveEvent to avoid certain crashes.
3197
31982004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 3199
2a316a84
ST
3200 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
3201 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
3202 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
3203 Save/restore the current graphics port and device handle when
3204 drawing into an offscreen graphics world.
3205
3206 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
3207 (gif_load): Likewise.
3208
ab80314b
JB
32092004-05-07 Juanma Barranquero <lektu@terra.es>
3210
3211 * window.c (Fset_window_buffer): Fix docstring.
3212
70646bb5
TTN
32132004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
3214
3215 * emacs.c (main) [VMS]: Fix var ref.
3216
b6189c3b 32172004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
3218
3219 * data.c (Fsetq_default): Fix docstring.
3220
279d3293
JR
32212004-05-06 Jason Rumney <jasonr@gnu.org>
3222
3223 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
3224 to avoid name clash.
3225
f72b5416
JD
32262004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3227
3228 * fileio.c (barf_or_query_if_file_exists): Use lstat.
3229 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 3230 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 3231
6ab66799
KS
32322004-05-04 Kim F. Storm <storm@cua.dk>
3233
3234 * xdisp.c (Qtotal): New var.
3235 (syms_of_xdisp): Intern and staticpro it.
3236 (calc_line_height_property): New arg total. Set it if
3237 line-spacing property has format (total . VALUE).
3238 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
3239 Handle total line-spacing property.
3240
ab2d724b
JD
32412004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3242
3243 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
3244 "under" scroll bar when size/position changes.
3245
238add5e
JR
32462004-05-03 Jason Rumney <jasonr@gnu.org>
3247
3248 * makefile.nt: Remove.
3249
1644f4e4
EZ
32502004-05-02 Eli Zaretskii <eliz@gnu.org>
3251
a267ab4d
SM
3252 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
3253 Avoid compiler warnings.
05fdbeb8 3254
1644f4e4
EZ
3255 * Makefile.in (region-cache.o): Depend on config.h.
3256
b6189c3b 32572004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
3258
3259 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
3260 with continuation lines, too.
3261
2b98b088
TTN
32622004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
3263
3264 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
3265
d9bf7950
SM
32662004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
3267
3268 * xdisp.c (calc_line_height_property): YAILOM (yet another
3269 int/Lisp_Object mixup).
3270
affa509c
EZ
32712004-05-01 Eli Zaretskii <eliz@gnu.org>
3272
3273 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
3274 undo bad effect of pack(4) in some versions of system headers.
3275
07c07cfe
JR
32762004-05-01 Jason Rumney <jasonr@gnu.org>
3277
3278 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
3279
e71caa4e
KS
32802004-04-30 Kim F. Storm <storm@cua.dk>
3281
3282 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 3283 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
3284
3285 * dispextern.h (struct it): Remove member use_default_face.
3286 Add members override_ascent, override_descent, override_boff.
3287
3288 * xdisp.c (init_iterator): Handle line-spacing float value.
3289 Initialize override_ascent member.
3290 (append_space_for_newline): Reset override_ascent.
3291 Remove use_default_face.
3292 (calc_line_height_property): New function to calculate value of
3293 line-height and line-spacing properties. Look at overlays, too.
3294 Set override_ascent, override_descent, override_boff members when
3295 using another face than the current face. Float values are now
3296 relative to the frame default font, by default; accept a cons
3297 of ratio and face name to specify value relative to a specific face.
3298 (x_produce_glyphs): Use calc_line_height_property.
3299 Use override_ascent etc. when set to handle different face heights.
3300 A negative line-spacing property value is interpreted as a total
3301 line height, rather than inter-line spacing.
3302 (note_mouse_highlight): Allocate room for 40 overlays initially.
3303
0fddae66
SM
33042004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
3305
3306 * data.c (Fsubr_name): New fun.
3307 (syms_of_data): Defsubr it.
3308
712d23dc
KS
33092004-04-29 Kim F. Storm <storm@cua.dk>
3310
3311 * xdisp.c (null_glyph_slice): New var.
3312 (append_glyph, append_composite_glyph, append_stretch_glyph):
3313 Use it to initialize glyph slice.
3314
033ad8c6
SM
33152004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
3316
3317 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
3318 (on_hot_spot_p): Make sure we always return a value.
3319 (Flookup_image_map): Remove unused var ix and iy.
3320 (note_mode_line_or_margin_highlight): Remove unused var `image'.
3321
93397360
EZ
33222004-04-27 Eli Zaretskii <eliz@gnu.org>
3323
3324 * msdos.c (init_environment): If one of the TMP... environment
3325 variables is set to a drive letter without a trailing slash,
3326 append a slash.
3327
0c54865e
EZ
33282004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
3329
3330 * editfns.c (lisp_time_argument): Provide externally.
3331
3332 * fileio.c (Fset_file_times): New function.
3333 (syms_of_fileio): Intern and staticpro it.
3334
d3b111bd
KS
33352004-04-27 Kim F. Storm <storm@cua.dk>
3336
07dc1231
KS
3337 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
3338 header line strings.
3339
360fe9d2
KS
3340 * dispextern.h (struct it): New member use_default_face.
3341
d3b111bd
KS
3342 * xdisp.c (Qline_height): New variable.
3343 (syms_of_xdisp): Intern and staticpro it.
3344 (append_space_for_newline): Partially undo 2004-04-25 change;
3345 add default_face_p arg, and restore callers.
3346 Clear it->use_default_face after use.
3347 (x_produce_glyphs): Set default font for ascii char if
3348 it->use_default_font is set. Change line-spacing property to set
3349 just extra line spacing. Handle new line-height property.
3350
0448588b
AS
33512004-04-26 Andreas Schwab <schwab@suse.de>
3352
3353 * print.c (print_object): Print non-ascii characters in bool
3354 vector representation as octal escapes.
3355
3356 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
3357 * print.c (print_object): Use it instead of BITS_PER_CHAR for
3358 bool vectors.
3359 * lread.c (read1): Likewise.
3360 * alloc.c (Fmake_bool_vector): Likewise.
3361 * data.c (Faref, Faset): Likewise.
3362 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
3363 (mapcar1): Likewise.
d3b111bd 3364
536d6baa
ST
33652004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
3366
3367 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
3368
ae11577a
MB
33692004-04-26 Miles Bader <miles@gnu.org>
3370
3371 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
3372
e198ba87
JB
33732004-04-26 Juanma Barranquero <lektu@terra.es>
3374
3375 * buffer.c (Fpop_to_buffer): Fix docstring.
3376
f3d5f92d 33772004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 3378
f3d5f92d
ST
3379 * lread.c (init_lread): Don't display missing lisp directory
3380 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 3381 may be built without correct installation path.
f3d5f92d 3382
03e35edc
KS
33832004-04-25 Kim F. Storm <storm@cua.dk>
3384
9ff3aa31
KS
3385 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3386
3387 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
3388
03e35edc
KS
3389 * xdisp.c (append_space_for_newline): Rename from append_space.
3390 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
3391 (x_produce_glyphs): Handle line-spacing property on newline char.
3392 If value is t, adjust ascent and descent to fit current row height.
3393 If value is an integer or float, set extra_line_spacing to integer
3394 value, or to float value x current line height.
3395
f24814e0
KH
33962004-04-23 Kenichi Handa <handa@m17n.org>
3397
3398 * fontset.c (Finternal_char_font): If POSITION is nil, return
3399 font for displaying CH with the default face.
3400
d814862a
JB
34012004-04-23 Juanma Barranquero <lektu@terra.es>
3402
3403 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
3404
063a45c5
SM
34052004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
3406
3407 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
3408 Don't make assumptions about the relative place of i and val.
3409 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
3410
ae7ab2d3
KS
34112004-04-21 Kim F. Storm <storm@cua.dk>
3412
3413 * dispextern.h (struct glyph_slice): New struct.
3414 (struct glyph): New member slice.
3415 (GLYPH_SLICE_EQUAL_P): New macro.
3416 (GLYPH_EQUAL_P): Use it.
3417 (struct glyph_string): New member slice.
3418 (struct it_slice): New struct.
3419 (struct it): New member slice, add member to stack too.
3420 New member constrain_row_ascent_descent_p.
3421 (image_ascent): Add prototype.
3422
3423 * dispnew.c (buffer_posn_from_coords): Return full image width
3424 and height even for image slices (posn is relative to full image).
3425 (marginal_area_string): Adjust x0,y0 for image slice.
3426
3427 * image.c (image_ascent): Add slice arg; calculate ascent for
3428 image slice (or full image).
3429
3430 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
3431 (syms_of_keyboard): Defsubr them.
3432
3433 * lisp.h (pos_visible_p): Fix prototype.
3434
c62aec78 3435 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
3436 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3437 (x_draw_image_foreground, x_draw_image_relief)
3438 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3439 Draw sliced images.
3440
3441 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
3442 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3443 (x_draw_image_foreground, x_draw_image_relief)
3444 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
3445 Draw sliced images.
3446
3447 * w32term.h (image_ascent): Remove prototype.
3448
3449 * window.c (Fpos_visible_in_window_p): Return pixel position if
3450 PARTIALLY arg is non-nil. Simplify. Doc fix.
3451 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
3452 to return/set vscroll in pixels.
3453
3454 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
3455
3456 * xdisp.c (Qslice): New variable.
3457 (syms_of_xdisp): Intern and staticpro it.
3458 (pos_visible_p): Return pixel position in new x and y args.
3459 (init_iterator): Reset it->slice info.
3460 (handle_display_prop): Parse (slice ...) property.
3461 (push_it, pop_it): Save/restore slice info.
3462 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
3463 force repositioning of tall row if window is vscrolled, as that
3464 would reset vscroll.
3465 (append_space): Set it->constrain_row_ascent_descent_p to avoid
3466 increasing row height if row is non-empty.
3467 (fill_image_glyph_string): Copy slice info.
3468 (take_vertical_position_into_account): Simplify.
3469 (produce_image_glyph): Handle iterator slice info, setup glyph
3470 slice info. Do not force minimum line height.
3471 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
3472 do not increase height (ascent/descent) of non-empty row when
3473 adding normal character glyph; instead reduce glyph ascent/descent
3474 appropriately; if row is higher than current glyph, adjust glyph
3475 descent/ascent to reposition glyph within the existing row.
3476 Likewise, when char is newline, only set ascent/descent if row is
3477 currently empty.
3478 (note_mouse_highlight): Handle hotspots with sliced image.
3479
3480 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
3481 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
3482 (x_draw_image_foreground, x_draw_image_relief)
3483 (x_draw_image_foreground_1, x_draw_image_glyph_string):
3484 Draw sliced images.
3485
3486 * xterm.h (image_ascent): Remove prototype.
3487
d58f8753
SM
34882004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
3489
3490 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
3491
4ce2719d
JPW
34922004-04-20 John Paul Wallington <jpw@gnu.org>
3493
3494 * fns.c (Fassoc, Feql): Fix indentation.
3495
d58f8753 3496 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 3497
95f8c3b9
JPW
34982004-04-19 John Paul Wallington <jpw@gnu.org>
3499
3500 * fns.c (Feql): New function.
d58f8753 3501 (syms_of_fns): Defsubr it.
95f8c3b9 3502
b7e85537
JR
35032004-04-18 Jason Rumney <jasonr@gnu.org>
3504
3505 * w32select.c (Fw32_set_clipboard_data): Get sequence number
3506 after closing the clipboard.
3507
5a72efd4
LT
35082004-04-16 Luc Teirlinck <teirllm@auburn.edu>
3509
3510 * buffer.c (Fbuffer_base_buffer): Doc fix.
3511
20dc8583
KS
35122004-04-17 Kim F. Storm <storm@cua.dk>
3513
60962ec4
KS
3514 * keymap.c (Fkey_description): Add optional PREFIX arg.
3515 Combine prefix with KEYS to make up the full key sequence to describe.
3516 Correlate meta_prefix_char and following (simple) key to describe
3517 as meta modifier. All callers changed.
3518 (describe_map): Rename arg `keys' to `prefix'. Remove local
3519 `elt_prefix' var. Use Fkey_description with prefix instead of
3520 elt_prefix combined with Fsingle_key_description.
3521 (describe_vector): Declare static. Replace arg `elt_prefix' with
3522 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
3523 if !KEYMAP_P. Use Fkey_description with prefix instead of
3524 Fsingle_key_description.
3525
3526 * keymap.h (Fkey_description): Fix prototype.
3527 (describe_vector): Remove prototype.
3528
409368b9
KS
3529 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
3530
20dc8583
KS
3531 * image.c (PNG_BG_COLOR_SHIFT): Remove.
3532 (png_load): Fix calculation of transparent background color on X
3533 and W32 platforms.
3534
75c5501b
JB
35352004-04-16 Juanma Barranquero <lektu@terra.es>
3536
3537 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
3538 not too large before computing how much to scroll.
3539
da879ae8
SM
35402004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
3541
3542 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
3543
d01ca4a8
LT
35442004-04-14 Luc Teirlinck <teirllm@auburn.edu>
3545
3546 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
3547 Add hyperlink to Elisp manual to the docstring.
3548
572943b3
SM
35492004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
3550
3551 * callint.c (fix_command): Use XDCR.
3552
5e30a0fb
NR
35532004-04-14 Nick Roberts <nick@nick.uklinux.net>
3554
3555 * window.c (Fget_lru_window): Doc fix.
3556
a27ddfaf
KS
35572004-04-14 Kim F. Storm <storm@cua.dk>
3558
3559 * editfns.c (Fformat): Fix allocation size of precision array.
3560
3561 * dispnew.c (update_window): Only set changed_p if
3562 scrolling_window actually did scroll.
3563 (scrolling_window): Only return 1 if we actually did scroll.
3564
3565 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
3566 height to glyph height when cursor row is not fully visible.
3567 (make_cursor_line_fully_visible): Add FORCE_P arg to return
3568 failure in case row is higher than window. Callers changed.
3569 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
3570 Try to scroll partially visible, higher-than-window cursor row.
3571 (redisplay_window): Always try to scroll partially visible,
3572 higher-than-window cursor row - both initially and again with
3573 centering_position = 0.
3574 Clear desired matrix before retrying with centering_position = 0.
3575
da879ae8
SM
35762004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3577
3578 * syntax.c (scan_lists): Simplify backward string scan.
3579 Fix off-by-one boundary check for string and comment fences.
3580
5fc16e8e
SM
35812004-04-13 Joe Buehler <jbuehler@hekimian.com>
3582
3583 * sheap.c, unexcw.c: New files.
3584
c9aac8e6
LT
35852004-04-12 Luc Teirlinck <teirllm@auburn.edu>
3586
3587 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
3588 base buffer has been killed. Correct the error message if the
3589 base buffer does not exist.
3590
1e88a355
SM
35912004-04-12 Joe Buehler <jbuehler@hekimian.com>
3592
3593 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
3594 Cygwin itself. Add support for Xaw3d scrollbars.
3595
3596 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
3597
3598 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
3599
3600 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
3601 before Cygwin unexec.
3602
3603 * Makefile.in: Link changes for Cygwin unexec() support.
3604
8dbff9a0
AS
36052004-04-12 Andreas Schwab <schwab@suse.de>
3606
3607 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
3608
54dffe35
LT
36092004-04-11 Luc Teirlinck <teirllm@auburn.edu>
3610
3611 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
3612 IGNORE argument equals NAME. Doc fix.
3613
99a72bdf
MY
36142004-04-11 Masatake YAMATO <jet@gyve.org>
3615
1e88a355 3616 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
3617 empty if they are backwards.
3618
40899d7b
SM
36192004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
3620
3621 * xfaces.c (face_color_supported_p): Fix compilation without X11.
3622
f8f853de
SM
36232004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
3624
3625 * doc.c (Fsnarf_documentation): Ignore new file name entries.
3626
c953fe1b
KS
36272004-04-06 Kim F. Storm <storm@cua.dk>
3628
661e85c1
KS
3629 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3630 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
3631
3632 * w32term.c (w32_read_socket): Set mouse_face_hidden after
3633 clearing highlight.
3634
3635 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
3636
3637 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
3638 clearing highlight.
3639
c953fe1b
KS
3640 * indent.c (vmotion): Do not reserve one column for continuation
3641 marks on window frames.
3642
c1994268
EZ
36432004-04-04 Eli Zaretskii <eliz@gnu.org>
3644
3645 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
3646 from GCC.
3647
9f691b0d
SM
36482004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
3649
3650 * .gdbinit-union: Remove.
3651
3652 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
3653 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
3654 ($nonvalbits): Remove.
3655 ($valmask): Set it by calling xreload to avoid redundancy.
3656
3657 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
3658 (gdb_emacs_intbits): Remove.
3659
7a8560d7
JD
36602004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3661
9f691b0d 3662 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 3663
3c8111fc
KH
36642004-03-30 Kenichi Handa <handa@m17n.org>
3665
3666 * editfns.c (Fformat): Fix initialization of the array info.
3667
48a0bce4
KS
36682004-03-30 Kim F. Storm <storm@cua.dk>
3669
3670 * xterm.c (x_mouse_click_focus_ignore_position): New var.
3671 (syms_of_xterm): DEFVAR_BOOL it.
3672 (ignore_next_mouse_click_timeout): New var.
3673 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
3674 Use it to filter mouse clicks following focus event.
3675
1cd0066c
KS
36762004-03-29 David Ponce <david@dponce.com>
3677
3678 * callint.c (Fcall_interactively): Fix last change.
3679
adb3b353
SM
36802004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3681
3682 * eval.c (Fcommandp): Simplify.
3683
3684 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
3685 Extend to handle all kinds of functions.
3686
3687 * lisp.h (Finteractive_form): Declare.
3688
3689 * callint.c (Fcall_interactively): Use it.
3690
6fc4c9c9
KS
36912004-03-26 Kim F. Storm <storm@cua.dk>
3692
3693 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
3694 to catch errors in calc_pixel_width_or_height during redisplay.
3695
abdb9b83
MY
36962004-03-26 Masatake YAMATO <jet@gyve.org>
3697
b17856dd 3698 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 3699
b17856dd 3700 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 3701
b17856dd 3702 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 3703
b17856dd 3704 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 3705
e8a84b6c
JD
37062004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3707
b17856dd 3708 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 3709
36a3fd05
RS
37102004-03-19 Richard M. Stallman <rms@gnu.org>
3711
3712 * s/sol2-6.h: Delete previous change.
3713
ab24c127
KS
37142004-03-19 Kim F. Storm <storm@cua.dk>
3715
3716 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
3717 to_charpos corresponds to newline in right fringe. Use local
3718 BUFFER_POS_REACHED_P macro.
3719
992126de
JD
37202004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3721
3722 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
3723 to compile on non-window system.
3724
45dbfc84
KS
37252004-03-19 Kim F. Storm <storm@cua.dk>
3726
3727 * dispextern.h (calc_pixel_width_or_height): Add prototype.
3728
3729 * image.c (Qcenter): Move to xdisp.c.
3730
3731 * xdisp.c (Qcenter): Declare here.
adb3b353 3732 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
3733 (handle_single_display_prop): Allow space display property on all
3734 platforms.
3735 (display_mode_line): Set mode_line_p before displaying line.
3736 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
3737 handling. Remove complex cases for fringes and scroll-bars.
3738 Add left, right, and center alignment positions. Add text (area)
3739 width/height. Return width or height for image specs.
3740 (produce_stretch_glyph): Improve handling of :align-to. Is now
3741 relative to left of text area by default, but other base offsets
3742 can be specified -- also for text lines.
3743
3744 * term.c (produce_glyphs): Handle IT_STRETCH.
3745 (produce_stretch_glyph): New function to handle space width and
3746 align-to display properties on non-window systems.
3747
37264101
SM
37482004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3749
3750 * fileio.c (Fread_file_name): Set completion-ignore-case for
3751 case-insensitive systems.
3752
73bc43da
MY
37532004-03-14 Masatake YAMATO <jet@gyve.org>
3754
3755 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
3756 when keymap and cursor are setup.
3757
9062aa89
ST
37582004-03-14 Steven Tamm <steventamm@mac.com>
3759
b17856dd 3760 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 3761
e4b1b5ab
KS
37622004-03-14 Kim F. Storm <storm@cua.dk>
3763
3764 * dispextern.h (x_find_image_file): Add prototype.
3765
3766 * image.c (x_find_image_file): Make extern.
3767
3768 * xfns.c (x_find_image_file): Remove prototype.
3769
a6eeaa81 37702004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 3771
37264101 3772 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 3773
37264101 3774 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 3775
e69cfac2
RS
37762004-03-12 Richard M. Stallman <rms@gnu.org>
3777
3778 * fns.c (internal_equal): New arg PROPS controls comparing
3779 text properties. All callers changed.
3780 (Fequal_including_properties): New function.
3781 (syms_of_fns): defsubr it.
3782
45034953
KS
37832004-03-12 Kim F. Storm <storm@cua.dk>
3784
3785 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 3786
45034953
KS
3787 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
3788 (image_background, image_background_transparent): Fix prototypes.
3789
37264101 3790 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
3791
3792 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
3793 (x_query_font, x_find_ccl_program, x_set_window_size)
3794 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3795 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3796 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
3797
3798 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
3799 (x_query_font, x_find_ccl_program, x_set_window_size)
3800 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3801 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3802 (mac_draw_line_to_pixmap): Add prototypes.
3803
38042004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3805
3806 * macterm.c (XTread_socket): Fix mouse click on tool bar.
3807
a12d3d87
KS
38082004-03-11 Kim F. Storm <storm@cua.dk>
3809
d3ab1cf1
KS
3810 * dispextern.h: Move image related prototypes from xfns.c section
3811 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
3812 HAVE_X_WINDOWS.
37264101 3813
37de9f51 3814 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 3815 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
3816 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
3817 (GTK_OBJ) [USE_GTK]: New declaration.
3818 (obj): Add $(GTK_OBJ) to list.
3819
5243c06a 38202004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 3821
5243c06a
ST
3822 * image.c [MAC_OSX]: Include sys/stat.h
3823
3824 * macfns.c (syms_of_macfns): Remove definitions of things now
3825 defined in image.c
3826
c0f97789
KS
38272004-03-11 Kim F. Storm <storm@cua.dk>
3828
3829 The following changes consolidates the identical/similar image
3830 support code previously found in xfns.c, w32fns.c, and macfns.c
3831 into a new file image.c.
3832
3833 * makefile.w32-in (OBJ1): Add image.o.
3834 ($(BLD)/image.$(O)): Add dependencies.
3835
3836 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
3837 (image.o): Add dependencies.
37264101 3838
c0f97789
KS
3839 * image.c: New file with consolidated image support code.
3840 (COLOR_TABLE_SUPPORT): New define to control whether
3841 color table support is available (X only).
3842 (Bitmap_Record): Common name for x_bitmap_record,
3843 w32_bitmap_record, and mac_bitmap_record.
3844 (XImagePtr): Common name for pointer to XImage or equivalent.
3845 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
3846 to XImagePtr on X+MAC, and to HDC on W32.
3847 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
3848 (NO_PIXMAP): Common name for "None" or equivalent.
3849 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
3850 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
3851 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
3852 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
3853 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
3854 (XDrawLine): Define on MAC for code sharing.
3855 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
3856 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3857 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3858 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3859 (x_reference_bitmap, x_create_bitmap_from_data)
3860 (x_create_bitmap_from_file, x_destroy_bitmap)
3861 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3862 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3863 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3864 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3865 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3866 (define_image_type, lookup_image_type, valid_image_p)
3867 (image_error, enum image_value_type, struct image_keyword)
3868 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3869 (make_image, free_image, prepare_image_for_display, image_ascent)
3870 (four_corners_best, image_background, image_background_transparent)
3871 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3872 (make_image_cache, free_image_cache, clear_image_cache)
3873 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3874 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3875 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3876 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3877 (init_image_func_pointer, image_load_quartz2d)
3878 (struct ct_color, init_color_table, free_color_table)
3879 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3880 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3881 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3882 (x_disable_image, x_build_heuristic_mask)
3883 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3884 (TIFF support, GIF support, Ghostscript support): Consolidate image
3885 code from xfns.c, w32fns.c, and macfns.c.
3886 (syms_of_image): Consolidate image related symbol setup here.
3887 (init_image): Consolidate image related initializations here.
37264101 3888
c0f97789
KS
3889 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3890 and init_image. Remove call to init_xfns.
3891
37264101
SM
3892 * macterm.h (struct mac_bitmap_record): Add file member.
3893 Not currently used, but simplifies code sharing.
c0f97789
KS
3894
3895 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3896 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3897 (x_reference_bitmap, x_create_bitmap_from_data)
3898 (x_create_bitmap_from_file, x_destroy_bitmap)
3899 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3900 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3901 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3902 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3903 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3904 (define_image_type, lookup_image_type, valid_image_p)
3905 (image_error, enum image_value_type, struct image_keyword)
3906 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3907 (make_image, free_image, prepare_image_for_display, image_ascent)
3908 (four_corners_best, image_background, image_background_transparent)
3909 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3910 (make_image_cache, free_image_cache, clear_image_cache)
3911 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3912 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3913 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3914 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3915 (init_image_func_pointer, image_load_quartz2d)
3916 (struct ct_color, init_color_table, free_color_table)
3917 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3918 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3919 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3920 (x_disable_image, x_build_heuristic_mask)
3921 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3922 (TIFF support, GIF support, Ghostscript support): Merge with image
3923 code from xfns.c and macfns.c into image.c.
3924 (syms_of_xfns): Move image related symbols to image.c.
3925 (init_external_image_libraries, init_xfns): Remove; initialization
3926 moved to init_image in image.c.
3927
3928 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3929 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3930 (x_reference_bitmap, x_create_bitmap_from_data)
3931 (x_create_bitmap_from_file, x_destroy_bitmap)
3932 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3933 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3934 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3935 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3936 (define_image_type, lookup_image_type, valid_image_p)
3937 (image_error, enum image_value_type, struct image_keyword)
3938 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3939 (make_image, free_image, prepare_image_for_display, image_ascent)
3940 (four_corners_best, image_background, image_background_transparent)
3941 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3942 (make_image_cache, free_image_cache, clear_image_cache)
3943 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3944 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3945 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3946 (struct ct_color, init_color_table, free_color_table)
3947 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3948 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3949 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3950 (x_disable_image, x_build_heuristic_mask)
3951 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3952 (TIFF support, GIF support, Ghostscript support): Merge with image
3953 code from xfns.c and macfns.c into image.c.
3954 (syms_of_xfns): Move image related symbols to image.c.
3955 (init_external_image_libraries, init_xfns): Remove; initialization
3956 moved to init_image in image.c.
3957
3958 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3959 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3960 (x_reference_bitmap, x_create_bitmap_from_data)
3961 (x_create_bitmap_from_file, x_destroy_bitmap)
3962 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3963 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3964 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3965 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3966 (define_image_type, lookup_image_type, valid_image_p)
3967 (image_error, enum image_value_type, struct image_keyword)
3968 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3969 (make_image, free_image, prepare_image_for_display, image_ascent)
3970 (four_corners_best, image_background, image_background_transparent)
3971 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3972 (make_image_cache, free_image_cache, clear_image_cache)
3973 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3974 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3975 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3976 (struct ct_color, init_color_table, free_color_table)
3977 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3978 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3979 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3980 (x_disable_image, x_build_heuristic_mask)
3981 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3982 (TIFF support, GIF support, Ghostscript support): Merge with
3983 w32fns.c and macfns.c image code into image.c.
3984 (syms_of_xfns): Move image related symbols to image.c.
3985 (init_xfns): Remove; initialization moved to init_image in image.c.
3986
3987 * lisp.h (syms_of_image, init_image): Add protoypes.
3988 (init_xfns): Remove prototype.
3989
3990 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3991 (x_reference_bitmap, x_create_bitmap_from_data)
3992 (x_create_bitmap_from_file, x_destroy_bitmap)
3993 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3994 (gamma_correct) [MAC_OS]: Add prototype.
3995
3996 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3997 (x_reference_bitmap, x_create_bitmap_from_data)
3998 (x_create_bitmap_from_file, x_destroy_bitmap)
3999 (x_create_bitmap_mask): Move prototypes to dispextern.h.
4000
6eced09c
KH
40012004-03-09 Kenichi Handa <handa@etlken2>
4002
4003 * coding.c (decode_coding_emacs_mule): Handle insufficent source
4004 correctly.
4005
9a7e95f3
RS
40062004-03-04 Richard M. Stallman <rms@gnu.org>
4007
04a6e76b
RS
4008 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
4009
9a7e95f3
RS
4010 * window.c (Fdisplay_buffer): Doc fix.
4011
4012 * buffer.c (Fpop_to_buffer): Doc fix.
4013
6c2488df
KS
40142004-03-03 Kim F. Storm <storm@cua.dk>
4015
4016 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
4017
d8d95bc7
SM
40182004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
4019
4020 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
4021
357589bf
RS
40222004-03-02 Richard M. Stallman <rms@gnu.org>
4023
4024 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
4025
409949b5
KH
40262004-03-02 Kenichi Handa <handa@m17n.org>
4027
4028 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
4029
d24bc50f
KS
40302004-03-02 Kim F. Storm <storm@cua.dk>
4031
4032 * window.h (struct window): New member overlay_arrow_bitmap.
4033
4034 * window.c (make_window): Initialize overlay_arrow_bitmap.
4035
4036 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
4037 implement and integrate multiple overlay arrows with redisplay.
4038 (syms_of_xdisp): DEFVAR_LISP and initialize it.
4039 (last_arrow_position, last_arrow_string): Replace by properties.
4040 (Qlast_arrow_position, Qlast_arrow_string)
4041 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
4042 (syms_of_xdisp): Intern and staticpro them.
4043 (overlay_arrow_string_or_property, update_overlay_arrows)
4044 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
4045 (overlay_arrow_at_row): New functions for multiple overlay arrows.
4046 (redisplay_internal): Use them instead of directly accessing
4047 Voverlay_arrow_position etc. for multiple overlay arrows.
4048 (mark_window_display_accurate): Use update_overlay_arrows.
4049 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
4050 (try_window_id): Use overlay_arrows_changed_p.
4051 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
4052 (display_line): Use overlay_arrow_at_row to check multiple
4053 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 4054 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
4055 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
4056 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
4057
4058 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
4059 (update_window_fringes): Remove unused code.
4060
c1464661
JR
40612004-03-01 Jason Rumney <jasonr@gnu.org>
4062
4063 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
4064
a64387ee
JB
40652004-03-01 Juanma Barranquero <lektu@terra.es>
4066
4067 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
4068
4069 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
4070
334faa08
JD
40712004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4072
4073 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
4074 how many colors can be displayed.
4075
bb62616f
KH
40762004-03-01 Kenichi Handa <handa@m17n.org>
4077
4078 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
4079 correctly.
4080
0fd16104
KS
40812004-02-28 Kim F. Storm <storm@cua.dk>
4082
4083 * dispnew.c (update_window): Update header line also if there are
4084 no other changes in window (move code after set_cursor label).
4085
4086 * lisp.h (mark_window_display_accurate): Remove prototype.
4087
4088 * window.c (window_loop, Fforce_window_update): Force mode line
4089 updates by setting prevent_redisplay_optimizations_p and
4090 update_mode_lines.
4091
b59dd9c8
JD
40922004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4093
d8d95bc7 4094 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
4095
4096 * xterm.c (x_calc_absolute_position): Call x_real_positions
4097 to get WM window sizes and use those to calculate position.
d8d95bc7 4098 (x_set_offset): Remove code commented out.
b59dd9c8 4099
a874691c
MB
41002004-02-28 Miles Bader <miles@gnu.org>
4101
4102 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
4103
3e0c6482
KS
41042004-02-28 Kim F. Storm <storm@cua.dk>
4105
4106 * keyboard.c (kbd_buffer_store_event_hold): New function to store
4107 an event into kbd fifo, but with special handling of quit event;
4108 a quit event is saved for later, and further events are discarded
4109 until the saved quit event has been processed.
4110 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
4111 (gen_help_event): Store help event in kbd fifo.
4112 (NREAD_INPUT_EVENTS): Remove.
4113 (read_avail_input): Adapt to new read_socket_hook interface.
4114 Remove allocation and initialization of local input_event buffer,
4115 as read_socket_hook stores events directly in fifo. Allocate and
4116 initialize local hold_quit event to handle postponed quit event
4117 (and store it if set by kbd_buffer_store_event_hold).
4118
4119 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
4120 (gen_help_event): Fix prototype.
4121
a64387ee 4122 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 4123 numcharsp args. Add hold_quit arg.
f63fd14e 4124 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4125 directly in fifo using kbd_buffer_store_event_hold.
4126
4127 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
4128 (read_input_waiting): Adapt to new read_socket_hook interface.
4129 Remove allocation and initialization of local input_event buffer,
4130 as read_socket_hook stores events directly in fifo. Allocate and
4131 initialize local hold_quit event to handle postponed quit event
4132 (and store it if set by kbd_buffer_store_event_hold).
4133
a64387ee 4134 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
4135
4136 * termhooks.h (read_socket_hook): Fix prototype.
4137
4138 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
4139 numcharsp args. Add hold_quit arg.
f63fd14e 4140 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
4141 directly in fifo using kbd_buffer_store_event_hold.
4142
4143 * w32inevt.h (w32_console_mouse_position): Fix prototype.
4144
4145 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
4146 Add hold_quit arg. Rework to use just one, local, inev
4147 input_event. Store inev directly in fifo using
3e0c6482
KS
4148 kbd_buffer_store_event_hold. Update count in one place.
4149 Postpone call to gen_help_event until inev is stored; use new
4150 local do_help for this.
4151 Remove local emacs_event in handing of ButtonPress event; just use
4152 inev instead (so no reason to copy it later).
4153
4154 * xsmfns.c (x_session_check_input): Remove numchars arg.
4155
d8d95bc7
SM
4156 * xterm.c (x_focus_changed, x_detect_focus_change):
4157 Remove numchars arg. Always store event into bufp arg.
4158 Return nothing. Callers changed accordingly.
3e0c6482
KS
4159 (glyph_rect): Simplify.
4160 (STORE_KEYSYM_FOR_DEBUG): New macro.
4161 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
4162 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
4163 (current_hold_quit) [USE_GTK]: Add.
4164 (event_handler_gdk): Adapt to new handle_one_xevent.
4165 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
4166 Add hold_quit arg. Rework to use just one, local, inev
4167 input_event. Store inev directly in fifo using
3e0c6482
KS
4168 kbd_buffer_store_event_hold. Update count in one place.
4169 Postpone call to gen_help_event until inev is stored; use new
4170 local do_help for this.
4171 Simplify handling of keysyms (consolidate common code). Fix bug
4172 where count was updated with nchars instead of nbytes.
4173 Remove local emacs_event in handing of ButtonPress event; just use
4174 inev instead (so no reason to copy it later).
4175 Remove `out' label. Rename label `ret' to `done'; add various
4176 `goto done' to clarify code flow in deeply nested blocks.
4177 (x_dispatch_event): Simplify as handle_one_xevent now calls
4178 kbd_buffer_store_event itself.
f63fd14e 4179 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
4180 arg. Call handle_one_xevent with new arglist. Store event from
4181 x_session_check_input in fifo.
4182 [USE_GTK]: Setup current_hold_quit.
4183 Decrement handling_signal before unblocking input.
4184 (x_initialize) [USE_GTK]: Initialize current_count.
4185
4186 * xterm.h (x_session_check_input): Fix prototype.
4187
e3564461 41882004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 4189
d8d95bc7 4190 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 4191
e3564461
ST
4192 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
4193 macgui.h).
a64387ee 4194
e3564461 4195 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 4196
e3564461
ST
4197 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
4198 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
4199 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
4200 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
4201 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
4202 (Bitmap): Remove typedef.
4203 (Pixmap): Change int to GWorldPtr.
4204
d8d95bc7 4205 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 4206
d8d95bc7
SM
4207 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
4208 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
4209 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
4210 long representation.
4211 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
4212 colors used for masks.
4213 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 4214
e3564461
ST
4215 * macfns.c: Include sys/types.h and sys/stat.h.
4216 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
4217 Include QuickTime/QuickTime.h.
4218 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
4219 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
4220 functions defined in macterm.c.
4221 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
4222 (ZPixmap): New #define for compatibility with xfns.c.
4223 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
4224 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
4225 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
4226 New functions.
e3564461 4227 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
4228 (x_destroy_x_image, unwind_create_frame, x_disable_image)
4229 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
4230 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
4231 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
4232 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
4233 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
4234 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
4235 long mixup.
4236 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
4237 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
4238 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
4239 (x_set_cursor_type, Fxw_color_values, valid_image_p)
4240 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
4241 (x_alloc_image_color, clear_image_cache, lookup_image)
4242 (x_find_image_file, xbm_read_bitmap_file_data)
4243 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
4244 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
4245 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
4246 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
4247 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 4248 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
4249 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
4250 #if 0.
4251 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
4252 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
4253 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
4254 New functions (from xfns.c).
e3564461
ST
4255 (Fx_create_frame): Record unwind_create_frame.
4256 (Fxw_display_color_p): Use dpyinfo->color_p.
4257 (Fx_display_grayscale_p, Fx_display_planes): Don't use
4258 dpyinfo->n_cbits.
4259 (Fx_display_color_cells): Use dpyinfo->n_planes;
4260 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
4261 (Qheuristic, cross_disabled_images, emboss_matrix)
4262 (laplace_matrix): New variables (from xfns.c).
4263 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
4264 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
4265 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
4266 (image_background_transparent): New function (from xfns.c).
4267 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4268 (image_load_quicktime): Add declaration.
4269 [MAC_OSX] (image_load_quartz2d): Likewise.
4270 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
4271 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 4272 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
4273 (xbm_load_image_from_file, x_laplace_read_row)
4274 (x_laplace_write_row, pbm_read_file): Remove functions.
4275 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
4276 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
4277 (colors_in_color_table): Sync with xfns.c (although not used).
4278 (lookup_rgb_color): Don't lookup color table. Just do gamma
4279 correction.
4280 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
4281 (x_disable_image): New function (from xfns.c).
4282 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
4283 (x_build_heuristic_mask): Sync with xfns.c.
4284 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4285 (HAVE_PBM): Remove #ifdef.
4286 (pbm_load): Sync with xfns.c. Set img->width and img->height
4287 before IMAGE_BACKGROUND.
d8d95bc7 4288 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
4289 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
4290 Don't enclose with #if HAVE_PNG.
4291 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
4292 symbol _CGImageCreateWithPNGDataProvider is defined.
4293 Otherwise use image_load_quicktime.
e3564461 4294 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
4295 [HAVE_PNG] (png_load): Sync with xfns.c.
4296 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
4297 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
4298 HAVE_JPEG.
4299 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
4300 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
4301 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
4302 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
4303 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
4304 (tiff_image_p, tiff_load): Don't enclose declarations with #if
4305 HAVE_TIFF.
4306 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
4307 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
4308 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
4309 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
4310 New functions (from xfns.c).
e3564461 4311 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 4312 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
4313 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
4314 Don't enclose with #if HAVE_GIF.
4315 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
4316 animated gif. Otherwise use image_load_quicktime.
4317 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
4318 gif_DrawText to avoid conflict with QuickdrawText.h.
4319 [HAVE_GIF] (gif_load): Sync with xfns.c.
4320 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
4321 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
4322 Ghostscript is not supported yet).
4323 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
4324 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
4325 cross_disabled_images (from xfns.c). Remove #if 0 for supported
4326 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
4327 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
4328 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
4329 HAVE_PNG. Call EnterMovies to support animated gifs.
4330 Call init_image_func_pointer to bind a symbol
e3564461 4331 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 4332
d8d95bc7 4333 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
4334 (x_draw_bar_cursor): Sync declaration with xterm.c.
4335 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
4336 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
4337 graphics).
4338 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
4339 (mac_draw_line_to_pixmap, XCreatePixmap)
4340 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
4341 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
4342 New functions.
4343 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
4344 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
4345 Cast bits to char *.
e3564461
ST
4346 (reflect_byte): New function (from w32fns.c).
4347 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
4348 due to byte alignment.
d8d95bc7
SM
4349 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
4350 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
4351 (XSetForeground): Remove static (now used in macfns.c).
4352 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
4353 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
4354 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
4355 (x_draw_glyph_string_box, x_draw_image_foreground)
4356 (x_draw_image_foreground_1, x_draw_image_glyph_string)
4357 (x_draw_stretch_glyph_string, x_draw_glyph_string)
4358 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
4359 Sync with xterm.c.
4360 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
4361 than the xterm.c version when a strictly horizontal or vertical
4362 line is drawn.
4363 (XTset_terminal_window): Add static.
4364 (x_make_frame_visible): Add UNBLOCK_INPUT.
4365 (x_free_frame_resources): New funcion (from xterm.c).
4366 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
4367 occurs in tool bar area.
d8d95bc7
SM
4368 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
4369 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
4370 Initialize image cache.
4371 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
4372 Enclose unused functions with #if 0.
4373 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
4374 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 4375 from a mac font name to an XLFD font name according to its script code.
e3564461 4376 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 4377 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
4378 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
4379 whose name starts with `.'.
4380 (init_font_name_table): Use decode_mac_font_name. Add both
4381 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
4382 of a font is smJapanese.
4383 (mac_do_list_fonts): New function to list fonts that match a given
4384 pattern.
4385 (x_list_fonts, XLoadQueryFont): Use it.
4386 (XLoadQueryFont): Set rbearing field for each variable width
4387 character to avoid needless redraw.
4388 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
4389
446f5f3d
KS
43902004-02-26 Kim F. Storm <storm@cua.dk>
4391
af617d0f
KS
4392 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
4393 as read_socket_hook handler on X aborts if buffer is too small
4394 and W32 handler doesn't always check buffer limit.
4395
446f5f3d
KS
4396 * xdisp.c (handle_single_display_prop): Handle left-fringe and
4397 right-fringe similar to a display margin image. Specifically,
4398 the characters having the fringe prop are no longer shown, and
4399 we use IT_IMAGE/next_element_from_image with image_id = -1 to
4400 do this. Set fringe bitmap face_id in it->face_id.
4401 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
4402 still realize it->face (i.e. the fringe bitmap face).
4403
7d8a0b55
MB
44042004-02-25 Miles Bader <miles@gnu.org>
4405
4406 * xdisp.c (check_it): Check string/string_pos consistency.
4407 (init_iterator): Initialize string-related fields properly.
4408
44092004-02-11 Miles Bader <miles@gnu.org>
4410
4411 * xdisp.c (produce_image_glyph): Force negative descents to zero.
4412
44132004-02-10 Miles Bader <miles@gnu.org>
4414
4415 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
4416 BLOCK_INPUT can be nested, so it doesn't make much sense.
4417
a64387ee 44182004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
4419
4420 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
4421 (xbm_read_bitmap_data): Use unsigned char for image data.
4422
92f5fba2
LT
44232004-02-23 Luc Teirlinck <teirllm@auburn.edu>
4424
4425 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
4426
8565fb3d
JR
44272004-02-22 Jason Rumney <jasonr@gnu.org>
4428
4429 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
4430 correctly over other bitmaps.
4431
a6eeaa81 44322004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
4433
4434 * emacs.c (USAGE1): Split into two halves.
4435 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
4436 (USAGE3): Rename from USAGE2.
4437 (USAGE4): Rename from USAGE3.
f8125c39 4438
4effffca
EZ
44392004-02-21 Juri Linkov <juri@jurta.org>
4440
4441 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
4442 Fix --multibyte. Move --help, --version to USAGE2. Add alias
4443 --file. Fix -f, -l. Sort options. Untabify.
4444 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
4445
923c1e6f
LT
44462004-02-19 Luc Teirlinck <teirllm@auburn.edu>
4447
4448 * category.c (Fdefine_category, Fcategory_docstring)
4449 (Fget_unused_category, Fset_category_table)
4450 (Fcategory_set_mnemonics): Doc fixes.
4451
b0e225fd
KS
44522004-02-20 Kim F. Storm <storm@cua.dk>
4453
4454 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
4455 The following changes are relative to the 2004-01-21 revision.
4456 (NREAD_INPUT_EVENTS): Define as max number of input events to read
4457 in one call to read_socket_hook. Value is 8.
4458 (read_avail_input): Separate and rework handling of read_socket_hook
4459 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
4460 in read_socket_hook case, and repeat if full buffer is read.
4461 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
4462 In non-read_socket_hook case, just use a single input_event, and
4463 call kbd_buffer_store_event on the fly for each character.
4464
b15aa9f9
SM
44652004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
4466
4467 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
4468 Remove unused `gu' alternative.
4469
83c9aa95
AS
44702004-02-19 Andreas Schwab <schwab@suse.de>
4471
4472 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
4473 warning.
4474
cc808173
KS
44752004-02-18 Kim F. Storm <storm@cua.dk>
4476
4477 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
4478 Fix last change.
4479
ab90a54d
KS
44802004-02-17 Kim F. Storm <storm@cua.dk>
4481
b26f249f
KS
4482 * xdisp.c (fast_find_position): Fix return value of new version;
4483 it was inverted compared to the 21.1 version.
4484 (get_window_cursor_type): Don't look at glyph if NULL.
4485 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 4486
ab90a54d
KS
4487 * keyboard.c: Rework previous change; it didn't consider that the
4488 buf array was allocated on the stack.
4489 (prev_read): Remove variable.
4490 (read_avail_input_buf): New static event buffer array.
b9568dfc 4491 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 4492 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
4493 Use in_read_avail_input to handle re-entrance; when re-entered,
4494 fully initialize and use tmp_buf array instead of read_avail_input_buf.
4495 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
4496 is always cleared on entry. To ensure that, we clear (just) the
4497 entries that were used before we return.
4498 (init_keyboard): Initialize read_avail_input_buf here.
4499
b6189c3b 45002004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
4501
4502 * cmds.c (Fend_of_line): Doc fix.
4503
7b5368c1
EZ
45042004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
4505
4506 * keyboard.c (prev_read): New static variable.
4507 (read_avail_input): Use it to zero out only those slots in buf[]
4508 that were used last time we were called.
4509
a6eeaa81 45102004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
4511
4512 * Makefile.in (obj): Move fringe.o from here...
4513 (XOBJ, MAC_OBJ): ...to here.
4514
159c348e
SE
45152004-02-16 Stephen Eglen <stephen@gnu.org>
4516
4517 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
4518
d2f14999
SM
45192004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
4520
b15aa9f9
SM
4521 * data.c (Fbyteorder):
4522 * fringe.c (Fdefine_fringe_bitmap):
4523 * xdisp.c (handle_single_display_prop):
d2f14999
SM
4524 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
4525
8d50508a
JR
45262004-02-16 Jason Rumney <jasonr@gnu.org>
4527
4528 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
4529
dd4497dc
ST
45302004-02-15 Steven Tamm <steventamm@mac.com>
4531
4532 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
4533 controlling emulation of a three button mouse with option and
4534 command keys.
4535 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 4536 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 4537
c9159cb3
KS
45382004-02-15 Kim F. Storm <storm@cua.dk>
4539
2cc52658
KS
4540 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
4541
c9159cb3
KS
4542 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
4543 Perform byte-swapping.
4544
12fde2dc
KS
45452004-02-14 Kim F. Storm <storm@cua.dk>
4546
4547 * dispextern.h (struct draw_fringe_bitmap_params): Change member
4548 bits from char to short to facilitate wider bitmaps.
4549 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
4550 member.
4551
4552 * fringe.c (struct fringe_bitmap): Change member bits from char to
4553 short to facilitate 16 bits wide bitmaps. Modify all standard
4554 bitmaps accordingly.
4555 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
4556 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
4557 (draw_fringe_bitmap): Ditto.
4558 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
4559 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
4560 handle up to 16 bits wide bitmaps.
4561 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 4562 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
4563
4564 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
4565 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
4566 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
4567
4568 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
4569 so it is no longer necessary to expand them here.
4570
4571 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
4572
9d7271e8
KS
45732004-02-12 Kim F. Storm <storm@cua.dk>
4574
4575 * window.c (Fwindow_fringes): Doc fix.
4576
706c1e4f
JD
45772004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4578
4579 * xselect.c (x_get_foreign_selection): Add new optional parameter
4580 time_stamp.
4581 (Fx_get_selection_internal): Ditto, pass time_stamp to
4582 x_get_foreign_selection.
4583
4584 * data.c (Fbyteorder): New function.
4585
c2d12b5d
JD
45862004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4587
4588 * atimer.c: Move include stdio.h to same place as in other files.
4589
4590 * region-cache.c: Ditto.
4591
4592 * sysdep.c: Ditto.
4593
4594 * xfaces.c: Ditto.
4595
4c1947b9
SS
45962004-02-09 Sam Steingold <sds@gnu.org>
4597
89458937 4598 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 4599
82722af3
KS
46002004-02-09 Kim F. Storm <storm@cua.dk>
4601
4602 * fringe.c: New file. Move original fringe related declarations
4603 and code from dispextern.h and xdisp.c here.
4604 Rework code to support user defined fringe bitmaps, redefining
4605 standard bitmaps, ability to overlay user defined bitmap with
4606 overlay arrow bitmap, and add faces to bitmaps.
4607 (Voverflow_newline_into_fringe): Declare here.
4608 (enum fringe_bitmap_align): New enum.
4609 (..._bits): All bitmaps are now defined without bitswapping; that
4610 is now done in init_fringe_once (if necessary).
4611 (standard_bitmaps): New array with specifications for the
4612 standard fringe bitmaps.
4613 (fringe_faces): New array.
4614 (valid_fringe_bitmap_id_p): New function.
4615 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
4616 (draw_fringe_bitmap): New function which draws fringe bitmap,
4617 possibly overlaying bitmap with cursor in right fringe or the
4618 overlay arrow in the left fringe.
4619 (update_window_fringes): Do not handle overlay arrow here.
4620 Compare and copy fringe bitmap faces.
4621 (init_fringe_bitmap): New function.
4622 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
4623 define and destroy user defined fringe bitmaps.
4624 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
4625 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
4626 (syms_of_fringe): New function. Defsubr new DEFUNs.
4627 DEFVAR_LISP Voverflow_newline_into_fringe.
4628 (init_fringe_once, init_fringe): New functions.
4629 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 4630
82722af3
KS
4631 * Makefile.in (obj): Add fringe.o.
4632 (fringe.o): New dependencies.
4633
4634 * dispextern.h (FRINGE_ID_BITS): New definition for number of
4635 bits allocated to hold a fringe number. Increase number of bits
4636 from 4 to 8 to allow user defined fringe bitmaps.
4637 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
4638 left_user_fringe_face_id, right_user_fringe_bitmap,
4639 right_user_fringe_face_id.
4640 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
4641 Move to new file fringe.c.
4642 (MAX_FRINGE_BITMAPS): Define here.
4643 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
4644 and overlay_p. Change member which to int.
4645 (struct redisplay_interface): New members define_fringe_bitmap
4646 and destroy_fringe_bitmap.
4647 (valid_fringe_bitmap_id_p): Add prototype.
4648 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
4649
4650 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
4651 arrows.
4652 (update_frame): Do flush_display if force_flush_display_p to
4653 ensure display (specifically fringes) are updated in a timely
4654 manner when resizing the frame by dragging the mouse.
4655 (update_window_line): Update row if overlay arrow changed.
4656 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
4657 or overlay arrow changed.
4658
4659 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
4660 syms_of_fringe, and init_fringe.
4661
4662 * frame.h (struct frame): New member force_flush_display_p.
4663
4664 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
4665 Add prototypes.
4666
a3993cc8 4667 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 4668 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
4669 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
4670 Use cursor color for displaying cursor in fringe.
82722af3
KS
4671 (x_redisplay_interface): Add null handlers for
4672 define_fringe_bitmap and destroy_fringe_bitmap functions.
4673
4674 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
4675 xterm.c to handle overlayed fringe bitmaps and to use cursor color
4676 for displaying cursor in fringe.
4677 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
4678 specific functions to define and destroy fringe bitmaps in fringe_bmp.
4679 (w32_redisplay_interface): Add them to redisplay_interface.
4680 (w32_term_init): Call w32_init_fringe instead of explicitly
4681 defining fringe bitmaps in fringe_bmp array.
4682 (x_delete_display): Call w32_reset_fringes instead of explicitly
4683 destroying fringe bitmaps in fringe_bmp array.
4684
4685 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
4686 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
4687 (continued_bits, continuation_bits, ov_bits, first_line_bits)
4688 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
4689 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
4690 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
4691 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
4692 Move fringe handling vars and code to new file fringe.c.
4693 (handle_display_prop): Handle left-fringe and right-fringe
4694 display properties; store user fringe bitmaps in iterator.
4695 (move_it_in_display_line_to): Handle cursor in fringe at eob.
4696 (clear_garbaged_frames): Set force_flush_display_p if resized.
4697 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
4698 (display_line): Handle cursor in fringe at eob.
4699 (display_line): Set row user fringe bitmaps from iterator.
4700
4701 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
4702 Use cursor color for displaying cursor in fringe.
4703 (x_redisplay_interface): Add null handlers for
4704 define_fringe_bitmap and destroy_fringe_bitmap functions.
4705
030400eb
JD
47062004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4707
4708 * macfns.c (Fx_change_window_property): Make doc string and
4709 parameters same as for X version.
4710
4711 * w32fns.c (Fx_change_window_property): Ditto.
4712
3af55251
KS
47132004-02-07 Kim F. Storm <storm@cua.dk>
4714
ec110e9e
KS
4715 * xdisp.c (hscroll_window_tree): Position cursor near to right
4716 margin in hscrolled window when jumping to end of line (rather
4717 than centering cursor).
4718
3af55251
KS
4719 * process.c (wait_reading_process_input): Don't do adaptive read
4720 buffering if waiting for a specific process.
4721
b0c138ce
LT
47222004-02-05 Luc Teirlinck <teirllm@auburn.edu>
4723
4724 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
4725 (Fread_minibuffer, Feval_minibuffer)
4726 (Fread_string, Fread_no_blanks_input)
4727 (Fcompleting_read): Doc fixes.
4728 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
4729 completion-regexp-list. Define Qcase_fold_search and staticpro it.
4730 (read_minibuf): Fix initial comment.
4731 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 4732 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
4733 checking completion-regexp-list.
4734 (Fdisplay_completion_list): Make it handle arguments that are
4735 symbols. Doc fix.
4736
9676f5ad 47372004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 4738
9676f5ad 4739 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 4740
9676f5ad
JD
4741 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
4742 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 4743 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 4744 format. Remove unused variable cons.
5b698285
JD
4745
4746 * xselect.c: Include stdio,h.
4747
fc1d15f6
KH
47482004-02-05 Kenichi Handa <handa@m17n.org>
4749
ebaff4af
KH
4750 * fns.c (Fset_char_table_range): Fix previous change.
4751
fc1d15f6
KH
4752 * buffer.c (Fset_buffer_multibyte): Fix docstring.
4753
9676f5ad
JD
47542004-02-04 Luc Teirlinck <teirllm@auburn.edu>
4755
4756 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
4757
da75761f
SM
47582004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
4759
4760 * keymap.c (Vmouse_events): Rename from Vmenu_events.
4761 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
4762
13c5d120
KH
47632004-02-04 Kenichi Handa <handa@m17n.org>
4764
4765 * fns.c (Fset_char_table_range): Handle charsets ascii,
4766 eight-bit-control, and eight-bit-graphic correctly.
4767
2883d842
JR
47682004-02-03 Jason Rumney <jasonr@gnu.org>
4769
4770 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
4771
4772 * w32fns.c (x_to_w32_font): Likewise.
4773
69eff41f
JD
47742004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4775
4776 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
4777 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
4778
4779 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
4780 ClientMessages.
4781
4782 * xselect.c: Include termhooks.h and X11/Xproto.h
4783 (x_check_property_data, x_fill_property_data)
4784 (x_property_data_to_lisp, mouse_position_for_drop)
4785 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 4786 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
4787 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
4788
da75761f 4789 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
4790 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
4791 OUTER_P.
4792 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
4793 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
4794 if vector_ret_p is true.
4795 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 4796
a6eeaa81 47972004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
4798
4799 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
4800 basename of FILE relative to it, not FILE itself.
4801
09721b31
KH
48022004-02-02 Kenichi Handa <handa@m17n.org>
4803
4804 * coding.c (coding_restore_composition): Check invalid
4805 composition data more rigidly.
4806
eb996101
LT
48072004-01-30 Luc Teirlinck <teirllm@auburn.edu>
4808
4809 * fileio.c (Fread_file_name_internal): Correctly handle the case
4810 where insert-default-directory is nil.
4811 (Fread_file_name): Always return an empty string if the user exits
4812 with an empty minibuffer. Adapt the docstring accordingly.
4813 (syms_of_fileio): Adapt the docstring of insert-default-directory
4814 to the change in Fread_file_name.
4815
a6eeaa81 48162004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
4817
4818 * alloca.c [!alloca]: Fix the prototype for xfree.
4819
13f52ed8
KH
48202004-01-29 Kenichi Handa <handa@m17n.org>
4821
4822 * fns.c (string_char_to_byte): Optimize for ASCII only string.
4823 (string_byte_to_char): Likewise.
4824
d57625a0
JR
48252004-01-28 Peter Runestig <peter@runestig.com>
4826
4827 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
4828
a64387ee 48292004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
4830
4831 * unexmacosx.c (unexec_copy): Do not copy more than was
4832 requested to prevent overwriting during unexec.
4833
eb37b8fd
JD
48342004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4835
ce38070a
JD
4836 * process.c (sigchld_handler): Add comment about not calling malloc.
4837
eb37b8fd
JD
4838 * process.h: Add extern to synch_process_termsig.
4839
a64387ee 48402004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 4841
da75761f
SM
4842 * macterm.c (make_mac_frame, make_mac_terminal_frame):
4843 Move setting of scroll bars from make_mac_frame to
4844 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 4845
d62a265d
RS
48462004-01-26 Richard M. Stallman <rms@gnu.org>
4847
4848 * search.c (Freplace_match): Handle nonexistent
4849 back-references properly.
4850
48512004-01-03 Richard M. Stallman <rms@gnu.org>
4852
4853 * window.c (decode_any_window): New function.
4854 (Fwindow_height, Fwindow_width, Fwindow_edges)
4855 (Fwindow_pixel_edges, Fwindow_inside_edges)
4856 (Fwindow_inside_pixel_edges): Use decode_any_window.
4857
ff236419
JD
48582004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4859
4860 * process.h: synch_process_termsig new variable.
4861
4862 * callproc.c: Define synch_process_termsig.
4863 (Fcall_process): Initiate synch_process_termsig to zero and
4864 check if non-zero and get signal name after subprocess has ended.
4865
4866 * process.c (sigchld_handler): Set synch_process_termsig
4867 if terminated by a signal. synch_process_death setting removed.
4868
4869 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4870
41b867ea
AS
48712004-01-26 Andreas Schwab <schwab@suse.de>
4872
4873 * print.c (print_preprocess): Declare size as EMACS_INT to not
4874 lose bits.
4875 (print_object): Likewise.
4876 * alloc.c (Fpurecopy): Likewise.
4877
a08084ff
LT
48782004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4879
4880 * window.c (Fwindow_minibuffer_p): Doc fix.
4881
b19ac475
JY
48822004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4883
4884 * editfns.c (Fformat): Make both passes accept the same set of flags.
4885
fe905025
KH
48862004-01-23 Kenichi Handa <handa@m17n.org>
4887
4888 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4889 one, set buffer to OBJECT temporarily.
4890
438fc6c0
SM
48912004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4892
455316e2
SM
4893 * keyboard.c (kbd_buffer_gcpro): Remove.
4894 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4895 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4896 Don't initialize and/or maintain the variable any more. It was made
4897 redundant by my commit of 2003-06-15.
4898
438fc6c0
SM
4899 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4900
5335a4ee
JD
49012004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4902
4903 * lisp.h: Add undef DECL_ALIGN.
4904
dcdaeebc
SM
49052004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4906
4907 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4908 Check interrupt_input_pending explicitly.
4909
4910 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4911
4912 * keyboard.c (handle_async_input): New fun,
4913 extracted from input_available_signal.
4914 (input_available_signal, reinvoke_input_signal): Use it.
4915
9076a823
SM
49162004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4917
d7107586
SM
4918 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4919
4920 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4921 manipulation macros for when tags are in the lower bits.
4922 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4923 (DECL_ALIGN): New macro.
4924 (DEFUN): Use it.
4925
4926 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4927
4928 * s/darwin.h (__attribute__): Remove outdated workaround.
4929
4930 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4931
4932 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4933 Don't check range of malloc address.
4934 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4935
9076a823
SM
4936 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4937
4938 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4939
ba029065
KH
49402004-01-19 Kenichi Handa <handa@m17n.org>
4941
4942 * fontset.c (fontset_font_pattern): Fix previous change.
4943
7af0e8d7
MB
49442004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4945
4946 * xdisp.c (Voverflow_newline_into_fringe)
4947 (move_it_in_display_line_to, redisplay_internal)
4948 (update_window_fringes, redisplay_window, display_line, window):
4949 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4950 that it compiles without a window-system.
4951 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4952
77a9cf69
KS
49532004-01-16 Kim F. Storm <storm@cua.dk>
4954
4955 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4956
a64387ee 4957 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4958 buffer_local_flags for indicate_buffer_boundaries.
4959 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4960 default- variable for it.
4961
4962 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4963 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4964 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4965 overflowing newlines into right fringe.
4966 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4967 and indicate_bottom_line_p for buffer boundaries and scrolling.
4968 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4969 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4970 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4971 and HOLLOW_SQUARE_BITMAP.
4972 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4973 Add prototypes.
4974
4975 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4976 instead of related indicator fields.
4977 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4978 (direct_output_for_insert): Handle exact width lines like
4979 contined lines. Call update_window_fringes.
4980 (update_window): Call update_window_fringes.
4981 (scrolling_window): Don't skip desired rows with changed bitmaps.
4982 Check if fringe bitmaps changes when assigning scrolled rows.
4983
4984 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4985 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4986 (move_it_in_display_line_to): Overflow newline into fringe for
4987 rows that are exactly as wide as the window.
4988 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4989 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4990 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4991 (fringe_bitmaps): Add new bitmaps.
4992 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4993 Select proper bitmap for cursor in fringe when appropriate.
4994 Handle alignment of bitmap to top or bottom of row.
4995 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4996 done by update_window_fringes.
4997 (update_window_fringes, draw_window_fringes): New functions.
4998 (redisplay_internal): Call update_window_fringes in case only
4999 cursor row is updated.
5000 (redisplay_window): Call update_window_fringes.
5001 Explicitly call draw_window_fringes if redisplay was done using
5002 the current matrix or the overlay arrow is in the window.
5003 (try_window_reusing_current_matrix): Mark scrolled rows for
5004 fringe update (to update buffer-boundaries / scrolling icons).
5005 (find_last_unchanged_at_beg_row): Handle exact width lines line
5006 continued lines.
5007 (display_line): Overflow newline into fringe for rows that are
5008 exactly as wide as the window. Don't append space for newline
d7107586 5009 in this case.
77a9cf69
KS
5010 (notice_overwritten_cursor): Explicitly clear cursor bitmap
5011 in fringe as if it had been overwritten.
5012 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 5013 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
5014 void-text-area-pointer as user options.
5015 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 5016
77a9cf69
KS
5017 * xterm.c (x_update_window_end): Call draw_window_fringes.
5018 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5019 in row instead of actually drawing fringe bitmaps.
5020 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5021 (x_draw_window_cursor): Draw cursor in fringe.
5022
5023 * w32term.c (x_update_window_end): Call draw_window_fringes.
5024 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5025 in row instead of actually drawing fringe bitmaps.
5026 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5027 (w32_draw_window_cursor): Draw cursor in fringe.
5028
5029 * macterm.c (x_update_window_end): Call draw_window_fringes.
5030 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
5031 in row instead of actually drawing fringe bitmaps.
5032 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
5033 (mac_draw_window_cursor): Draw cursor in fringe.
5034
a633a954
JD
50352004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5036
5037 * xterm.c (handle_one_xevent): Don't handle characters that are part
5038 of an old style (XLookupString) compose sequence.
5039
80460525
KH
50402004-01-15 Kenichi Handa <handa@m17n.org>
5041
5042 * search.c (Freplace_match): Use make_multibyte_string or
5043 make_unibyte_string according to the buffer multibyteness.
5044
7fc34f85
SM
50452004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
5046
5047 * alloc.c (struct interval_block, struct string_block)
5048 (struct symbol_block, struct marker_block, live_string_p)
5049 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
5050 Better preserve alignment for objects in blocks.
5051 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
5052
5053 * lread.c (defvar_per_buffer): Remove dead declaration.
5054
5055 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
5056 space size.
5057
66070bd1
JD
50582004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5059
5060 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
5061 if a key press should pop down. Only pop down if a key is pressed
5062 outside the menu/dialog.
5063 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
5064 popup_get_selection.
5065 (create_and_show_dialog): Pass 1 for down_on_keypress to
5066 popup_get_selection.
5067
de7515d6
JD
50682004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5069
5070 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
5071 BLOCK/UNBLOCK_INPUT.
5072
160b1b50
JD
50732004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5074
5075 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
5076 specified.
5077
3a9f36e6
KH
50782004-01-08 Kenichi Handa <handa@m17n.org>
5079
5080 * editfns.c (Fformat): Fix '&' to '&&'.
5081
3803eb32
AS
50822004-01-08 Andreas Schwab <schwab@suse.de>
5083
5084 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
5085 size if PSEUDOVECTOR_FLAG is set.
5086
9da88f37
KH
50872004-01-07 Kenichi Handa <handa@m17n.org>
5088
74ac5074
KH
5089 * charset.c (Fdeclare_equiv_charset): Fix docstring.
5090
9da88f37
KH
5091 * fontset.c (fontset_ref_via_base): Fix previous change.
5092
05faee07
KS
50932004-01-07 Kim F. Storm <storm@cua.dk>
5094
5095 * process.c (read_process_output): Only activate adaptive
5096 buffering if we read less than 256 bytes at a time.
5097
634910c8
KS
50982004-01-06 Kim F. Storm <storm@cua.dk>
5099
5100 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
5101 object and image object. Return glyph width and height.
5102 (mode_line_string, marginal_area_string): Ditto.
5103
5104 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5105 (marginal_area_string): Fix prototypes.
5106
5107 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 5108 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
5109 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
5110
5111 * keyboard.c (make_lispy_position): Use modified mode_line_string,
5112 buffer_posn_from_coords, and marginal_area_string functions to
5113 include both string object and image object in the lispy position.
5114 Also add actual glyph width and height to position.
5115 (read_key_sequence): Use real buffer position from mouse
5116 event to find keymap property even when click is in marginal area.
5117
5118 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
5119 mode_line_string and marginal_area_string functions to handle
5120 both string object and image object properties.
d7107586 5121
57951c2e
AS
51222004-01-06 Andreas Schwab <schwab@suse.de>
5123
5124 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
5125 character.
5126
181e6a61
AS
51272004-01-02 Andreas Schwab <schwab@suse.de>
5128
d7107586
SM
5129 * macterm.c (emacs_options, x_initialized, same_x_server):
5130 Remove unused (and duplicated) definitions.
181e6a61 5131
31e0fbdd
KS
51322004-01-02 Kim F. Storm <storm@cua.dk>
5133
5134 * process.h (struct Lisp_Process): New members for adaptive read
5135 buffering: adaptive_read_buffering, read_output_delay, and
5136 read_output_skip.
5137
5138 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
5139 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
5140 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
5141 (process_output_delay_count, process_output_skip): New vars.
5142 (Vprocess_adaptive_read_buffering): New variable.
5143 (make_process): Initialize adaptive read buffering members.
5144 (Fstart_process): Set adaptive_read_buffering member.
5145 (deactivate_process): Cleanup adaptive read buffering.
5146 (wait_reading_process_input): Temporarily omit delayed
5147 subprocesses from the set of file descriptors to read from;
5148 adjust the select timeout if we skipped any subprocesses.
5149 (read_process_output): Increase adaptive read buffering delay if
5150 we read less than a full buffer; reduce delay when we read a
5151 full buffer.
5152 (send_process): Simplify using local Lisp_Process var.
5153 Reset adaptive read buffering delay after write.
5154 (init_process): Initialize process_output_delay_count and
5155 process_output_skip.
5156 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
5157
68c6a789
JR
51582004-01-01 Jason Rumney <jasonr@gnu.org>
5159
d7107586 5160 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 5161
3f70fe82
LT
51622003-12-30 Luc Teirlinck <teirllm@auburn.edu>
5163
5164 * print.c (Ferror_message_string): Add hyperlink in the docstring
5165 to the definition of `signal' in the Elisp manual.
5166 * eval.c (Fsignal): Ditto.
5167
b6189c3b 51682003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
5169
5170 * fns.c (internal_equal): Return t for two NaN arguments.
5171
7abd90ea
RS
51722003-12-29 Richard M. Stallman <rms@gnu.org>
5173
5174 * data.c (store_symval_forwarding): Handle setting
5175 default-fill-column, etc., by changing the value in
5176 buffers that use the default.
5177
5178 * minibuf.c (Fset_minibuffer_window): Doc fix.
5179
5180 * fileio.c (choose_write_coding_system): Ignore auto_saving
5181 if using the visited file for auto saves.
5182 (Fwrite_region): Don't update SAVE_MODIFF
5183 if auto-saving in visited file.
5184
3e7cfcdc
KH
51852003-12-29 Kenichi Handa <handa@m17n.org>
5186
5187 * dispextern.h (face_font_available_p): Extern it.
5188
5189 * fontset.c (Voverriding_fontspec_alist): New variable.
5190 (lookup_overriding_fontspec): New function.
d7107586 5191 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
5192 (fontset_font_pattern): Likewise.
5193 (regulalize_fontname): New function.
5194 (Fset_fontset_font): Call regulalize_fontname.
5195 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
5196 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
5197 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
5198
5199 * xfaces.c (face_font_available_p): New function.
5200
7abd90ea
RS
52012003-12-28 Richard M. Stallman <rms@gnu.org>
5202
5203 * buffer.c (Fother_buffer): Don't crash if BUF is nil
5204 or if its name is nil.
5205
5206 * buffer.c (Fkill_buffer): Don't delete auto-save file
5207 if it's the same as the visited file.
5208
de1d1a40
LT
52092003-12-28 Luc Teirlinck <teirllm@auburn.edu>
5210
5211 * coding.c (Fcheck_coding_system): Doc fix.
5212
204fb75e
KS
52132003-12-28 Kim F. Storm <storm@cua.dk>
5214
5215 * Makefile.in (eval.o): Depend on dispextern.h.
5216
5217 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
5218 image glyph using image's ascent.
5219 (mode_line_string): Return image glyph as object clicked on.
5220 Adjust y0 for image glyph using image's ascent.
5221
5222 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
5223 (struct glyph): New members, ascent and descent. Used to save
5224 this glyph's ascent and descent, instead of having.
5225 (struct glyph): Declare member face_id using FACE_ID_BITS.
5226 (find_hot_spot): Add prototype.
5227
5228 * keyboard.c (Qimage): Remove extern (now in lisp.h).
5229 (QCmap): Declare extern.
5230 (make_lispy_position): When position is inside image hot-spot,
5231 use hot-spot element's id as posn element.
5232
5233 * lisp.h (IMAGEP): New macro to test for image object type.
5234 (Qimage): Declare extern.
5235
5236 * macfns.c (Qimage): Remove extern (now in lisp.h).
5237 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5238
5239 * macterm.c (Qface, Qmouse_face): Remove unused externs.
5240
5241 * w32fns.c (Qimage): Remove extern (now in lisp.h).
5242 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5243
5244 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
5245
5246 * w32term.c (Qface, Qmouse_face): Remove unused externs.
5247
5248 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
5249 pointer types.
5250 (Qrelative_width, Qalign_to): Remove unused variables.
5251 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
5252 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
5253 image maps.
d7107586 5254 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
5255 new dx and dy args.
5256 Remove buffer_only_p arg (always 0). Simplify code accordingly.
5257 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
5258 than row's ascent and height, to get sensible height on tall rows.
5259 (build_desired_tool_bar_string): Remove Qimage extern.
5260 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
5261 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
5262 image glyph is alone on the last line.
5263 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 5264 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 5265 (on_hot_spot_p): New function to check if position is inside an
d7107586 5266 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
5267 (find_hot_spot): New function to search for image hot-spot.
5268 (Flookup_image_map): New defun to search for image hot-spot.
5269 (define_frame_cursor1): New aux function to determine frame pointer.
5270 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5271 Handle `pointer' text property and :pointer image property to
5272 control frame pointer shape. Detect image hot-spots for pointer
5273 and help_echo properties. Use define_frame_cursor1.
5274 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 5275 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
5276 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
5277
5278 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
5279
5280 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
5281 (Qimage): Remove extern (now in lisp.h).
5282 (valid_image_p, parse_image_spec): Use IMAGEP macro.
5283
5284 * xmenu.c (show_help_event): Remove unused code.
5285
5286 * xterm.c (Qface, Qmouse_face): Remove unused externs.
5287 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
5288 row's ascent and descent, to get a sensible height on tall rows.
5289
fc052137
LT
52902003-12-25 Luc Teirlinck <teirllm@auburn.edu>
5291
5292 * minibuf.c (Fcompleting_read): Undo previous change.
5293
a64387ee 52942003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
5295
5296 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
5297 Arguments GCPRO'ed in call to file name handler.
5298
56ffd194
TTN
52992003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
5300
5301 * termcap.c (tgetst1): Scan for "%pN"; if all
5302 N are continuous in [1,9], remove all "%pN".
5303
5202d23d
JD
53042003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5305
f26fab36
JD
5306 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
5307
5202d23d
JD
5308 * xfaces.c (lface_fully_specified_p): Take into account that
5309 MAC OS always have unspecified stipple.
5310
8babaa59
TTN
53112003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5312
5313 * tparam.c (tparam1): Add handling for `%pN', which
5314 means use param N for the next substitution.
5315
2d176448
TTN
53162003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
5317
5318 * xfaces.c (Fcolor_gray_p): Fix omission bug:
5319 In case `frame' is nil, consult the selected frame.
5320 (Fcolor_supported_p): Likewise.
5321
adb0708c
LT
53222003-12-23 Luc Teirlinck <teirllm@auburn.edu>
5323
000eeb15
LT
5324 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
5325 Doc fixes.
0dc72b11
LT
5326
5327 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
5328 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
5329 (Fread_from_minibuffer): Delete code moved into read_minibuf.
5330 Doc fix.
5331 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
5332 read_minibuf.
5333 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 5334 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 5335
2e4d132b
KH
53362003-12-03 Kenichi Handa <handa@m17n.org>
5337
5338 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
5339 encoding sequence.
5340
3999c705
KH
53412003-12-01 Kenichi Handa <handa@m17n.org>
5342
5343 * composite.c (syms_of_composite): Don't make the compostion hash
5344 table week.
5345
d344ecbb
LT
53462003-11-30 Luc Teirlinck <teirllm@auburn.edu>
5347
5348 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
5349 * textprop.c (Fget_char_property_and_overlay): New function.
5350 (syms_of_textprop): Defsubr it.
5351
03d6484e
JD
53522003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5353
019b1f0e
JD
5354 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
5355 to compile on terminal configuration.
5356
03d6484e
JD
5357 * fileio.c (Fread_file_name): Check use_file_dialog also before
5358 calling Fx_file_dialog.
5359
5360 * fns.c: use_file_dialog: New variable.
5361 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
5362
442d3fd0
KS
53632003-11-29 Kim F. Storm <storm@cua.dk>
5364
5365 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
5366 (syms_of_msdos): Don't intern and staticpro them.
5367
0f6a07a8
KS
53682003-11-27 Kim F. Storm <storm@cua.dk>
5369
5370 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
5371 coordinates relative to glyph at posn. If glyph is an image,
5372 return that as object at posn. Callers changed.
5373 (mode_line_string, marginal_area_string): Calculate and return
5374 pixel coordinates relative to glyph. Callers changed.
5375
5376 * dispextern.h (buffer_posn_from_coords, mode_line_string)
5377 (marginal_area_string): Fix prototypes.
5378 (window_box_left_offset, window_box_right_offset): Add prototypes.
5379
5380 * frame.h (get_specified_cursor_type, get_window_cursor_type):
5381 Remove prototypes.
5382
5383 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
5384
5385 * keyboard.c (make_lispy_position): Add x and y coordinates
5386 relative to the current glyph as 7th element of position.
5387 If glyph is an image, return it in the object element.
5388 (read_key_sequence): Skip checks for keymap property in cases
5389 where POSN_STRING is not a string (e.g. an image).
5390
5391 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
5392 (Vshow_text_cursor_in_void): New variable.
5393 (glyph_to_pixel_coords): Don't use negative hpos.
5394 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
5395 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 5396 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
5397 (calc_pixel_width_or_height): New aux function, implementing
5398 pixel based artihmetic for glyph widths and heights.
5399 (produce_stretch_glyph): Use calc_pixel_width_or_height for
5400 :width, :height, :align-to, and :ascent, thus allowing these to
5401 be specified in pixels as well as multiples of characters.
5402 Don't produce stretch glyphs with zero width or height.
5403 (get_specified_cursor_type): Declare static.
5404 (get_window_cursor_type): Declare static. Add glyph arg to be
5405 able to know when cursor is on an image; always substitute
5406 hollow-box cursor for filled-box cursor on images, to avoid
5407 negative images and flicker when blinking the cursor.
5408 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
5409 (note_mode_line_or_margin_highlight): Use non-text cursor rather
5410 than vertical scroll-bar cursor in display margins.
5411 (note_mouse_highlight): Use non-text cursor rather than text
5412 cursor in fringes and over images in the text area.
5413 Use non-text cursor when mouse pointer is outside editable text,
5414 i.e. in the void after end-of-line or end-of-buffer; this was
5415 already done for W32, but is now standard for all systems --
5416 user can toggle show-text-cursor-in-void to get old behaviour.
5417 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
5418 Vdisplay_pixels_per_inch.
5419
00498bfc
AS
54202003-11-25 Andreas Schwab <schwab@suse.de>
5421
5422 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
5423 EMACS_INT to not lose bits.
5424 (Ffillarray): Don't set bits beyond the size of a bool vector.
5425
edaa824d
KS
54262003-11-25 Kim F. Storm <storm@cua.dk>
5427
5428 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
5429 define this defun on systems that cannot use stderr as lvalue.
5430
74d6f539
GM
54312003-11-24 Gerd Moellmann <gerd@gnu.org>
5432
5433 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
5434 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
5435 ld's default is incompatible with unexec.
5436
6a1ff3ba
KS
54372003-11-23 Kim F. Storm <storm@cua.dk>
5438
63dc7c6b
KS
5439 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
5440 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
5441 (Fforce_window_update): New defun.
5442 (syms_of_window): Defsubr it.
5443 (Fset_window_margins, Fset_window_fringes): Doc fix.
5444
6a1ff3ba
KS
5445 * print.c (Fredirect_debugging_output): New defun.
5446 (syms_of_print): Defsubr it.
5447
aef109b7
LT
54482003-11-22 Luc Teirlinck <teirllm@auburn.edu>
5449
5450 * fns.c (Fset_char_table_parent): Doc fix.
5451
6a1ff3ba 54522003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
5453
5454 * dispnew.c (buffer_posn_from_coords): Return actual row/column
5455 for glyph clicked on, rather than (unused) pixel positions.
5456 (mode_line_string, marginal_area_string): Change X and Y args to
5457 pointers for returning actual row/column for glyph clicked on.
5458 Simplify and optimize loops.
5459
aef109b7
LT
5460 * dispextern.h (mode_line_string, marginal_area_string):
5461 Update prototypes.
63ccbe21
KS
5462
5463 * keyboard.c (make_lispy_position): New function for generating
5464 mouse click positions from frame and pixel coordinates.
5465 Enhanced to return buffer position and actual row/column for
5466 events outside the text area using updated mode_line_string and
5467 marginal_area_string functions.
5468 Return left-fringe and right-fringe clicks as such, rather than
5469 clicks in text area.
5470 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
5471 pixel_to_glyph_coords, as we never use the results.
5472 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
5473 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
5474 Eliminate unused code in WHEEL_EVENT handling.
5475 (make_lispy_movement): Use make_lispy_position.
5476
5477 * window.c (coordinates_in_window): Remove redundant tests.
5478 Fix returned X pixel value for left-margin.
5479
5480 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
5481 mode_line_string and marginal_area_string parameters.
5482
a64387ee 54832003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 5484
d7107586
SM
5485 * w32.c (struct the_group, getgrgid): Add.
5486 * mac.c (struct my_group, getgrgid): Add.
aef109b7 5487
3dbf3426
LT
54882003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5489
5490 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
5491
cae8ddbb 54922003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 5493
d7107586
SM
5494 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
5495 include in call to file name handler. Optionally translate numeric
5496 UID and GID to strings. Update docstring.
5497 (directory_files_internal): Add parameter ID-FORMAT.
5498 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
5499 include in call to file name handler and call to
5500 directory_files_internal. Update Docstring.
5501 (Fdirectory_files): Add dummy parameter in call to
5502 directory_files_internal.
5503 * lisp.h (Qinteger): Add.
5504 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
5505 (Ffile_attributes): Add parameter.
5506 * data.c (Qinteger): Export.
cae8ddbb 5507
2550b848
LT
55082003-11-21 Luc Teirlinck <teirllm@auburn.edu>
5509
3dbf3426 5510 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 5511
88380018
KS
55122003-11-19 Kim F. Storm <storm@cua.dk>
5513
5514 * xdisp.c (init_iterator): Initialize it->start to position
5515 before reseating (in case start position is invisible).
5516 (init_to_row_start): Set it->start to row-start.
5517 (redisplay_window): Accept optional_new_start if start position
5518 is invisible (in which case IT_CHARPOS overshoots PT).
5519 (display_line): Setup row->start from it->start (rather than
5520 it->current which is wrong if first char on line is invisible).
5521 When done, reseat it->start to it->current (= start of next row).
5522 (expose_area): Fix exposure of text area when first char (e.g. TAB)
5523 is only partially visible.
5524
5525 * dispextern.h (struct it): New member start.
5526
854c1a59
SM
55272003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
5528
455316e2
SM
5529 * alloc.c (make_float, Fcons): Clear the markbit at init time.
5530 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
5531 of block_index outside of the macro call.
5532 (Fgarbage_collect): Remove null code.
5533
5534 * m/amdx86-64.h: Don't redefine XPNTR.
5535
854c1a59
SM
5536 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
5537 of VALMASK.
5538
5539 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
5540 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
5541 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
5542
5543 * lisp.h (VALMASK): Only define for non-union type.
5544 (MARKBIT): Remove.
5545 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
5546 (XTYPE): Define unconditionally.
5547 (XSETTYPE): Remove one more remnant.
5548 (EQ): Define differently for the union and non-union cases.
5549 (INTMASK): New bit mask.
5550 (struct Lisp_Marker): Move down to prepare for upcoming patch.
5551 (GC_EQ): Delegate to EQ.
5552
5553 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
5554
a0c6ef2d
JD
55552003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5556
5557 * xterm.c (x_window_to_scroll_bar): Move check of display to
5558 where window_id is compared.
5559
859492c4
KS
55602003-11-17 Kim F. Storm <storm@cua.dk>
5561
5562 * dispextern.h (struct it): New member first_vpos.
5563
5564 * xdisp.c (start_display): Set it->first_vpos.
5565 (try_window_id): Use first_vpos to start display in first _text_
5566 line if no reusable lines at start of window with header line.
5567
810f2256
JD
55682003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5569
7c402969 5570 * w32fns.c (XPutPixel):
854c1a59
SM
5571 * w32bdf.c (w32_init_bdf_font):
5572 * sunfns.c (sel_read):
5573 * process.c (Fmake_network_process):
5574 * frame.c (store_frame_param):
5575 * fontset.c (Fset_fontset_font):
5576 * emacs.c (shut_down_emacs):
a64387ee 5577 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 5578
a32e9bfd
JD
5579 * config.in: Regenerate.
5580
810f2256
JD
5581 * xfns.c (x_window_to_frame, x_any_window_to_frame)
5582 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5583 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
5584 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
5585 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
5586
5587 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
5588
5589 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
5590 (XTmouse_position, handle_one_xevent): Pass Display* to
5591 x_window_to_scroll_bar.
5592 (x_window_to_scroll_bar): Take a Display* argument.
5593 Check that display for frame is equal to Display* argument.
854c1a59 5594 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
5595 x_display_info_for_display instead. Use Display in xev instead
5596 of GDK_DISPLAY.
5597 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 5598 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
5599 (x_connection_closed): Call xg_display_close for GTK.
5600 (x_term_init): Call xg_display_open for additional displays.
5601 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
5602 for GTK.
5603
5604 * xmenu.c (single_menu_item, mouse_position_for_popup)
5605 (x_activate_menubar): Formatting adjustments.
5606
5607 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
5608 adjustments.
5609
5610 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
5611 (xg_display_close, xg_create_default_cursor)
5612 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
5613 handling.
854c1a59
SM
5614 (xg_left_ptr_cursor): Remove.
5615 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
5616 cursor here.
5617 (xg_win_to_widget): Take Display* argument, call
5618 gdk_xid_table_lookup_for_display.
5619 (xg_create_frame_widgets, xg_get_file_name, create_menus)
5620 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
5621 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
5622 in FRAME_X_DISPLAY_INFO.
5623 (xg_get_scroll_id_for_window): Take Display* argument.
5624 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 5625 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 5626
78819ebb
KS
5627 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
5628 Display* argument.
5629 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 5630
0b03cc78
JD
56312003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5632
5633 * xterm.c (x_detect_focus_change): Do not change focus frame for
5634 Enter/LeaveNotify if the current focus frame has explicit focus.
5635
77e688fa
KS
56362003-11-14 Kim F. Storm <storm@cua.dk>
5637
5638 * dispnew.c (update_text_area): Fix redisplay error when hscroll
5639 is active and first glyph is only partially visible.
854c1a59 5640
dd429b03
KH
56412003-11-13 Kenichi Handa <handa@m17n.org>
5642
5643 * xdisp.c (select_frame_for_redisplay): New function.
5644 (redisplay_internal): Record also selected_frame for
5645 unwind_redisplay. Call select_frame_for_redisplay before
5646 redrawing each frame.
5647 (unwind_redisplay): Argument changed to a cons.
5648
6d9266f4
LT
56492003-11-12 Luc Teirlinck <teirllm@auburn.edu>
5650
5651 * fns.c (Fstring_to_multibyte): Doc fix.
5652
80060eb3
KH
56532003-11-11 Kenichi Handa <handa@m17n.org>
5654
5655 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
5656
74305183
JD
56572003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5658
5659 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
5660 program specified positions.
5661
cfda993e
JD
56622003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5663
5664 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
5665
df211069
KH
56662003-11-08 Kenichi Handa <handa@m17n.org>
5667
5668 * Makefile.in (lisp): Add kannada.el.
5669 (shortlisp): Likewise.
5670
4307d534
KH
56712003-11-07 Kenichi Handa <handa@m17n.org>
5672
854c1a59
SM
5673 * coding.c (coding_allocate_composition_data):
5674 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
5675 (coding_restore_composition): Detect invalid composition data.
5676 Give Fstring and Fvector a Lispy integer, not C int.
5677
854c1a59
SM
56782003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
5679
5680 * floatfns.c (Flogb): Don't use VALMASK.
5681
5682 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
5683 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
5684
5685 * lisp.h (XINT): Move the cast to clarify what is going on.
5686 (GCTYPEMASK, XSETTYPE): Remove.
5687 (XGCTYPE): Make it an alias of XTYPE.
5688
d04103a1
JD
56892003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5690
5691 * xterm.c (x_term_init): Fix formatting.
5692
da18b5ac
JD
56932003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5694
78819ebb
KS
5695 * gtkutil.h (xg_have_tear_offs): Declare.
5696 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
5697
5698 * gtkutil.c: Remove variable xg_did_tearoff.
5699 (xg_have_tear_offs): New function.
5700 (tearoff_remove): Just decrease xg_detached_menus.
5701 (tearoff_activate): Increase xg_detached_menus and call
5702 tearoff_remove when tearoff is removed.
854c1a59 5703 (xg_keep_popup): Remove function.
da18b5ac
JD
5704 (create_menus): Give add_tearoff_p as argument to recursive
5705 call to create_menus.
5706 (xg_create_widget): Use variables instead of multiple
5707 strcmp. Tell create_menus to create tear off only for
5708 menu bar menus.
5709 (xg_update_menubar): Change title for a detached menu also.
5710 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
5711 of deep_p.
5712 (xg_initialize): Initialize xg_detached_menus, remove
5713 initialization of xg_did_tearoff.
5714
5715 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
5716 xg_have_tear_offs returns non-zero.
5717 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
5718 call to xg_keep_popup.
5719
64d4923e
AC
57202003-11-01 Andrew Choi <akochoi@shaw.ca>
5721
5722 * macterm.c (XTread_socket): Handle menubar selection and grow
5723 window only for mouseDown events.
854c1a59 5724
6cc8bc07
JD
57252003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5726
5727 * xterm.c (x_term_init): For GTK part, increase x_initialized
5728 to check for more than one display. Use error instead of return 0.
5729
043131c4
AC
57302003-10-31 Andrew Choi <akochoi@shaw.ca>
5731
854c1a59 5732 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
5733 (copy_dysymtab): Call it.
5734
bdda99a1
LT
57352003-10-31 Luc Teirlinck <teirllm@auburn.edu>
5736
5737 * eval.c (Fdefvaralias): Doc fix.
5738
800f42ff 57392003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
5740
5741 * data.c (Fsetplist): Doc fix.
5742
ef35b389
LK
57432003-10-14 Lute Kamstra <lute@gnu.org>
5744
5745 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 5746
ef35b389 57472003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 5748
07107abc
KS
5749 * window.c (Fset_window_margins): Simplify arg checking.
5750
f7005886
RS
57512003-10-13 Richard M. Stallman <rms@gnu.org>
5752
5753 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
5754 (print_partial_compiled_pattern): Replace assert with a printout.
5755 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
5756
5757 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
5758
5759 * window.c (Fset_window_margins): Allow only integers as args.
5760 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
5761 Doc fixes.
5762
9c0c2af5
LK
57632003-10-13 Lute Kamstra <lute@gnu.org>
5764
5765 * window.c (Fset_window_fringes): Elaborate docstring.
5766
3f080e4e
AC
57672003-10-12 Andrew Choi <akochoi@shaw.ca>
5768
854c1a59 5769 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 5770
3f080e4e
AC
5771 * s/darwin.h (GC_MARK_STACK): Define.
5772
0aa513ed
JD
57732003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5774
5775 * window.c (shrink_windows): New function.
5776 (size_window): Call shrink_windows to calculate window sizes when
5777 shrinking frame with more than one window.
5778
6aa8858a
KS
57792003-10-12 Kim F. Storm <storm@cua.dk>
5780
5781 * xdisp.c (compute_fringe_widths): Doc fix.
5782
c2164d91
KH
57832003-10-08 Kenichi Handa <handa@m17n.org>
5784
854c1a59 5785 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 5786
f82ac129
KH
57872003-10-07 Kenichi Handa <handa@m17n.org>
5788
5789 * coding.c (Qcoding_system_define_form): New variable.
5790 (syms_of_coding): Intern and staticpro it.
5791 (Fcheck_coding_system): Try to autoload the definition of
5792 CODING-SYSTEM.
5793
9296c947
LT
57942003-10-05 Luc Teirlinck <teirllm@auburn.edu>
5795
5796 * fns.c (Frequire): Doc fix.
5797
c1f0671a
JD
57982003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5799
3d8c3826
JD
5800 * xfns.c (Fx_send_client_event): New function as a base for
5801 manipulating extended window manager hints.
6dc15d98 5802 (Fx_send_client_event): Remove unused variable s.
3d8c3826 5803
068ae0fd
JD
5804 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
5805 that function is removed.
5806
5807 * xterm.c (x_set_offset): Use move_offset_left/top instead of
5808 x/y_pixels_outer_diff.
5809 (x_check_expected_move): Calculate move_offset_left/top.
5810
5811 * xterm.h (struct x_output): New members: move_offset_top/left.
5812
854c1a59 5813 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
5814 call x_set_offset directly.
5815
5816 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
5817
96f09305
JD
5818 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
5819
5820 * xterm.c (x_delete_display): Free font names and font_encoder
5821 in dpyinfo->font_table.
5822
854c1a59
SM
5823 * xfns.c (Fx_close_connection): Only call XFreeFont here.
5824 Move xfree of font names to x_delete_display.
96f09305 5825
c1f0671a
JD
5826 * xterm.h (struct x_display_info): New member, wm_type.
5827 (struct x_output): New members, expected_top/left and
5828 check_expected_move.
5829
5830 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
5831 is received.
854c1a59
SM
5832 (handle_one_xevent): Rename x_check_expected_move from
5833 x_check_fullscreen_move.
c1f0671a
JD
5834 (x_set_offset): Only add WM decoration sizes to modified_top/left
5835 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 5836 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
5837 Removed fullscreen specific code. Use check_expected_move,
5838 expected_left/top instead. Also, set wm_type.
5839 (x_term_init): Initialize wm_type to unknown.
5840
5841 * frame.c (x_fullscreen_move): Remove addition of WM decoration
5842 sizes to move_x/y.
5843
be2fdba9
KH
58442003-10-03 Kenichi Handa <handa@m17n.org>
5845
5846 * macterm.c (x_load_font): Clear all members of FONTP before start
5847 filling them.
5848
58492003-10-02 Kenichi Handa <handa@m17n.org>
5850
5851 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
5852 before calling find_ccl_program_func. Call find_ccl_program_func
5853 only when fontp->font_encoder is not NULL.
5854
5855 * xterm.c (x_load_font): Clear all members of FONTP before start
5856 filling them.
5857
26a6e439
JPW
58582003-10-03 John Paul Wallington <jpw@gnu.org>
5859
5860 * keymap.c (map_keymap): Don't abort when binding is a vector.
5861
0d4c2dc2
JR
58622003-10-02 Jason Rumney <jasonr@gnu.org>
5863
854c1a59
SM
5864 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5865 Sync dependencies with Makefile.in.
a63cf46f
JR
5866 (alloca.o): Remove.
5867
0d4c2dc2
JR
5868 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5869 filling them.
5870
5871 * w32bdf.c (w32_load_bdf_font): Likewise.
5872
ab8f7d5c
RS
58732003-09-30 Richard M. Stallman <rms@gnu.org>
5874
5875 * term.c (set_tty_color_mode): Calculate current_mode_spec
5876 regardless of value of VAL.
5877
854c1a59 5878 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
5879 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5880 Handle over_used when splitting UNDER.
5881
a64387ee 58822003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
5883
5884 * regex.c (regex_compile): Free the stack when returning from function.
5885
3413f972
KH
58862003-09-28 Kenichi Handa <handa@m17n.org>
5887
5888 * fontset.c (Finternal_char_font): Change return value to
5889 cons (FONT-NAME . GLYPH-CODE).
5890
a6eeaa81 58912003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
5892
5893 * term.c (tty_setup_colors): Treat any negative argument as -1.
5894
f98ddc99
KH
58952003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5896
5897 * process.c (send_process): Delete unused temp_buf.
5898
66c8f1a8
DL
58992003-09-26 Dave Love <fx@gnu.org>
5900
5901 * xterm.c (x_bitmap_mask): Declare.
5902
ca716c26
DL
59032003-09-25 Dave Love <fx@gnu.org>
5904
5905 * Makefile.in (fns.o): Depend on md5.h.
5906
fbe57420
KS
59072003-09-25 Kim F. Storm <storm@cua.dk>
5908
5909 * window.c (set_window_buffer): Fix redisplay problems when
5910 switching between buffers with different display margin widths.
5911
ef6ae4ff
KS
59122003-09-23 Kim F. Storm <storm@cua.dk>
5913
5914 * process.c (set_socket_option): Fix :bindtodevice option.
5915 (Fset_network_process_option): Update process contact list when
5916 setting option succeeds.
5917 (Fmake_network_process): Doc fix.
5918
68e03c1c
DL
59192003-09-23 Dave Love <fx@gnu.org>
5920
7146d1c1 5921 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 5922
a6eeaa81 59232003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5924
5925 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5926 color mode is an integer number (it could be -1).
5927
8fe7d8c8
RS
59282003-09-22 Richard M. Stallman <rms@gnu.org>
5929
5930 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5931 in the case where OVER is longer than UNDER.
5932
2f71b5ea
MY
59332003-09-22 Masatake YAMATO <jet@gyve.org>
5934
7146d1c1 5935 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5936 `vertical_type'.
7146d1c1 5937
0c4da023
KS
59382003-09-21 Kim F. Storm <storm@cua.dk>
5939
5940 * frame.c (Vdefault_frame_scroll_bars): New variable.
5941 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5942 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5943 window-system default scroll bar position.
5944
b648413b
KS
5945 * window.c (Fwindow_scroll_bars): Doc fix.
5946
8f5b9e34
JD
59472003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5948
854c1a59 5949 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5950
b0f23edf
RS
59512003-09-19 Richard M. Stallman <rms@gnu.org>
5952
5953 * atimer.h: Don't include lisp.h.
5954 (P_): Define it here (as well as elsewhere).
5955
5956 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5957 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5958
5959 * data.c (Fvariable_binding_locus): New function.
5960 (syms_of_data): defsubr it.
5961 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5962
e1283999
DL
59632003-09-18 Dave Love <fx@gnu.org>
5964
ad5f3636
DL
5965 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5966
e1283999
DL
5967 * process.c (Fnetwork_interface_info): Fix type error.
5968 (Fnetwork_interface_list): Doc fix.
5969 (read_process_output, read_process_output): Delete unused var.
5970
b8c7fd71
KS
59712003-09-17 Kim F. Storm <storm@cua.dk>
5972
5973 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5974 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5975 (Fnetwork_interface_info): Check that ifreq struct has required
5976 fields before accessing them; this requires that those fields are
5977 defined as macros, which may be too restrictive on some platforms,
5978 but it is better than failing on other platforms.
5979 (syms_of_process): Only defsubr above fns when included.
5980
11e0a411
DL
59812003-09-17 Dave Love <fx@gnu.org>
5982
5983 * unexalpha.c: Don't include varargs.h.
5984
e9c50801
KS
59852003-09-17 Kim F. Storm <storm@cua.dk>
5986
5987 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5988 for network process.
5989 (socket_options): Add `:' prefix to option names. Add optbit field.
5990 (set_socket_option): Remove no_error arg and special handling of s < 0.
5991 Return 1<<optbit for known option, 0 for unknown.
5992 Do not interpret 0 as false for boolean option (only nil).
5993 Pass failed option and value to report_file_error.
7146d1c1 5994 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5995 (Fset_network_process_option): New function to set just one option.
5996 (Fmake_network_process): Allow :coding arg to be a cons.
5997 Allow :server arg to be an integer specifying backlog size.
5998 Remove :options arg, and allow options to be specified directly
5999 as :KEY, VALUE pairs. Parse these options before binding socket.
6000 As before, :reuseaddr t is default for a server process, but this
6001 can now be disabled by specifying :reuseaddr nil.
6002 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
6003 (init_process): Availability of network options is now checked with
6004 simpler syntax (featurep 'make-network-process :OPTION); use loop to
6005 setup features.
6006 (syms_of_process): Fix defsubr's for the replaced functions.
6007
a0fc3644
DL
60082003-09-16 Dave Love <fx@gnu.org>
6009
6010 * Makefile.in: Depend on coding.h.
6011
6df2a645
KS
60122003-09-14 Kim F. Storm <storm@cua.dk>
6013
6014 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
6015 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
6016 (syms_of_process): Defsubr them.
6017
6018 * config.in: Regenerate.
7146d1c1
SM
6019
60202003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6021
6022 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
6023 * m/news-r6.h (XUNMARK): Remove.
6024 * m/mips.h (XUNMARK): Remove.
6025 * m/mips-siemens.h (XUNMARK): Remove.
6026 * m/iris4d.h (XUNMARK): Remove.
6027 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
6028
0930c1a1
SM
60292003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
6030
31003b9e
SM
6031 * lisp.h (VALBITS): Don't remove 1 for the markbit.
6032 (union Lisp_Object): Use unsigned int for types. Remove markbit.
6033 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
6034 (XTYPE): Use unsigned right-shift.
6035 (XMARKBIT, XMARK, XUNMARK): Remove.
6036
0930c1a1
SM
6037 * alloc.c (init_intervals, init_symbol, init_marker):
6038 Don't preallocate anything.
6039 (Fgarbage_collect, mark_object): Ignore the markbit.
6040
6041 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
6042
19bb0fcd 60432003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
6044
6045 * xdisp.c (pint2hrstr): New function.
6046 (decode_mode_spec): Add `%i' and `%I' specs.
6047 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
6048 for `mode-line-format'.
6049
03bb6a06
AS
60502003-09-07 Andreas Schwab <schwab@suse.de>
6051
6052 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
6053 avoid warning.
6054
a6eeaa81 60552003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 6056
0930c1a1 6057 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 6058
ed159bbf
KS
60592003-09-03 Kim F. Storm <storm@cua.dk>
6060
6061 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
6062 change (superseded by 2002-08-30 change); the default blink-off
6063 cursor is now again "no cursor".
6064
fe64a394
JR
60652003-09-01 Jason Rumney <jasonr@gnu.org>
6066
6067 * makefile.w32-in (alloca.o): Remove.
6068 (coding.o): Depend on intervals.h
6069 (emacs.o, bytecode.o): Depend on window.h
6070
c0175e24
DL
60712003-09-01 Dave Love <fx@gnu.org>
6072
6073 * Makefile.in (alloca.o): Remove commands.
6074 (coding.o): Depend on intervals.h composite.h window.h.
6075 (emacs.o): Depend on window.h keyboard.h keymap.h.
6076 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
6077 (bytecode.o): Depend on window.h.
6078
a24d4cb2
JR
60792003-08-31 Jason Rumney <jasonr@gnu.org>
6080
4bc2315e
JR
6081 * w32term.c (w32_per_char_metric): Allow cached metrics to be
6082 returned even when font_type is unknown.
6083
a24d4cb2
JR
6084 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
6085
9d35adc7
JD
60862003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6087
6088 * xterm.c (x_term_init): Initialize new fields in x_display_info.
6089
6090 * xterm.h (struct x_display_info): Add red/green/blue_bits and
6091 *_offset.
6092
6093 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
6094 calculate pixel value.
6095
6f68b035
GM
60962003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
6097
0930c1a1
SM
6098 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
6099 Don't tell redisplay display is accurate when it's actually been
6100 paused for pending input.
6f68b035 6101
4828b4d7
RS
61022003-08-29 Richard M. Stallman <rms@gnu.org>
6103
6104 * dispnew.c (adjust_glyph_matrix): Call window_box
6105 whenever W is nonzero.
6106
6107 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6108 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 6109 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
6110 Use indirect_variable to trace thru variable aliases.
6111
6112 * config.in: Updated.
6113
6114 * callint.c (Fcall_interactively): Save and restore
6115 Vthis_command, Vthis_original_command, real_this_command,
6116 and current_kboard->Vlast_command.
6117
6118 * abbrev.c (Fexpand_abbrev): Insert before deleting.
6119
e019878d
GM
61202003-08-29 Gerd Moellmann <gerd@gnu.org>
6121
6122 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
6123
85478bc6
KH
61242003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
6125
0930c1a1 6126 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
6127 (decode_coding_sjis_big5): Likewise.
6128
07ce82d3
JR
61292003-08-27 Jason Rumney <jasonr@gnu.org>
6130
d3703de3
JR
6131 * w32.c (sys_pipe): Protect against file descriptor overflow.
6132
ee4a01d1
JR
6133 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
6134
07ce82d3
JR
6135 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
6136
a64387ee 61372003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
6138
6139 * xfns.c (Vgtk_version_string): New variable.
6140 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
6141
a6eeaa81 61422003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 6143
0930c1a1 6144 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 6145
5459e42a
EZ
6146 * Makefile.in (msdos.o): Depend on intervals.h.
6147
0930c1a1 6148 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 6149
231d6cfb
JD
61502003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6151
6152 * xterm.h (struct x_display_info): New fields: client_leader_window
6153 and Xatom_wm_client_leader.
6154
6155 * xterm.c (x_initialize): Move call to x_session_initialize to ...
6156 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
6157
6158 * xsmfns.c (create_client_leader_window): New function.
6159 (x_session_initialize): Call create_client_leader_window, take
6160 dpyinfo as argument.
6161
6162 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
6163
6164 * Makefile.in (xsmfns.o): Add more depenedencies.
6165
afa88464
DL
61662003-08-21 Dave Love <fx@gnu.org>
6167
6168 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
6169
f730033e
KH
61702003-08-21 Kenichi Handa <handa@m17n.org>
6171
6172 * term.c (term_init): Fix previous change; don't rely on the
6173 length of `buffer' if TERMINFO is defined.
6174
6dca786c
DL
61752003-08-20 Dave Love <fx@gnu.org>
6176
6177 * atimer.h: Include lisp.h.
6178
6179 * lisp.h (EMACS_LISP_H): New.
6180 (popup_activated_flag): Don't declare.
6181
6182 * alloca.c: Some merging with gnulib. Change logic and doc
6183 concerning (x)malloc/(x)free -- no longer Emacs-specific.
6184 [DO_BLOCK_INPUT]: Don't include lisp.h.
6185 (xmalloc, xfree): Declare.
6186 (malloc): Don't declare.
6187
0930c1a1 6188 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
6189 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
6190 atimer.h, blockinput.h.
6191
6192 * alloc.c (lisp_align_malloc): Change type of `aligned'.
6193
78819ebb 6194 * alloca.s: Remove.
6dca786c 6195
3a06a6d9
RS
61962003-08-19 Gerd Moellmann <gerd@gnu.org>
6197
6198 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
6199 use -lncurses.
6200
6201 * term.c (term_init): Use a buffer of size 4096 for tgetent since
6202 FreeBSD returns something longer than 2044. Abort if the end of
6203 the buffer is overwritten.
6204
27eeee55
MB
62052003-08-19 Miles Bader <miles@gnu.org>
6206
6207 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
6208
2f297815
GM
62092003-08-19 Gerd Moellmann <gerd@gnu.org>
6210
f4446bbf
GM
6211 * alloc.c (lisp_align_malloc): Check for memory full when
6212 allocating ablocks, which also avoids freeing a pointer into an
6213 ablocks structure.
6214
6215 * puresize.h (BASE_PURESIZE): Increase to 1100000.
6216
0930c1a1 6217 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 6218
0e7d7aae
RS
62192003-08-16 Richard M. Stallman <rms@gnu.org>
6220
6221 * editfns.c (Fencode_time): Doc fix.
6222
62232003-08-16 David Ponce <david@dponce.com>
6224
6225 * fileio.c (Fwrite_region): Fix conditional expression to issue
6226 the right message.
6227
b6189c3b 62282003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
6229
6230 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 6231 Set default value to 1.
0e7d7aae 6232
5d551295
KH
62332003-08-15 Kenichi Handa <handa@m17n.org>
6234
6235 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
6236 what autoscaled.
6237 (best_matching_font): Once we find a better scalable font, set
6238 non_scalable_has_exact_height_p to 1.
6239 (try_font_list): Call try_alternative_families to try any family
6240 with the given registry.
6241
1661e56b
AS
62422003-08-09 Andreas Schwab <schwab@suse.de>
6243
f29181dc
AS
6244 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
6245
1661e56b
AS
6246 * print.c (print_string): Fix printing of multibyte string with
6247 nontrivial printcharfun.
6248
465aa50a
JD
62492003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6250
6251 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
6252
6253 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
6254
e430e5ba
KH
62552003-07-31 Kenichi Handa <handa@m17n.org>
6256
6257 * process.c (read_process_output): Return the actually read bytes
6258 instead of the result of decoding.
6259
97e7188e
KH
62602003-07-31 Kenichi Handa <handa@m17n.org>
6261
6262 * xterm.h (struct x_bitmap_record): New member have_mask.
6263
6264 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
6265 to 0.
6266 (x_create_bitmap_from_file): Likewise.
6267 (x_destroy_bitmap): Check have_mask member before freeing a mask.
6268 (x_destroy_all_bitmaps): Likewise.
6269 (x_create_bitmap_mask): Set have_mask member to 1.
6270
b53094d6
RS
62712003-07-30 Richard M. Stallman <rms@gnu.org>
6272
6273 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
6274
631f2082
JD
62752003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6276
6277 * gtkutil.c (xg_mark_data): Update calls to mark_object.
6278
c855f2ca
RS
62792003-07-29 Richard M. Stallman <rms@gnu.org>
6280
6281 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
6282 Conditionalize XIM code on HAVE_XIM.
6283
6284 * fns.c (Fclear_string): New function.
6285 (syms_of_fns): defsubr it.
6286
b6189c3b 62872003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 6288
0930c1a1 6289 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 6290
29ea8ae9
SM
62912003-07-22 Stefan Monnier <monnier@cs.yale.edu>
6292
6293 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
6294
6295 * buffer.c (delete_all_overlays): New function.
6296 * buffer.h (delete_all_overlays): Declare.
6297 * coding.c (run_pre_post_conversion_on_str):
6298 * print.c (temp_output_buffer_setup):
6299 * fileio.c (Finsert_file_contents):
6300 * minibuf.c (get_minibuffer): Use it.
6301
1dd7ccf2
AC
63022003-07-22 Andrew Choi <akochoi@shaw.ca>
6303
6304 * unexmacosx.c (unexec_regions_sort_compare):
6305 (unexec_regions_merge): New functions. Sort and merge unexec
6306 regions before dumping them.
6307
f57bd967
DL
63082003-07-22 Dave Love <fx@gnu.org>
6309
6310 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
6311
7cdee936
SM
63122003-07-21 Stefan Monnier <monnier@cs.yale.edu>
6313
6314 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
6315 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
6316 MARKBIT as the gcmarkbit for strings.
6317
e50886d3
RS
63182003-07-21 Richard M. Stallman <rms@gnu.org>
6319
6320 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
6321
29ea8ae9 6322 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
6323 (syms_of_fns): Corresponding change.
6324
6325 * alloc.c (syms_of_alloc): Doc fixes.
6326
63272003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
6328
6329 * s/netbsd.h: Use -Wl syntax.
6330
fdc39b59
RS
63312003-07-17 Richard M. Stallman <rms@gnu.org>
6332
6333 * xterm.c (xim_initialize): Redo 6/24 change.
6334
9c53385f
SM
63352003-07-15 Stefan Monnier <monnier@cs.yale.edu>
6336
6337 * buffer.c (copy_overlays): Use EMACS_INT for positions.
6338 (Fswitch_to_buffer): Don't signal an error when switching to the same
6339 buffer in a dedicated window.
6340
6341 * alloc.c: Use bitmaps for cons, as was done for floats.
6342 (init_float, init_cons): Let the normal code allocate the first block.
6343 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
6344 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
6345 New macros.
6346 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
6347 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
6348 (live_cons_p): Check the pointer is not past the `conses' array.
6349 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
6350 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
6351 (survives_gc_p): Use CONS_MARKED_P and simplify.
6352 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
6353
dde13196
PE
63542003-07-13 Paul Eggert <eggert@twinsun.com>
6355
6356 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
6357 puts it into BSS instead, at least on Solaris 8 and 9.
6358 This is a valid optimization, and it may occur on other platforms,
6359 so Emacs should not assume that initializing a static variable to
6360 zero puts it into data.
6361 * alloc.c (pure, staticvec):
6362 Initialize these arrays to nonzero, so that they're not
6363 put into BSS by that optimization.
6364
a801bc34
SM
63652003-07-13 Stefan Monnier <monnier@cs.yale.edu>
6366
6367 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
6368 (lisp_align_malloc): Use posix_memalign is available.
6369 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
6370 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
6371 for consistency. Update users.
6372
0c8b2afa
RS
63732003-07-13 Richard M. Stallman <rms@gnu.org>
6374
6375 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
6376
668c2ab0
JB
63772003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
6378
6379 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
6380 and use the Gtk+ function gtk_window_icon_from_file if available.
6381
6382 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
6383 handle mask of bitmaps.
6384 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
6385 mask property.
6386 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
6387
6388 * xterm.h (xg_set_icon): New function.
6389
800bebe3
RS
63902003-07-12 Paul Eggert <eggert@twinsun.com>
6391
6392 * unexelf.c (unexec): Consider a section to precede the .bss
6393 section if its addresses overlap that of .bss.
6394
69e38995
RS
63952003-07-12 Richard M. Stallman <rms@gnu.org>
6396
6397 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
6398
6399 * config.in (HAVE_CRTIN): Add #undef.
6400 (INLINE): Really inline only if OPTIMIZE is defined.
6401
6402 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
6403 END_FILES_1.
6404 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 6405 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
6406
6407 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
6408 (TERMINFO): Define.
6409 (LIBS_TERMCAP): Define.
6410 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
6411
6412 * xfns.c: Include libpng/png.h instead of png.h.
6413
f1d0c238
AS
64142003-07-11 Andreas Schwab <schwab@suse.de>
6415
6416 * buffer.c (modify_overlay): Update prototype.
6417 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
6418 Likewise.
6419
5f6bf5fe
SM
64202003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6421
6422 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
6423 (struct interval): Move to intervals.h.
6424 (struct Lisp_Marker): Use EMACS_INT for position info.
6425 (forward_point): Remove prototype of defunct function.
6426 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
6427 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
6428 (syms_of_textprop, set_text_properties): Remove prototypes that are
6429 already in intervals.h.
6430
6431 * intervals.h (struct interval): Move from lisp.h.
6432 Use EMACS_INT for position and size info.
6433
6434 * coding.c: Include intervals.h for Fset_text_properties.
6435
6436 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6437 position and length information.
6438
2765b457
SM
64392003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6440
6441 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
6442 position and length information.
6443
2410d73a
SM
64442003-07-09 Stefan Monnier <monnier@cs.yale.edu>
6445
6446 Change overlays_after and overlays_before so the overlays themselves
6447 are linked into lists, rather than using cons cells. After all each
6448 Lisp_Misc already occupies 5 words, so we can add a `next' field to
6449 Lisp_Overlay for free and save up one cons cell per overlay (not
6450 to mention one indirection when traversing the list of overlay).
6451
6452 * lisp.h (struct Lisp_Overlay): New field `next'.
6453
6454 * buffer.h (struct buffer): Change overlays_before and overlays_after
6455 from Lisp lists of overlays to pointers to overlays.
6456
6457 * buffer.c (overlay_strings, recenter_overlay_lists):
6458 Fix typo in eassert in last commit.
6459 (unchain_overlay): New function.
6460 (add_overlay_mod_hooklist): Use AREF.
6461 (copy_overlays, reset_buffer, overlays_at, overlays_in)
6462 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
6463 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
6464 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
6465 (report_overlay_modification, evaporate_overlays, init_buffer_once):
6466 Adjust to new type of overlays_(before|after).
6467
6468 * alloc.c (mark_object): Mark the new `next' field of overlays.
6469 (mark_buffer): Manually mark the overlays_(after|before) fields.
6470
6471 * coding.c (run_pre_post_conversion_on_str):
6472 * editfns.c (overlays_around):
6473 * xdisp.c (load_overlay_strings):
6474 * fileio.c (Finsert_file_contents):
6475 * indent.c (current_column):
6476 * insdel.c (signal_before_change, signal_after_change):
6477 * intervals.c (set_point_both):
6478 * print.c (temp_output_buffer_setup): Use new type for
6479 overlays_(before|after).
6480
04812929
SM
64812003-07-08 Stefan Monnier <monnier@cs.yale.edu>
6482
6483 * buffer.c (report_overlay_modification): Don't run hooks while
6484 traversing the list of overlays.
6485
6486 * buffer.h (struct buffer): Use an int for overlay_center.
6487 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6488 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6489
6490 * buffer.c (reset_buffer, recenter_overlay_lists)
6491 (adjust_overlays_for_insert, adjust_overlays_for_delete)
6492 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
6493 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
6494 (overlays_at, evaporate_overlays, recenter_overlay_lists)
6495 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
6496
6497 * xdisp.c (fast_find_position): Remove unused var.
6498
6499 * cmds.c (Qexpand_abbrev): New sym.
6500 (syms_of_cmds): Initialize it.
6501 (internal_self_insert): Use it to call expand-abbrev.
6502
2e7ecf15
KS
65032003-07-09 Kim F. Storm <storm@cua.dk>
6504
f9711de4 6505 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 6506 was configured with --without-xim.
42f81f64 6507 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 6508
c6de56a0
RS
65092003-07-07 Richard M. Stallman <rms@gnu.org>
6510
6511 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
6512
6513 * alloc.c (Fgarbage_collect): Doc fix.
6514
b6189c3b 65152003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
6516
6517 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
6518
bfe1a3f7
SM
65192003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6520
04812929
SM
6521 * minibuf.c (read_minibuf): UNGCPRO before returning.
6522 (Ftry_completion, Fall_completions): Doc fix.
6523
bfe1a3f7
SM
6524 * alloc.c (live_float_p): Check that p is not past the `floats' array,
6525 now that `floats' is not the last element of the struct any more.
6526
ee79d1aa
JR
65272003-07-06 Jason Rumney <jasonr@gnu.org>
6528
6529 * w32term.h (ClipboardSequence_Proc): New type.
6530
6531 * w32fns.c (clipboard_sequence_fn): New variable.
6532 (globals_of_w32fns): Initialize it.
6533
6534 * w32select.c (last_clipboard_sequence_number): New variable.
6535 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
6536 number if possible.
6537
49723c04
SM
65382003-07-06 Stefan Monnier <monnier@cs.yale.edu>
6539
4698665f
SM
6540 * m/amdx86-64.h (MARKBIT):
6541 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
6542 MARKBIT and ARRAY_MARK_FLAG any more.
6543
6544 * m/hp800.h (XSETMARKBIT):
6545 * m/sr2k.h (XSETMARKBIT):
6546 * lisp.h (XSETMARKBIT): Remove unused macro.
6547
49723c04
SM
6548 * lisp.h (mark_object): Change prototype.
6549
6550 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
6551 (last_marked): Change accordingly.
6552 (mark_interval, mark_maybe_object, mark_maybe_pointer)
6553 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
6554 (mark_buffer): Update calls to mark_object.
6555
6556 * bytecode.c (mark_byte_stack):
6557 * fns.c (sweep_weak_table):
6558 * keyboard.c (mark_kboards): Update calls to mark_object.
6559
1d660eca
JR
65602003-07-06 Jason Rumney <jasonr@gnu.org>
6561
6562 * alloc.c (struct ablock): Only include padding when there is some.
6563
618b5ae4
SM
65642003-07-04 Stefan Monnier <monnier@cs.yale.edu>
6565
6566 * alloc.c (ALIGN): Add casts to simplify usage.
6567 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
6568 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
6569 (struct ablock, struct ablocks): New types.
6570 (free_ablock): New global var.
6571 (lisp_align_malloc, lisp_align_free): New functions.
6572 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
6573 (struct float_block): Reorder and add gcmarkbits.
6574 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
6575 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
6576 (init_float, make_float): Use lisp_align_malloc.
6577 (free_float, live_float_p): Don't use `type' any more.
6578 (make_float): Use FLOAT_UNMARK to access to mark bit.
6579 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
6580 Use FLOAT_MARKED_P to access the mark bit.
6581 (pure_alloc): Simplify use of ALIGN.
6582 (mark_object): Use FLOAT_MARK to access the mark bit.
6583 (gc_sweep): Use new macros to access the float's mark bit.
6584 (init_alloc_once): Init free_ablock.
6585
6586 * lisp.h (struct Lisp_Float): Remove unused field `type'.
6587
3ef06d12
SM
65882003-06-27 Stefan Monnier <monnier@cs.yale.edu>
6589
6590 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
6591 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
6592 (allocate_buffer): Move.
6593 (string_bytes): Don't mask markbit of `size_byte'.
6594 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6595 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
6596 Use the `size' field of buffers (rather than the `name' field) for
6597 the mark bit, as is done for all other vectorlike objects.
6598 Use the new macros to access the mark bit of vectorlike objects.
6599
e81043aa
RS
66002003-06-26 Richard M. Stallman <rms@gnu.org>
6601
6602 * puresize.h (BASE_PURESIZE): Increment base size.
6603
6604 * xdisp.c (fast_find_position): Enable Gerd's new definition.
6605
6606 * xterm.c (xim_initialize): Undo previous change.
6607
2d0834cc
SM
66082003-06-26 Stefan Monnier <monnier@cs.yale.edu>
6609
6610 * alloc.c (survives_gc_p): Simplify.
6611
6612 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
6613
6614 * window.c (Fset_window_dedicated_p): Simplify.
6615 (display_buffer_1): Don't raise the win from which minibuf was entered.
6616 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
6617 (Fminibuffer_selected_window): Simplify.
6618
6619 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
6620
6621 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
6622 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
6623
6624 * insdel.c (check_markers, adjust_markers_for_delete)
6625 (adjust_markers_for_insert, adjust_markers_for_replace)
6626 (prepare_to_modify_buffer, RESTORE_VALUE):
6627 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
6628 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
6629 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
6630 * alloc.c (Fmake_marker, free_marker, gc_sweep):
6631 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
6632 * editfns.c (save_excursion_restore, transpose_markers):
6633 * window.c (delete_window):
6634 * xdisp.c (message_dolog): Update for new types.
6635
d54ae3d8
JD
66362003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6637
a5f696ac
JD
6638 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
6639 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 6640 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
6641
6642 * frame.c (make_frame): Initialize default_face_done_p.
6643
6644 * frame.h (struct frame): Add default_face_done_p.
6645
d54ae3d8
JD
6646 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
6647 will be defined.
6648
2336fe58
SM
66492003-06-25 Stefan Monnier <monnier@cs.yale.edu>
6650
6651 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
6652 Initialize the new field `gcmarkbit'.
6653 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
6654 (mark_interval_tree): Don't mark the tree separately from the nodes.
6655 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
6656 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
6657 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
6658
6659 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
6660 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
6661 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
6662 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
6663 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
6664
bcea31c2
DL
66652003-06-24 Dave Love <fx@gnu.org>
6666
6667 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
6668
6669 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
6670 from gnulib.
6671
2601f59e
RS
66722003-06-21 Richard M. Stallman <rms@gnu.org>
6673
6674 * fileio.c (Fwrite_region): Alternate messages
6675 for append and partial write.
6676
6677 * keyboard.c (read_key_sequence): When converting upcase fn key to
6678 downcase, update fkey and keytran so `backspace' gets translated.
6679
6680 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
6681
6682 * process.c (wait_reading_process_input): Don't signal SIGIO
6683 in batch mode.
6684
b5d2c621
KH
66852003-06-17 Kenichi Handa <handa@m17n.org>
6686
6687 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
6688 composite.h.
6689
6690 * xselect.c: Don't include charset.h, coding.h, composite.h.
6691 (Qforeign_selection): New variable.
6692 (syms_of_xselect): Intern and static it.
6693 (selection_data_to_lisp_data): Return a unibyte string made from
6694 data with `foreign-selection' text property.
6695
6793bc63
SM
66962003-06-15 Stefan Monnier <monnier@cs.yale.edu>
6697
6698 * termhooks.h (EVENT_INIT): New macro.
6699
6700 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
6701
6702 * alloc.c (mark_kboards): Move to keyboard.c.
6703
6704 * keyboard.c (record_asynch_buffer_change, read_avail_input):
6705 * xterm.c (x_dispatch_event):
6706 * xmenu.c (find_and_call_menu_selection):
6707 * xdisp.c (handle_tool_bar_click):
6708 * w32menu.c (menubar_selection_callback):
6709 * sysdep.c (kbd_input_ast, read_input_waiting):
6710 * msdos.c (dos_rawgetc):
6711 * macterm.c (mac_check_for_quit_char):
6712 * macmenu.c (menubar_selection_callback):
6713 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
6714 data to kbd_buffer_store_event.
6715
b3ea810c
KS
67162003-06-15 Kim F. Storm <storm@cua.dk>
6717
6718 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 6719 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 6720
b8f75eda
KG
67212003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6722
6723 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
6724
ba92ce48
KH
67252003-06-12 Kenichi Handa <handa@m17n.org>
6726
6727 * fileio.c (Fwrite_region): Save and restore restriction.
6728
b80263be
DL
67292003-06-12 Dave Love <fx@gnu.org>
6730
6731 * alloca.c (alloca): Declare arg as size_t.
6732
6793bc63
SM
6733 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
6734 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 6735
b23c0a83
DL
67362003-06-11 Dave Love <fx@gnu.org>
6737
6738 * search.c (shrink_regexp_cache): Use xrealloc.
6739 (syms_of_search): Use xmalloc.
6740
700e47c2
KS
67412003-06-10 Kim F. Storm <storm@cua.dk>
6742
6743 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
6744 Adjust phys_cursor.x to be relative to window box, rather than
6745 text area before checking -- to ensure cursor is redrawn when
6746 exposing window.
6747 Note: This also fixes a similar (older) bug if display margins
6748 are present.
6749
f11aa0b2
KH
67502003-06-06 Kenichi Handa <handa@m17n.org>
6751
6752 * coding.c (encoding_buffer_size): If coding->type is
6753 coding_type_ccl, double magnification on CRLF encoding.
6754
3d143690
JR
67552003-06-06 Jason Rumney <jasonr@gnu.org>
6756
6757 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
6758 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
6759
6760 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
6761 Mac too.
6762
f16205ca
DL
67632003-06-05 Dave Love <fx@gnu.org>
6764
b23c0a83
DL
6765 * strftime.c: Merge changes from gnulib.
6766
f16205ca
DL
6767 * mktime.c (__mktime_internal): Merge changes from gnulib
6768 involving year 69 and dst2.
6769
6770 Changes to merge with gnulib version and be consistent with the
6771 autoconf test:
6772
6793bc63
SM
6773 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
6774 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
6775 [HAVE_LOCALE_H]: Include locale.h.
6776 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
6777
9b87a0bc
KS
67782003-06-05 Kim F. Storm <storm@cua.dk>
6779
6780 * window.c (coordinates_in_window): Convert X and Y to window
6781 relative coordinates inside mode-line and header-line parts.
6782 Convert X and Y to margin area relative coordinates inside left
6783 and right display margin parts.
6784
5a8a15ec
JR
67852003-06-05 Jason Rumney <jasonr@gnu.org>
6786
6787 * w32fns.c (add_system_logical_colors_to_map): New function.
6788 (Fx_open_connection): Use it.
6789
01ed8ff1
SM
67902003-06-04 Stefan Monnier <monnier@cs.yale.edu>
6791
6792 * process.c (allocate_pty): Revert part of the previous patch.
6793 (Faccept_process_output): Simplify.
6794
b427b65d
JR
67952003-06-04 Jason Rumney <jasonr@gnu.org>
6796
6797 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
6798
6799 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
6800 (lispy_mouse_wheel_names): Remove.
6801 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
6802 Always define drag_and_drop_syms.
6803
6804 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
6805 WHEEL_EVENT events.
6806
914a8c47
SM
68072003-06-03 Stefan Monnier <monnier@cs.yale.edu>
6808
01ed8ff1
SM
6809 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
6810
914a8c47
SM
6811 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
6812
adcb132c
JD
68132003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6814
6815 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
6816 menu item label.
6817
be781fa7
RS
68182003-06-03 Richard M. Stallman <rms@gnu.org>
6819
6820 * window.c (Fwindow_edges): Doc fix.
6821 (Fwindow_pixel_edges, Fwindow_inside_edges)
6822 (Fwindow_inside_pixel_edges): New functions.
6823 (syms_of_window): defsubr them.
6824
6825 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
6826 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
6827
914a8c47
SM
68282003-06-02 Stefan Monnier <monnier@cs.yale.edu>
6829
6830 * dispnew.c (Fsit_for): Don't lie about the number of args.
6831
5b07197a
DL
68322003-06-02 Dave Love <fx@gnu.org>
6833
6834 * callproc.c: Use HAVE_FCNTL_H, not USG5.
6835 (syms_of_callproc) <process-environment>: Doc fix.
6836
6837 * doc.c: Use HAVE_FCNTL_H, not USG5.
6838
6839 * xfaces.c (font_rescale_ratio): Fix for K&R.
6840
6841 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
6842
6843 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
6844
6845 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
6846
6847 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
6848 (xg_create_frame_widgets): Use ENCODE_UTF_8.
6849
d7107586 6850 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
6851
6852 * xmenu.c (ENCODE_MENU_STRING): New.
6853 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
6854 Use it.
6855
6856 * coding.h (ENCODE_UTF_8): New.
6857 (Qutf_8): Declare.
6858
6859 * coding.c (Qutf_8): New.
6860 (syms_of_coding): Intern it.
6861
6862 * fns.c: Doc fixes.
6863
7335b336
KH
68642003-06-02 Kenichi Handa <handa@m17n.org>
6865
6866 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6867
914a8c47
SM
68682003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6869
6870 * lread.c (openp): Make sure STR is a string.
6871
9862c135
JR
68722003-06-01 David Ponce <david@dponce.com>
6873
cab27d04 6874 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
6875 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6876
6877 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6878 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6879 (discard_mouse_events): Discard WHEEL_EVENT events too.
6880 (lispy_wheel_names, wheel_syms): New.
6881 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 6882 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 6883 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
6884
6885 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6886 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6887 WHEEL_EVENT events.
6888
f984e73e
JPW
68892003-05-31 John Paul Wallington <jpw@gnu.org>
6890
6891 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6892 timer are in lisp/emacs-lisp.
6893
1efcd78f
KH
68942003-05-31 Kenichi Handa <handa@m17n.org>
6895
458c8af4
KH
6896 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6897 region when a buffer is changed to unibyte.
6898
1efcd78f
KH
6899 * charset.h (VALID_LEADING_CODE_P): New macro.
6900 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6901
778e2804
KH
6902 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6903 is nonzero, accept multibyte form of eight-bit-control chars.
6904 (decode_composition_emacs_mule): Likewise.
6905 (decode_coding_emacs_mule): Likewise.
6906 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6907 multibyte form of eight-bit-control chars.
6908
6909 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6910 (Finsert_file_contents): If coding-system-for-read is bound to
6911 Qauto_save_coding, use the coding system emacs-mule with special
6912 setting for recovering a file.
6913 (choose_write_coding_system): On auto saving, use the coding
6914 system emacs-mule with special setting for auto saving.
6915 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6916
034060e4
KH
69172003-05-30 Kenichi Handa <handa@m17n.org>
6918
6919 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6920 properly before calling ccl_driver.
6921
778e2804 6922 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 6923
cab27d04 6924 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
6925 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6926 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6927
595f5aa5
GM
69282003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6929
6930 * xfaces.c (realize_default_face): Do not abort if lface is
6931 non-existent - reverts change from 2003-05-19.
6932
103e0180
KH
69332003-05-29 Kenichi Handa <handa@m17n.org>
6934
6935 * coding.c (decode_coding_iso2022): Pay attention to the byte
6936 sequence of CTEXT extended segment, and retain those bytes as is.
6937
69382003-05-28 Kenichi Handa <handa@m17n.org>
6939
cab27d04 6940 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
6941 of CODING_REPLACEMENT_CHARACTER.
6942 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6943 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6944 check this flag on encoding.
cab27d04
SM
6945 (encode_coding_sjis_big5):
6946 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6947 (Fset_terminal_coding_system_internal):
6948 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6949 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
6950
6951 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
6952 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6953 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6954
ff6a3bfb 69552003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6956
ff6a3bfb
RS
6957 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6958
6959 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6960
1963c428
KS
69612003-05-28 Kim F. Storm <storm@cua.dk>
6962
6963 * xdisp.c (expose_window): Fix error in calculation of
6964 window relative coordinates of area to redisplay.
6965
2b5d4601
JR
69662003-05-27 Jason Rumney <jasonr@gnu.org>
6967
6968 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6969
1c64a4a2
JB
69702003-05-27 David Ponce <david@dponce.com>
6971
6972 Handle W32 mouse wheel events as mouse click events, like in X.
6973
6974 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6975 MOUSE_WHEEL_EVENT anymore.
6976
6977 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6978 Scrolling down/up the mouse wheel is respectively mapped to mouse
6979 button 4 and 5.
6980 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6981 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6982 WM_MOUSEWHEEL events.
6983
2d031b89
AS
69842003-05-27 Andreas Schwab <schwab@suse.de>
6985
20464fdf
AS
6986 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6987
2d031b89
AS
6988 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6989 partially visible line.
6990
6991 * alloc.c (Fgarbage_collect): Fix last change.
6992
97bc76d4
JPW
69932003-05-26 John Paul Wallington <jpw@gnu.org>
6994
6995 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6996
56613f06
SM
69972003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6998
6999 * window.c (Fset_window_buffer): Add type of `keep_margins'.
7000 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
7001
7002 * window.h (window_box_text_cols): Declare.
7003
7004 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
7005 (x_draw_vertical_border): Remove unused var `f'.
7006
7007 * xfaces.c (build_scalable_font_name): Remove `unused var
7008 pixel_size' warning.
7009
7010 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
7011
7012 * unexelf.c (unexec): Remove `unused var n' warning.
7013
7014 * strftime.c (my_strftime_localtime_r): Remove `defined but
7015 unused' warning.
7016
7017 * process.c (allocate_pty): Remove `unused var stb' and
7018 `cp might be used uninitialized' warnings.
7019
7020 * dispnew.c (mode_line_string): Remove unused var `f'.
7021
7022 * coding.c (find_safe_codings): Remove unused var `i'.
7023
7024 * bytecode.c (Fbyte_code): Remove `unused val' warning.
7025
7026 * buffer.c (Fkill_buffer): Remove unused var `list'.
7027
7028 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
7029
93421a1f
JD
70302003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7031
7032 * frame.c (make_frame): Condition want_fullscreen with
7033 HAVE_WINDOW_SYSTEM.
7034
c4b8aebc
JB
70352003-05-25 Juanma Barranquero <lektu@terra.es>
7036
7037 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
7038 (Fwindow_scroll_bars): Fix typo in docstring.
7039
0416870b
KS
70402003-05-24 Kim F. Storm <storm@cua.dk>
7041
7042 The following changes serve several purposes:
7043
7044 1) Swap the position of fringes and display margins in windows, i.e.
7045 the fringes are now displayed between the margins and the text area
7046 (by default).
7047
7048 2) Allow fringe and scroll bar parameters to be set per-buffer and
7049 per-window (like display margins). Such settings are now stored
7050 in window configurations, preserved when frames are resized, and
9018a88e 7051 copied when windows are split vertically or horizontally.
0416870b
KS
7052 Several bugs related to display margins have been fixed.
7053
7054 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 7055
0416870b
KS
7056 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
7057 rather than FRAME_WIDTH (FRAME_FONT (f)).
7058
7059 5) Introduce a consistent naming of variables, members and macros
7060 depending on whether their value is measured in pixels or in
7061 canonical columns/lines. Pixel dimensions are named *_width and
7062 *_height, while canonical columns/lines are named *_cols and
7063 *_lines. Pixel positions are named *_x and *_y, while column/line
7064 positions are named *_col and *_line.
7065
7066 6) Consolidate more of the X, W32, and MAC gui code by moving
7067 common data into struct frame, and generalize it for the non-gui
7068 case by using suitable defaults.
7069
7070 7) Cleanup and consolidate the macros controlling frame and window
7071 layout into frame.h and window.h, and generalize the use of the
7072 various window_box_* functions (enhanced to handle the new fringe
7073 position and the per-window fringe and scroll bar settings).
7074
7075 * frame.h (struct frame): Rename members height to text_lines,
7076 width to text_cols, window_height to total_lines, window_width to
7077 total_cols, new_height to new_text_lines, new_width to
7078 new_text_cols. All uses changed.
7079 (struct frame): New members which consolidate common members of
7080 x_output, w32_output, and mac_output structures: left_pos,
7081 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
7082 win_gravity, size_hint_flags, border_width, internal_border_width,
7083 line_height, fringe_cols, left_fringe_width, right_fringe_width,
7084 want_fullscreen. All uses changed.
7085 (struct frame): New member column_width contaning the canonical
7086 column width, analogue to line_height. All uses changed.
7087 (struct frame): Rename members scroll_bar_pixel_width to
7088 config_scroll_bar_width, and scroll_bar_cols to
7089 config_scroll_bar_cols. All uses changed.
7090 (struct frame): New member scroll_bar_actual_width which
7091 consolidates and renames the vertical_scroll_bar_extra member of
7092 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 7093 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
7094 from x/w32/macterm.h files. All uses changed. Also change code
7095 which referred to f->output_data...->pixel_height.
cab27d04 7096 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 7097 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 7098 which referred to f->output_data...->pixel_width.
cab27d04 7099 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 7100 Also change code which referred to f->height.
cab27d04 7101 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
7102 Also change code which referred to f->width.
7103 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
7104 to update new_text_lines and new_text_cols members directly.
cab27d04 7105 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 7106 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 7107 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
7108 FRAME_SCROLL_BAR_COLS. All uses changed.
7109 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 7110 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
7111 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
7112 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
7113 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
7114 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
7115 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
7116 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
7117 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
7118 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
7119 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
7120 Unconditionally return line_height member (it now has proper value
7121 also for non-window frames).
7122 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
7123 return new column_width member (rather than the default font width).
7124 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 7125 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
7126 from x/w32/macterm.h files. Unconditionally return corresponding
7127 member of frame structure (they now have proper values also for
7128 non-window frames).
cab27d04 7129 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
7130 Calculate return value from left and right widths.
7131 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
7132 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
7133 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
7134 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
7135 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
7136 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
7137 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 7138 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7139 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 7140 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 7141 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 7142 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7143 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 7144 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 7145 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 7146 consolidated from x/mac/w32term.h.
cab27d04 7147 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 7148 consolidated from x/mac/w32term.h.
cab27d04 7149 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 7150 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 7151 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
7152 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
7153
7154 * window.h (struct window): Rename members left to left_col,
7155 top to top_line, height to total_lines, width to total_cols,
7156 left_margin_width to left_margin_cols, right_margin_width to
7157 right_margin_cols, orig_height to orig_total_lines, orig_top to
7158 orig_top_line. All uses changed.
7159 (struct window): New members left_fringe_width, right_fringe_width,
7160 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
7161 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
7162 New macros primarily used to simplify other macros.
7163 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
7164 referred to XINT (w->width).
7165 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
7166 referred to XINT (w->height).
7167 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
7168 referred to XINT (w->width) * canon_x_unit.
7169 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
7170 referred to XINT (w->height) * canon_y_unit.
7171 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
7172 referred to XINT (w->left).
cab27d04 7173 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
7174 all uses and code that referred to XINT (w->left) + XINT (w->width).
7175 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
7176 referred to XINT (w->top).
7177 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
7178 referred to XINT (w->top) + XINT (w->height).
7179 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
7180 referred to XINT (w->left) * canon_x_unit.
7181 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
7182 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
7183 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
7184 referred to XINT (w->top) * canon_y_unit.
7185 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
7186 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
7187 (WINDOW_LEFTMOST_P): New macro.
cab27d04 7188 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 7189 All uses changed.
cab27d04 7190 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 7191 All uses changed.
cab27d04 7192 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
7193 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
7194 Do not exclude left fringe width.
cab27d04 7195 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
7196 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
7197 Do not exclude fringe widths.
7198 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
7199 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
7200 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
7201 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
7202 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
7203 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
7204 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
7205 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
7206 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
7207 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
7208 New macros. Change code which referenced corresponding
7209 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
7210 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
7211 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
7212 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
7213 allow per-window scroll-bar settings.
7214 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
7215 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
7216 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
7217 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
7218 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
7219 FRAME_SCROLL_BAR_WIDTH.
7220 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 7221 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 7222 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 7223 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 7224 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 7225 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 7226 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
7227 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
7228 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7229 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
7230 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
7231 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 7232 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 7233 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
7234 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
7235 (window_from_coordinates): Update prototype.
7236 (Fset_window_buffer): Update EXFUN.
7237 (set_window_buffer): Update prototype.
9018a88e 7238
0416870b 7239 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 7240 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
7241 changed.
7242 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
7243 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
7244 internal_border_width is now set to 0 for non-window frames.
7245 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
7246 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
7247 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
7248 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
7249 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
7250 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
7251 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
7252 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
7253 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 7254 Move to window.h and renamed [see window.h changes].
0416870b
KS
7255 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
7256 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
7257 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
7258 Use WINDOW_TOTAL_LINES.
0416870b
KS
7259 (frame_update_line_height): Remove prototype.
7260
7261 * buffer.h (struct buffer): Rename members measured in columns:
7262 left_margin_width to left_margin_cols, right_margin_width to
7263 right_margin_cols. All uses changed.
7264 New members left_fringe_width, right_fringe_width,
7265 fringes_outside_margins for per-buffer fringe settings.
7266 New members scroll_bar_width and vertical_scroll_bar_type for
7267 per-buffer scroll bar settings.
7268
7269 * buffer.c (init_buffer_once): Set buffer_defaults and
7270 buffer_local_flags for new buffer-local variables
7271 left_fringe_width, right_fringe_width, fringes_outside_margins,
7272 scroll_bar_width, and vertical_scroll_bar_type.
7273 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
7274 default-* variables for them.
7275
7276 * dispnew.c: Make (many) trivial substitutions for renamed and
7277 new macros in dispextern.h, frame.h and window.h.
7278 (mode_line_string): No need to adjust width for mode lines, as it
7279 is already adjusted by the caller.
7280 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 7281
0416870b
KS
7282 * frame.c: Make (many) trivial substitutions for renamed and
7283 new macros in dispextern.h, frame.h and window.h.
7284 (make_frame): Initialize left_fringe_width, right_fringe_width,
7285 fringe_cols, scroll_bar_actual_width, border_width,
7286 internal_border_width, column_width, line_height, x_pixels_diff,
7287 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
7288 members with values suitable for a non-window frames.
7289
7290 * gtkutil.c: Make (many) trivial substitutions for renamed and
7291 new macros in dispextern.h, frame.h and window.h.
9018a88e 7292
0416870b
KS
7293 * indent.c: Make (few) trivial substitutions for renamed and
7294 new macros in dispextern.h, frame.h and window.h.
7295
7296 * keyboard.c: Make (many) trivial substitutions for renamed and
7297 new macros in dispextern.h, frame.h and window.h.
7298 (make_lispy_event): Use window positions returned from
7299 window_from_coordinates when constructing the lisp event for
7300 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
7301 (incorrect) values locally.
7302 (make_lispy_movement): Use window positions returned from
7303 window_from_coordinates when constructing the lisp event, rather
7304 than calculating (incorrect) values locally.
7305
7306 * scroll.c: Make (some) trivial substitutions for renamed and
7307 new macros in dispextern.h, frame.h and window.h.
7308
7309 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
7310 scroll-bars.
7311
7312 * sysdep.c: Make (few) trivial substitutions for renamed and
7313 new macros in dispextern.h, frame.h and window.h.
7314
7315 * term.c: Make (some) trivial substitutions for renamed and
7316 new macros in dispextern.h, frame.h and window.h.
7317
7318 * widget.c: Make (few) trivial substitutions for renamed and
7319 new macros in dispextern.h, frame.h and window.h.
7320
7321 * window.c: Make (many) trivial substitutions for renamed and
7322 new macros in dispextern.h, frame.h and window.h.
7323 (make_window): Initialize new members
7324 left_margin_cols, right_margin_cols, left_fringe_width,
7325 right_fringe_width, fringes_outside_margins, scroll_bar_width,
7326 and vertical_scroll_bar_type.
cab27d04 7327 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 7328 and per-window fringes and scroll-bars.
0416870b 7329 Fix bug related to incorrectly adjusting coordinates by
9018a88e 7330 frame's internal_border_width (the effect normally negible since
0416870b
KS
7331 the internal_border_width is typically 0 or 1 pixel, but very
7332 noticeable for an internal_border_width of e.g. 25 pixels).
7333 Upon successful return (other than ON_NOTHING), the coordinates
7334 are now always properly converted to window relative for the
7335 given display element.
7336 (window_from_coordinates): Add new parameters wx and wy to
7337 return the window relative x and y position in the returned
7338 window and part. A null arg means, don't return the position.
7339 All callers changed.
7340 (adjust_window_margins): New function which may reduce the width
7341 of the display margins if a window's text area is too small after
7342 resizing or splitting windows.
7343 (size_window): Fix bug that did not account for display margin
7344 widths when checking the minimum width of a window; use
7345 adjust_window_margins.
7346 (set_window_buffer): Call Fset_window_fringes and
7347 Fset_window_scroll_bars to setup per-window elements.
7348 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
7349 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
7350 (e.g. after splitting a window or resizing the frame).
7351 All callers changed.
0416870b
KS
7352 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
7353 (Fsplit_window): Duplicate original window's display margin,
7354 fringe, and scroll-bar settings; then call Fset_window_buffer with
7355 KEEP_MARGINS non-nil. This fixes a bug which caused a split
7356 window to only preserve the display margins in one of the windows.
c4b8aebc 7357 When splitting horizontally, call adjust_window_margins on both
0416870b 7358 windows to ensure that the text area of the new windows is non too
f9711de4 7359 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
7360 width of the split window was less than the width of the display
7361 margins.
cab27d04 7362 (window_box_text_cols): Rename from window_internal_width.
9018a88e 7363 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
7364 Fix bug that caused vertical separator to be subtracted also on
7365 window frames. Fix another bug that did not reduce the returned
7366 value by the columns used for display margins.
7367 (window_scroll_line_based): Fix bug related to scrolling too much
7368 when display margins are present (implicitly fixed by the fix to
7369 window_box_text_cols).
7370 (scroll_left, scroll_right): Fix bug related to scrolling too far
7371 by default when display margins are present (implicitly fixed by
7372 the fix to window_box_text_cols).
7373 (struct saved_window): Rename members left to left_col, top to
7374 top_line, width to total_cols, height to total_lines, orig_top to
7375 orig_top_line, orig_height to orig_total_lines. All uses changed.
7376 New members left_margin_cols, right_margin_cols,
7377 left_fringe_width, right_fringe_width, fringes_outside_margins,
7378 scroll_bar_width, and vertical_scroll_bar_type for saving
7379 per-window display elements.
7380 (Fset_window_configuration): Restore display margins, fringes,
7381 and scroll bar settings. This fixes a bug which caused display
7382 margins to be discarded when saving and restoring a window
7383 configuration.
7384 (save_window_save): Save display margins, fringes, and scroll bar
7385 settings. This fixes a bug which caused display margins to be
7386 discarded when saving and restoring a window configuration.
7387 (Fset_window_margins): Do nothing if display margins are not
7388 really changed. Otherwise, call adjust_window_margins to ensure
7389 the text area doesn't get too narrow. This fixes a bug which
f9711de4 7390 could cause Emacs to trap if setting display margins wider than
0416870b
KS
7391 the width of the window.
7392 (Fset_window_fringes): New defun to allow user to specifically set
7393 this window's fringe widths and position vs. display margins.
cab27d04 7394 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
7395 (Fset_window_scroll_bars): New defun to allow user to specifically
7396 set this window's scroll bar width and position.
7397 (Fwindow_scroll_bars): New defun to return window's actual scroll
7398 bar settings.
7399 (compare_window_configurations): Also compare display margins,
7400 fringes, and scroll bar settings.
7401 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
7402
7403 * xdisp.c: Make (many) trivial substitutions for renamed and
7404 new macros in dispextern.h, frame.h and window.h.
7405 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 7406 and new fringe vs. display margin position. Note that returned
0416870b
KS
7407 value is no longer guaranteed to be a whole multiple of the frame
7408 column width, since per-window fringes may now be any width.
7409 (window_box_left_offset): New function like window_box_left, but
7410 value is relative to left border of window (rather than frame).
7411 (window_box_right_offset): New function like window_box_right,
7412 but value is relative to left border of window.
7413 (window_box_left): Adapt to per-window fringes and scroll bars,
7414 and new fringe vs. display margin position. Simplify by using
7415 WINDOW_LEFT_EDGE_X and window_box_left_offset.
7416 (window_box): Allow null args for unnecessary return values;
7417 change/simplify relevant callers.
7418 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
7419 and new fringe vs. display margin position.
7420 Use window_box_left_offset and window_box_right_offset
0416870b 7421 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
7422 scroll bars, and new fringe vs. display margin position.
7423 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
7424 (draw_fringe_bitmap): Rework to handle per-window fringes and new
7425 fringe vs. display margin position.
7426 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
7427 (redisplay_window): Adapt to per-window scroll bars.
7428 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
7429 bars, and new fringe vs. display margin position.
7430 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 7431 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
7432 bars, and new fringe vs. display margin position. Fix bug which
7433 increased total width of full_width rows by width of scroll bars
7434 although window's total width already includes that.
7435 (x_fix_overlapping_area): Simplify using window_box_left_offset.
7436 (expose_area): Simplify using window_box_left_offset.
7437 (x_draw_vertical_border): Handle per-window scroll bar settings,
7438 mixing windows with left, right and no scroll bars.
7439
7440 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
7441 where it's used in x_list_fonts (for clarity).
7442 (frame_update_line_height): Remove unused function; functionality
7443 is now done directly when setting the default font in x_set_font.
7444
7445 * xfns.c: Make (many) trivial substitutions for renamed and
7446 new macros in dispextern.h, frame.h and window.h.
7447
7448 * xmenu.c: Make (some) trivial substitutions for renamed and
7449 new macros in dispextern.h, frame.h and window.h.
7450
7451 * xterm.h (struct x_output): Move members left_pos, top_pos,
7452 border_width, pixel_height, pixel_width, line_height,
7453 internal_border_width, vertical_scroll_bar_extra,
7454 left_fringe_width, right_fringe_width, fringe_cols,
7455 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7456 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7457 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7458 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7459 (PIXEL_WIDTH, PIXEL_HEIGHT)
7460 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7461 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7462 frame.h and renamed [see frame.h changes].
7463 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7464 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7465 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7466 and renamed [see frame.h changes].
9018a88e 7467
0416870b
KS
7468 * xterm.c: Make (several) trivial substitutions for renamed and
7469 new macros in dispextern.h, frame.h and window.h.
cab27d04 7470 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7471 (scroll_run): Adapt to new fringe position.
7472 (glyph_rect): Use window coordinates returned from
7473 window_from_coordinates rather than frame_to_window_pixel_xy.
7474 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7475 scroll-bars.
7476 (handle_one_xevent): Simplify a USE_GTK conditional.
7477 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7478 (fringes are now inside margins, i.e. always in the clipping area).
7479 All callers changed.
7480 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7481 directly, then call compute_fringe_widths. Don't call
7482 frame_update_line_height.
7483
7484 * w32term.h (struct w32_output): Move members left_pos, top_pos,
7485 border_width, pixel_height, pixel_width, line_height,
7486 internal_border_width, vertical_scroll_bar_extra,
7487 left_fringe_width, right_fringe_width, fringe_cols,
7488 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7489 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
7490 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7491 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7492 (PIXEL_WIDTH, PIXEL_HEIGHT)
7493 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7494 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7495 frame.h and renamed [see frame.h changes].
7496 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7497 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7498 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7499 and renamed [see frame.h changes].
9018a88e 7500
0416870b
KS
7501 * w32term.c: Make (several) trivial substitutions for renamed and
7502 new macros in dispextern.h, frame.h and window.h.
cab27d04 7503 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7504 (glyph_rect): Use window coordinates returned from
7505 window_from_coordinates rather than frame_to_window_pixel_xy.
7506 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7507 scroll-bars.
7508 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
7509 (fringes are now inside margins, i.e. always in the clipping area).
7510 All callers changed.
7511 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7512 directly, then call compute_fringe_widths. Don't call
7513 frame_update_line_height.
7514
7515 * w32console.c: Make (few) trivial substitutions for renamed and
7516 new macros in dispextern.h, frame.h and window.h.
7517
7518 * w32fns.c: Make (many) trivial substitutions for renamed and
7519 new macros in dispextern.h, frame.h and window.h.
7520
7521 * w32menu.c: Make (few) trivial substitutions for renamed and
7522 new macros in dispextern.h, frame.h and window.h.
7523
7524 * macterm.h (struct mac_output): Move members left_pos, top_pos,
7525 border_width, pixel_height, pixel_width, line_height,
7526 internal_border_width, vertical_scroll_bar_extra,
7527 left_fringe_width, right_fringe_width, fringe_cols,
7528 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
7529 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
7530 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
7531 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
7532 (PIXEL_WIDTH, PIXEL_HEIGHT)
7533 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 7534 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
7535 frame.h and renamed [see frame.h changes].
7536 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
7537 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 7538 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 7539 and renamed [see frame.h changes].
9018a88e 7540
0416870b
KS
7541 * macterm.c: Make (several) trivial substitutions for renamed and
7542 new macros in dispextern.h, frame.h and window.h.
cab27d04 7543 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
7544 (glyph_rect): Use window coordinates returned from
7545 window_from_coordinates rather than frame_to_window_pixel_xy.
7546 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
7547 scroll-bars.
7548 (x_clip_to_row): Remove superfluous whole_line_p arg and code
7549 (fringes are now inside margins, i.e. always in the clipping area).
7550 All callers changed.
7551 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
7552 directly, then call compute_fringe_widths. Don't call
7553 frame_update_line_height.
7554
7555 * macfns.c: Make (several) trivial substitutions for renamed and
7556 new macros in dispextern.h, frame.h and window.h.
9018a88e 7557 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
7558
7559 * macmenu.c: Make (few) trivial substitutions for renamed and
7560 new macros in dispextern.h, frame.h and window.h.
7561
7562 * msdos.h (struct x_output): Remove members left_pos, top_pos,
7563 and line_height, and use corresponding new members in struct
7564 frame. All uses changed.
7565 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
7566 superseeded by corresponding macros in frame.h.
7567
7568 * msdos.c: Make (several) trivial substitutions for renamed and
7569 new macros in dispextern.h, frame.h and window.h.
7570 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 7571 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
7572 (internal_terminal_init): No need to initialize line_height here;
7573 it now defaults to 1.
7574
9018a88e
SM
75752003-05-24 Stefan Monnier <monnier@cs.yale.edu>
7576
7577 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
7578 dropping `down' events.
7579
016bd3c0
AS
75802003-05-24 Andreas Schwab <schwab@suse.de>
7581
7582 * coding.c (find_safe_codings): Fix last change.
7583
4dacadcc
TTN
75842003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
7585
7586 * xfns.c (x_window): Fix typo from 2003-05-21 change.
7587
319830ce
SM
75882003-05-23 Stefan Monnier <monnier@cs.yale.edu>
7589
9018a88e
SM
7590 * xdisp.c (display_mode_element): Increase max depth.
7591 Simplify the error handling code. Use a different error string
7592 for the case where we hit the depth limit.
7593
319830ce
SM
7594 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
7595
7596 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
7597
75982003-05-21 Stefan Monnier <monnier@cs.yale.edu>
7599
7600 * intervals.c (get_local_map): Don't get char-property of previous
7601 point any more: get_pos_property already does it and better.
7602
c67de8ba
DL
76032003-05-21 Dave Love <fx@gnu.org>
7604
7605 [Merged from unicode branch.]
7606
7607 * xfns.c (x_window, x_window): Use use_xim.
7608
7609 * xterm.c (use_xim): Initialize.
7610 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
7611 (x_term_init): Maybe set use_xim.
7612
7613 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
7614
edd3ff1d
JR
76152003-05-21 Jason Rumney <jasonr@gnu.org>
7616
7617 * unexw32.c (_start): Remove _fmode initialization.
7618
7619 * emacs.c (main) [WINDOWSNT]: Move it here.
7620
463f55ee
DL
76212003-05-20 Dave Love <fx@gnu.org>
7622
7623 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
7624
af253914
RS
76252003-05-19 Richard M. Stallman <rms@gnu.org>
7626
7627 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
7628 as value for QCfont attribute.
7629 (realize_default_face): lface should already exist; crash if not.
7630 Specify 0 for FORCE_P when calling set_lface_from_font_name.
7631
7632 * frame.c (Fignore_event): Doc fix.
7633
1d211019
KH
76342003-05-19 Kenichi Handa <handa@m17n.org>
7635
7636 * coding.c (decode_coding_string): Handle post-read-conversion
7637 even if the coding doesn't require decoding.
7638
4dd68254
RS
76392003-05-18 Richard M. Stallman <rms@gnu.org>
7640
7641 * callproc.c (Fcall_process_region): Doc fix.
7642
14d87dc9
SM
76432003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7644
deca5d96
SM
7645 * lread.c (Fload): Print a message if package is obsolete.
7646
14d87dc9
SM
7647 * window.c (Fselect_window): Add optional `norecord' arg.
7648 (select_window_1): Fold into Fselect_window.
7649 (select_window_norecord): New function.
7650 (temp_output_buffer_show): Use it. Preserve current buffer.
7651
7652 * window.h (Fselect_window): Update declaration.
7653
7654 * window.c (delete_window, Fother_window, Fset_window_configuration):
7655 * minibuf.c (read_minibuf):
7656 * macterm.c (x_new_focus_frame):
7657 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
7658 * callint.c (Fcall_interactively):
7659 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
7660
7661 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
7662
78f52183
DK
76632003-05-17 David Kastrup <dak@gnu.org>
7664
7665 * process.c (read_process_output): Back out change from 2003-03-09.
7666
14d87dc9
SM
76672003-05-17 Stefan Monnier <monnier@cs.yale.edu>
7668
7669 * editfns.c (get_pos_property): Don't assume that `object' = nil.
7670
7671 * textprop.c (text_property_stickiness): New arg `buffer'.
7672
7673 * intervals.h (text_property_stickiness): New arg `buffer'.
7674 (get_pos_property): Declare.
7675
7676 * intervals.c (get_local_map): Use get_pos_property, to obey
7677 stickiness and empty overlays.
7678 (create_root_interval, graft_intervals_into_buffer): Use BEG.
7679 (merge_properties, intervals_equal, merge_properties_sticky):
7680 Use XCAR, XCDR.
7681 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
7682
1fd1cc2f
RS
76832003-05-17 Richard M. Stallman <rms@gnu.org>
7684
4f9f637a
RS
7685 * minibuf.c (read_minibuf): If buffer is empty, record the default
7686 in the history.
7687 (Fminibuffer_complete_word): When deleting the overlap, take account
7688 of its real position.
7689
7690 * fns.c (map_char_table): Fix previous change.
7691
1fd1cc2f
RS
7692 * syntax.c (find_defun_start):
7693 When open_paren_in_column_0_is_defun_start,
7694 return beginning of buffer.
7695
7696 * lisp.h (map_char_table): Declare added arg.
7697
7698 * fns.c (map_char_table): New arg TABLE gets the master table.
7699 All calls changed.
7700 Process default and inheritance, resorting to Faref if necessary.
7701
7702 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
7703 (Faccessible_keymaps): Pass new arg to map_char_table.
7704
7705 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
7706
7707 * casetab.c (set_case_table): Pass new arg to map_char_table.
7708
7709 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
7710
7711 * lisp.h (specbinding_func): New typedef.
7712 (struct specbinding): Use specbinding_func, to put the `volatile'
7713 in the right place.
7714
7715 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
7716 to avoid GCC warning.
14d87dc9 7717
b6189c3b 77182003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 7719
14d87dc9 7720 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 7721
35fb885d
SM
77222003-05-15 Stefan Monnier <monnier@cs.yale.edu>
7723
7724 * keyboard.c (apply_modifiers): Don't fill the other cache.
7725
9a274fbd
SM
77262003-05-14 Stefan Monnier <monnier@cs.yale.edu>
7727
c55b5fad
SM
7728 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
7729
9a274fbd
SM
7730 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
7731 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
7732 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
7733 (Fset_window_configuration, Fcurrent_window_configuration)
7734 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
7735 (Fpos_visible_in_window_p, mark_window_cursors_off)
7736 (window_internal_height, window_internal_width, Frecenter)
7737 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
7738 (replace_buffer_in_all_windows, init_window_once, init_window)
7739 (syms_of_window, keys_of_window): Move from lisp.h.
7740 * lisp.h: Move window.c declarations to window.h.
7741
7742 * bytecode.c: Include window.h.
7743 * emacs.c: Include window.h.
7744
14d87dc9 7745 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
7746 (keyremap): Add `parent' field.
7747 (keyremap_step): Use it. Remove `parent' argument.
7748 (read_key_sequence): Setup and use the new `parent' field.
7749
fd93e331
SM
77502003-05-11 Stefan Monnier <monnier@cs.yale.edu>
7751
7752 * keyboard.c (adjust_point_for_property): Ensure termination.
7753
1c4001a1
SM
77542003-05-10 Stefan Monnier <monnier@cs.yale.edu>
7755
7756 * keyboard.c (follow_key): Remove dead variable `did_meta'.
7757 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
7758 duplicated handling of function-key-map and key-translation-map
7759 in read_key_sequence.
7760 (read_key_sequence): Use them.
7761
7762 * keyboard.c (adjust_point_for_property): Try harder to move point
7763 to the non-sticky end of an invisible property.
7764
7765 * xdisp.c (single_display_prop_intangible_p): Make `space' display
7766 property intangible as well.
7767
780379b1
AS
77682003-05-10 Andreas Schwab <schwab@suse.de>
7769
7770 * xmenu.c (single_menu_item): Change last parameter to void* to
7771 avoid warning.
7772
ca2de342
RS
77732003-05-09 Richard M. Stallman <rms@gnu.org>
7774
7775 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
7776 Bind Qinhibit_modification_hooks to t so there will be no GC.
7777 Rename local `tem' to `save_deactivate_mark'.
7778
7779 * eval.c (specpdl_ptr): Declare volatile.
7780 (unbind_to): Copy the whole binding and decrement specpdl_ptr
7781 before doing the work of unbinding it.
7782
7783 * lisp.h (struct specbinding): Declare elements volatile.
7784 (specpdl_ptr): Declare volatile.
7785
7786 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
7787
7788 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
7789 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
7790
347003be
DL
77912003-05-08 Dave Love <fx@gnu.org>
7792
7793 * coding.c (Vlast_coding_system_used): Doc fix.
7794
5adcec23
JR
77952003-05-07 Jason Rumney <jasonr@gnu.org>
7796
7797 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
7798 when system does not support them.
7799
5fe3b8a4
SM
78002003-05-05 Stefan Monnier <monnier@cs.yale.edu>
7801
7802 * fileio.c (Qwrite_region_annotate_functions): New var.
7803 (build_annotations): Use it to process the global part of the hook.
7804 (syms_of_fileio): Init and staticpro it.
7805
7806 * keyboard.c (safe_run_hooks_error): Display a message instead of
7807 silently ignoring the error.
7808
78092003-05-03 Stefan Monnier <monnier@cs.yale.edu>
7810
7811 * keyboard.c (input_available_signal): Mark static.
7812 (menu_bar_items): Use map_keymap.
7813 (menu_bar_one_keymap): Remove.
7814 (menu_bar_item): Adjust arglist (for use in map_keymap).
7815 Properly hide a second binding when not both are keymaps.
7816
7817 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
7818 (single_keymap_panes): Use it and map_keymap.
7819 (single_menu_item): Use skp as well.
7820
7821 * keymap.h (map_keymap_function_t): New type.
7822 (map_keymap): Declare.
7823
7824 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
7825 (map_keymap_call, Fmap_keymap): New functions.
7826 (syms_of_keymap): Defsubr map-keymap.
7827
4b1b4443
JD
78282003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7829
7830 * gtkutil.c (create_dialog, make_widget_for_menu_item)
7831 (make_menu_item, create_menus, xg_update_menu_item): Don't call
7832 ..._with_mnemonic functions for menu items.
7833
1f816871
KH
78342003-05-01 Kenichi Handa <handa@m17n.org>
7835
7836 * coding.c (coding_system_accept_latin_extra_p): Delete this
7837 function.
7838 (find_safe_codings): Pay attention to
7839 the property tranlsation-table-for-encode of each codings.
7840 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
7841
5ed6ba5b
SM
78422003-05-01 Stefan Monnier <monnier@cs.yale.edu>
7843
7844 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
7845
32c06229
SM
78462003-04-30 Stefan Monnier <monnier@cs.yale.edu>
7847
7848 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
7849
7850 * lisp.h (CHECK): Wrap args in parenthesis.
7851 (specbind): Fix doc: symbol = Qnil is not supported any more.
7852
7853 * bytecode.c (Fbyte_code) <unwind-protect>:
7854 Use Fprogn rather than 0 and Qnil.
7855
7856 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7857 `double', and `triple' modifiers as well.
7858
ed3c3314
RS
78592003-04-30 Richard M. Stallman <rms@gnu.org>
7860
7861 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7862
7863 * alloc.c (abort_on_gc): New variable.
7864 (Fgarbage_collect): Abort if abort_on_gc is set.
7865
7866 * lisp.h (abort_on_gc): Add decl.
7867
7868 * eval.c (Fsignal): Clear abort_on_gc.
7869
7870 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 7871 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
7872
7873 * xdisp.c (move_it_vertically_backward): Do the final big else
7874 even if nlines is 0.
7875
7876 * xdisp.c (redisplay_internal): Finish the per-frame loop
7877 even if redisplay is suspended by input.
7878
0b325c12
AC
78792003-04-24 Andrew Choi <akochoi@shaw.ca>
7880
7881 * macterm.c (x_list_fonts): Return all fonts that match if
7882 maxnames = -1.
7883
4e837cd0
KH
78842003-04-25 Kenichi Handa <handa@m17n.org>
7885
7886 * syntax.c (skip_chars): Fix previous change.
7887
9af7511a
KH
78882003-04-24 Kenichi Handa <handa@m17n.org>
7889
7890 * syntax.c (skip_chars): Make the code faster by using the common
7891 technique of *p, *stop, and *endp.
7892
e3b2c21f
JD
78932003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7894
7895 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 7896 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
7897 being updated.
7898
32c06229
SM
78992003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7900
7901 * eval.c (Fapply): Undo last change and add a comment about why.
7902
c6464167
MB
79032003-04-18 Miles Bader <miles@gnu.org>
7904
7905 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7906 pickier PARSE_MULTIBYTE_SEQ.
7907
e509f168
SM
79082003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7909
7910 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7911 Use XCDR, XCAR, CONSP.
7912 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7913 (Fapply): Remove unnecessary GCPRO.
7914
7915 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7916
7917 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7918
7919 * buffer.h: Don't hardcode BEG==1.
7920
7921 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7922
5ceea398
RS
79232003-04-16 Richard M. Stallman <rms@gnu.org>
7924
7925 * xdisp.c (try_window, try_window_reusing_current_matrix):
7926 When at end of window, set window_end_pos to Z-ZV.
7927
7928 * buffer.c (Foverlay_recenter): Doc fix.
7929
e509f168
SM
79302003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7931
7932 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7933
d243e605
AC
79342003-04-14 Andrew Choi <akochoi@shaw.ca>
7935
7936 * macterm.c (mac_check_for_quit_char): Don't check more often than
7937 once a second.
7938
6901b111
SM
79392003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7940
7941 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7942 specially, so that they can't hide an implicit switch-frame event.
7943 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7944 (head_table): Use switch-frame as event_kind for select-window.
7945 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7946
7947 * editfns.c (Fformat): Lisp_Object/int mixup.
7948 (format2): Remove unused var numargs.
7949
e301806f 79502003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7951
6901b111 7952 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7953 (Qafter_insert_file_set_coding): New variable.
7954 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7955 for after-insert-file-adjust-coding-function.
7956 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7957 instead of Vafter_insert_file_adjust_coding_function.
7958
38914424
KH
79592003-04-11 Kenichi Handa <handa@m17n.org>
7960
7961 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7962
7963 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7964 string. Callers changed.
7965
79662003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7967
6901b111 7968 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7969 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7970 (Finsert_file_contents):
7971 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7972 decode-format.
7973
f979dc05
JD
79742003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7975
7976 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7977 get GtkAdjustment as widget now is a GtkRange.
7978
7979 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7980 GtkRange to avoid memory leak.
7981
f8c6b4c2 79822003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7983
50ebc53d
KH
7984 * xfaces.c (Vface_font_rescale_alist): New variable.
7985 (struct font_name): New member rescale_ratio.
7986 (font_rescale_ratio): New function.
6901b111 7987 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7988 (better_font_p): On comparing point sized, pay attention to
7989 recale_ratio member of fonts.
7990 (build_scalable_font_name): Reflect font->rescale_ratio in the
7991 font name.
6901b111 7992 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7993
cb98871c
KH
7994 * lread.c (read1): Before calling index, check if the 2nd
7995 arguemnt is in ASCII range.
7996
4773b8ca
RS
79972003-04-08 Richard M. Stallman <rms@gnu.org>
7998
b0ada147
RS
7999 * fileio.c (Ffile_symlink_p): Doc fix.
8000
8001 * editfns.c (Fformat): Translate positions of text properties
8002 in the format string to apply them to the result.
8003
4773b8ca
RS
8004 * fileio.c (Finsert_file_contents): Doc fix.
8005 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
8006
80072003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 8008
4773b8ca
RS
8009 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
8010
e8f25745 80112003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 8012
e8f25745
ST
8013 * mac.c (init_mac_osx_environment): Switch libexec and bin so
8014 that self-contained application finds libexec files.
8015
f8c6b4c2 80162003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 8017
6901b111
SM
8018 * coding.c (code_convert_region_unwind):
8019 Set Vlast_coding_system_used to the argument.
2310d84c
KH
8020 (code_convert_region): If post-read-conversion function changed
8021 the value of last-coding-sytem, keep the new value in
8022 coding->symbol so that it won't be overridden.
8023 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
8024 (coding_system_accept_latin_extra_p): New function.
8025 (find_safe_codings): Pay attention to characters registered in
8026 latin-extra-code-table.
2310d84c 8027
39c9a034
TTN
80282003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
8029
8030 * Makefile.in (md5.o): Add missing dependency info.
8031
eb67c5d6
RS
80322003-04-06 Richard M. Stallman <rms@gnu.org>
8033
8034 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
8035
8036 * marker.c (verify_bytepos): New function.
8037
8038 * intervals.c (set_intervals_multibyte_1): When becoming
8039 multibyte, adjust right and left child sizes to a whole set of
8040 characters. If an interval gets zero total-length, delete it.
8041 If an interval consists of just its children, delete one of them.
8042
8043 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
8044 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 8045
eb67c5d6
RS
8046 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
8047 All calls deleted.
8048 (lisp_malloc): Do the work here directly.
8049
b1f81fc5
JB
80502003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
8051
8052 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
8053 char tables.
8054
80552003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
8056
8057 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
8058 destructively change "%S" to "%s".
8059
774666fb
MB
80602003-04-03 Miles Bader <miles@gnu.org>
8061
8062 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
8063 always set.
8064
19c37f01
DL
80652003-04-01 Dave Love <fx@gnu.org>
8066
8067 * xfns.c (xpm_lookup_color): Grok "opaque".
8068
2f4b24c3
AC
80692003-03-31 Andrew Choi <akochoi@shaw.ca>
8070
8071 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
8072 parent window ID.
8073
8074 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
8075
8076 * macterm.h (struct mac_output): Define x_pixels_diff and
8077 y_pixels_diff.
b1f81fc5 8078
9443fcf6
JB
80792003-03-31 Juanma Barranquero <lektu@terra.es>
8080
8081 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
8082 blockinput.h and files included from it.
8083
e072891b
KS
80842003-03-31 Kim F. Storm <storm@cua.dk>
8085
8086 The following changes consolidates the common code related to
8087 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
8088 files into frame.c.
9443fcf6 8089
e072891b
KS
8090 * frame.c: Include blockinput.h.
8091 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
8092 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
8093 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
8094 related vars here.
8095 (struct frame_parm_table, frame_parms): New table for describing
8096 frame parameters and their associated Q-variable.
8097 The order of the parameters corresponds to the sequence of the
8098 frame_parm_handlers table in redisplay_interface.
8099 (x_fullscreen_move, x_set_frame_parameters)
8100 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
8101 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
8102 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8103 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
8104 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
8105 Generic functions for processing of frame parameters.
8106 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
8107 (display_x_get_resource, x_get_resource_string): Functions for
8108 generic access to X resources.
8109 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8110 (x_default_parameter, Fx_parse_geometry): Functions for generic
8111 access to frame parameters.
6901b111
SM
8112 (x_figure_window_size): Generic calculation of frame size.
8113 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
8114 (syms_of_frame): Intern and staticpro frame parameter variables.
8115 Defvar_lisp Vx_resource_class and Vx_resource_name here.
8116 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 8117
e072891b
KS
8118 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
8119 parameter related vars defined in frame.c.
8120 (EMACS_CLASS): Define here.
8121 (enum FULLSCREEN_*): Define here.
8122 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
8123 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
8124 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
8125 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
8126 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
8127 (x_set_visibility, x_set_autoraise, x_set_autolower)
8128 (x_set_unsplittable, x_set_vertical_scroll_bars)
8129 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
8130 (x_figure_window_size): Add prototypes.
8131
8132 * dispextern.h (frame_parm_handler): New typedef.
8133 (struct redisplay_interface): New member frame_parm_handlers.
8134 (enum resource_types): Move declaration here.
8135 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
8136 (x_default_parameter): Add prototypes.
8137
8138 * window.c: Remove extern decl for frame parameter vars.
8139 (change_window_heights): New generic function;
8140 replaces x_change_window_heights. All users changed.
8141
8142 * window.h (change_window_heights): Add prototype.
8143
8144 * xfaces.c: Remove extern decl for frame parameter vars.
8145
8146 * xterm.h (EMACS_CLASS): Remove. Use generic define.
8147 (struct w32_display_info): Fix type of xrdb member.
8148 (enum FULLSCREEN_*): Remove.
8149 Remove prototypes for generic functions (in frame.h).
8150
8151 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8152 parameters now defined in frame.h and frame.c.
f63fd14e 8153 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8154 (enum x_frame_parms): Remove (bogus, unused enum).
8155 (check_x_display_info): Make non-static (for frame.c).
8156 (struct x_frame_parm_table, x_frame_parms): Remove.
8157 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8158 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8159 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8160 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8161 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8162 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8163 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8164 Remove. Use generic functions instead.
8165 (enum resource_types): Remove.
8166 (x_set_scroll_bar_default_width): New global function (for frame.c).
8167 (Fx_create_frame): Depend on x_figure_window_size to add space for
8168 toolbar and setup size_hint_flags.
8169 (x_frame_parm_handlers): New table for redisplay_interface.
8170 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 8171
e072891b 8172 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 8173 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
8174 (x_redisplay_interface): Add x_frame_parm_handlers member.
8175
8176 * w32gui.h (XrmDatabase): New (dummy) typedef.
8177
8178 * w32term.h (EMACS_CLASS): Remove. Use generic define.
8179 (struct w32_display_info): Fix type of xrdb member.
8180 (enum FULLSCREEN_*): Remove.
8181 (x_fullscreen_adjust): Remove prototype.
8182
8183 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8184 parameters now defined in frame.h and frame.c.
f63fd14e 8185 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8186 (enum x_frame_parms): Remove (bogus, unused enum).
8187 (check_x_display_info): Make non-static (for frame.c).
8188 (struct x_frame_parm_table, x_frame_parms): Remove.
8189 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8190 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8191 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8192 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8193 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8194 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8195 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8196 Remove. Use generic functions instead.
8197 (enum resource_types): Remove.
8198 (x_set_scroll_bar_default_width): New global function (for frame.c).
8199 (Fx_create_frame): Depend on x_figure_window_size to add space for
8200 toolbar and setup size_hint_flags.
8201 (w32_frame_parm_handlers): New table for redisplay_interface.
8202 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 8203
e072891b
KS
8204 * w32term.c: Remove unnecessary extern declarations.
8205 (x_fullscreen_adjust): Remove. Use generic instead.
8206 (x_redisplay_interface): Add w32_frame_parm_handlers member.
8207
8208 * w32reg.c (x_get_string_resource): Use XrmDatabase.
8209
8210 * macgui.h (XrmDatabase): New (dummy) typedef.
8211
8212 * macterm.h (EMACS_CLASS): Remove.
8213 (struct mac_display_info): Add xrdb member.
8214 (struct mac_output): Add want_fullscreen member.
8215
8216 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
8217 parameters now defined in frame.h and frame.c.
f63fd14e 8218 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
8219 (check_x_display_info): Make non-static (for frame.c).
8220 (struct x_frame_parm_table, x_frame_parms): Remove.
8221 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
8222 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
8223 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
8224 (x_change_window_heights, x_set_autoraise, x_set_autolower)
8225 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
8226 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
8227 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
8228 Remove. Use generic functions instead.
8229 (enum resource_types): Remove.
8230 (x_set_scroll_bar_default_width): New global function (for frame.c).
8231 (mac_frame_parm_handlers): New table for redisplay_interface.
8232 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 8233
e072891b
KS
8234 * macterm.c: Remove unnecessary extern declarations.
8235 (x_redisplay_interface): Add mac_frame_parm_handlers member.
8236
3e6a560b
KS
8237 * Makefile.in (frame.o): Add dependency on blockinput.h and files
8238 included from it (atimer.h and systime.h).
8239
7b7b454e
AS
82402003-03-30 Andreas Schwab <schwab@suse.de>
8241
8242 * xdisp.c (x_insert_glyphs): Fix swapped width and height
8243 parameters for shift_glyphs_for_insert.
8244
8245 * macterm.c (x_redisplay_interface): Add missing entry for
8246 draw_vertical_window_border.
8247
beb402de
KG
82482003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8249
8250 * fileio.c (Fexpand_file_name): In the no-handler case, after
8251 expanding, look again for a handler and invoke it. This is needed
8252 for filenames like "/foo/../user@host:/bar/../baz" -- the first
8253 expansion produces "/user@host:/bar/../baz" which needs to be
8254 expanded again for the finame result "/user@host:/baz".
8255
b676f356
JD
82562003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8257
8258 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
8259 of area to be redrawn for better performance.
8260
3c671a56
SM
82612003-03-28 Stefan Monnier <monnier@cs.yale.edu>
8262
8263 * xterm.c (take_vertical_position_into_account): Remove.
8264 (xt_action_hook): Call set_vertical_scroll_bar if needed.
8265 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
8266 (xm_scroll_callback, x_create_toolkit_scroll_bar)
8267 (x_set_toolkit_scroll_bar_thumb): Simplify.
8268 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
8269 (XTread_socket): Remove unused var.
8270 (x_make_frame_invisible): Replace goto with else.
8271
8272 * xdisp.c (set_vertical_scroll_bar): New fun.
8273 (redisplay_window): Use it.
8274
84f2e615
RS
82752003-03-26 Richard M. Stallman <rms@gnu.org>
8276
8277 * xdisp.c (update_tool_bar): Recompute tool bar if
8278 update_mode_lines is set. Set w->update_mode_line
8279 only if the tool bar contents actually change.
8280 (update_menu_bar): Undo previous change.
8281
70b6104c
JD
82822003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8283
5fd6f727
JD
8284 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
8285 (xg_frame_set_char_size): Calculate scroll bar width before frame
8286 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
8287 (xg_separator_p): Check for all documented separator types.
8288 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
8289 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
8290
70b6104c
JD
8291 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
8292 so tool bar gets updated.
8293
d9b36d19
SM
82942003-03-26 Stefan Monnier <monnier@cs.yale.edu>
8295
8296 * data.c (store_symval_forwarding): Re-instate part of the code
8297 that was deleted with too much enthusiasm.
8298
82992003-03-25 Stefan Monnier <monnier@cs.yale.edu>
8300
8301 * data.c (store_symval_forwarding): Delete special read-only
8302 hack for type == -1, since we now use ->constant instead.
8303 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
8304
8305 * buffer.c (overlays_in): Declare static.
8306 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
8307 `constant' field rather than the variable's `type' field.
8308
365fa1b3
AC
83092003-03-24 Andrew Choi <akochoi@shaw.ca>
8310
8311 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
8312
8313 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
8314
8315 * fns.c [MAC_OSX]: Do not redefine vector.
8316
8317 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
8318
8319 * macgui.h: Remove definition of No_Cursor.
8320
d9b36d19 8321 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
8322
8323 * xdisp.c: Define No_Cursor.
8324 (x_write_glyphs, notice_overwritten_cursor)
8325 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
8326 (note_mouse_highlight): Remove Mac-specific code.
8327 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 8328
c0bcce6f
JPW
83292003-03-24 John Paul Wallington <jpw@gnu.org>
8330
8331 * xdisp.c (redisplay_window): If mini window's buffer is not
8332 empty, then redisplay it like other windows.
8333
a526b96c
KS
83342003-03-23 Kim F. Storm <storm@cua.dk>
8335
8336 * w32term.c (w32_draw_window_cursor): Fix last change.
8337
37ab321e
KH
83382003-03-23 Kenichi Handa <handa@m17n.org>
8339
a526b96c
KS
8340 * alloc.c (make_string_from_bytes, make_specified_string):
8341 Add `const' for the arg CONTENTS.
37ab321e
KH
8342
8343 * lisp.h (make_string_from_bytes, make_specified_string):
8344 Prototypes adjusted.
8345
7863d625
JD
83462003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8347
a526b96c 8348 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 8349
7863d625
JD
8350 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
8351 (XG_SB_RANGE): New define.
8352
8353 * gtkutil.c (xg_fixed_handle_expose): New function.
8354 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
8355 expose events.
8356 (xg_update_scrollbar_pos): Take two more arguments, left and width
8357 of scroll bar including borders.
8358 Clear left and right part outside scroll bar separately as some
8359 themes have bars that are not an even number of pixels.
d9b36d19 8360 Don't set reallocate_redraws, don't call
7863d625
JD
8361 gdk_window_process_all_updates.
8362 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
8363 so no need to change it. Calculate size and value with XG_SB_RANGE.
8364
d9b36d19
SM
8365 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
8366 Pass left and width of scroll bar including borders to
7863d625
JD
8367 xg_update_scrollbar_pos.
8368
af0ad939
TTN
83692003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
8370
8371 * Makefile.in: Make sure space precedes end-of-line backslashes.
8372
b22139fd
KS
83732003-03-22 Kim F. Storm <storm@cua.dk>
8374
8375 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
8376 Add generic versions here. Remove system specific versions
8377 defined elsewhere.
8378
8379 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
8380 Add prototypes.
8381
6e6410cf
KS
8382 * xterm.h (STORE_NATIVE_RECT): New macro.
8383
5c9cc435
KS
83842003-03-21 Kim F. Storm <storm@cua.dk>
8385
00c64fab
SM
8386 * xdisp.c (get_glyph_string_clip_rect):
8387 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
8388
8389 * dispextern.h (struct redisplay_interface): Add active_p
8390 argument to draw_window_cursor member. All uses changed.
8391
acd37560
KS
83922003-03-21 Kim F. Storm <storm@cua.dk>
8393
8394 The following changes consolidate code related to writing and
8395 inserting glyphs, exposing frame, the tool bar, the mouse face,
8396 the output cursor, and help echo from xterm.c, w32term.c and
8397 macterm.c into xdisp.c. It also generalizes the use of the
8398 window_part enum instead of using numeric values throughout.
af0ad939 8399
acd37560
KS
8400 * xdisp.c: Consolidate gui-independent code here.
8401 Include keymap.h.
8402 (Qhelp_echo): Import.
8403 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
8404 (help_echo_string, help_echo_window, help_echo_object)
8405 (previous_help_echo_string, help_echo_pos): Declare here.
8406 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
8407 (estimate_mode_line_height): Define here. Handle windowing
8408 systems directly (without using estimate_mode_line_height_hook).
8409 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
8410 (update_window_cursor, update_cursor_in_window_tree)
8411 (fast_find_position, fast_find_string_pos)
8412 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
8413 (expose_area, expose_line, expose_overlaps, expose_window)
8414 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
8415 declared static as they are only used locally in xdisp.c.
8416 (draw_glyphs): Rename from x_draw_glyphs and make static.
8417 (tool_bar_item_info, notice_overwritten_cursor): Make static.
8418 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8419 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 8420 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
8421 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8422 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
8423 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
8424 (note_mouse_highlight, x_clear_window_mouse_face)
8425 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
8426 (x_intersect_rectangles): New generic functions for use by xdisp.c
8427 and GUI front-ends.
8428 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
8429 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
8430
8431 * dispextern.h (Display_Info): Generic typedef for *_display_info.
8432 (NativeRectangle): Generic typedef for rectangle type.
8433 (enum window_part): Move here from window.c.
8434 (struct redisplay_interface): New members flush_display_optional,
8435 define_frame_cursor, clear_frame_area, draw_window_cursor,
8436 draw_vertical_window_border, shift_glyphs_for_insert.
8437 Rename member clear_mouse_face to clear_window_mouse_face.
8438 (estimate_mode_line_height_hook): Remove hook.
8439 (auto_raise_tool_bar_buttons_p): Don't declare extern.
8440 (tool_bar_item_info): Remove prototype.
8441 (help_echo_string, help_echo_window, help_echo_object)
8442 (previous_help_echo_string, help_echo_pos)
8443 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
8444 (x_stretch_cursor_p, output_cursor): Declare extern.
8445 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
8446 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
8447 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
8448 (display_and_set_cursor, set_output_cursor, x_cursor_to)
8449 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
8450 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
8451 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
8452 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
8453 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
8454 Add prototypes.
8455 (mode_line_string, marginal_area_string): Fix prototypes.
8456
8457 * window.c (enum window_part): Move to dispextern.h.
8458 (coordinates_in_window): Use enum window_part member names
8459 instead of numbers to describe return value.
8460 (struct check_window_data): Change part member to window_part.
8461 (check_window_containing): Return window_part unaltered.
8462 (window_from_coordinates): Change part arg from int to enum
8463 window_part. Allow part arg to be null. All users changed.
8464
8465 * window.h (window_from_coordinates): Fix prototype.
8466
8467 * term.c (estimate_mode_line_height): Move to xdisp.c.
8468
8469 * keyboard.c (make_lispy_event): Use enum window_part.
8470
8471 * dispnew.c (mode_line_string, marginal_area_string): Use enum
8472 window_part instead of int in arg list. Users changed.
8473
8474 * xterm.h (No_Cursor): Declare as None for X.
8475 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 8476
acd37560
KS
8477 * xterm.c: Remove consolidated defines and code.
8478 (BETWEEN): Remove unused macro.
8479 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
8480 (x_define_frame_cursor, x_clear_frame_area)
8481 (x_draw_window_cursor): New X-specific functions for RIF.
8482 (x_redisplay_interface): Add new members.
8483
8484 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
8485
8486 * w32term.h (struct w32_output): Remove cross_cursor member.
8487
8488 * w32term.c: Remove consolidated defines and code.
8489 (BETWEEN): Remove unused macro.
8490 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
8491 (w32_define_frame_cursor, w32_clear_frame_area)
8492 (w32_draw_window_cursor): New W32-specific functions for RIF.
8493 (w32_redisplay_interface): Add new members.
8494
a64387ee 8495 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
8496 (XRectangle): Add X compatible rectangle type.
8497 (NativeRectangle): Declare as RECT for W32.
8498 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8499
8500 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
8501
8502 * w32console.c: Remove consolidated defines and code.
af0ad939 8503
acd37560
KS
8504 * msdos.h (Display_Info): Add generic typedef.
8505
8506 * msdos.c: Remove consolidated defines and code.
8507 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
8508
8509 * macterm.h (struct mac_output): Replace member cross_cursor by
8510 hand_cursor.
8511 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
8512
8513 * macterm.c: Remove consolidated defines and code.
8514 (BETWEEN): Remove unused macro.
8515 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
8516 (mac_define_frame_cursor, mac_clear_frame_area)
8517 (mac_draw_window_cursor): New Mac-specific functions for RIF.
8518 (x_redisplay_interface): Add new members.
8519
8520 * macgui.h (No_Cursor): Define as 0 for Mac.
8521 (XRectangle): Add X compatible rectangle type.
8522 (NativeRectangle): Declare as Rect for Mac.
8523 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
8524
204ccab1
KS
8525 * macfns.c (x_set_mouse_color): Setup hand_cursor.
8526 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 8527
9443fcf6 8528 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
8529 included from it. Add dependency on keymap.h.
8530
8531 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
8532
8ba01a70 85332003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
8534
8535 * fileio.c (Fexpand_file_name): Fix previous change.
8536
8ba01a70 85372003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
8538
8539 * fileio.c (Ffile_name_directory): Reconstruct file name by
8540 make_specified_string.
8541 (Ffile_name_nondirectory, Ffile_name_as_directory)
8542 (Fdirectory_file_name, Fexpand_file_name)
8543 (Fsubstitute_in_file_name): Likewise.
8544 (Fread_file_name): Compare decoded homedir with DIR and
8545 DEFAULT_FILENAME.
8546
8547 * alloc.c (make_specified_string): If NCHARS is negative, count
8548 the number of characters.
8549
19536747
JD
85502003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8551
de38ae5a
JD
8552 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
8553 all widgets.
8554
19536747
JD
8555 * gtkutil.h: Removed xg_ignore_next_thumb.
8556
37ab321e 85572003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
8558
8559 * coding.c (Vchar_coding_system_table): Remove this variable.
8560 (Vcoding_system_safe_chars): New variable.
8561 (intersection): Remove this function.
8562 (find_safe_codings): Don't use Vchar_coding_system_table, but try
8563 all codings in SAFE_CODINGS.
00c64fab 8564 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
8565 find_safe_codings. Get generic coding systems from
8566 Vcoding_system_safe_chars.
8567 (Fdefine_coding_system_internal): New function.
8568 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
8569 Initialize and staticpro Vcoding_system_safe_chars.
8570
17097258
JD
85712003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8572
2a2071c3
JD
8573 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
8574 equal old values before updating.
8575
17097258
JD
8576 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
8577
8578 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
8579
85802003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8581
8582 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
8583 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
8584 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
8585 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
8586 (xg_create_scroll_bar): Pass bar to button event callback.
8587 (xg_find_top_left_in_fixed): New function.
8588 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
8589 whole scroll bar area. Get old position with
8590 xg_find_top_left_in_fixed, calculate and only clear needed areas.
8591 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
8592 dragging is in progress. Calculate whole as for Motif.
8593 Remove code that saved last values. Call gtk_range functions to
8594 set scroll bar sizes.
8595
8596 * gtkutil.h: Removed xg_ignore_next_thumb.
8597
8cb9dfbf
JB
85982003-03-17 Juanma Barranquero <lektu@terra.es>
8599
8600 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
8601 and files included from it.
8602
00c64fab
SM
86032003-03-18 Stefan Monnier <monnier@cs.yale.edu>
8604
8605 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
8606 multiple occurrences of the same keymap under different prefixes.
8607 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
8608
c45bb3b2
JR
86092003-03-16 Jason Rumney <jasonr@gnu.org>
8610
8611 * w32gui.h: Use HDC for Display.
8612
8613 * w32term.c (w32_encode_char): Prevent double-byte chars from
8614 crashing Emacs.
8615
8616 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
8617 as binary.
8618
2a6d0874
JB
86192003-03-16 Juanma Barranquero <lektu@terra.es>
8620
8621 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
8622
03eb5fab
KS
86232003-03-16 Kim F. Storm <storm@cua.dk>
8624
8625 The following changes consolidate some of the gui-independent
8626 parts of the processing and drawing of "glyph strings" from
8627 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 8628
03eb5fab
KS
8629 * dispextern.h (struct glyph): Reduce face_id member from 22 to
8630 21 bits (this reduces number of faces from 4M to 2M).
8631 Replace W32 specific w32_font_type member (2 bits) by generic
8632 font_type member (3 bits) for portability.
8633 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
8634 (enum draw_glyphs_face): Define here.
8635 (struct glyph_string): Define here. Merge W32 and X versions.
8636 (struct redisplay_interface): New members per_char_metric,
8637 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
8638 (VCENTER_BASELINE_OFFSET): Define here.
8639 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
8640 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
8641
8642 * xdisp.c: Consolidate gui-independent "glyph string" code here.
8643 (dump_glyph_string): Moved here.
8644 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
8645 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
8646 (fill_composite_glyph_string, fill_glyph_string)
8647 (fill_image_glyph_string, fill_stretch_glyph_string)
8648 (left_overwritten, left_overwriting, right_overwritten)
8649 (right_overwriting, get_char_face_and_encoding)
8650 (set_glyph_string_background_width, compute_overhangs_and_x)
8651 (append_glyph, append_composite_glyph, produce_image_glyph)
8652 (take_vertical_position_into_account, append_stretch_glyph)
8653 (produce_stretch_glyph): New generic functions (based on X version).
8654 Call platform specific functions through rif.
8655 (INIT_GLYPH_STRING): New macro, hides W32 details.
8656 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
8657 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
8658 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
8659 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
8660 (notice_overwritten_cursor):
8661 Generic functions exported to platform modules. Users changed.
8662
8663 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
8664 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
8665 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 8666 New macros for consolidated code.
2a6d0874 8667
03eb5fab
KS
8668 * xterm.c: Remove consolidated defines and code.
8669 (x_per_char_metric, x_encode_char)
8670 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
8671 (x_redisplay_interface): Add new members.
8672
8673 * w32gui.h (Display): Add dummy typedef for consolidation.
8674 (XChar2b): Define alias for wchar_t for consolidation.
8675 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8676
8677 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 8678 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
8679 New macros for consolidation.
8680
fad49844 8681 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
8682 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
8683 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
8684 (w32_per_char_metric): Change font_type arg to int for RIF.
8685 (w32_encode_char): Return int according to RIF requirements.
8686 (w32_compute_glyph_string_overhangs): Adapt to RIF.
8687 (w32_get_glyph_overhangs): New function for RIF. Uses generic
8688 x_get_glyph_overhangs.
8689 (w32_redisplay_interface): Add new members.
8690
8691 * macgui.h (XChar2b): Move typedef here for consolidation.
8692 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
8693
8694 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
8695 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
8696 consolidation.
8697
8698 * macterm.c: Remove consolidated defines and code.
8699 (mac_per_char_metric): New function for RIF.
00c64fab 8700 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
8701 (mac_compute_glyph_string_overhangs): Adapt for RIF.
8702 (x_redisplay_interface): Add new members.
8703
00c64fab
SM
87042003-03-15 Stefan Monnier <monnier@cs.yale.edu>
8705
8706 * keymap.c (Vmenu_events): New var.
8707 (syms_of_keymap): Initialize it.
8708 (where_is_internal): Check more carefully what is a menu event.
8709
225c7a07
RS
87102003-03-14 Richard M. Stallman <rms@gnu.org>
8711
8712 * lread.c (read1): After #!, exit loop on eof.
8713
cea9be54
JD
87142003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8715
9ea0e54d
JD
8716 * gtkutil.h: Add declaration for xg_frame_cleared.
8717
0cb35f4e
JD
8718 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
8719
cea9be54
JD
8720 * gtkutil.c (struct xg_last_sb_pos): New structure.
8721 (handle_fixed_child): New function.
8722 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
8723 and force a redraw on them.
8724 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
8725 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
8726 so we can avoid unneeded redraws.
8727 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
8728 and force a redraw on the scroll bar.
8729 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
8730 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 8731 (xg_frame_cleared): New function.
cea9be54 8732
20b853f3
KH
87332003-03-13 Kenichi Handa <handa@m17n.org>
8734
8735 * coding.c (Fdetect_coding_region): Fix docstring.
8736 (Fdetect_coding_string): Fix docstring.
8737
7a555aff
AS
87382003-03-13 Andreas Schwab <schwab@suse.de>
8739
25cc0080
AS
8740 * gtkutil.c: Add prototype for create_menus.
8741
30225431
AS
8742 * data.c (long_to_cons): Fix type of top.
8743
8744 * xselect.c (selection_data_to_lisp_data): Use int instead of
8745 long for an integer of size 4.
8746
7a555aff 8747 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 8748 (xg_tool_bar_help_callback): Likewise.
7a555aff 8749
a3e4741f
AS
87502003-03-12 Andreas Schwab <schwab@suse.de>
8751
8752 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
8753
9668be7c
KS
87542003-03-12 Kim F. Storm <storm@cua.dk>
8755
03eb5fab 8756 The following changes consolidate the fringe handling from
9668be7c 8757 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 8758
9668be7c
KS
8759 * xdisp.c: Consolidate fringe handling code here.
8760 (left_bits, right_bits, continued_bits, continuation_bits)
8761 (ov_bits, zv_bits): Define fringe bitmaps.
8762 (fringe_bitmaps): New array holding fringe bitmaps.
8763 (draw_fringe_bitmap): Draw a specific bitmap; call display
8764 specific drawing routine via rif->draw_fringe_bitmap.
8765 (draw_row_fringe_bitmaps): Generic replacement for
8766 x_draw_row_fringe_bitmaps; all callers changed.
8767 (compute_fringe_widths): Generic replacement for
8768 x_compute_fringe_widths; all callers changed.
8769
8770 * dispextern.h (enum fringe_bitmap_type): Define here.
8771 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
8772 (fringe_bitmaps): Declare extern.
8773 (struct redisplay_interface): New member draw_fringe_bitmap.
8774 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
8775
8776 * xterm.c: Remove generic fringe code.
8777 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8778 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8779
8780 * w32term.c: Remove generic fringe code.
8781 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
8782 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 8783
9668be7c
KS
8784 * macterm.c: Remove generic fringe code.
8785 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
8786 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8787
00a88f32
SM
87882003-03-11 Stefan Monnier <monnier@cs.yale.edu>
8789
8790 * print.c (Fprin1_to_string): Return unibyte string if possible.
8791
1d1de695
DK
87922003-03-09 David Kastrup <dak@gnu.org>
8793
8794 * process.c (read_process_output): We have allocated enough space
8795 for readmax and carryover, so actually use the alloted space.
8796
257f40f2
JD
87972003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8798
8799 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
8800 toolkit scrollbar click.
8801
8802 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
8803 for USE_GTK.
8804 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
8805 also.
8806 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
8807 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 8808
78819ebb 8809 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
8810
8811 * gtkutil.c (xg_get_scroll_id_for_window): New function.
8812 (xg_tool_bar_item_expose_callback): New function.
8813 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
8814 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
8815 on the tool bar widget.
8816 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
8817 to expose on the tool bar item widgets.
8818
15213141
JD
88192003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8820
26b74a0b 8821 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 8822 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
8823 deleted from the image cache).
8824
15213141
JD
8825 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
8826 the event isn't for a frame (i.e. for dialogs).
8827
20b853f3 88282003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
8829
8830 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
8831 composition components reaches the limit, terminate composing.
8832 (COMPOSITION_OK): New macro.
00a88f32 8833 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
8834 composition is found.
8835 (coding_restore_composition): Adjust the number of composition
8836 components if it is not sane.
8837
c9029fe5
JB
88382003-03-06 Juanma Barranquero <lektu@terra.es>
8839
8840 * w32term.h (struct w32_display_info): Add xrdb member to support
8841 passing resources via -xrm on Windows.
8842
8843 * w32term.c (w32_make_rdb): New function.
8844 (w32_term_init): Use it to initialize xrdb member of w32_display_info
8845 struct. Delete leftover code.
8846
8847 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
8848 for resources passed on the command line.
8849
8850 * w32reg.c (w32_get_rdb_resource): New function.
8851 (x_get_string_resource): Use it, so resources passed with -xrm
8852 supercede the ones in the registry.
8853
9d00001f
JD
88542003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8855
8856 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8857 instead of x_top_window_to_frame.
8858
ca2417b9
JD
88592003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8860
8861 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8862 when restarting Emacs.
8863
5b20caf0
RS
88642003-03-03 Richard M. Stallman <rms@gnu.org>
8865
8866 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8867 to run kill-buffer-query-functions.
8868 (Qkill_buffer_query_functions): New var.
8869 (syms_of_buffer): Init and staticpro it.
8870
58e91b77
JD
88712003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8872
8873 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8874
932357b4
KS
88752003-02-25 Kim F. Storm <storm@cua.dk>
8876
8877 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8878 If centering point failed to make whole line visible and vscroll
8879 is non-zero, disable vscroll and try centering point again.
8880
8881 * lread.c (read1): Accept `single space' syntax like (? x).
8882
bb8db7e1
JD
88832003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8884
8885 * keyboard.c (cancel_hourglass_unwind): Surround with
8886 #ifdef HAVE_X_WINDOWS
8887
47d77aab
KH
88882003-02-25 Kenichi Handa <handa@m17n.org>
8889
8890 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8891 process only when "subprocesses" is defined.
8892
6a097c0c
SM
88932003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8894
8895 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8896
0b063c27
JB
88972003-02-24 Juanma Barranquero <lektu@terra.es>
8898
d1135afc
JB
8899 * callint.c (fix_command): Declare as static void and move before
8900 Fcall_interactively.
8901
0b063c27
JB
8902 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8903 (syms_of_xdisp): Don't initialize Qwhen.
8904
0af912f0
JD
89052003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8906
8907 * keyboard.c (cancel_hourglass_unwind): New function.
8908 (command_loop_1): Cancel hourglass with unwind-protect.
8909
120d0a23
RS
89102003-02-23 Richard M. Stallman <rms@gnu.org>
8911
8912 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8913 Detect (when ... (region-beginning)) etc.
8914 (Fcall_interactively): Call fix_command.
8915 (Qif, Qwhen): New variables.
8916 (syms_of_callint): Init and staticpro them.
0b063c27 8917
120d0a23
RS
8918 * regex.c (print_partial_compiled_pattern): Output to stderr.
8919
4ece81a6
KG
89202003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8921
8922 * dired.c (directory_files_internal): Don't expand directory.
8923 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8924 instead. From Lars Hansen <larsh@math.ku.dk>.
8925
e52bd6b7
SM
89262003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8927
8928 * fns.c (string_to_multibyte): Remove unused var i.
8929 (Flanginfo): Fix int/Lisp_Object mixup.
8930 (void_call2): New fun.
8931 (Fmap_char_table): Use it in place of call2.
8932
8933 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8934
8935 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8936
8937 * keymap.c (copy_keymap_1): Make it static.
8938
8939 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8940
c33ef7c4
JB
89412003-02-22 David Ponce <david@dponce.com>
8942
8943 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8944
16782258
JD
89452003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8946
8947 * process.h: Removed subtty field from struct Lisp_Process.
8948
8949 * process.c (create_process): Remove setting of subtty.
8950 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8951 (Fprocess_running_child_p, process_send_signal):
8952 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8953 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8954
3abeca61
KG
89552003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8956
8957 * keymap.c (Fdefine_key): Doc fix.
8958
92a8ce63
JB
89592003-02-21 Juanma Barranquero <lektu@terra.es>
8960
8961 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8962
8963 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8964 POLLING_PROBLEM_IN_SELECT.
8965
8966 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8967 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8968
8969 * s/hpux10-20.h: New file.
8970
e52bd6b7
SM
8971 * process.c (wait_reading_process_input):
8972 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8973
20f1ef2e
KH
89742003-02-20 Kenichi Handa <handa@m17n.org>
8975
32d0a9dc
KH
8976 * fontset.c (check_fontset_name): If NAME is nil, return the
8977 default fontset.
8978 (override_font_info): New function.
e52bd6b7 8979 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8980 (Ffontset_info): If FONTSET is not the default fontset, merge
8981 FONTSET onto the copy of the default fontset, and work on that
8982 copy. Document that NAME nil means the default fontset.
8983 (Ffontset_font): Document that NAME nil means the default fontset.
8984
20f1ef2e
KH
8985 * process.c (setup_process_coding_systems): If the process's
8986 in/out descriptor is -1, do nothing.
8987
77d1daf2
AS
89882003-02-19 Andreas Schwab <schwab@suse.de>
8989
e52bd6b7
SM
8990 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8991 Add prototypes.
77d1daf2 8992
f9a45bb3
KH
89932003-02-19 Kenichi Handa <handa@m17n.org>
8994
8995 * xfaces.c (try_alternative_families): Try all scalable fonts if
8996 Vscalable_fonts_allowed is not Qt.
8997
72ecb43c
JD
89982003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8999
9000 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
9001
ee5be7c3
JD
90022003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9003
9004 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
9005 names.
9006
9007 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 9008 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
9009 x_face_list_fonts.
9010 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
9011 (Fx_list_fonts): Set maxnames to -1 to get all font names.
9012
4cd519a7
KS
90132003-02-18 Kim F. Storm <storm@cua.dk>
9014
068f9882
KS
9015 * lread.c (read1): Fix last change.
9016 "`" is not always special. Allow "?" after a character constant.
4cd519a7 9017
7290a344
AC
90182003-02-18 Andrew Choi <akochoi@shaw.ca>
9019
9020 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
9021
1f7fa69b
AS
90222003-02-18 Andreas Schwab <schwab@suse.de>
9023
9024 * window.c (window_scroll_pixel_based): Move outside a
9025 multi-glyph character before setting new window start.
9026
9027 * xdisp.c (in_display_vector_p): New function.
9028 * dispextern.h (in_display_vector_p): Declare.
9029
23e21195
KS
90302003-02-18 Kim F. Storm <storm@cua.dk>
9031
9032 * lread.c (read1): Fix and relax read syntax.
9033 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
9034 Only recognize "," after dotted-pair dot if inside backquote.
9035 Never include "`" or "," (inside backquote) in a symbol.
9036 Allow dotted-pair dot after a character constant.
9037 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 9038
f098b121
JD
90392003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9040
9041 * gtkutil.c (xg_tool_bar_expose_callback): New function.
9042 (xg_create_tool_bar): Force style of tool bar to be horizontal with
9043 icons. Set name of tool bar to emacs-toolbar.
9044 (update_frame_tool_bar): Connect expose event to
9045 xg_tool_bar_expose_callback.
9046
63020c46
RS
90472003-02-17 Richard M. Stallman <rms@gnu.org>
9048
9049 * keyboard.c (this_command_key_count_reset): New variable.
9050 Initiatize to 0 where this_command_key_count is set.
9051 (read_char): Save and restore this_command_key_count_reset
9052 around input method code.
9053 (read_char): If this_command_key_count_reset, echo reread commands.
9054 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
9055
fb4452cc
KH
90562003-02-17 Kenichi Handa <handa@m17n.org>
9057
9058 * fns.c (string_to_multibyte): Always return a multibyte string.
9059
bd11cc09
JR
90602003-02-16 Jason Rumney <jasonr@gnu.org>
9061
e52bd6b7
SM
9062 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
9063 Negative max_fonts parameter means list all.
bd11cc09 9064
4cdf4bde
DL
90652003-02-14 Dave Love <fx@gnu.org>
9066
9067 * fns.c (Flanginfo): Doc fix.
9068
023b93f6
KS
90692003-02-13 Kim F. Storm <storm@cua.dk>
9070
37cd4238
KS
9071 * lread.c (read_escape): Interpret \s as a SPACE character, except
9072 for \s-X in a character constant which still is the super modifier.
9073 (read1): Signal an `invalid read syntax' error if a character
9074 constant is immediately followed by a digit or symbol character.
9075
140a6b7e
KS
9076 * search.c (Fmatch_data): Doc fix. Explicitly state that
9077 match-data is undefined if last search failed.
9078
023b93f6
KS
9079 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
9080 All uses changed.
9081
7d5c86e5
JB
90822003-02-12 Juanma Barranquero <lektu@terra.es>
9083
9084 * eval.c (Fdefmacro): Fix typo.
9085
295fff2c
KS
90862003-02-12 Kim F. Storm <storm@cua.dk>
9087
9088 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
9089 macro is a string, convert meta modifiers in string when copying
9090 the string into a vector.
9091
60f3202d
KS
90922003-02-11 Kim F. Storm <storm@cua.dk>
9093
9094 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
9095
61cb0b53
KH
90962003-02-11 Kenichi Handa <handa@m17n.org>
9097
9098 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
9099
7392e23c
KS
91002003-02-10 Kim F. Storm <storm@cua.dk>
9101
9102 * process.c: Doc fixes.
9103 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
9104
ce4254bd
KH
91052003-02-10 Kenichi Handa <handa@m17n.org>
9106
9c7a329a
KH
9107 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
9108
ce4254bd
KH
9109 * process.c (QCfilter_multibyte): New variable.
9110 (setup_process_coding_systems): New function.
e52bd6b7
SM
9111 (Fset_process_buffer, Fset_process_filter):
9112 Call setup_process_coding_systems.
ce4254bd
KH
9113 (Fstart_process): Initialize the member `filter_multibyte' of
9114 struct Lisp_Process.
9115 (create_process): Call setup_process_coding_systems.
9116 (Fmake_network_process): New keyward `:filter-multibyte'.
9117 Initialize the member `filter_multibyte' of struct Lisp_Process.
9118 Call setup_process_coding_systems.
9119 (server_accept_connection): Call setup_process_coding_systems.
9120 (read_process_output): If the process has a filter, decide the
9121 multibyteness of a string to given to the filter by
9122 `filter_multibyte' member of the process. If the process doesn't
9123 have a filter and the result of conversion is unibyte, use
9124 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
9125 multibyte form.
9126 (Fset_process_coding_system): Call setup_process_coding_systems.
9127 (Fset_process_filter_multibyte): New function.
9128 (Fprocess_filter_multibyte_p): New function.
9129 (syms_of_process): Intern and staticpro QCfilter_multibyte.
9130 Defsubr Sset_process_filter_multibyte and
9131 Sprocess_filter_multibyte_p.
9132
9133 * process.h (struct Lisp_Process): New member filter_multibyte.
9134
9135 * lisp.h (setup_process_coding_systems): Add prototype.
9136
9137 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
9138 process, update coding systems for the process.
9139
b08d5f59
KH
91402003-02-09 Kenichi Handa <handa@m17n.org>
9141
9142 * fns.c (string_to_multibyte): New function.
9143 (Fstring_to_multibyte): New function.
9144 (syms_of_fns): Defsubr it.
9145
0dfd93c0
AS
91462003-02-08 Andreas Schwab <schwab@suse.de>
9147
9148 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
9149 instead of the substitution.
9150
7b76ca1c
JD
91512003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9152
9153 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
9154
9155 * xmenu.c (menu_position_func): Adjust menu popup position so that
9156 the menu is fully visible.
7b76ca1c 9157
2436a4e4
JD
91582003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9159
9160 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
9161 (x_make_frame_invisible, x_wm_set_icon_position):
9162 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
9163
9164 * xfns.c (x_set_name, x_set_title): Ditto.
9165
37d1e680
RS
91662003-02-04 Richard M. Stallman <rms@gnu.org>
9167
9168 * keyboard.c (echo_now): Update before_command_echo_length.
9169 (Freset_this_command_lengths): Reset this_command_key_count etc.
9170 immediately rather than arranging to do it later.
9171 (before_command_key_count_1, before_command_echo_length_1)
9172 (before_command_restore_flag): Vars deleted.
9173 (add_command_key): Don't handle before_command_restore_flag.
9174 (read_char, record_menu_key): Don't update before_command_key_count or
9175 before_command_echo_length.
9176 (read_char): Don't handle before_command_restore_flag.
9177
9178 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
9179 in direct-output clauses if it wouldn't be called in the ordinary case.
9180
578846a3
KS
91812003-02-04 Kim F. Storm <storm@cua.dk>
9182
9183 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
9184
49853a4d
JD
91852003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9186
9187 * gtkutil.c (remove_from_container): Copying list is not needed.
9188 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
9189 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
9190 on list returned from gtk_container_get_children to avoid memory leak.
9191
8b53dc06
JR
91922003-02-01 Jason Rumney <jasonr@gnu.org>
9193
5d54d177
JR
9194 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
9195 local malloc.
9196 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
9197 definitions in xpm.h.
9198 (init_xpm_functions): New function.
f63fd14e 9199 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
9200 (init_external_image_libraries): Try to load libXpm.dll.
9201
8b53dc06
JR
9202 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
9203 timestamp.
9204
b222e415
DL
92052003-01-31 Dave Love <fx@gnu.org>
9206
9207 * syntax.c (Fskip_chars_forward)
9208 (open-paren-in-column-0-is-defun-start): Doc fix.
9209
c60ee5e7
JB
92102003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
9211
9212 * fileio.c: Support // at start of name for Cygwin (just added proper
9213 preprocessor tests).
9214
9215 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
9216
9217 * Makefile.in: Use @EXEEXT@ for Cygwin.
9218
9219 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
9220
9221 * s/cygwin.h: Added for Cygwin port.
9222
53b37591
JB
92232003-01-31 Juanma Barranquero <lektu@terra.es>
9224
9225 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
9226 when including gif_lib.h.
fe929957 9227 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
9228 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
9229 Windows. Disable color table lookups. Call library functions
53b37591 9230 through pointers determined at runtime.
fe929957
JB
9231 (init_external_image_libraries): Try to load libungif.dll and
9232 libtiff.dll.
53b37591 9233
45415a8f
KH
92342003-01-31 Kenichi Handa <handa@m17n.org>
9235
9236 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 9237 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 9238
a97e4138
JD
92392003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9240
e52bd6b7 9241 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 9242
6eed9bed
DL
92432003-01-30 Dave Love <fx@gnu.org>
9244
9245 * alloc.c (Vgc_elapsed, gcs_done): New variables.
9246 (Fgarbage_collect): Use them.
9247 (init_alloc, syms_of_alloc): Set them up.
9248
100dcd40
JB
92492003-01-30 Juanma Barranquero <lektu@terra.es>
9250
9251 * w32fns.c (init_external_image_libraries): Add missing operator.
9252
fbd852af
JR
92532003-01-29 Jason Rumney <jasonr@gnu.org>
9254
9255 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
9256 an alternative name for jpeg.dll.
9257
8a2d8020
KH
92582003-01-29 Kenichi Handa <handa@m17n.org>
9259
9260 * xdisp.c (set_cursor_from_row): Pay attention to string display
9261 properties.
9262
058c18c7
AC
92632003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
9264
9265 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
9266 <escape>.
9267 (keycode_to_xkeysym_table): Reformat and add more comments.
9268 (XTread_socket): Drop special case for backspace.
9269
385f11cf
AC
92702003-01-28 Andrew Choi <akochoi@shaw.ca>
9271
9272 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
9273 values in old-style RGB specs.
9274
c922a224
JB
92752003-01-27 Juanma Barranquero <lektu@terra.es>
9276
9277 * w32fns.c (init_external_image_libraries): Try alternate names for the
9278 jpeg dll.
9279
0a1d6de0
JD
92802003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9281
9282 * gtkutil.c (create_dialog, xg_separator_p)
9283 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
9284 before calling strcmp or strlen.
9285
a97e4138 92862003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
9287
9288 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
9289 and handle image load failure.
9290
28908312
JR
92912003-01-26 Jason Rumney <jasonr@gnu.org>
9292
9293 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
9294 New functions.
f63fd14e
JB
9295 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
9296 Disable color table lookups. Call jpeg library functions
28908312
JR
9297 through pointers determined at runtime.
9298 (init_external_image_libraries): Try to load jpeg.dll.
9299
84e47416
RS
93002003-01-25 Richard M. Stallman <rms@gnu.org>
9301
9302 * lisp.h: Declare format2 instead of format1.
9303
9304 * fileio.c (barf_or_query_if_file_exists):
9305 Call format2 instead of format1.
9306
9307 * editfns.c (format2): New function, replaces format1
9308 but takes exactly two Lisp Objects as format args.
9309
9310 * buffer.c (Fkill_buffer): Call format2 instead of format1.
9311
a97e4138 93122003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
9313
9314 * xterm.h: Change to return value of x_dispatch_event to int.
9315
9316 * xterm.c (x_filter_event): New function.
9317 (event_handler_gdk, XTread_socket): Call x_filter_event.
9318 (x_dispatch_event): Change to return value of finish.
9319 (event_handler_gdk): Use return value from x_dispatch_event.
9320
9321 * xfns.c (x_window): Call create_frame_xic for GTK version to
9322 initialize input methods.
9323
9324 * gtkutil.h: Add (void) prototypes.
9325
9326 * gtkutil.c (create_menus): Remove code that puts the help menu to
9327 the right.
9328
54eefef1
JR
93292003-01-25 Jason Rumney <jasonr@gnu.org>
9330
9331 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
9332 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
9333 (png_load): Adjust colors for Windows. Use Windows
9334 bitmaps. Disable color table lookups.
c262430d
JR
9335 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
9336 (init_png_functions): New function.
9337 (png_read_from_memory, png_load): Call png library functions
9338 through pointers determined at runtime.
9339 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
9340 (init_external_image_libraries): New function.
9341 (init_xfns): Call it.
54eefef1 9342
1a9e275b
AS
93432003-01-24 Andreas Schwab <schwab@suse.de>
9344
9345 * minibuf.c (Fminibuffer_message): Verify type of parameter.
9346
a97e4138 93472003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
9348
9349 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
9350 of static initializer.
9351
422eec7e
DL
93522003-01-24 Dave Love <fx@gnu.org>
9353
9354 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
9355 architectures.
9356
9357 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
9358 Use __alignof__.
9359
2a026b04
KH
93602003-01-24 Kenichi Handa <handa@m17n.org>
9361
9362 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 9363 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
9364 (command_loop_1): Call adjust_point_for_property with proper
9365 second arg.
9366
a18bb28d
JR
93672003-01-22 Jason Rumney <jasonr@gnu.org>
9368
9369 Sync changes with xterm.c and xfns.c.
9370
9371 * w32term.c (x_draw_glyph_string_foreground)
9372 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9373
9374 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
9375 phys_cursor's hpos is overwritten. This is still not completely
9376 correct, as it doesn't really make sense to use hpos at all to
9377 get the cursor glyph (as that is relative to the width of the
9378 characters on the line, which may have changed during the update).
9379
9380 * w32term.c (notice_overwritten_cursor): Handle the special case
9381 of the cursor being in the first blank non-text line at the
9382 end of a window.
9383
9384 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9385 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9386 Compute from the x position returned by x_draw_glyphs.
9387
9388 (x_display_and_set_cursor): Don't set phys_cursor_width here,
9389 except for NO_CURSOR and system caret, to make phys_cursor_width
9390 contain what its name suggests.
9391 (notice_overwritten_cursor): Consider the cursor image erased if
9392 the output area intersects the cursor image in y-direction.
9393
6a097c0c
SM
9394 * w32term.c (note_mode_line_or_margin_highlight): Rename from
9395 note_mode_line_highlight and extend.
a18bb28d
JR
9396
9397 * w32term.c (last_window): New variable.
9398 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
9399 (note_mouse_movement): Remove reimplemented code in #if 0.
9400
9401 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
9402 not update_mode_lines, and always set it to 1.
9403
ac6e47ef
JR
94042003-01-21 Jason Rumney <jasonr@gnu.org>
9405
9406 * w32fns.c (IDC_HAND): Define it if system headers don't.
9407
94082003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9409
9410 * w32term.h (struct w32_output): New member hand_cursor.
9411 (WM_EMACS_SETCURSOR): New message definition.
9412
9413 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
9414 function w32_define_cursor.
9415 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
9416 position, change member name output_data.x to output_data.w32 and
9417 add function w32_define_cursor.
9418 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
9419 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
9420 (w32_initialize_display_info):
9421 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
9422
9423 * w32fns.c (Vx_hand_shape): New variable.
9424 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
9425 WM_EMACS_SETCURSOR.
9426 (x-create-frame): Setup Cursor types.
9427
ceb39a17
JB
94282003-01-21 David Ponce <david@dponce.com>
9429
ac6e47ef 9430 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 9431 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 9432 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 9433 2002-09-30.)
ac6e47ef
JR
9434 (w32_draw_relief_rect): Declare all args.
9435 (w32_define_cursor): New.
9436
9437 * w32fns.c (w32_load_cursor): New function.
9438 (w32_init_class): Use it.
9439 (x_put_x_image): Declare all args.
9440
b6189c3b 94412003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
9442
9443 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
9444
a97e4138 94452003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
9446
9447 * gtkutil.c: Must include stdio.h before termhooks.h
9448
83fc9c63
DL
94492003-01-21 Dave Love <fx@gnu.org>
9450
9451 * alloc.c (Fgc_status): Print zombie list.
9452 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9453 Fix assignment of zombies.
9454 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
9455 Don't take car of non-cons.
9456
9457 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9458
9459 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9460
fe04b8c8
JR
94612003-01-20 David Ponce <david@dponce.com>
9462
9463 * w32menu.c (digest_single_submenu): Declare all args.
9464
9465 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
9466 changes in xmenu.c:
9467
9468 (parse_single_submenu): Use individual keymap's prompt
9469 string as pane name, if there is one.
9470 (set_frame_menubar): Save menu_items_n_panes from each call to
9471 parse_single_submenu and use it when calling digest_single_submenu.
9472
539e69a9
ST
94732003-01-20 Steven Tamm <steventamm@mac.com>
9474
9475 * macterm.c (XTread_socket): Checks for valid, visible window
9476 before sending a scroll-wheel event.
9477
675d000f
RS
94782003-01-20 Richard M. Stallman <rms@gnu.org>
9479
9480 * xdisp.c (redisplay_window): If mini window's buffer is not
9481 a minibuffer, then redisplay it like other windows.
9482
a97e4138 94832003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
9484
9485 * gtkutil.c (xg_create_frame_widgets): Check if there is an
9486 external tool bar before setting tool bar height.
9487
048addec
JD
94882003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9489
9490 * xterm.c (handle_one_xevent): Surround popup_activated
9491 with #ifdef:s for non-toolkit version.
9492
9493 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
9494 (gtkutil.o): New file.
9495 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
9496 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
9497
9498 * gtkutil.c: New file for GTK version.
9499
9500 * gtkutil.h: New file for GTK version.
9501
9502 * xterm.h: Add xt_or_gtk_widget.
9503 Include gtk files for USE_GTK.
9504 (struct x_output): Add toolbar_height.
9505 (struct x_output): Add GTK widgets and Gdk size_hints.
9506 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
9507 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
9508 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
9509
9510 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 9511 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
9512 (note_mouse_highlight): Check popup_activated for USE_GTK.
9513 (xt_action_hook): Don't compile if USE_GTK.
9514 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
9515 (xg_scroll_callback): New function.
9516 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
9517 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
9518 for USE_GTK.
9519 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
9520 xg_show_scroll_bar for USE_GTK.
9521 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
9522 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
9523 (event_handler_gdk): New function for USE_GTK.
9524 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
9525 (handle_one_xevent): Make sure widget is mapped before
9526 calling x_real_positions for USE_GTK.
9527 (XTread_socket): Add GTK event loop for USE_GTK.
9528 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
9529 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
9530 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
9531 (x_iconify_frame): Add code for USE_GTK.
9532 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
9533 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
9534 is in gtkutil.c.
9535 (x_term_init): Add initialization for GTK.
9536 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
9537
9538 * xmenu.c: Include gtkutil.h for USE_GTK.
9539 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
9540 (single_menu_item, single_menu_item, Fx_popup_dialog):
9541 Check for USE_GTK.
048addec
JD
9542 (popup_widget_loop): New function for USE_GTK.
9543 (x_activate_menubar): Add code for USE_GTK.
9544 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
9545 (menu_highlight_callback, menubar_selection_callback):
9546 Add USE_GTK versions.
048addec
JD
9547 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
9548 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
9549 (free_frame_menubar): Only compile if not USE_GTK. GTK version
9550 is in gtkutil.c.
9551 (popup_selection_callback): New version for USE_GTK.
9552 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 9553 one USE_X_TOOLKIT version.
048addec
JD
9554 (xmenu_show): Call create_and_show_popup_menu.
9555 (dialog_selection_callback): New version for USE_GTK.
9556 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 9557 one USE_X_TOOLKIT version.
048addec
JD
9558 (xdialog_show): Call create_and_show_dialog.
9559
9560 * xfns.c: Include gtkutil for USE_GTK.
9561 (x_window_to_frame, x_any_window_to_frame)
9562 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9563 (x_top_window_to_frame): Add code for USE_GTK.
9564 (x_set_background_color): Call xg_set_background_color for GTK.
9565 (x_set_menu_bar_lines): Check for USE_GTK.
9566 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
9567 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
9568 (x_window): Call xg_create_frame_widgets for USE_GTK.
9569 (Fx_create_frame): Check for USE_GTK
9570 (Fx_file_dialog): New implementation for USE_GTK.
9571
9572 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
9573 (update_menu_bar): Add check for USE_GTK.
9574 (update_tool_bar): Add check for USE_GTK and external tool bar.
9575 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
9576 (redisplay_internal): Add check for USE_GTK and popup_activated.
9577 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
9578 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
9579 (display_menu_bar): Add check for USE_GTK
9580
78819ebb 9581 * lisp.h (Vx_resource_name): Declare extern.
048addec 9582
a64387ee 9583 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
9584 for USE_GTK.
9585 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
9586
9587 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
9588 (FRAME_EXTERNAL_TOOL_BAR): New macro.
9589 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
9590
9591 * fileio.c (Fread_file_name): Add check for USE_GTK.
9592
6bdb309a
SM
9593 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
9594 Add check for USE_GTK.
048addec
JD
9595
9596 * config.in: Added HAVE_GTK
9597
9598 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
9599
96002003-01-18 Stefan Monnier <monnier@cs.yale.edu>
9601
9602 * charset.h (Funibyte_char_to_multibyte): Export.
9603
96042003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9605
9606 * xmenu.c (mouse_position_for_popup): New function.
9607 (Fx_popup_menu): Call mouse_position_for_popup for X and
9608 mouse_position_hook for others.
9609
96102003-01-17 Kim F. Storm <storm@cua.dk>
9611
9612 * editfns.c (Finsert): Mention `string-make-multibyte' and
9613 `string-as-multibyte' in doc string.
9614
96152003-01-17 Kenichi Handa <handa@m17n.org>
9616
9617 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 9618
048addec
JD
9619 * editfns.c (Fformat): Convert an unibyte char argument that is
9620 formatted by "%c" to multibyte if the total result must be a
9621 multibyte string.
cd7df9c0 9622
048addec 96232003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 9624
048addec
JD
9625 * process.c (set-process-filter): Document unibyte/multibyte-ness
9626 of string argument.
56210ecd 9627
048addec 96282003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 9629
048addec 9630 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 9631
048addec
JD
9632 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
9633 (re_search_2): Likewise.
6df8b9fe 9634
048addec 96352003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 9636
048addec
JD
9637 * xdisp.c (message_dolog): Fix bug of the case that *Message*
9638 buffer is unibyte.
292ddc31 9639
048addec 96402003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 9641
048addec 9642 * fns.c (Fsubstring): Clarify doc string.
292ddc31 9643
048addec
JD
9644 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
9645 (Fprevious_char_property_change)
9646 (Fnext_single_char_property_change)
9647 (Fprevious_single_char_property_change, Fnext_property_change)
9648 (Fnext_single_property_change, Fprevious_property_change)
9649 (Fprevious_single_property_change, Fadd_text_properties)
9650 (Fput_text_property, Fset_text_properties)
9651 (Fremove_text_properties, Fremove_list_of_text_properties)
9652 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 9653
048addec 96542003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 9655
048addec
JD
9656 * process.h (struct Lisp_Process): New member plist replaces old
9657 member private_vars. All uses changed.
63e4e4c6 9658
048addec 9659 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 9660 (QCplist): Rename from QCvars. Change all uses.
048addec 9661 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 9662 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 9663 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 9664 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 9665
048addec 96662003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 9667
6bdb309a 9668 * m/delta.h: Remove (obsolete).
e833850f 9669
048addec 96702003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 9671
048addec
JD
9672 * fileio.c (Fdelete_directory, Fdelete_file): Document the
9673 behaviour in front of symlinks.
9674 (Fdelete_file): Raise an error on directories.
817cb127 9675
048addec 96762003-01-13 Dave Love <fx@gnu.org>
817cb127 9677
048addec 9678 * fns.c (Freverse): Use QUIT.
3e8cf2ea 9679
048addec 96802003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 9681
048addec
JD
9682 * minibuf.c (minibuffer_completion_contents):
9683 Error if point is inside prompt.
3e8cf2ea 9684
048addec
JD
9685 * keyboard.c (command_loop_1): Don't redisplay directly
9686 if there's a post-command-hook.
3e8cf2ea 9687
048addec
JD
9688 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
9689 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 9690
048addec 96912003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 9692
048addec 9693 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 9694
048addec
JD
9695 * process.c (QCvars): New variable.
9696 (syms_of_process): Intern and staticpro it.
9697 (Fset_process_contact): Removed function.
9698 (Fprocess_variable, Fset_process_variable): New functions.
9699 (syms_of_process): Defsubr them.
9700 (Fstart_process): Initialize private_vars plist to nil.
9701 (Fmake_network_process): New arg :vars to setup the private
9702 variables for new network process.
9703 (server_accept_connection): Copy server's private variables to
9704 client process.
2c10f029 9705
048addec
JD
9706 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
9707 crashes). Code rewritten and simplified. Now directly aligns the
9708 pointer and recalculates pure_bytes_used, rather than aligning the
9709 size and adjusting the pointer.
b8a76c6c 9710
048addec 97112003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 9712
048addec
JD
9713 * process.c (Fset_process_contact): New function.
9714 (syms_of_process): defsubr it.
9715 (make-network-process): Update doc.
3a8d0899 9716
048addec 97172003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 9718
048addec
JD
9719 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
9720 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 9721
048addec 97222003-01-10 Dave Love <fx@gnu.org>
4abc7470 9723
048addec 9724 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 9725
048addec 97262003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 9727
048addec
JD
9728 * process.c (Fmake_network_process): Convert new port number
9729 to host byte order for `:service t' case. From Mario Lang.
bf338245 9730
048addec 97312003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 9732
048addec
JD
9733 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
9734 instead of XtAppProcessEvent.
bf338245 9735
048addec
JD
9736 * xterm.c (handle_one_xevent): New function.
9737 (x_dispatch_event): New function.
9738 (XTread_socket): Call handle_one_xevent.
bf338245 9739
048addec 9740 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 9741
048addec
JD
9742 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
9743 call XQueryPointer to get coordinates.
9744 (popup_get_selection): Do not set popup_activated_flag to zero,
9745 let popup_deactivate_callback do that. Needed for Motif.
9746 Call x_dispatch_event instead of XtDispatchEvent.
9747 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 9748
048addec 97492003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 9750
6bdb309a 9751 * process.c (server_accept_connection): Fix recording of new
048addec
JD
9752 connection's local address in :local property of contact info.
9753 (Fmake_network_process): Record local network address for new
9754 client processes in :local property of contact info.
6bdb309a 9755 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 9756
048addec 97572003-01-07 Dave Love <fx@gnu.org>
00e3ab56 9758
048addec 9759 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 9760
048addec 97612003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 9762
048addec 9763 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 9764
048addec
JD
9765 * eval.c (Fuser_variable_p): Doc change. For custom variables,
9766 use the same test as for custom-variable-p.
8c6d74c6 9767
048addec 97682003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 9769
048addec
JD
9770 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
9771 Count LAST_LINE_MISFIT in scroll margin for end of window.
9772 Move label too_near_end before setting SCROLL_MARGIN_POS.
9773 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 9774
048addec
JD
9775 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
9776 scroll_conservatively case. If scrolling that much doesn't change
9777 STARTP, move it down one line.
e833850f 9778
048addec
JD
9779 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
9780 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 9781
048addec
JD
9782 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
9783 selected frame.
8c6d74c6 9784
048addec
JD
9785 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
9786 (syms_of_keymap): staticpro them.
9787 (Fapropos_internal): Initialize them and clear them out.
9788 Don't GCPRO them.
8c6d74c6 9789
048addec
JD
9790 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
9791 Doc fixes.
8c6d74c6 9792
048addec
JD
9793 * lisp.h: New misc type Lisp_Save_Value.
9794 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
9795 (XSAVE_VALUE): New macro.
9796 (struct Lisp_Save_Value): New data type.
9797 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 9798 (make_save_value): Declare.
8c6d74c6 9799
048addec 9800 * alloc.c (make_save_value): New function.
8c6d74c6 9801
048addec
JD
9802 * xterm.c (x_catch_errors): Save dpy using make_save_value.
9803 (x_catch_errors_unwind): Call XSync.
8c6d74c6 9804
048addec 98052003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 9806
048addec 9807 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 9808
048addec
JD
9809 * keyboard.c (command_loop_1): Call adjust_point_for_property
9810 in direct action cases for Qforward_char and Qbackward_char.
9811 Set already_adjusted so it won't be done twice.
8c6d74c6 9812
b6189c3b 98132002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 9814
048addec
JD
9815 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
9816 type definition of size_t.
8c609cff 9817
048addec 98182003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 9819
048addec
JD
9820 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
9821 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 9822
048addec 98232002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 9824
048addec
JD
9825 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
9826 to default to t.
fa634a5e 9827
048addec 98282002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 9829
048addec 9830 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 9831
048addec 98322002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 9833
048addec
JD
9834 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
9835 allow building in a different directory than source. Uses some
9836 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 9837
048addec 98382002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 9839
048addec
JD
9840 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
9841 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
9842 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
9843 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 9844
048addec 98452002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 9846
048addec
JD
9847 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
9848 <scroll-down-aggressively>: Doc fix.
2155ecf3 9849
048addec
JD
9850 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9851 string as pane name, if there is one.
9852 (set_frame_menubar): Save menu_items_n_panes from each call to
9853 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 9854
048addec
JD
9855 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9856 Don't try to make last line fully visible if it is past end of window.
61f1d295 9857
048addec 98582002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 9859
048addec
JD
9860 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9861 (mac_menu_show): Add support for hierarchical popup menus.
9862 (add_menu_item): Remove indentation support.
9863 (fill_submenu, fill_menu): Create hierarchical menus
9864 instead of using indentation.
0b17a217 9865
048addec 98662002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 9867
048addec
JD
9868 * xdisp.c (try_cursor_movement): Don't call try_window here.
9869 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 9870
048addec 9871 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 9872
048addec 98732002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 9874
048addec
JD
9875 * macterm.c (XTread_socket): Call KeyTranslate for control and
9876 meta to deal correctly shifted non-alpha characters, like C-S-5
9877 being treated like C-%. Does not look for shift key to deal
9878 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 9879
048addec 98802002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 9881
048addec
JD
9882 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9883 If it is non-nil, run timers. Use an unwind-protect to requeue
9884 the events that were read ahead.
9885 (popup_get_selection_unwind): New subroutine.
9886 (popup_get_selection_queue): File-scope variable now holds that queue.
9887 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9888 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9889 Use an unwind-protect to pop down the dialog box.
9890 (xdialog_show_unwind): New subroutine implements that.
f02cac82 9891
048addec
JD
9892 * xdisp.c (row_containing_pos): Change exit test using last_y.
9893 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 9894
048addec
JD
9895 * lread.c (load_error_handler): New function.
9896 (Fload): Handle errors in Fsubstitute_in_file_name.
9897 Don't expect Fsignal to return.
f02cac82 9898
048addec
JD
9899 * eval.c: Errors and throws work right with interrupt blocking.
9900 (struct catchtag): New elt interrupt_input_blocked.
9901 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9902 (internal_catch, Fcondition_case, internal_condition_case)
9903 (internal_condition_case_1, internal_condition_case_2): Save it.
9904 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 9905
048addec 9906 * editfns.c (Fformat): Add parens.
f02cac82 9907
048addec
JD
9908 * dired.c (file_name_completion): Fix that change.
9909 Delete special quit-handling code; just use QUIT.
f02cac82 9910
b6189c3b 99112002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 9912
048addec
JD
9913 * dired.c (file_name_completion): Close directory on error
9914 just as in directory_files_internal.
1a590729 9915
048addec 99162002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9917
048addec
JD
9918 * window.c (Fset_window_configuration): Set old_point to correct
9919 value when new_current_buffer == current_buffer.
f02cac82 9920
048addec 99212002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9922
048addec
JD
9923 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9924 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9925 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9926
048addec
JD
9927 These changes were in part based upon suggestions made by Peter
9928 'Luna' Runestig [peter@runestig.com].
9785d95b 9929
048addec
JD
9930 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9931 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9932 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9933 global variables.
9785d95b 9934
048addec
JD
9935 * w32.c (globals_of_w32): New function. Used to initialize those
9936 global variables that must always be initialized on startup even
9937 when the global variable initialized is non zero. Its primary
9938 purpose at this time is to set the global variables
9939 g_b_init_is_windows_9x, g_b_init_open_process_token,
9940 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9941 g_b_init_get_sid_identifier_authority to 0 on startup.
9942 Called from main.
9785d95b 9943
048addec
JD
9944 * w32.c (is_windows_9x): Perform initialization only if
9945 g_b_init_is_windows_9x is equal to 0. On initialization set
9946 g_b_init_is_windows_9x equal to 1.
2308af15 9947
048addec
JD
9948 * w32.c (open_process_token): Perform initialization only if
9949 g_b_init_open_process_token is equal to 0. On initialization set
9950 g_b_init_open_process_token equal to 1.
2308af15 9951
048addec
JD
9952 * w32.c (get_token_information): Perform initialization only if
9953 g_b_init_get_token_information is equal to 0. On initialization
9954 set g_b_init_get_token_information equal to 1.
9785d95b 9955
048addec
JD
9956 * w32.c (lookup_account_sid): Perform initialization only if
9957 g_b_init_lookup_account_sid is equal to 0. On initialization
9958 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9959
048addec
JD
9960 * w32.c (get_sid_identifier_authority): Perform initialization
9961 only if g_b_init_get_sid_identifier_authority is equal to 0.
9962 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9963
f63fd14e 9964 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9965 those global variables that must always be initialized on startup
9966 even when the global variable initialized is non zero.
9967 Its primary purpose at this time is to initialize the global variable
9968 track_mouse_event_fn.
9785d95b 9969
a64387ee 9970 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9971 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9972
048addec 9973 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9974
f63fd14e 9975 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9976 initialize those global variables that must always be initialized
9977 on startup even when the global variable initialized is non zero.
9978 Its primary purpose at this time is to initialize the global
9979 variables get_menu_item_info and set_menu_item_info.
9785d95b 9980
048addec
JD
9981 * w32menu.c (initialize_frame_menubar): Remove initialization of
9982 get_menu_item_info and set_menu_item_info.
9785d95b 9983
048addec 9984 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9985
048addec
JD
9986 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9987 Declare them.
9785d95b 9988
048addec
JD
9989 * emacs.c (main): Call globals_of_w32 prior to calling
9990 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9991 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9992 is defined.
9785d95b 9993
048addec
JD
9994 * w32term.c (x_update_window_begin): Fix Windows API error
9995 detected by BoundsChecker. Test to determine if
9996 w32_system_caret_hwnd is NULL prior to attempting to use
9997 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9998
048addec
JD
9999 * w32term.c (x_update_window_end): Fix Windows API error
10000 detected by BoundsChecker. Test to determine if
10001 w32_system_caret_hwnd is NULL prior to attempting to use
10002 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 10003
048addec 100042002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 10005
048addec
JD
10006 * coding.c (coding_system_require_warning): New variable.
10007 (syms_of_coding): DEFVAR it.
b6da19ef 10008
048addec 10009 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 10010
048addec
JD
10011 * fileio.c (choose_write_coding_system): Even if
10012 Vcoding_system_for_write is non-nil, if
10013 coding_system_require_warning is nonzero, call
10014 Vselect_safe_coding_system_function.
bfcf6dbe 10015
048addec 100162002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 10017
048addec
JD
10018 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
10019 (lisp): Add font-core.
2c568af5 10020
048addec 100212002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 10022
048addec
JD
10023 * textprop.c (text_read_only): New arg `propval'.
10024 (get_char_property_and_overlay): Remove unused var `next_overlay'.
10025 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 10026
048addec 100272002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 10028
048addec 10029 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 10030
048addec 100312002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 10032
048addec
JD
10033 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
10034 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
10035 Be more careful about when help_events are generated.
96720f09 10036
048addec 100372002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 10038
048addec
JD
10039 * macterm.c (mac_check_for_quit_char): Correctly set the
10040 modifiers of the event to 0.
10041 * mac.c (sys_select): Duplicate rfds before calling select to
10042 ensure that rfds survive the while loop.
e5ae1c49 10043
048addec 100442002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 10045
048addec
JD
10046 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
10047 row_containing_pos returned NULL.
2eb46b2d 10048
048addec 100492002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 10050
6bdb309a 10051 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 10052 non-blocking.
6bdb309a 10053 (sys_select): Fix sys_select to not use a timeout larger than
048addec 10054 the one given.
b11f1d8a 10055
048addec 100562002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 10057
048addec 10058 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 10059
048addec 100602002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 10061
048addec
JD
10062 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
10063 as the last thing.
a4ac5b17 10064
048addec 100652002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 10066
048addec 10067 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 10068
048addec 100692002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 10070
048addec
JD
10071 * editfns.c (Fformat): Handle precision in string conversion
10072 specifiers like libc functions do (ie, print at most that many
10073 characters).
85cce843 10074
048addec 100752002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 10076
048addec
JD
10077 * xdisp.c (row_containing_pos): Check more carefully
10078 whether charpos is really in the row before returning it.
0d4d26a7 10079
048addec 100802002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 10081
048addec 10082 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 10083
048addec
JD
10084 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
10085 each stack frame. This may change as it could be time consuming.
0d4d26a7 10086
048addec
JD
10087 * macterm.c (mac_check_for_quit_char, quit_char_comp)
10088 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 10089 (mac_initialize): Add code to check for pressing of quit_char
048addec 10090 in the OS event queue.
b11f1d8a 10091
048addec
JD
10092 * mac.c (sys_select): Call mac_check_for_quit_char every second
10093 while blocking on select.
0d4d26a7 10094
048addec
JD
10095 * mac.c (sys_read): Use sys_select to test for input first
10096 before calling read, to allow C-g to break.
9252f7bc 10097
048addec 100982002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 10099
048addec 10100 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 10101
048addec 10102 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 10103
048addec 10104 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 10105
048addec
JD
10106 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
10107 autoload.
9252f7bc 10108
048addec 10109 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 10110
048addec 10111 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 10112
048addec 101132002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 10114
048addec 10115 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 10116
048addec 101172002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 10118
048addec 10119 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10120
048addec 10121 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 10122
048addec 10123 * alloca.c: Don't use #error.
02d588e2 10124
048addec 101252002-12-03 Dave Love <fx@gnu.org>
02d588e2 10126
048addec
JD
10127 * buffer.c (Qucs_set_table_for_input): New.
10128 (Fget_buffer_create): Use it.
10129 (Qset_buffer_major_mode_hook): Deleted.
10130 (Fset_buffer_major_mode): Revert previous change.
10131 (init_buffer_once): Intern ucs-set-table-for-input.
10132 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
10133 Add &Qucs_set_table_for_input.
451e2697 10134
048addec 101352002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 10136
048addec
JD
10137 * callint.c (Fcall_interactively): Use next_event only if less
10138 than key_count.
72742a99 10139
048addec 101402002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 10141
048addec
JD
10142 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
10143 names to 255 characters.
72742a99 10144
048addec
JD
10145 * macterm.c (XTread_socket): If all frames have been collapsed,
10146 expand the first one before handling drag-and-drop events.
72742a99 10147
048addec
JD
10148 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
10149 which is detected by autoconf.
40e6ff95 10150
048addec 101512002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 10152
048addec
JD
10153 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
10154 offset in two hints table to allow prebinding to be redone and
10155 allow the executable to be stripped.
c02138c6 10156
048addec 101572002-11-29 Dave Love <fx@gnu.org>
c02138c6 10158
048addec
JD
10159 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
10160 already provided.
0e47bbf7 10161
048addec 101622002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 10163
048addec
JD
10164 * xdisp.c (start_display): Check more intelligently for
10165 whether the line is continued.
10166 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 10167
048addec 101682002-11-28 Dave Love <fx@gnu.org>
44129dcb 10169
048addec
JD
10170 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
10171 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 10172
048addec 101732002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 10174
048addec
JD
10175 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
10176 more descriptive error output from lread.c:Fload upon most require
10177 cycles during boostrapping.
1637fd2c 10178
048addec 101792002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 10180
048addec
JD
10181 * fileio.c (Finsert_file_contents): Give a more appropriate error
10182 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 10183
048addec
JD
10184 * dired.c (Ffile_attributes): Don't return negative file sizes for
10185 files bigger than 2Gb when off_t is 32 bit.
540c2788 10186
048addec 101872002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 10188
048addec 10189 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 10190
048addec
JD
10191 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
10192 Test GETPGRP_VOID instead.
10193 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 10194
048addec
JD
10195 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
10196 Don't define.
10197 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 10198
048addec 10199 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 10200
048addec 102012002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 10202
048addec
JD
10203 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
10204 supported.
4042a81a 10205
048addec 102062002-11-25 Dave Love <fx@gnu.org>
4042a81a 10207
048addec 10208 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 10209
048addec 10210 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 10211
048addec 102122002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 10213
048addec 10214 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 10215
048addec 102162002-11-24 Steven Tamm <steventamm@mac.com>
82122254 10217
048addec
JD
10218 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
10219 determine the size of pointers alloced in unexed space instead
10220 of using possibly invalid emacs_zone pointers. This fixes the
10221 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 10222
048addec 102232002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 10224
048addec 10225 * search.c (Fstring_match): Doc fix.
c1ee53bc 10226
048addec
JD
10227 * callint.c (Fcall_interactively): If a command fails because
10228 `*' detects a read-only buffer, but RECORD_FLAG is set,
10229 record it anyway if the args don't actually do tty input.
5598c32e 10230
048addec 102312002-11-22 Dave Love <fx@gnu.org>
5598c32e 10232
048addec 10233 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 10234
048addec
JD
10235 * keyboard.c (interrupt_signal): Provide forward declaration.
10236 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 10237
048addec 10238 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 10239
048addec 102402002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 10241
048addec
JD
10242 * eval.c (interactive_p): Skip any number of bytecode
10243 and special form frames, in any order.
516eea8e 10244
048addec 102452002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 10246
048addec
JD
10247 * w32fns.c (convert_mono_to_color_image): New function.
10248 (xbm_load, xbm_load_image): Use it when foreground or background
10249 is explicitly set.
04dbfa08 10250
048addec 102512002-11-19 Dave Love <fx@gnu.org>
04dbfa08 10252
048addec 10253 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 10254
048addec 102552002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 10256
048addec
JD
10257 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
10258 (XPutPixel): Swap blue and red.
10259 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
10260 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
10261 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
10262 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 10263
048addec 102642002-11-18 Dave Love <fx@gnu.org>
d824beee 10265
048addec 10266 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 10267
048addec 10268 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 10269
048addec 10270 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 10271
048addec
JD
10272 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
10273 malloc, realloc, calloc.
d824beee 10274
048addec
JD
10275 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
10276 (bcmp): Don't define.
d824beee 10277
048addec 10278 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 10279
048addec 10280 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 10281
048addec 10282 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 10283
048addec 10284 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 10285
048addec
JD
10286 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
10287 Don't include alloca.h.
d824beee 10288
048addec 10289 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 10290
048addec 10291 * regex.c (_GNU_SOURCE): Don't define.
1998560a 10292
048addec 10293 * process.c (_GNU_SOURCE): Don't define.
1998560a 10294
048addec 10295 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 10296
048addec 102972002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 10298
048addec 10299 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 10300
048addec 103012002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 10302
048addec
JD
10303 * dispextern.h (struct face): Add `overstrike' field.
10304 * xterm.c (x_draw_glyph_string_foreground)
10305 (x_draw_composite_glyph_string_foreground): Implement overstriking.
10306 * xfaces.c (load_face_font): Set `face->overstrike' based on
10307 result from choose_face_font.
10308 (best_matching_font, choose_face_font): Add `needs_overstrike'
10309 argument, and use it to return whether overstriking is desirable
10310 for this face/font combo.
10311 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 10312
048addec 103132002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 10314
048addec
JD
10315 This change is my fix for the following entry in etc/PROBLEMS:
10316 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
10317 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 10318
048addec
JD
10319 * w32.c: Added wrapper functions around the win32 API functions
10320 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
10321 GetSidIdentifierAuthority. These wrapper functions serve two
10322 purposes:
10323 1. They ensure that the wrapped function can never be called
10324 when Emacs is running on an operating system on which they are
10325 not supported (Microsoft Windows 95 / 98 / ME).
10326 2. They call the wrapped functions via function pointers rather
10327 than calling them directly. This avoids taking advantage of the
10328 undocumented fact that although these functions are not supported
10329 in the 9x branch of Microsoft Windows, the functions do exist in
10330 the version of advapi32.dll that is found in the 9x branch of
10331 Microsoft Windows.
f60ae425 10332
6bdb309a 10333 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
10334 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
10335 and GetSidIdentifierAuthority with calls to the newly added
10336 wrapper functions.
f60ae425 10337
048addec
JD
10338 * w32.h: Added extern declarations for the following functions:
10339 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
10340 syms_of_w32menu, and void syms_of_fontset.
f60ae425 10341
6bdb309a 10342 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
10343 function pointer track_mouse_event_fn in the handler for the
10344 WM_SETFOCUS message.
3582b6a3 10345
6bdb309a 10346 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
10347 reinitialize the function pointers set_menu_item_info and
10348 get_menu_item_info.
f60ae425 10349
048addec 103502002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 10351
048addec
JD
10352 * sound.c: Added a partial implementation of play-sound-internal
10353 for Microsoft Windows. Added various #ifdef / #else / #endif
10354 code blocks to separate the code that will compile under
10355 Microsoft Windows from the code that is specific to Gnu/Linux.
10356 Moved several blocks of code around to make this separation of code
10357 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 10358
048addec 10359 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 10360
048addec
JD
10361 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
10362 added support for play-sound-internal under Windows would be
10363 included in the build of Emacs.
517f42a0 10364
048addec 103652002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 10366
048addec 10367 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 10368
048addec 10369 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 10370
048addec 103712002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 10372
048addec
JD
10373 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
10374 (adjust_point_for_property): Move out of display and invisible even if
10375 we were already inside before (in case a property was added while
10376 we weren't looking). Be more careful when handling invisible props.
10377 Skip invisible text as if it really wasn't there at all.
aab83f91 10378
048addec 103792002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 10380
048addec
JD
10381 * w32term.c (x_draw_image_foreground)
10382 (w32_draw_image_foreground_1): Use standard copy and invert
10383 operations to draw images.
aab83f91 10384
048addec
JD
10385 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
10386 depth of 1.
10387 (xbm_read_bitmap_data): Invert bits as xbm is read in.
10388 (XPutPixel): Don't invert bits here.
a4478a76 10389
048addec 103902002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 10391
048addec
JD
10392 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
10393 (w32_draw_image_foreground_1): Handle image masks.
10394 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 10395
048addec
JD
10396 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
10397 (x_from_xcolors): Adjust RGB values for W32.
10398 (image_background, image_background_transparent)
10399 (postprocess_image, x_to_xcolors, x_disable_image)
10400 (x_build_heuristic_mask): Adapt for W32 and enable.
10401 (x_create_x_image_and_pixmap): Mark images with palettes as such.
10402 (xbm_load): Remove unused variable.
03670a65 10403
048addec 104042002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 10405
048addec 10406 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 10407
048addec 104082002-11-14 Dave Love <fx@gnu.org>
59daa29a 10409
048addec 10410 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 10411
048addec
JD
10412 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
10413 * xmenu.c (unuse_menu_items, digest_single_submenu):
10414 * xfns.c (x_put_x_image):
10415 * xdisp.c (message2_nolog, set_message):
10416 * undo.c (record_point):
10417 * terminfo.c (tparam):
10418 * syntax.c (scan_sexps_forward):
10419 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
10420 * composite.c (update_compositions):
10421 * cm.c (calccost, cmgoto):
10422 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 10423
048addec 10424 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 10425
048addec
JD
10426 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
10427 Don't declare.
59daa29a 10428
048addec 10429 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 10430
048addec
JD
10431 * fns.c (Fcopy_sequence): Doc fix.
10432 (Fmap_char_table): Cast `call2'.
3947677c 10433
048addec
JD
104342002-11-14 Francesco Potorti` <pot@gnu.org>
10435
10436 * s/sol2-8.h: New file.
10437
104382002-11-14 Kim F. Storm <storm@cua.dk>
10439
10440 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
10441 dependency on `risky-local-variable' and the :propertize form.
10442
104432002-11-12 Stefan Monnier <monnier@cs.yale.edu>
10444
10445 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
10446
10447 * syntax.c (scan_sexps_forward): Undo last patch.
10448 Use a more obvious fix: check eob before updating the syntax table.
10449
104502002-11-09 Stefan Monnier <monnier@cs.yale.edu>
10451
10452 * syntax.c (scan_sexps_forward): Update syntax table before reading
10453 a char rather than after so we don't update the table past eob.
10454
104552002-11-09 Dave Love <fx@gnu.org>
10456
10457 * buffer.c (Fset_buffer_major_mode): Fix last change.
10458
10459 * regex.c (regexec): Fix pmatch declaration.
10460
10461 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
10462
10463 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
10464 to self-inserting characters.
10465 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
10466
10467 * coding.c (Vtranslation_table_for_input): New.
10468 (syms_of_coding): DEFVAR it.
10469
104702002-11-08 Juanma Barranquero <lektu@terra.es>
10471
10472 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
10473 window.
10474
104752002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10476
6bdb309a 10477 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
10478 cp, and i.
10479
104802002-11-06 Dave Love <fx@gnu.org>
10481
10482 * buffer.c (Qset_buffer_major_mode_hook): New.
10483 (Fset_buffer_major_mode): Use it.
10484
104852002-11-06 Richard M. Stallman <rms@gnu.org>
10486
10487 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
10488 and stop_polling.
10489
10490 * process.c (wait_reading_process_input):
10491 Test POLLING_PROBLEM_IN_SELECT, not hpux.
10492 Avoid initialization for auto Lisp_Object var.
10493
10494 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
10495
10496 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
10497
104982002-11-05 Richard M. Stallman <rms@gnu.org>
10499
10500 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
10501
10502 * callint.c (Fcall_interactively): New local filter_specs.
10503 (Fcall_interactively): Check for progn as well as let.
10504 Add a gcpro.
10505 (Qprogn): New variable.
10506 (syms_of_callint): Staticpro and init Qprogn.
10507
105082002-11-04 John Paul Wallington <jpw@shootybangbang.com>
10509
10510 * lread.c (Feval_buffer): Doc fix.
10511
105122002-11-04 Dave Love <fx@gnu.org>
10513
10514 * keyboard.c (read_char): Always translate iff
10515 Vkeyboard_translate_table is a char table and c is valid.
10516
10517 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
10518 and fix C types.
10519
105202002-11-03 Stefan Monnier <monnier@cs.yale.edu>
10521
10522 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
10523
10524 * editfns.c (get_pos_property): Don't hardcode Qfield.
10525
10526 * keyboard.c (adjust_point_for_property): Handle `display' prop on
10527 overlays. Also handle `invisible' prop.
10528
105292002-11-02 Stefan Monnier <monnier@cs.yale.edu>
10530
10531 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
10532 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
10533
105342002-11-01 Andreas Schwab <schwab@suse.de>
10535
10536 * editfns.c (Fmessage): Revert last change to properly handle %%.
10537
105382002-11-01 Stefan Monnier <monnier@cs.yale.edu>
10539
10540 * xmenu.c (unuse_menu_items): New fun.
10541 (menu_items_inuse): New var.
10542 (syms_of_xmenu): Initialize it.
10543 (init_menu_items): Use it to detect re-entrance.
10544 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
10545 (Fx_popup_menu): Remove spurious XSETFRAME.
10546
10547 * editfns.c (find_field): Make an exception for nil fields.
10548
105492002-11-01 Dave Love <fx@gnu.org>
10550
10551 * m/gec63.h: Deleted.
10552
105532002-10-31 Dave Love <fx@gnu.org>
10554
10555 * xterm.c (XTread_socket): Fix last change.
10556 (xaw_scroll_callback): Cast call_data to long to avoid warning.
10557
105582002-10-31 Stefan Monnier <monnier@cs.yale.edu>
10559
10560 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
10561
105622002-10-30 Stefan Monnier <monnier@cs.yale.edu>
10563
10564 * editfns.c (overlays_around, get_pos_property): New funs.
10565 (find_field): Use them.
10566 Also be careful not to modify POS before its last use.
10567 (Fmessage): Don't Fformat if there's nothing to format.
10568
105692002-10-30 Dave Love <fx@gnu.org>
10570
10571 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
10572 [HAVE_PTY_H]; Include pty.h.
10573
10574 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
10575
10576 * xterm.c (Qeql): Declare.
10577 (Vx_keysym_table): New.
10578 (syms_of_xterm): Initialize it.
10579 (XTread_socket): Use it. Deal with ASCII keysyms.
10580 (XSetIMValues) [HAVE_X11R6]: Prototype.
10581
10582 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
10583 (lispy_kana_keys): Comment out.
10584 (make_lispy_event) [XK_kana_A]: Comment out.
10585 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
10586 Fix sprintf call.
10587
10588 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
10589 regexp.h change).
10590 (TERMINFO, LIBS_TERMCAP): Define.
10591
10592 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
10593 (bcmp): Define conditional on HAVE_BCMP.
10594 (NO_SIOCTL_H): Don't define.
10595 (TIOCSIGSEND): Don't make conditional on IRIX6.
10596
10597 * s/sol2-5.h: Don't include strings.h.
10598 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
10599
10600 * s/irix6-0.h (IRIX6): Don't define.
10601 (bcopy, bcmp, bzero): Don't undef.
10602
10603 * s/irix6-5.h: Don't include strings.h.
10604 (IRIX6): Don't define.
10605 (bcopy, bcmp, bzero): Don't undef.
10606
10607 * syntax.c (Fforward_comment): Doc fix.
10608
106092002-10-29 Kim F. Storm <storm@cua.dk>
10610
10611 * process.c (Fsignal_process): Allow PROCESS to be specified by
10612 name in addition to pid (as integer or string).
10613
106142002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
10615
10616 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
10617 environments.
10618
106192002-10-27 Kim F. Storm <storm@cua.dk>
10620
10621 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10622
10623 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
10624
10625 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
10626
10627 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
10628
106292002-10-26 Richard M. Stallman <rms@gnu.org>
10630
10631 * editfns.c (Fformat): Detect invalid format letters for floats.
10632
106332002-10-25 Kenichi Handa <handa@m17n.org>
10634
10635 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
10636 (x_set_title): Likewise.
10637
106382002-10-25 Juanma Barranquero <lektu@terra.es>
10639
10640 * macgui.h:
10641 * w32gui.h: Remove definition of XColor.
10642
10643 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
10644
106452002-10-24 Kim F. Storm <storm@cua.dk>
10646
10647 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
10648 Callers changed (supply dummy arg).
10649
10650 * lisp.h (get_window_cursor_type): Update prototype.
10651
10652 * w32term.c (x_display_and_set_cursor): Get active_cursor from
10653 get_window_cursor_type to track system caret.
10654
106552002-10-24 Kim F. Storm <storm@cua.dk>
10656
10657 * process.c (Fformat_network_address): New function.
10658 (syms_of_process): Defsubr it.
10659 (list_processes_1): Use it to format :local/:remote address if
f9711de4 10660 service/host is not set; before Emacs would crash in that case.
048addec
JD
10661 (Fmake_network_process): Don't use Ffind_operation_coding_system
10662 to setup coding system if host or service is not set.
10663
106642002-10-23 Juanma Barranquero <lektu@terra.es>
10665
10666 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
10667
10668 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
10669 COLORREF.
10670
10671 * macgui.h:
10672 * w32gui.h: Add definition of XColor.
10673
10674 * macfns.c:
10675 * w32fns.c:
10676 * xfaces.c: Remove definition of XColor.
10677
106782002-10-22 Stefan Monnier <monnier@cs.yale.edu>
10679
10680 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
10681
10682 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
10683 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
10684 window if it is dedicated.
10685 (Fshrink_window): Add preserve_before as was done for enlarge_window.
10686 (Vspecial_display_function): Update docstring.
10687
10688 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
10689 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
10690 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
10691
106922002-10-21 Stefan Monnier <monnier@cs.yale.edu>
10693
10694 * casefiddle.c (casify_region): Don't treat a prefix char as part
10695 of a word when at the beginning.
10696
106972002-10-17 Juanma Barranquero <lektu@terra.es>
10698
10699 * lread.c (syms_of_lread): Fix typos.
10700
107012002-10-17 Dave Love <fx@gnu.org>
10702
10703 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
10704
107052002-10-16 Richard M. Stallman <rms@gnu.org>
10706
10707 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
10708
107092002-10-14 Juanma Barranquero <lektu@terra.es>
10710
10711 * w16select.c (syms_of_win16select): Fix docstring for
10712 `selection-coding-system'.
10713
10714 * w32select.c (syms_of_w32select): Likewise.
10715
107162002-10-14 Stefan Monnier <monnier@cs.yale.edu>
10717
10718 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
10719 a backslash-quoted char.
10720 (scan_lists, scan_sexps_forward): Pacify the compiler.
10721
107222002-10-13 Richard M. Stallman <rms@gnu.org>
10723
10724 * window.c (window_scroll): Set immediate_quit.
10725
10726 * print.c (print): When backquote form is the car of a list,
10727 output in old style. Use old_backquote_output to output all
10728 comma forms inside it in old style too.
10729
10730 * buffer.h (struct buffer): Move `undo_list' down below `name'.
10731
107322002-10-11 Markus Rost <rost@math.ohio-state.edu>
10733
10734 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
10735 batch mode).
10736
10737 * lread.c (Fload): Doc fix (load-suffixes).
10738
107392002-10-10 Steven Tamm <steventamm@mac.com>
10740
10741 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
10742 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
10743 Also switch the default to Qnil from Qt.
10744
107452002-10-08 Kenichi Handa <handa@m17n.org>
10746
10747 * coding.c (code_convert_region): When we need more GAP for
10748 conversion, pay attention to the case that coding->produced is not
10749 greater than coding->consumed.
10750
107512002-10-07 Richard M. Stallman <rms@gnu.org>
10752
10753 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
10754
107552002-10-06 Andrew Choi <akochoi@shaw.ca>
10756
10757 * macmenu.c (mac_menu_show): Add j to count menu items; match
10758 menu_item_selection to it to find selected item.
10759
107602002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10761
10762 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
10763 cases. The correct fix is to pass ReparentNotify to Xt.
10764 The shell widget interprets ConfigureNotify differently depending
10765 on if it has been reparented or not.
10766
107672002-10-05 Markus Rost <rost@math.ohio-state.edu>
10768
10769 * editfns.c (Fformat_time_string): Doc fix.
10770
107712002-10-05 John Paul Wallington <jpw@shootybangbang.com>
10772
10773 * fns.c (Flength): Doc fix.
10774
107752002-10-04 Stefan Monnier <monnier@cs.yale.edu>
10776
10777 * keyboard.c (keyremap): New struct.
10778 (read_key_sequence): Use it: globally replace keytran_foo with
10779 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
10780 keytran_next and fkey_next to just `next'.
10781
107822002-10-04 Steven Tamm <steventamm@mac.com>
10783
10784 * macterm.c (keycode_to_xkeysym_table): Change return to be
10785 treated like an X keysym.
10786
107872002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10788
10789 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
10790 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
10791 This is to also handle x/y changes that occur because of a resize.
10792
107932002-10-02 John Paul Wallington <jpw@shootybangbang.com>
10794
10795 * frame.c (Vdelete_frame_functions): New variable.
10796 (syms_of_frame): Initialize and defvar it.
10797 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
10798 it when frame's `tooltip' parameter is non-nil.
10799
10800 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
10801
10802 * w32fns.c (x_create_tip_frame): Likewise.
10803
10804 * macfns.c (x_create_tip_frame): Likewise.
10805
108062002-09-30 Kenichi Handa <handa@m17n.org>
10807
10808 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
10809 -1 before calling ccl_driver.
10810
10811 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
10812 Only when it is non-nil, handle composition sequence.
10813 (setup_coding_system) <0>: Don't force composition handling.
10814
10815 * Makefile.in (lisp, shortlisp): Add utf-16.elc
10816
108172002-09-29 Richard M. Stallman <rms@gnu.org>
10818
10819 * search.c (Freplace_match): Adjust match data for the substitution
10820 just made in the buffer.
10821
10822 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
10823 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
10824
108252002-09-27 Richard M. Stallman <rms@gnu.org>
10826
10827 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
10828 (read_char): Use them. Do all exits thru the end of the function.
10829
108302002-09-27 Kenichi Handa <handa@etl.go.jp>
10831
10832 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
10833 is nil.
10834
108352002-09-26 Richard M. Stallman <rms@gnu.org>
10836
10837 * regex.h (__restrict_arr): Don't define if already defined.
10838
10839 * coding.c (run_pre_post_conversion_on_str):
10840 Save and restore Vdeactivate_mark.
10841
108422002-09-26 John Paul Wallington <jpw@shootybangbang.com>
10843
10844 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
10845
108462002-09-26 Kenichi Handa <handa@etl.go.jp>
10847
10848 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
10849 nonzero, try face's family at first. Otherwise try FAMILY at first.
10850 (choose_face_font): If C is a single byte char or latin-1, call
10851 try_font_list with PREFER_FACE_FAMILY 1.
10852
108532002-09-21 Richard M. Stallman <rms@gnu.org>
10854
10855 * window.c (select_window_1): Don't select frame.
10856 Set frame's selected window only when frame itself is selected.
10857 (Fselect_window): Doc fix.
10858
108592002-09-18 Kim F. Storm <storm@cua.dk>
10860
10861 * process.c (make-network-process): Doc fix (there is no
10862 network-server-log-function hook).
10863
108642002-09-18 Richard M. Stallman <rms@gnu.org>
10865
10866 * print.c (print): Clear out the unused parts of Vprint_number_table.
10867 (syms_of_print): Doc fix for `print-number-table'.
10868
10869 * unexelf.c (unexec): Undo previous change.
10870
108712002-09-17 Andreas Schwab <schwab@suse.de>
10872
10873 * m/alpha.h [LINUX]: Don't define DATA_START.
10874
108752002-09-16 Dave Love <fx@gnu.org>
10876
10877 * unexelf.c (unexec): Deal with .got, reinstating change from
10878 25-08-1999.
10879
108802002-09-13 Richard M. Stallman <rms@gnu.org>
10881
10882 * s/sol2-6.h (UNEXEC): Comment out definition.
10883
10884 * unexsol.c (unexec): Don't downcase first letter of error msg.
10885
10886 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10887
108882002-09-12 Markus Rost <rost@math.ohio-state.edu>
10889
10890 * unexsol.c: Include buffer.h, charset.h, coding.h.
10891
108922002-09-11 Richard M. Stallman <rms@gnu.org>
10893
10894 * unexsol.c: Don't use report_file_error; do it by hand
10895 using dlerror.
10896
10897 * process.c (wait_reading_process_input, both versions):
10898 Before calling turn_on_atimers, call stop_polling.
10899
10900 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10901
10902 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10903 we go to too_near_end, call clear_glyph_matrix.
10904 (redisplay_window): After make_cursor_line_fully_visible,
10905 call clear_glyph_matrix and bypass `goto done'.
10906
10907 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10908 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10909
109102002-09-10 Richard M. Stallman <rms@gnu.org>
10911
10912 * fileio.c (Fdo_auto_save): Catch error making directory.
10913 Only call push_message if we need to.
10914 At the same time, make an unwind-protect to pop it.
10915 Rename local message_p to old_message_p.
10916 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10917 (do_auto_save_unwind): Don't call pop_message.
10918
10919 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10920
10921 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10922
10923 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10924
10925 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10926
109272002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10928
10929 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10930 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10931 (re_match_2_internal): Be more careful with infinite loops.
10932
109332002-09-10 Kim F. Storm <storm@cua.dk>
10934
10935 * macros.c (end_kbd_macro): New function.
10936 (Fend_kbd_macro): Use it.
10937
10938 * macros.h (end_kbd_macro): Declare extern.
10939
10940 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10941 end and save it instead of discarding it.
10942
109432002-09-09 Markus Rost <rost@math.ohio-state.edu>
10944
10945 * s/sol2-6.h: Fix typo. Add comment.
10946
109472002-09-09 Richard M. Stallman <rms@gnu.org>
10948
10949 * regex.c (regnum_t): Use signed int, not unsigned int.
10950
10951 * s/sol2-6.h: New file.
10952
10953 * s/sol2-5.h (UNEXEC): Definition deleted.
10954
109552002-09-08 Kim F. Storm <storm@cua.dk>
10956
10957 * macros.c (executing_macro_index): Change type to EMACS_INT.
10958 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10959
10960 * macros.h (executing_macro_index): Change type to EMACS_INT.
10961
109622002-09-06 Richard M. Stallman <rms@gnu.org>
10963
10964 * casetab.c (set_case_table): Make canon table point to eqv table.
10965
109662002-09-06 Juanma Barranquero <lektu@terra.es>
10967
10968 * coding.c (syms_of_coding): Fix spacing.
10969
10970 * composite.c (Fcompose_region_internal)
10971 (Fcompose_string_internal): Likewise.
10972
10973 * data.c (Flsh): Likewise.
10974
10975 * fontset.c (Fset_fontset_font): Likewise.
10976
10977 * macfns.c (Fx_server_max_request_size): Likewise.
10978
10979 * w16select.c (syms_of_win16select): Likewise.
10980
10981 * w32select.c (syms_of_w32select): Likewise.
10982
10983 * xselect.c (syms_of_xselect): Likewise.
10984
109852002-09-05 Richard M. Stallman <rms@gnu.org>
10986
10987 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10988 call EXTEND_RANGE_TABLE and return a proper value.
10989 (set_image_of_range): Don't call set_image_of_range_1
10990 if no TRANSLATE or if range includes all of Latin-1.
10991 Only call it for the Latin-1 part of the range.
10992 For other cases, make two separate ranges,
10993 one for the original specified characters and one for
10994 their case-conversions.
10995
109962002-09-04 Richard M. Stallman <rms@gnu.org>
10997
10998 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10999
11000 * window.c (displayed_window_lines): Correct for one-off bug
11001 in HEIGHT on non-window displays.
11002
11003 * regex.c (set_image_of_range_1): New function.
11004 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
11005 Return a value to indicate running out of memory.
11006 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
11007 (extend_range_table_work_area): New subroutine.
11008 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
11009 Different calling conventions, and used from set_image_of_range{,_1}.
11010 (IMMEDIATE_QUIT_CHECK): Definitions moved.
11011
110122002-09-04 Juanma Barranquero <lektu@terra.es>
11013
11014 * makefile.w32-in: All dependencies updated.
11015
110162002-09-01 Richard M. Stallman <rms@gnu.org>
11017
11018 * unexsol.c: New file.
11019
11020 * xfns.c (Qbox): Declare external, don't define.
11021
11022 * xdisp.c (redisplay_window) <force-start case>:
11023 If point is on semi-visible last line, reposition
11024 it at previous line.
11025
11026 * alloc.c (display_malloc_warning): Use display-warning.
11027 (malloc_warning_1): Function deleted.
11028
11029 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
11030
11031 * lread.c (read1): Handle #! by skipping the line.
11032
110332002-08-31 Richard M. Stallman <rms@gnu.org>
11034
11035 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
11036 Don't include LDFLAGS.
11037 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
11038
110392002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
11040
11041 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
11042 member of x_display_info unless we compile for some window system.
11043
110442002-08-31 Kim F. Storm <storm@cua.dk>
11045
11046 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
11047 (get_window_cursor_type): Don't use them.
11048 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
11049
110502002-08-30 Kenichi Handa <handa@etl.go.jp>
11051
11052 * xdisp.c (get_next_display_element): Fix previous change.
11053
110542002-08-30 Andrew Choi <akochoi@shaw.ca>
11055
11056 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
11057 (expose_window): Use it to fix the display of overlapping
11058 rows (merge code from xterm.c).
11059
11060 * macfns.c (Qbox): Add extern declaration.
11061
110622002-08-30 Juanma Barranquero <lektu@terra.es>
11063
11064 * w32fns.c (Qbox): Make extern.
11065 (syms_of_w32fns): Remove initialization of Qbox.
11066
110672002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
11068
11069 * xfns.c (Fx_open_connection): Fix error message.
11070
110712002-08-30 Kim F. Storm <storm@cua.dk>
11072
11073 The following changes consolidates the handling of the cursor
11074 type in xdisp.c, moving duplicate code and functionality from
11075 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
11076
11077 * frame.h (enum text_cursor_kinds): Consolidated here.
11078 Added DEFAULT_CURSOR value.
11079 (struct frame) <desired_cursor, cursor_width>
11080 <blink_off_cursor, blink_off_cursor_width>: New fields.
11081 Consolidated from output_x, output_w32 and output_mac structs.
11082 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11083 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
11084
11085 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
11086 Variables consolidated here.
11087 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
11088 (Vcursor_in_non_selected_windows): Renamed from
11089 cursor_in_non_selected_windows and changed to Lisp_Object.
11090 (syms_of_xdisp): Define and staticpro new and moved variables.
11091 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
11092 consolidated here. Recognize Qhollow setting.
11093 (set_frame_cursor_types): New function to set frame cursor types
11094 based on the frame parameters.
11095 (get_window_cursor_type): New function to calculate new cursor
11096 type and width for the specified window. Based on duplicated
11097 code consolidated here.
11098 Enhancements: cursor-in-non-selected-windows may be a cursor type,
11099 check buffer-local alternate-cursor-type and blink-cursor-alist
11100 before using built-in blink off methods.
11101
11102 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
11103
11104 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
11105 (get_specified_cursor_type, get_window_cursor_type)
11106 (set_frame_cursor_types): Added prototypes.
11107
11108 * macfns.c (x_specified_cursor_type): Removed.
11109 (x_set_cursor_type): Use set_frame_cursor_types.
11110 (Qbar, Qbox): Removed.
11111 (syms_of_macfns): Don't intern or staticpro them.
11112
11113 * macterm.c (x_specified_cursor_type): Remove prototype.
11114 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11115 (x_display_and_set_cursor): Use get_window_cursor_type.
11116 Remove unused local variables cursor_non_selected, active_cursor.
11117 Redraw cursor if hbar cursor width changes.
11118 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
11119
11120 * macterm.h (enum text_cursor_kinds): Removed.
11121 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
11122 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11123 (FRAME_DESIRED_CURSOR): Macro removed.
11124
11125 * w32fns.c (Vblink_cursor_alist): Removed.
11126 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11127 (syms_of_w32fns): Don't intern, staticpro, or define them.
11128 (x_specified_cursor_type): Removed.
11129 (x_set_cursor_type): Use set_frame_cursor_types.
11130
11131 * w32term.c (x_specified_cursor_type): Remove prototype.
11132 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11133 (x_display_and_set_cursor): Use get_window_cursor_type.
11134 Remove unused local variables cursor_off_state.
11135 Redraw cursor if hbar cursor width changes.
11136 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
11137
11138 * w32term.h (enum text_cursor_kinds): Removed.
11139 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
11140 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11141 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11142 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11143 (struct w32_display_info) <x_highlight_frame>: Renamed member from
11144 w32_highlight_frame.
11145
11146 * xfns.c (Vblink_cursor_alist): Removed.
11147 (Qbar, Qhbar, Qbox, Qhollow): Removed.
11148 (syms_of_xfns): Don't intern, staticpro, or define them.
11149 (x_specified_cursor_type): Removed.
11150 (x_set_cursor_type): Use set_frame_cursor_types.
11151
11152 * xterm.c (x_specified_cursor_type): Remove prototype.
11153 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
11154 (x_display_and_set_cursor): Use get_window_cursor_type.
11155 Remove unused local variables cursor_off_state.
11156 Redraw cursor if hbar cursor width changes.
11157
11158 * xterm.h (enum text_cursor_kinds): Removed.
11159 (struct output_x) <current_cursor, desired_cursor, cursor_width>
11160 <blink_off_cursor, blink_off_cursor_width>: Members removed.
11161 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
11162 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
11163 (x_specified_cursor_type): Remove prototype.
11164
111652002-08-28 Richard M. Stallman <rms@gnu.org>
11166
11167 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11168 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11169 (Vblink_cursor_alist): New variable.
11170 (syms_of_w32fns): Initialize and defvar it.
11171 (x_specified_cursor_type): Recognize Qbox for filled box.
11172 Exceptions are hollow boxes.
11173 (Qbox, Qhollow): New variables.
11174 (syms_of_w32fns): Initialize and staticpro them.
11175
11176 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11177 New macros.
11178 (struct w32_output): New fields blink_off_cursor,
11179 blink_off_cursor_width.
11180 (FRAME_CURSOR_WIDTH): New macro.
11181
11182 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11183 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11184
11185 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11186 for bar cursor.
11187
11188 * w32term.c (expose_overlaps): New function.
11189 (expose_window): Use it to fix the display of overlapping rows.
11190
111912002-08-28 Simon Josefsson <jas@extundo.com>
11192
11193 * xfns.c (Fx_open_connection): Improve help when X connection
11194 fails, xhost is insecure and xauth is better.
11195
111962002-08-28 Juanma Barranquero <lektu@terra.es>
11197
11198 * makefile.w32-in: Add missing dependencies on w32term.h and
11199 composite.h.
11200
11201 * emacs.c (USAGE1): Add missing newline.
11202
112032002-08-27 Andrew Choi <akochoi@shaw.ca>
11204
11205 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
11206
112072002-08-27 Richard M. Stallman <rms@gnu.org>
11208
11209 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
11210 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
11211 (Vblink_cursor_alist): New variable.
11212 (syms_of_xfns): Initialize and defvar it.
11213 (x_specified_cursor_type): Recognize Qbox for filled box.
11214 Exceptions are hollow boxes.
11215 (Qbox, Qhollow): New variables.
11216 (syms_of_xfns): Initialize and staticpro them.
11217
11218 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
11219 New macros.
11220 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
11221
11222 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
11223 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
11224
11225 * emacs.c (main): Handle --script.
11226 (USAGE1): Mention --script.
11227 (standard_args): Define sort order for --script.
11228
112292002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
11230
11231 * xdisp.c (redisplay_updating_p): Variable removed.
11232 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
11233 New variables.
11234 (init_iterator): Don't free realized faces if
11235 inhibit_free_realized_faces is set.
11236 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
11237 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
11238 initialize Qinhibit_free_realized_faces.
11239
11240 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
11241 when iterator is adding glyphs to a glyph matrix.
11242
112432002-08-27 Kenichi Handa <handa@etl.go.jp>
11244
11245 * xdisp.c (get_next_display_element): In unibyte case, don't use
11246 octal form for such eight-bit characters that can be converted to
11247 multibyte char.
11248
112492002-08-26 Kim F. Storm <storm@cua.dk>
11250
b6189c3b
KS
11251 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
11252 foreground and background colors. From Joe Buehler.
048addec
JD
11253
112542002-08-26 Miles Bader <miles@gnu.org>
11255
11256 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
11257
112582002-08-25 Andrew Choi <akochoi@shaw.ca>
11259
11260 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
11261 defined instead of MAC_OSX.
11262
11263 * s/darwin.h (select): Define select to sys_select only if
11264 HAVE_CARBON is defined.
11265 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
11266 (DONT_REOPEN_PTY): #def it.
11267
11268 * macterm.c (XTread_socket): Remove code to call
11269 SendEventToEventTarget for keys with command modifiers when
11270 mac_command_key_is_meta is nil.
11271
112722002-08-24 Andreas Schwab <schwab@suse.de>
11273
11274 * eval.c (Fdefvar): Fix last change.
11275
112762002-08-23 Richard M. Stallman <rms@gnu.org>
11277
11278 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
11279 Record variables in load history as (defvar . VAR).
11280 (Fdefvar): Don't record in load history if no initial value.
11281 (Qdefvar): New variable.
11282 (syms_of_eval): Init and staticpro it.
11283
11284 * lread.c (syms_of_lread): Doc fix.
11285 (build_load_history): Use Fmember to see if a definition
11286 is already in the Vload_history element.
11287
11288 * process.c (Fstart_process): Remove /: from program name.
11289
11290 * emacs.c (decode_env_path): Don't add /: if file name handler
11291 has a `safe-magic' property.
11292
11293 * callproc.c (Fcall_process): Remove /: from program name.
11294
112952002-08-23 Stefan Monnier <monnier@cs.yale.edu>
11296
11297 * regex.c (PATFETCH): Remove the translating fetch.
11298 (PATFETCH_RAW): Rename to PATFETCH.
11299 (set_image_of_range): New fun.
11300 (SET_RANGE_TABLE_WORK_AREA): Use it.
11301 (regex_compile): Don't translate the pattern chars so eagerly.
11302 Only do it when inserting an `exactn' bytecode or when handling
11303 a char-range.
11304 (mutually_exclusive_p): Avoid empty statement.
11305
113062002-08-22 Kim F. Storm <storm@cua.dk>
11307
11308 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
11309 end up on a partially visible line; this reverts a specific part
11310 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
11311 display error which has been reported several times now.
11312 However it introduces the problem that changes was supposed to fix.
11313 See my comments in the source if you want to debug this further.
11314
113152002-08-20 Kenichi Handa <handa@etl.go.jp>
11316
11317 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11318
113192002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
11320
11321 * msdos.c (croak): Add `void' to definition.
11322
c1380aa6 11323 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
11324 Don't define them, they are defined in msdos.c.
11325
11326 * mem-limits.h [MSDOS]: Declare etext.
11327
11328 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
11329 `const' since CORRECT_DIR_SEPS modifies its target.
11330
113312002-08-19 Kim F. Storm <storm@cua.dk>
11332
2fb0ce67 11333 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
11334 KEEP-RECORD to avoid clearing lossage when we just want to clear
11335 the current key sequence (kmacro needs this).
11336
113372002-08-19 Kenichi Handa <handa@localhost>
11338
11339 * composite.c (run_composition_function): Call FUNC if it is fboundp.
11340
11341 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
11342 cons, return Qnil.
11343
113442002-08-17 Richard M. Stallman <rms@gnu.org>
11345
11346 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
11347
11348 * sysdep.c [!VMS]: Include sys/files.h.
11349
11350 * editfns.c (save_restriction_restore): Defend from unchained marker.
11351
11352 * buffer.c (overlays_at): Handle extending vec uniformly.
11353 (overlays_in): Handle extending vec from length 0 as in overlays_at.
11354
113552002-08-15 Andrew Choi <akochoi@shaw.ca>
11356
11357 * mac.c (init_mac_osx_environment): New function.
11358
11359 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
11360
113612002-08-14 Kim F. Storm <storm@cua.dk>
11362
11363 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
11364 executing macro before appending to it (when used from Lisp).
11365 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
11366 which is called prior to each iteration of macro (for kmacro.el).
11367 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
11368
11369 * lisp.h (Fexecute_kbd_macro): Update prototype.
11370
11371 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
11372
113732002-08-14 Kenichi Handa <handa@etl.go.jp>
11374
11375 * xselect.c (QUTF8_STRING): New variable.
11376 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
11377 (x_atom_to_symbol): Likewise.
11378 (x_get_local_selection): New argument local_request. If it is
11379 nonzero, call handler_fn with the second arg nil.
11380 (x_handle_selection_request): Call x_get_local_selection with
11381 local_request 0.
11382 (lisp_data_to_selection_data): Don't encode the string here.
11383 (Fx_get_selection_internal): Call x_get_local_selection with
11384 local_request 1.
11385 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
11386
11387 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
11388
11389 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
11390
113912002-08-13 Richard M. Stallman <rms@gnu.org>
11392
11393 * minibuf.c (Fminibufferp): New function.
11394 (syms_of_minibuf): Defsubr it.
11395 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
11396
113972002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
11398
11399 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
11400
114012002-08-12 Richard M. Stallman <rms@gnu.org>
11402
11403 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
11404 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
11405 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
11406 already.
11407
11408 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
11409
114102002-08-11 Andrew Choi <akochoi@shaw.ca>
11411
11412 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
11413 (Vmac_pass_command_to_system): New variable.
11414 (Vmac_pass_control_to_system): New variable.
11415 (do_mouse_moved): Check wp with is_emacs_window.
11416 (XTread_socket): Check window_ptr with is_emacs_window.
11417 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
11418 events back to Mac Toolbox for processing, depending on values of
11419 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
11420 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
11421 Vmac_pass_control_to_system.
11422
114232002-08-10 Kenichi Handa <handa@etl.go.jp>
11424
11425 * coding.c (unencodable_char_position): New function.
11426 (Funencodable_char_position): New function.
11427 (syms_of_coding): Defsubr Funencodable_char_position.
11428
114292002-08-10 Andrew Choi <akochoi@shaw.ca>
11430
11431 * mac.c (sys_select) [MAC_OSX]: New function.
11432
11433 * macterm.c (MakeMeTheFrontProcess): New function.
11434 (mac_initialize): Call MakeMeTheFrontProcess.
11435
11436 * s/darwin.h: Define select to sys_select.
11437
114382002-08-09 Richard M. Stallman <rms@gnu.org>
11439
11440 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
11441
114422002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
11443
11444 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
11445 end of the buffer.
11446
114472002-08-08 Ken Raeburn <raeburn@mit.edu>
11448
11449 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
11450
11451 * puresize.h (BASE_PURESIZE): Increase to 910000.
11452
114532002-08-08 Kenichi Handa <handa@etl.go.jp>
11454
11455 * coding.c (Ffind_operation_coding_system): For write-region, if
11456 VISIT is a filename, make it the target.
11457
114582002-08-07 Richard M. Stallman <rms@gnu.org>
11459
11460 * alloc.c (mark_object): Detect long lists for debugging.
11461 (mark_object_loop_halt): New variable.
11462
11463 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
11464
11465 * data.c (Fmake_variable_frame_local): Doc fix.
11466
114672002-08-01 David Ponce <david@dponce.com>
11468
11469 * w32menu.c (local_heap, local_alloc, local_free): New macros.
11470 (malloc_widget_value, free_widget_value)
11471 (w32_free_submenu_strings): Use them.
11472
11473 (push_submenu_start, push_submenu_end, push_left_right_boundary)
11474 (push_menu_pane, push_menu_item, single_keymap_panes)
11475 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
11476 (single_submenu, set_frame_menubar)
11477 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
11478
11479 (Fx_popup_menu): Don't show pop up menu until preceding one is
11480 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
11481
11482 * w32menu.c: Changes adapted from xmenu.c
11483 (set_frame_menubar): First parse all submenus,
11484 then make widget_value trees from them.
11485 Don't allocate any widget_value objects
11486 until we are done with the parsing.
11487 (parse_single_submenu): New function.
11488 (digest_single_submenu): New function.
11489 (single_submenu): Function deleted, replaced by those two.
11490
114912002-08-04 Andrew Choi <akochoi@shaw.ca>
11492
11493 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
11494 returns a valid window pointer before proceeding for keyDown and
11495 autoKey events.
11496
114972002-08-03 Andrew Choi <akochoi@shaw.ca>
11498
11499 * macterm.c (USE_CARBON_EVENTS): New macro.
11500 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
11501 (x_iconify_frame): Call CollapseWindow.
11502 (Vmac_reverse_ctrl_meta): New variable.
11503 (Vmac_wheel_button_is_mouse_2): New variable.
11504 (init_mac_drag_n_drop): New function.
11505 (mac_do_receive_drag): New function.
11506 (mac_handle_service_event): New function.
11507 (init_service_handler): New function.
11508 (mac_to_emacs_modifiers): New function.
11509 (mac_event_to_emacs_modifiers): New function.
11510 (mac_get_mouse_btn): New function.
11511 (mac_convert_event_ref): New function.
11512 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
11513 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
11514 mac_get_mouse_btn.
11515 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
11516
11517 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
11518 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
11519 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
11520 TOOL_BAR_EVENT for MAC_OS as well.
11521 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
11522 as for WINDOWS_NT.
11523 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
11524
11525 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
11526
115272002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
11528
11529 * xdisp.c (forward_to_next_line_start): Fix a condition that
11530 lead to a newline being skipped.
11531
115322002-08-02 Andrew Choi <akochoi@shaw.ca>
11533
11534 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
11535
115362002-08-01 Richard M. Stallman <rms@gnu.org>
11537
11538 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
11539
115402002-07-31 Andrew Choi <akochoi@shaw.ca>
11541
11542 * macfns.c: #undef init_process before #define-ing it.
11543
11544 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
11545 HAVE_CARBON is defined.
11546
115472002-07-31 Richard M. Stallman <rms@gnu.org>
11548
11549 * xmenu.c (set_frame_menubar): First parse all submenus,
11550 then make widget_value trees from them.
11551 Don't allocate any widget_value objects
11552 until we are done with the parsing.
11553 (parse_single_submenu): New function.
11554 (digest_single_submenu): New function.
11555 (single_submenu): Function deleted, replaced by those two.
11556
115572002-07-30 Juanma Barranquero <lektu@terra.es>
11558
11559 * w32proc.c (syms_of_ntproc): Fix docstring of
11560 `w32-get-true-file-attributes'.
11561
115622002-07-28 Richard M. Stallman <rms@gnu.org>
11563
11564 * s/hpux8.h (HPUX8): Define this before including hpux.h.
11565 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
11566
11567 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
11568
11569 * keyboard.c (make_lispy_event):
11570 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
11571 Explicitly clear up_modifier in event->modifiers.
11572
115732002-07-27 Richard M. Stallman <rms@gnu.org>
11574
11575 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
11576
11577 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
11578 for bar cursor.
11579
115802002-07-26 Kenichi Handa <handa@etl.go.jp>
11581
11582 * coding.c (detect_coding_iso2022): While checking a byte sequence
11583 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
11584 it in the normal loop.
11585
115862002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
11587
11588 * xterm.c (expose_overlaps): New function.
11589 (expose_window): Use it to fix the display of overlapping rows.
11590
11591 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
11592
115932002-07-23 Ken Raeburn <raeburn@gnu.org>
11594
11595 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
11596 since it only depends on XUINT.
11597
11598 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
11599 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
11600 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
11601 Macros deleted.
3947677c 11602
77d1daf2
AS
11603 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
11604 its value over other approaches.
11605 * sysdep.c (start_of_data): Don't define the function if a macro
11606 form has been defined.
8a8e19a3 11607
048addec
JD
116082002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
11609
11610 * xdisp.c (redisplay_updating_p): New variable.
11611 (init_iterator): Don't free realized faces when
11612 redisplay_updating_p is set.
11613 (redisplay_internal): Set redisplay_updating_p while updating
11614 the display.
11615
116162002-07-23 Richard M. Stallman <rms@gnu.org>
11617
11618 * editfns.c (Fmessage): Treat "" like nil.
11619
116202002-07-23 Kenichi Handa <handa@etl.go.jp>
11621
11622 * xdisp.c (face_before_or_after_it_pos):
11623 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
11624
116252002-07-22 Juanma Barranquero <lektu@terra.es>
11626
11627 * callproc.c (init_callproc) [DOS_NT]:
11628 Initialize Vshared_game_score_directory to nil.
11629 (syms_of_callproc) [DOS_NT]: Likewise.
11630
116312002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
11632
11633 * xdisp.c (display_line): Replace an abort with xassert.
11634
116352002-07-21 Richard M. Stallman <rms@gnu.org>
11636
11637 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
11638 and END_UNCHANGED when setting buffer_unchanged_p.
11639 Use current_matrix_up_to_date_p to decide whether to use
11640 try_cursor_movement.
11641
11642 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
11643
11644 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
11645
11646 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
11647 Set to nil if dir does not exist.
11648 (syms_of_callproc): Init unconditionally and simply.
11649
11650 * buffer.c (Fbuffer_list): Doc fix.
11651
116522002-07-21 Ken Raeburn <raeburn@gnu.org>
11653
11654 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
11655
11656 * buffer.c (mmap_realloc): When shrinking, make sure number of
11657 pages to unmap is rounded towards zero.
11658
11659 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
11660 (XSETINT): Deleted.
11661
11662 * m/att3b.h (XINT): Don't define.
11663 (VALBITS, VALMASK, XTYPE): Deleted.
11664 (DATA_SEG_BITS): Define.
11665 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
11666 ARRAY_MARK_FLAG): Deleted.
11667 (DATA_SEG_BITS): Define.
11668 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
11669 (DATA_SEG_BITS): Define.
11670
116712002-07-20 Richard M. Stallman <rms@gnu.org>
11672
11673 * print.c (print_error_message): New args CONTEXT and CALLER.
11674 Calls changed.
11675
11676 * lisp.h (print_error_message): Declare new args.
11677
11678 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
11679 and CONTEXT to print_error_message, don't print them here.
11680 For a Quit, don't use Vsignaling_function.
11681 Call message_log_maybe_newline.
11682
11683 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
11684
116852002-07-20 Kim F. Storm <storm@cua.dk>
11686
11687 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
11688
116892002-07-19 Ken Raeburn <raeburn@gnu.org>
11690
11691 * bytecode.c (struct byte_stack): Pointers into byte string now
11692 point to const.
11693 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
11694 const.
11695 * charset.h (BCOPY_SHORT): Source pointer now points to const.
11696 * coding.c (encode_eol, detect_coding, detect_eol):
11697 (decode_coding, encode_coding, detect_coding_system):
11698 Source strings now treated as const.
11699 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
11700 modify Lisp string contents.
11701 * coding.h (decode_coding, encode_coding, detect_coding,
11702 detect_eol): Declarations updated.
11703 * composite.c (compose_chars_in_text): Treat Lisp string contents
11704 as const.
11705 * dispnew.c (safe_bcopy): Source pointer now points to const.
11706 * lisp.h (STRING_COPYIN): New macro.
11707 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
11708 (internal_with_output_to_temp_buffer): Declarations updated.
11709 * print.c (temp_output_buffer_setup):
11710 (internal_with_output_to_temp_buffer): Buffer name argument is now
11711 pointer to const.
11712 * sound.c (struct sound_device): Function pointer field "write"
11713 buffer argument now points to const.
11714 (vox_write): Buffer argument points to const.
11715 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
11716 contents as const.
11717 * sysdep.c (emacs_write): Buffer pointer now const.
11718 * term.c (encode_terminal_code): Buffer pointer now const.
11719 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
11720 (x_face_list_fonts, x_update_menu_appearance):
11721 (hash_string_case_insensitive): Treat Lisp string contents as const.
11722
117232002-07-19 Juanma Barranquero <lektu@terra.es>
11724
048addec
JD
11725 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
11726
11727 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
11728 (Ffile_name_as_directory): Fix argument name in docstring.
11729 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
11730
117312002-07-18 Richard M. Stallman <rms@gnu.org>
11732
11733 * data.c (Fdefalias): Doc fix.
11734
117352002-07-17 Dave Love <fx@gnu.org>
11736
11737 * intervals.h (text_property_stickiness): Use P_.
11738
11739 * ccl.c: Remove `emacs' conditionals.
11740 (ccl_backtrace_table): Fix size spec.
11741 (ccl_driver): Fix type errors.
11742
117432002-07-16 Ken Raeburn <raeburn@gnu.org>
11744
11745 * alloc.c (xstrdup, make_string, make_unibyte_string)
11746 (make_multibyte_string, build_string): String pointer args now
11747 point to const.
11748 * charset.c (find_charset_in_text, c_string_width):
11749 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
11750 * fileio.c (report_file_error):
11751 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
11752 (count_combining_before, count_combining_after, insert_1_both):
11753 (insert, insert_and_inherit, insert_string):
11754 (insert_before_markers, insert_before_markers_and_inherit):
11755 * lread.c (intern, oblookup, hash_string):
11756 * minibuf.c (temp_echo_area_glyphs):
11757 * search.c (fast_c_string_match_ignore_case):
11758 * sysdep.c (emacs_open, set_file_times):
11759 * xfaces.c (xstricmp):
11760 * xdisp.c (store_frame_title, string_char_and_length):
11761 (message_dolog, message2, message2_nolog, set_message): Likewise.
11762 (set_message_1): Cast message string argument to const pointer.
11763 * editfns.c (general_insert_function): Insertion function now
11764 takes pointer to const for input data.
11765 * charset.h (find_charset_in_text, c_string_width):
11766 (parse_str_as_multibyte): Declarations updated.
11767 * dispextern.h (xstricmp): Declaration updated.
11768 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
11769 (count_size_as_multibyte, count_combining_before):
11770 (count_combining_after, insert_1, insert_1_both, message_dolog):
11771 (insert, insert_and_inherit, insert_before_markers)
11772 (insert_before_markers_and_inherit, set_message, message2):
11773 (message2_dolog, build_string, make_string, make_unibyte_string):
11774 (make_multibyte_string, intern, oblookup, report_file_error):
11775 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
11776 (emacs_open, xstrdup): Declarations updated.
11777 * systime.h (set_file_times): Declaration updated.
11778
11779 * charset.c (find_charset_in_text, lisp_string_width): Use const
11780 for pointer to lisp string data.
11781 * charset.h (FETCH_STRING_CHAR_ADVANCE):
11782 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
11783 * coding.c (Ffind_coding_systems_region_interval):
11784 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
11785 (Fmake_directory_internal, Fdelete_directory):
11786 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
11787 * fontset.c (font_family_registry, fs_query_fontset):
11788 (list_fontsets):
11789 * frame.c (Fframe_parameter):
11790 * keyboard.c (cmd_error_internal):
11791 * keymap.c (Fdescribe_buffer_bindings):
11792 * lread.c (complete_filename_p, openp):
11793 * minibuf.c (Fminibuffer_complete_word):
11794 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
11795 (face_before_or_after_it_pos, next_element_from_string):
11796 (get_overlay_arrow_glyph_row, display_mode_element):
11797 (decode_mode_spec_coding):
11798 * xterm.c (same_x_server): Likewise.
11799
11800 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
11801 settings of non-existent fields.
11802
11803 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
11804 copy a lisp value.
11805
11806 * lread.c (Fintern_soft): Use string macros instead of
11807 Lisp_String fields.
11808 * keyboard.c (echo_char, parse_modifiers_uncached):
11809 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
11810 * textprop.c (validate_interval_range, interval_of): Likewise.
11811
11812 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
11813
11814 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11815 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
11816 XSTRING()->size_byte.
11817
11818 * lisp.h (SDATA, SREF): Produce rvalue.
11819 (SSET): New macro.
11820 * alloc.c (make_event_array): Use SSET for storing into a string.
11821 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
11822 a string.
11823 * casefiddle.c (casify_object): Use SSET.
11824 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11825 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
11826 address of string contents.
11827 * data.c (Faref): Use SDATA.
11828 (Faset): Use SDATA, SSET.
11829 * dired.c (directory_files_internal): Use SSET.
11830 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
11831 (Fread_file_name): Use SREF, SSET.
11832 * fns.c (concat): Use SSET.
11833 (concat, Fdelete): Use SDATA.
11834 * insdel.c (insert_from_string_1): Use SDATA.
11835 * keyboard.c (Fevent_convert_list): Use SREF.
11836 * lread.c (Fload): Use SDATA, SSET.
11837 * macfns.c (validate_x_resource_name): Use SSET.
11838 * process.c (status_message): Use SSET.
11839 * search.c (wordify): Use SDATA.
11840 (Freplace_match): Use SREF.
11841 * w32fns.c (validate_x_resource_name): Use SSET.
11842 * xfns.c (validate_x_resource_name): Use SSET.
11843 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
11844
118452002-07-16 Richard M. Stallman <rms@gnu.org>
11846
11847 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
11848
11849 * xdisp.c (reconsider_clip_changes):
11850 Don't test prevent_redisplay_optimizations_p.
11851 (redisplay_internal): Test prevent_redisplay_optimizations_p
11852 along with clip_changed in some cases.
11853 (try_window_id): Likewise.
11854 (redisplay_window): New local var buffer_unchanged_p.
11855
11856 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11857
11858 * process.c (create_process): Test USG_SUBTTY_WORKS.
11859 (process_send_signal): Clean up handling of GID.
11860 Detect errors in ioctls meant to set GID.
11861
11862 * window.c (temp_output_buffer_show):
11863 Don't set prevent_redisplay_optimizations_p.
11864
118652002-07-15 Juanma Barranquero <lektu@terra.es>
11866
11867 * eval.c (Fdefvaralias): Add docstring argument.
11868
118692002-07-15 Ken Raeburn <raeburn@gnu.org>
11870
11871 * lisp.h (STRING_INTERVALS): Produce rvalue.
11872 (STRING_SET_INTERVALS): New macro.
11873 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11874 * fns.c (Fstring_as_multibyte): Likewise.
11875 * intervals.c (balance_possible_root_interval, delete_interval)
11876 (create_root_interval, copy_intervals_to_string): Likewise.
11877 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11878 instead of 0.
11879
118802002-07-14 Ken Raeburn <raeburn@gnu.org>
11881
11882 * lisp.h (STRING_SET_CHARS): New macro.
11883 (SCHARS, SBYTES): Produce rvalues.
11884 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11885 * fns.c (concat): Likewise.
11886 * lread.c (read_vector): Likewise.
11887
11888 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11889 (STRING_SET_UNIBYTE): New macro.
11890 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11891 length of -1) changed to use STRING_SET_UNIBYTE.
11892 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11893 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11894 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11895 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11896 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11897 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11898 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11899 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11900 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11901 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11902 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11903 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11904 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11905 unchanged for now.
11906
119072002-07-13 Kim F. Storm <storm@cua.dk>
11908
11909 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11910
119112002-07-12 Richard M. Stallman <rms@gnu.org>
11912
11913 * fileio.c (Fwrite_region): Doc fix.
11914
11915 * print.c (print_error_message): Don't handle Vsignaling_function here.
11916
11917 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11918 (command_loop_1): Avoid certain actions after memory-full error.
11919
11920 * eval.c (Fsignal): Don't call cancel_hourglass.
11921 For a memory-full error, don't call Vsignal_hook_function
11922 and don't set Vsignaling_function.
11923
11924 * process.c (process_send_signal): Add abort call.
11925
119262002-07-11 Markus Rost <rost@math.ohio-state.edu>
11927
11928 * keymap.c (Fkey_binding): Fix typo.
11929
119302002-07-11 Richard M. Stallman <rms@gnu.org>
11931
11932 * alloc.c (Vmemory_full): New variable.
11933 (Vmemory_signal_data): Renamed from memory_signal_data.
11934 Uses changed.
11935 (syms_of_alloc): Defvar them.
11936 (memory_full, buffer_memory_full): Set Vmemory_full.
11937
11938 * lisp.h (Vmemory_full): Add declaration.
11939 (current_column, indented_beyond_p): Change declaration.
11940
11941 * indent.c (last_known_column): Declare as double, not float.
11942 (current_column, current_column_1, string_display_width)
11943 (position_indentation): Return `double'.
11944 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11945
11946 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11947 (back_to_previous_visible_line_start)
11948 (reseat_at_next_visible_line_start, next_element_from_buffer):
11949 Use `double', not `float', when calling indented_beyond_p.
11950
11951 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11952
11953 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11954
119552002-07-11 Juanma Barranquero <lektu@terra.es>
11956
11957 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11958 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11959 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11960 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11961 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11962 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11963
119642002-07-10 Juanma Barranquero <lektu@terra.es>
11965
d814862a
JB
11966 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11967 All callers changed.
048addec
JD
11968
119692002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11970
11971 * data.c (Fdefalias): Add an optional `docstring' argument.
11972 (set_internal, Fsetq_default): Use XCAR/XCDR.
11973
11974 * composite.c (HASH_VALUE, HASH_KEY):
11975 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11976
119772002-07-09 Kenichi Handa <handa@etl.go.jp>
11978
11979 * callproc.c (Fcall_process): Fix previous change.
11980
119812002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11982
11983 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11984 Add support for hash-tables.
11985 (Ftry_completion): Return t even if the string appears multiple times.
11986
11987 * fns.c (Fnconc): Use XCDR.
11988 (Fprovide): Use CONSP and XCDR.
11989 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11990 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11991 (Fmake_hash_table): Accept `:size nil'.
11992 (Fmakehash): Delete: moved to subr.el.
11993 (syms_of_fns): Don't defsubr makehash.
11994
11995 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11996 (HASH_TABLE_SIZE): Move from fns.c.
11997
119982002-07-07 Richard M. Stallman <rms@gnu.org>
11999
12000 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
12001 Instead just return 0 when there is something to be done.
12002 (try_scrolling): If make_cursor_line_fully_visible returns 0,
12003 retry scrolling as if cursor were off the bottom.
12004 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
12005 return CURSOR_MOVEMENT_MUST_SCROLL.
12006 (redisplay_window): If make_cursor_line_fully_visible returns 0,
12007 go to try_to_scroll.
12008
12009 * buffer.c (Fbuffer_local_value): Store current value into its binding
12010 so we get the up-to-date value for the binding that is loaded.
12011
12012 * eval.c (Fdefmacro): Doc fix.
12013
120142002-07-05 Dave Love <fx@gnu.org>
12015
12016 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
12017 correctly.
12018
12019 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
12020 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
12021 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
12022 CCL_LookupCharConstTbl.
12023 (syms_of_ccl): Defvar translation-hash-table-vector.
12024
120252002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12026
12027 * xdisp.c: Remove unused variable `face'.
12028
120292002-07-04 Juanma Barranquero <lektu@terra.es>
12030
12031 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
12032 obsolescence information.
12033
120342002-07-03 Andrew Choi <akochoi@shaw.ca>
12035
12036 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
12037 pattern. Search cache first.
12038 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
12039 for Japanese font.
12040 (XLoadQueryFont): Use it.
12041
120422002-07-02 Richard M. Stallman <rms@gnu.org>
12043
12044 * keymap.c (Fdefine_key): Doc fix.
12045
12046 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
12047
120482002-07-02 Juanma Barranquero <lektu@terra.es>
12049
12050 * keymap.c (syms_of_keymap): Fix typo.
12051
120522002-07-01 Andrew Choi <akochoi@shaw.ca>
12053
12054 * s/darwin.h: Define POSIX_SIGNALS.
12055
12056 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
12057 and FSRefMakePath to convert FSSpec returned with Apple Event to
12058 Posix pathname.
12059 (mac_initialize) [TARGET_API_MAC_CARBON]:
12060 Call init_required_apple_events and disable the `Quit' menu item
12061 provided automatically by the Carbon Toolbox.
12062
120632002-07-01 Dave Love <fx@gnu.org>
12064
12065 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12066 for K&R.
12067
12068 * xterm.c: Fix prototype for K&R.
12069
12070 * term.c (costs_set): Declare static, non-initialized for pcc.
12071
120722002-07-01 Richard M. Stallman <rms@gnu.org>
12073
12074 * keyboard.c (timer_last_idleness_start_time): New variable.
12075 (timer_start_idle): Set that.
12076 (read_key_sequence): Use that to reset timer_idleness_start_time
12077 to previous value.
12078
12079 * window.c (Frecenter): With arg, set optional_new_start.
12080
12081 * xdisp.c (redisplay_internal): Make optional_new_start really work.
12082
12083 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
12084 buffer for completion.
12085
120862002-06-29 Ken Raeburn <raeburn@gnu.org>
12087
12088 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
12089
120902002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12091
12092 * keyboard.c (readable_filtered_events): New function that filters
12093 FOCUS_IN_EVENT depending on parameter.
12094 (readable_events): Calls readable_filtered_events, not filtering
12095 FOCUS_IN_EVENT.
12096 (get_filtered_input_pending): New function, filtering parameter passed
12097 to readable_filtered_events.
12098 (get_input_pending): Calls get_filtered_input_pending, not filtering
12099 FOCUS_IN_EVENT.
12100 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
12101 FOCUS_IN_EVENT.
12102
12103 * xterm.h (struct x_output): Add focus_state.
12104
12105 * xterm.c (x_focus_changed): New function.
12106 (x_detect_focus_change): New function.
12107 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
12108 EnterNotify and LeaveNotify to track X focus changes.
12109
121102002-06-28 Andreas Schwab <schwab@suse.de>
12111
12112 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
12113
121142002-06-27 Kim F. Storm <storm@cua.dk>
12115
12116 * xdisp.c: (mode_line_string_list, mode_line_string_face)
12117 (mode_line_string_face_prop): New variables.
12118 (store_mode_line_string): New function.
12119 (display_mode_element): Use store_mode_line_string to
12120 add mode-line string elements to mode_line_string_list
12121 when mode_line_string_list is non-nil.
12122 (Fformat_mode_line): Now returns propertized string by
12123 default. New arg NO-PROPS to ignore properties.
12124 (decode_mode_spec): Only add two dashes for %- in propertized
12125 mode-line string.
12126 (syms_of_xdisp): Init and staticpro mode_line_string_list.
12127
121282002-06-27 Stefan Monnier <monnier@cs.yale.edu>
12129
12130 * minibuf.c (minibuffer_completion_contents): Add return type.
12131
121322002-06-27 Juanma Barranquero <lektu@terra.es>
12133
12134 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
12135
121362002-06-26 Juanma Barranquero <lektu@terra.es>
12137
12138 * fileio.c (read_file_name_cleanup): Add missing return.
12139
121402002-06-26 Richard M. Stallman <rms@gnu.org>
12141
12142 * window.c (Frecenter): Don't set force_start flag.
12143
12144 * minibuf.c (do_completion, Fminibuffer_complete_word)
12145 (Fminibuffer_completion_help): Complete just the text before point.
12146 (minibuffer_completion_contents): New function.
12147
12148 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
12149
12150 * frame.c (frames_bury_buffer): Function deleted.
12151
121522002-06-25 Miles Bader <miles@gnu.org>
12153
12154 * callint.c (Fcall_interactively): When checking to see if doprnt hit
12155 the end of callint_message, allow for a terminating '\0'.
12156
121572002-06-24 Juanma Barranquero <lektu@terra.es>
12158
12159 * w32select.c: Include composite.h
12160
12161 * w16select.c: Likewise.
12162
121632002-06-24 Kenichi Handa <handa@etl.go.jp>
12164
12165 * callproc.c (Fcall_process): If code detection is necessary,
12166 call detect_coding directly here.
12167
12168 * coding.c (detect_eol): Preserve coding->cmp_data.
12169
12170 * w16select.c (Fw16_get_clipboard_data):
12171 * w32fns.c (w32_to_x_font):
12172 * w32select.c (Fw32_get_clipboard_data):
12173 * xselect.c (selection_data_to_lisp_data):
12174 * xterm.c (XTread_socket): Disable composition handling.
12175
121762002-06-24 Stefan Monnier <monnier@cs.yale.edu>
12177
12178 * print.c (temp_output_buffer_setup): Kill all local variables.
12179
121802002-06-22 Stefan Monnier <monnier@cs.yale.edu>
12181
12182 * lread.c (Fread): Remove redundant and imprecise declaration.
12183
12184 * xfns.c (check_x_display_info): Use check_x_frame.
12185
12186 * .gdbinit (xprintsym): Use the new `xname' field.
12187 (xsymbol): Use it.
12188
121892002-06-22 Jason Rumney <jasonr@gnu.org>
12190
12191 * w32fns.c (file_dialog_callback): New function.
12192 (Fx_file_dialog): Allow selecting directories as well as files.
12193
121942002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12195
12196 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 12197 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
12198
121992002-06-17 Andrew Choi <akochoi@shaw.ca>
12200
12201 * macterm.c (mac_scroll_area): Set foreground and backcolor to
12202 black and white before scrolling. Restore frame background and
12203 foreground color after scrolling.
12204 (do_window_update): Call XClearWindow before calling expose_frame.
12205 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
12206 FRAME_FOREGROUND_PIXEL of frame.
12207
12208 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12209 test Mac command key as <ALT> key.
12210
122112002-06-17 Stefan Monnier <monnier@cs.yale.edu>
12212
12213 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
12214
12215 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
12216 Lookup keys in function-key-map immediately so that key-translation-map
12217 can be applied earlier.
12218 Remove function_key_possible and key_translation_possible, replaced
12219 by checking `keytran_start < t'.
12220
12221 * .gdbinit (xsymbol): Use the new `xname' field.
12222
122232002-06-17 Andrew Choi <akochoi@shaw.ca>
12224
12225 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
12226 test Mac command key as <ALT> key.
12227
12228 * mac.c (do_applescript): Call initialize_applescript if necessary
12229 when first called. Dispose of result_desc only when there is no error.
12230 (Fdo_applescript): Use %d format specifier instead of %ld.
12231
122322002-06-16 Andrew Choi <akochoi@shaw.ca>
12233
12234 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
12235 of FrontWindow for cases keyDown and autoKey.
12236
12237 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
12238 Vdefault_fontset to Monaco with mac-roman coding.
12239
12240 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
12241 init_process before and after inclusion of Carbon/Carbon.h, resp.
12242
12243 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
12244 cursor_gc.
12245 (add_font_name_table_entry): New function.
12246 (init_font_name_table): Use add_font_name_table_entry; add italic,
12247 bold, and bold-italic entries for truetype fonts.
12248
12249 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
12250 for Mac too.
12251 (try_font_list) [MAC_OS]: If no font matches given registry, try
12252 fonts with any registry matching face_family.
12253 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
12254
12255 * s/darwin.h: If autoconf detects the Ncurses library, define
12256 LIBS_TERMCAP to -lncurses to use it.
12257
122582002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
12259
12260 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
12261
122622002-06-15 Richard M. Stallman <rms@gnu.org>
12263
12264 * window.c (Fset_window_configuration): Explicitly preserve
12265 the point value that new_current_buffer had at the start.
12266
122672002-06-14 Juanma Barranquero <lektu@terra.es>
12268
12269 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
12270 Fix typos.
12271
122722002-06-14 Kim F. Storm <storm@cua.dk>
12273
12274 * insdel.c (insert_1_both, insert_from_string_1)
12275 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
12276 insert happened in the end_unchanged region. Otherwise, the
12277 redisplay may be confused and duplicate the last line in the
12278 buffer [seen after save-buffer when require-final-newline==t].
12279
122802002-06-13 Jason Rumney <jasonr@gnu.org>
12281
12282 * w32.c (init_environment): Remove EMACSLOCKDIR.
12283 (stat): Swap _S_IFDIR and _S_IFREG.
12284
122852002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12286
12287 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
12288 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
12289 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
12290 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
12291 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
12292 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
12293 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
12294 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
12295 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
12296 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
12297 SELECTION_REQUEST_EVENT, selection_clear_event to
12298 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
12299 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
12300 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
12301 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
12302 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
12303 no_event to NO_EVENT.
12304
123052002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12306
12307 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
12308
123092002-06-12 Stefan Monnier <monnier@cs.yale.edu>
12310
12311 * intervals.c (textget): Don't forget to `return'.
12312 (lookup_char_property): Use XCAR/XCDR.
12313
123142002-06-12 Juanma Barranquero <lektu@terra.es>
12315
12316 * xdisp.c (Fformat_mode_line): Fix typo.
12317
123182002-06-12 Kim F. Storm <storm@cua.dk>
12319
12320 * xdisp.c (Fformat_mode_line): New function.
12321 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
12322 (store_frame_title_char, store_frame_title): Use unconditionally.
12323 (init_xdisp): Defsubr Fformat_mode_line.
12324 Initialize frame_title_buf etc. unconditionally.
12325
123262002-06-11 Stefan Monnier <monnier@cs.yale.edu>
12327
12328 * keyboard.c (read_key_sequence):
12329 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
12330 things through those maps after downcasing events.
12331 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
12332 applies after function-key-map.
12333 Make sure that keytran can be done in the middle in the sequence.
12334 Be careful not to throw away events past the one we downcase.
12335
12336 * lread.c (read_integer): Remove unused var `tem'.
12337 (read1): Fix int/Lisp_Object mixup.
12338
12339 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
12340
123412002-06-11 Richard M. Stallman <rms@gnu.org>
12342
12343 * keyboard.c (readable_events): Ignore any number of
12344 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
12345
123462002-06-09 Miles Bader <miles@gnu.org>
12347
12348 * xfaces.c (Ftty_supports_face_attributes_p): New function.
12349 (parse_rgb_list, tty_lookup_color): New functions.
12350 (tty_defined_color): Use `tty_lookup_color' to do all the work.
12351 (color_distance, Fcolor_distance): New functions.
12352 (TTY_SAME_COLOR_THRESHOLD): New macro.
12353 (Qtty_color_standard_values): New variable.
12354 (syms_of_xfaces): Initialize new vars & functions.
12355
123562002-06-08 Colin Walters <walters@verbum.org>
12357
12358 * textprop.c (Vchar_property_alias_alist): New variable.
12359 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
12360
12361 * intervals.c (lookup_char_property): New function for looking up
12362 overlay and text properties, created from textget.
12363 (textget): Use it.
12364
12365 * intervals.h (lookup_char_property): Declare.
12366 (Vchar_property_alias_alist): Declare.
12367
12368 * buffer.c (Foverlay_get): Use lookup_char_property.
12369
123702002-06-07 Sam Steingold <sds@gnu.org>
12371
12372 * xselect.c (lisp_data_to_selection_data): Fix last change:
12373 *data_ret is not a Lisp string, while unibyte_string is.
12374
123752002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
12376
12377 * xselect.c (lisp_data_to_selection_data): Fix last change:
12378 set size_ret.
12379
123802002-06-07 Andreas Schwab <schwab@suse.de>
12381
12382 * m/amdx86-64.h: New file.
12383
123842002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
12385
12386 * fns.c (Fstring_make_unibyte): Doc fix.
12387
12388 * xselect.c (lisp_data_to_selection_data): If the requested type
12389 is STRING, call string_make_unibyte to encode the selected text
12390 as a string.
12391
12392 * window.c (Fset_window_hscroll): Doc fix.
12393
123942002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12395
12396 * fileio.c (choose_write_coding_system):
12397 Call select-safe-coding-system properly.
12398
123992002-06-03 Richard M. Stallman <rms@gnu.org>
12400
12401 * xdisp.c (message_with_string): Error if STRING is not a string.
12402
12403 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
12404
12405 * fileio.c (choose_write_coding_system): Pass FILE arg to
12406 Vselect_safe_coding_system_function.
12407
124082002-06-03 Ken Raeburn <raeburn@gnu.org>
12409
12410 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
12411
124122002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
12413
12414 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
12415 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
12416 * keymap.c (describe_command): Likewise.
12417 * minibuf.c (read_minibuf): Likewise.
12418
12419 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
12420 Cast `current_column' return value to int.
12421 (back_to_previous_visible_line_start)
12422 (reseat_at_next_visible_line_start, next_element_from_buffer):
12423 Cast `indented_beyond_p' 3rd arg to float.
12424
12425 * indent.c (last_known_column): Now a float.
12426 (current_column_1, position_indentation, current_column)
12427 (string_display_width): Return float.
12428 (Fcurrent_column): Cast `current_column' return value to int.
12429 (Fcurrent_indentation): Cast `position_indentation' retval to int.
12430 (indented_beyond_p): Third arg now a float.
12431 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
12432
12433 * lisp.h (current_column): Now returns float.
12434 (indented_beyond_p): 3rd arg now a float.
12435
124362002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
12437
12438 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
12439 is Qcompound_text_with_extensions.
12440
12441 * xselect.c (lisp_data_to_selection_data): Always set selection
12442 type as string if x_encode_text returns streingp non-NULL.
12443
12444 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
12445
124462002-05-30 Richard M. Stallman <rms@gnu.org>
12447
12448 * window.c (Fset_window_configuration): Correct the handling
12449 of point in current buffer, to work with multiple windows.
12450
124512002-05-29 Colin Walters <walters@verbum.org>
12452
12453 * lread.c (Fread_from_string): Don't depend on order of evaluation
12454 for C function parameters.
12455
124562002-05-28 Richard M. Stallman <rms@gnu.org>
12457
12458 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
12459 way for blinked-off state and for a nonselected window.
12460
12461 * window.c (window_scroll_pixel_based): Don't call Fbolp;
12462 instead, see if the new start pos is at beginning of line.
12463
12464 * fileio.c (Fwrite_region): If START is a string, don't
12465 make any annotations.
12466
12467 * eval.c (syms_of_eval): Doc fix.
12468
124692002-05-28 Colin Walters <walters@debian.org>
12470
12471 * emacs.c (USAGE1): Add --no-splash.
12472 (standard_args): Ditto.
12473
124742002-05-28 Colin Walters <walters@gnu.org>
12475
12476 * lread.c (readchar_count): New variable.
12477 (readchar): Increment it.
12478 (unreadchar): Decrement it.
12479 (read_multibyte): Decrement it.
12480 (Vread_with_symbol_positions): New variable.
12481 (Vread_symbol_positions_list): New variable.
12482 (read_internal_start): New function, created from Fread and
12483 Fread_from_string. Handle Vread_symbol_positions_list and
12484 Vread_with_symbol_positions.
12485 (readevalloop, Fread, Fread_from_string): Use it.
12486 (read1): Use readchar_count to add symbol positions to
12487 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
12488 (syms_of_lread): DEFVAR_LISP and initialize them.
12489
12490 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
12491 (substitute_object_recurse, substitute_object_in_subtree)
12492 (substitute_in_interval): Prototype.
12493 (read_multibyte): Return c if it's less than zero.
12494
124952002-05-28 Kim F. Storm <storm@cua.dk>
12496
12497 * fileio.c (Fread_file_name_internal): Added brute-force
12498 speed up for using predicate file-directory-p.
12499
125002002-05-28 Kim F. Storm <storm@cua.dk>
12501
12502 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
12503 New variables.
12504 (syms_of_fileio): DEFVAR_LISP them.
12505 (read_file_name_cleanup): New unwind function.
12506 (Fread_file_name_internal): Only return completions satifying
12507 Vread_file_name_predicate. Temporarily unwind protect and rebind
12508 default-directory while checking completions against the predicate.
12509 (Fread_file_name): Added PREDICATE argument. Specbind it to
12510 Vread_file_name_predicate during completion.
12511 Call Vread_file_name_function to read the file name if non-nil.
12512
12513 * lisp.h (Fread_file_name): Now has 6 args.
12514
12515 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
12516 predicate for Fread_file_name when reading directory name.
12517 Supply Qnil for predicate in other calls to Fread_file_name.
12518
125192002-05-26 Miles Bader <miles@gnu.org>
12520
12521 * term.c (tty_capable_p): New function.
12522 * dispextern.h (tty_capable_p): New function declaration.
12523 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
12524 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
12525
125262002-05-23 Stefan Monnier <monnier@cs.yale.edu>
12527
12528 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
12529 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
12530 (Vwrite_region_annotate_functions): Docstring fix.
12531
125322002-05-23 Kim F. Storm <storm@cua.dk>
12533
12534 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
12535 phys_cursor's hpos is overwritten. This is still not completely
12536 correct, as it doesn't really make sense to use hpos at all to
12537 get the cursor glyph (as that is relative to the width of the
12538 characters on the line, which may have changed during the update).
12539
125402002-05-22 Jason Rumney <jasonr@gnu.org>
12541
12542 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
12543 Lisp_Object.
12544 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
12545 Use modified enumfont_t struct.
12546
12547 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12548
12549 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
12550 Handle the `hbar' cursor type.
12551 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12552
12553 * w32fns.c (Qhbar): New variable.
12554 (x_specified_cursor_type): Use it.
12555
125562002-05-21 Ken Raeburn <raeburn@gnu.org>
12557
12558 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
12559 now, when the address is needed.
12560
125612002-05-21 Colin Walters <walters@gnu.org>
12562
12563 * Makefile.in (shortlisp): Add font-core.el.
12564
125652002-05-20 Richard M. Stallman <rms@gnu.org>
12566
12567 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
12568
12569 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
12570 equivalent key bindings here.
12571
125722002-05-20 Ken Raeburn <raeburn@gnu.org>
12573
12574 Change symbol structure to contain a lisp object for the symbol
12575 name:
12576 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
12577 object field named "xname".
12578 (SYMBOL_NAME): New macro.
12579 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
12580 name field.
12581 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
12582 (mark_object, gc_sweep): Use symbol xname field and XSTRING
12583 instead of name field.
12584 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
12585 SYMBOL_NAME instead of XSYMBOL and name field.
12586 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
12587 instead of XSYMBOL and name field.
12588 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
12589 and SYMBOL_NAME instead of XSYMBOL and name field.
12590 * coding.c (Fread_coding_system, code_convert_region1)
12591 (code_convert_string1, code_convert_string_norecord)
12592 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
12593 XSYMBOL and name field.
12594 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
12595 (Fmake_variable_buffer_local, Fmake_local_variable)
12596 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
12597 of XSYMBOL and name field.
12598 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
12599 XSYMBOL and name field.
12600 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
12601 instead of XSYMBOL and name field.
12602 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
12603 XSYMBOL and name field.
12604 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
12605 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12606 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
12607 instead of XSYMBOL and name field.
12608 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
12609 (parse_modifiers, apply_modifiers, Fevent_convert_list)
12610 (parse_solitary_modifier, Fexecute_extended_command):
12611 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12612 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
12613 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
12614 of XSYMBOL and name field.
12615 (describe_command, describe_translation): Use SYMBOL_NAME and
12616 assignment instead of XSYMBOL and name field and XSETSTRING.
12617 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
12618 instead of XSYMBOL and name field.
12619 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
12620 name field and XSETSTRING.
12621 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12622 of XSYMBOL and name field.
12623 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
12624 assignment instead of XSYMBOL and name field and XSETSTRING.
12625 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
12626 XSTRING instead of XSYMBOL and name field.
12627 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
12628 and XSTRING instead of XSYMBOL and name field.
12629 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
12630 and XSTRING instead of XSYMBOL and name field.
12631 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
12632 XSTRING instead of XSYMBOL and name field.
12633 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
12634 of XSYMBOL and name field.
12635 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
12636 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
12637
126382002-05-19 Ken Raeburn <raeburn@gnu.org>
12639
12640 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
12641 and XCDR real rvalues in most configurations.
12642
12643 * buffer.c (fix_overlays_in_range, fix_overlays_before):
12644 Don't take the address of the cdr part of a cons cell; instead, track
12645 the parent cell and call XSETCDR, or set the variable for the head
12646 of the list if we haven't started down the list yet.
12647
126482002-05-19 Richard M. Stallman <rms@gnu.org>
12649
12650 * doc.c (reread_doc_file): Don't ask for confirmation.
12651
126522002-05-18 Jason Rumney <jasonr@gnu.org>
12653
12654 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
12655 (xbm_load_image): Use it.
12656 (xbm_load): Ditto.
12657 (xbm_read_bitmap_data): Reverted to xfns.c version.
12658 From David Ponce <david@dponce.com>.
12659
126602002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
12661
12662 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
12663 2.02 and later.
12664
126652002-05-16 Juanma Barranquero <lektu@terra.es>
12666
12667 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
12668
126692002-05-15 Stefan Monnier <monnier@cs.yale.edu>
12670
12671 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
12672 meaningful test.
12673 (read_char_minibuf_menu_prompt): Fix typo.
12674
126752002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
12676
12677 * eval.c (Fcommandp): Doc fix.
12678
126792002-05-13 Stefan Monnier <monnier@cs.yale.edu>
12680
12681 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
12682 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
12683 (Fset_keymap_parent): Gcpro a bit more.
12684 (access_keymap): Gcpro around meta_map call and around the main loop.
12685 (get_keyelt): Gcpro when following indirect references.
12686 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
12687 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
12688 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
12689 Remove useless ad-hoc remap code.
12690
126912002-05-13 Richard M. Stallman <rms@gnu.org>
12692
12693 * search.c (search_buffer): Give up boyer moore search if inverse
12694 translation change charset_base.
12695
126962002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
12697
12698 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
12699 characters is carried over from the previous block of text, adjust
12700 coding->produced to account for the extra character.
12701
127022002-05-11 Andreas Schwab <schwab@suse.de>
12703
12704 * coding.c (intersection): Keep the elements of the returned list
12705 in the same order as in the first list.
12706
127072002-05-11 Kim F. Storm <storm@cua.dk>
12708
12709 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
12710 only update cmm_size if realloc actually succeeds.
12711 Testing with initial size of 2 elements revealed that using
12712 realloc on GNU/Linux would cause a random trap in xmalloc
12713 later on, so I rewrote the code to use malloc/bcopy/free instead
12714 of realloc.
12715
127162002-05-10 Jason Rumney <jasonr@gnu.org>
12717
12718 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
12719
127202002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
12721
12722 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
12723 parens, to ensure correct evaluation order.
12724
127252002-05-10 Kim F. Storm <storm@cua.dk>
12726
12727 * keymap.c (Vemulation_mode_map_alists): New variable.
12728 (syms_of_keymap): DEFVAR_LISP it.
12729 (current_minor_maps): Process keymap alists in that list before
12730 minor-mode-overriding-map-alist and minor-mode-map-alist.
12731
127322002-05-09 Richard M. Stallman <rms@gnu.org>
12733
12734 * search.c (Freplace_match): Doc fix.
12735
127362002-05-09 Kim F. Storm <storm@cua.dk>
12737
12738 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12739 Enlarge cursor rectangle drawn around image with non-zero relief.
12740
12741 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
12742 Enlarge cursor rectangle drawn around image with non-zero relief.
12743
12744 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
12745 Enlarge cursor rectangle drawn around image with non-zero relief.
12746
127472002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
12748
12749 * xselect.c (lisp_data_to_selection_data): Don't set selection
12750 type if comes from the Lisp object's car. If the selection
12751 contains a pure ASCII text, always return QSTRING as its type.
12752
127532002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12754
12755 * mac.c (mac-cut-function): Doc fix.
12756
127572002-05-05 Richard M. Stallman <rms@gnu.org>
12758
12759 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
12760
127612002-05-04 Jason Rumney <jasonr@gnu.org>
12762
12763 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
12764 for event-click-count.
12765
12766 * process.c (init_process): Only add server subfeature if we can
12767 use non-blocking I/O.
12768
127692002-05-04 Andrew Choi <akochoi@shaw.ca>
12770
12771 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
12772 repeatedly.
12773
127742002-05-03 Jason Rumney <jasonr@gnu.org>
12775
12776 * process.c (Fmake_network_process): Only support server sockets
12777 when we can make them non-blocking.
12778
12779 * s/ms-w32.h (HAVE_SELECT): Define.
12780
12781 * w32.h (FILE_NDELAY): New flag.
12782
12783 * w32.c (sys_getpeername, fcntl): New functions.
12784 (_sys_read_ahead): Temporarily block on non-blocking sockets.
12785
12786 * w32proc.c: include sys/file.h.
12787
127882002-05-03 Colin Walters <walters@verbum.org>
12789
12790 * callproc.c (Vgame_score_directory): Renamed to
12791 Vshared_game_score_directory.
12792
127932002-04-30 Richard M. Stallman <rms@gnu.org>
12794
12795 * s/gnu.h [emacs]: Include stdio.h.
12796 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
12797
12798 * eval.c (do_autoload): Error if called while preparing to dump.
12799
12800 * fns.c (Frequire): Error if need to load while preparing to dump.
12801
128022002-04-28 Colin Walters <walters@verbum.org>
12803
12804 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
12805 Default to "~/.emacs.d/games".
12806
128072002-04-29 Stefan Monnier <monnier@cs.yale.edu>
12808
12809 * lread.c (openp): Change arg exec_only to predicate.
12810 (build_load_history): Use XCAR/XCDR.
12811 (Flocate_file_internal): New fun.
12812 (syms_of_lread): Defsubr it.
12813 (Fload): Update call to openp.
12814
12815 * lisp.h (openp): Update prototype.
12816
12817 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
12818 * w32proc.c (sys_spawnve):
12819 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
12820 * w32.c (check_windows_init_file):
12821 * sound.c (Fplay_sound_internal):
12822 * process.c (Fstart_process):
12823 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
12824 * mac.c (run_mac_command):
12825 * emacs.c (init_cmdargs):
12826 * callproc.c (Fcall_process): Update call to openp.
12827
12828 * textprop.c (remove_properties): Don't use XCAR without CONSP.
12829
12830 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
12831
128322002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12833
12834 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
12835 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
12836
128372002-04-28 Richard M. Stallman <rms@gnu.org>
12838
12839 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
12840
12841 * eval.c (Fcommandp): New arg for_call_interactively.
12842 * lisp.h (Fcommandp): Declare new arg.
12843
128442002-04-28 Jason Rumney <jasonr@gnu.org>
12845
12846 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
12847
12848 * w32.c (stat, fstat): Use file index information to generate
12849 inodes for directories where available.
12850
128512002-04-26 Andrew Choi <akochoi@shaw.ca>
12852
12853 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12854 [HAVE_CARBON]: Include Mac object files.
12855
12856 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12857 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12858 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12859 MAC_OSX, and MAC_OS instead of macintosh.
12860
12861 * editfns.c [MAC_OS8]: Include stdio.h.
12862
12863 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12864
12865 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12866 Apple Monaco.
12867
78819ebb 12868 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
12869 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12870 calling select.
12871
12872 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12873
12874 * tparam.c [MAC_OSX]: Don't define BC and UP.
12875
12876 * config.in [HAVE_CARBON]: Add.
12877
12878 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12879 Move here from mac/src and mac/inc.
12880
12881 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12882
128832002-04-26 Gerd Moellmann <gerd@gnu.org>
12884
12885 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12886 Compute phys_cursor_width from the x position returned
12887 by x_draw_glyhs, which is cheaper.
12888 (x_display_and_set_cursor): Compute the buffer-local value
12889 of `cursor-in-non-selected-windows' only when needed.
12890
128912002-04-25 Gerd Moellmann <gerd@gnu.org>
12892
12893 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12894 cursor on a stretch glyph has a width that depends on
12895 x_stretch_cursor_p.
12896
128972002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12898
12899 * abbrev.c (abbrev-start-location): Doc fix.
12900
12901 * indent.c (Fvertical_motion): Fix last change.
12902
129032002-04-25 Gerd Moellmann <gerd@gnu.org>
12904
12905 * indent.c (Fvertical_motion): Move to the start of the line
12906 containing PT before moving up or down.
12907
129082002-04-24 Gerd Moellmann <gerd@gnu.org>
12909
12910 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12911 case of writing a whole row, more or less analogous to the case of
12912 writing only parts of a row.
12913
12914 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12915 0 for NO_CURSOR.
12916
12917 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12918
129192002-04-23 Colin Walters <walters@verbum.org>
12920
12921 * buffer.c (syms_of_buffer): Doc fix.
12922
129232002-04-23 Gerd Moellmann <gerd@gnu.org>
12924
12925 * xterm.c (notice_overwritten_cursor): Handle the special case
12926 of the cursor being in the first blank non-text line at the
12927 end of a window.
12928
12929 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12930 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12931 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12932 bar cursors only, to make phys_cursor_width contain what its name
12933 suggests.
12934 (notice_overwritten_cursor): Consider the cursor image erased if
12935 the output area intersects the cursor image in y-direction.
12936
129372002-04-23 Simon Marshall <simon@gnu.org>
12938
12939 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12940 to XC_hand2.
12941
129422002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12943
12944 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12945
129462002-04-22 Kim F. Storm <storm@cua.dk>
12947
12948 * textprop.c (remove_properties): Fixed trap for malformed plist.
12949
129502002-04-22 Richard M. Stallman <rms@gnu.org>
12951
12952 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12953
12954 * window.c (make_window): Initialize height_fixed_p,
12955 last_cursor_off_p, and p->cursor_off_p slots.
12956
129572002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12958
12959 * fns.c (use-dialog-box): Doc fix.
12960
129612002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12962
12963 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12964 variables `row', `i' and `area'.
12965 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12966 toolkit library.
12967
129682002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12969
12970 * xfaces.c (clear_font_table): Don't free the default font of
12971 a frame even if it's on another display.
12972 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12973 that could be Qt.
12974
129752002-04-19 Juanma Barranquero <lektu@terra.es>
12976
12977 * indent.c (Fmove_to_column): Remove unused local variable
12978 `next_boundary_byte'.
12979 (current_column_1): Likewise.
12980
129812002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12982
12983 * msdos.c (Qhbar): New variable.
12984 (syms_of_msdos): Intern and staticpro it.
12985 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12986 cursor type.
12987
129882002-04-19 Dave Lambert <dlambert@acm.org>
12989
12990 Theses change implement an underscore-like (`hbar') cursor.
12991
12992 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12993
12994 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12995 Handle the `hbar' cursor type.
12996 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12997
12998 * xfns.c (Qhbar): New variable.
12999 (syms_of_xfns): Intern and staticpro it.
13000 (x_specified_cursor_type): Handle `hbar' cursor.
13001
13002 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
13003 not defined.
13004
130052002-04-18 Richard M. Stallman <rms@gnu.org>
13006
13007 * textprop.c (remove_properties): New arg LIST allows scanning
13008 either a list or a plist.
13009 (interval_has_some_properties_list): New function, like
13010 interval_has_some_properties using list instead of plist.
13011 All callers changed.
13012 (Fremove_list_of_text_properties): New function.
13013 (syms_of_textprop): Defsubr it.
13014
130152002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13016
13017 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
13018
130192002-04-17 Juanma Barranquero <lektu@terra.es>
13020
13021 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
13022
130232002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
13024
13025 * window.c (coordinates_in_window): Don't report on margin area
13026 if its width is zero.
13027
130282002-04-16 Jason Rumney <jasonr@gnu.org>
13029
13030 * w32fns.c (Fx_file_dialog): Decode file name before using.
13031
13032 * w32term.c (construct_drag_n_drop): Likewise.
13033
130342002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
13035
13036 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
13037 store load-history in pure space.
13038
13039 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
13040
130412002-04-16 Stefan Monnier <monnier@cs.yale.edu>
13042
13043 * xterm.c (Qlatin_1, Qutf_8): New vars.
13044 (syms_of_xterm): Initialize them.
13045 (XTread_socket): Eliminate incorrect optimization that tried to avoid
13046 decoding the output of X*LookupString.
13047 Always use latin-1 to decode the output of XLookupString.
13048 Try Xutf8LookupString if XmbLookupString failed.
13049
13050 * region-cache.c (new_region_cache): Use BEG.
13051
130522002-04-16 Gerd Moellmann <gerd@gnu.org>
13053
13054 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
13055 configuration files.
13056 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
13057 returns 0.
13058
130592002-04-15 Andreas Schwab <schwab@suse.de>
13060
13061 * config.in: Regenerated using autoheader.
13062
13063 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
13064 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
13065 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
13066 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
13067 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
13068 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
13069 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
13070 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
13071 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
13072 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
13073 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
13074 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
13075 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
13076 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
13077 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
13078 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
13079 STACK_DIRECTION, now set by autoconf.
13080
130812002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13082
13083 * dispnew.c (marginal_area_string): Sort arguments.
13084
13085 * dispextern.h (marginal_area_string): Add prototype.
13086
130872002-04-13 Richard M. Stallman <rms@gnu.org>
13088
13089 * fileio.c (Finsert_file_contents):
13090 Don't call temp_output_buffer_setup--do just part, by hand.
13091
13092 * coding.c (run_pre_post_conversion_on_str):
13093 Don't call temp_output_buffer_setup--do just part, by hand.
13094
13095 * keyboard.c (command_loop_1): Don't call start_hourglass
13096 or cancel_hourglass when executing a macro.
13097
13098 * marker.c (count_markers): New function.
13099
13100 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
13101 grow without limit. Move recently used elements to the front.
13102
131032002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
13104
13105 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
13106
131072002-04-12 Gerd Moellmann <gerd@gnu.org>
13108
13109 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
13110 rows marginal areas.
13111 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
13112 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
13113
13114 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
13115
131162002-04-12 Dave Love <fx@gnu.org>
13117
13118 * dispnew.c (marginal_area_string): New.
13119
13120 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
13121 (Qleft_margin, Qright_margin): Declare.
13122 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
13123
13124 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
13125 note_mode_line_highlight and extended.
13126
13127 * keyboard.c (Qleft_margin, Qright_margin): Declare.
13128 (make_lispy_event): Deal with mouse events in margins.
13129
131302002-04-12 Stefan Monnier <monnier@cs.yale.edu>
13131
13132 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
13133
13134 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
13135 than deactivating the mark if tmm is set to `lambda'.
13136 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
13137 Use a single event for HELP_EVENT.
13138 (Fexecute_extended_command): Save last_point_position.
13139
131402002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13141
13142 * lisp.h (Fpropertize): Add prototype.
13143
13144 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
13145
131462002-04-10 Colin Walters <walters@verbum.org>
13147
13148 * config.in: Add HAVE_SHARED_GAME_DIR.
13149
13150 * callproc.c: (Vgame_score_directory): New variable.
13151 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
13152
131532002-04-10 Richard M. Stallman <rms@gnu.org>
13154
13155 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
13156
131572002-04-09 Stefan Monnier <monnier@cs.yale.edu>
13158
13159 * minibuf.c (read_minibuf): Use empty_string.
13160 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
13161 Short-circuit the search as soon as it "failed".
13162 (Fall_completions): Allow lambda forms and lists of strings for alist.
13163 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
13164 when require_match is nil.
13165 (Ftest_completion): Rename from `test_completion' and export to elisp.
13166 Call the predicate also when alist is a list.
13167 Obey Vcompletion_regexp_list.
13168 (do_completion, Fminibuffer_complete_and_exit): Use it.
13169 (Fassoc_string): Rename from `assoc_for_completion'.
13170 Allow list of strings as well and export to elisp.
13171
131722002-04-08 Stefan Monnier <monnier@cs.yale.edu>
13173
13174 * puresize.h (BASE_PURESIZE): Increase to 900KB.
13175
131762002-04-08 Juanma Barranquero <lektu@terra.es>
13177
13178 * w32.c (sys_accept): Don't hide variable `s'.
13179
131802002-04-05 Gerd Moellmann <gerd@gnu.org>
13181
13182 * callint.c (Fcall_interactively): Use INTEGERP instead of
13183 NUMBERP for checking Vhistory_length.
13184
131852002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13186
13187 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
13188 Doc fix to reflect it.
13189
131902002-04-04 Richard M. Stallman <rms@gnu.org>
13191
13192 * xdisp.c (display_mode_element): New arg RISKY.
13193 Disregard text props found or specified within a variable
13194 that isn't marked risky-local-variable.
13195 (Qrisky_local_variable): New variable.
13196 (syms_of_xdisp): Init and staticpro it.
13197
131982002-04-04 Stefan Monnier <monnier@cs.yale.edu>
13199
13200 * undo.c (record_point): New fun.
13201 (record_delete, record_insert): Use it.
13202
132032002-04-03 Juanma Barranquero <lektu@terra.es>
13204
13205 * doc.c (Fdocumentation): Add missing parentheses.
13206 (Fdocumentation_property): Likewise.
13207
132082002-04-03 Stefan Monnier <monnier@cs.yale.edu>
13209
13210 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
13211 data is 0, just return nil.
13212
132132002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
13214
13215 * msdos.c (syms_of_msdos): Fix last change with
13216 mouse_autoselect_window.
13217
132182002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13219
13220 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
13221 mouse_autoselect_window.
13222
132232002-04-02 Stefan Monnier <monnier@cs.yale.edu>
13224
13225 * keyboard.c (make_lispy_event): Handle unknown keysyms together
13226 with system-specific keysyms. Use it also for unknown function keys.
13227
13228 * doc.c (reread_doc_file): Return whether reload was attempted.
13229 (Fdocumentation, Fdocumentation_property): Don't try to reload
13230 if the doc is 0 and only ask once.
13231
13232 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
13233
132342002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
13235
13236 * keyboard.c (read_char): If the event was Qselect_window,
13237 restore timer_idleness_start_time to its previous value.
13238
13239 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
13240
132412002-04-01 Stefan Monnier <monnier@cs.yale.edu>
13242
13243 * region-cache.c (new_region_cache): Use BEG.
13244
13245 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
13246 Use BEG and BEG_BYTE.
13247
13248 * doc.c (get_doc_string): Return nil if the location is wrong.
13249 (reread_doc_file): New fun.
13250 (Fdocumentation, Fdocumentation_property):
13251 Call it if get_doc_string fails.
13252 (Fsnarf_documentation): Make it work for a dumped Emacs.
13253
13254 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
13255 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
13256
13257 * charset.c (Fstring): Allow 0 arguments.
13258
13259 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
13260
13261 * process.c (DATAGRAM_CONN_P, list_processes_1)
13262 (Fprocess_datagram_address, Fset_process_datagram_address)
13263 (Fset_network_process_options, server_accept_connection):
13264 Fix some int/Lisp_Object confusions (thank you union types).
13265
132662002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13267
13268 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
13269
13270 * w32term.c: Likewise.
13271 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
13272
13273 * keyboard.c (Qselect_window): New symbol.
13274 (head_table): Use it.
13275 (keys_of_keyboard): Bound select-window event to handle-select-window.
13276 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
13277
13278 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
13279 (last_window): New variable.
13280 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
13281 (note_mouse_movement): Remove reimplemented code in #if 0.
13282 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
13283 Emacs windows.
13284
13285 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
13286
132872002-03-31 Gerd Moellmann <gerd@gnu.org>
13288
13289 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
13290 Callers changed.
13291
132922002-03-30 Richard M. Stallman <rms@gnu.org>
13293
13294 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
13295 loop whenever it stops making progress.
13296
13297 * widget.c (set_frame_size): Don't call change_frame_size.
13298
132992002-03-30 Gerd Moellmann <gerd@gnu.org>
13300
13301 * dispnew.c (direct_output_for_insert):
13302 Call mark_window_display_accurate.
13303
133042002-03-29 Jason Rumney <jasonr@gnu.org>
13305
13306 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
13307
133082002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
13309
13310 * Makefile.in (lread.o): Depend on coding.h.
13311
13312 * lread.c (openp, Fload): Encode the file name before passing it
13313 to `stat', `access', and `emacs_open'.
13314 (openp): GCPRO the encoded file name. Don't recompute Lisp
13315 strings unnecessarily.
13316
133172002-03-29 Kim F. Storm <storm@cua.dk>
13318
13319 * fns.c (Flax_plist_put): Doc fix.
13320
133212002-03-28 Miles Bader <miles@gnu.org>
13322
13323 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
13324
133252002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13326
13327 * process.c (set-network-process-options): Add usage.
13328 (make-network-process): Doc fix.
13329
133302002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
13331
13332 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
13333
133342002-03-26 Richard M. Stallman <rms@gnu.org>
13335
13336 * fns.c (Fsubstring_no_properties): New function.
13337 (Flax_plist_get, Flax_plist_put): New functions.
13338 (syms_of_fns): defsubr them.
13339
13340 * xdisp.c (update_menu_bar): Test only update_mode_lines;
13341 don't test or alter w->update_mode_line.
13342
13343 * window.c (Fdisplay_buffer): Doc fix.
13344
133452002-03-24 Richard M. Stallman <rms@gnu.org>
13346
13347 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
13348
133492002-03-24 Gerd Moellmann <gerd@gnu.org>
13350
13351 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
13352 (Fdefmacro): Handle `(declare ...)'.
13353 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
13354 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
13355
133562002-03-24 Jason Rumney <jasonr@gnu.org>
13357
13358 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
13359 (xbm_file_p): Add prototypes.
13360 (xbm_format, xbm_image_p): Sync with xfns.c.
13361 (reflect_byte): New function.
13362 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
13363 (xbm_load_image): Create bitmaps with a depth of 1.
13364 (init_xfns): Enable XBM images.
13365
133662002-03-23 Jason Rumney <jasonr@gnu.org>
13367
13368 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
13369 correctly. Do not pass up_modifier to keyboard buffer.
13370
13371 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
13372
133732002-03-22 Stefan Monnier <monnier@cs.yale.edu>
13374
13375 * Makefile.in (bootstrapclean): New target.
13376 (bootstrap-temacs, bootstrap-doc): Remove.
13377 (bootstrap-emacs): Use a bog-standard `temacs'.
13378 Don't bother to build a DOC file.
13379
13380 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
13381
13382 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
13383 in temacs even if !CANNOT_DUMP.
13384 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
13385
13386 * alloc.c (check_pure_size): Only output a warning.
13387
133882002-03-22 Jason Rumney <jasonr@gnu.org>
13389
13390 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
13391 supported.
13392
13393 * w32term.c (zv_bits): Declare as short, for word alignment.
13394 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
13395 (syms_of_w32term): Define x-use-underline-position-properties.
13396
13397 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
13398 (clear_image_cache): Block input, fix logic, clear matrices in
13399 all frames that share this cache.
13400
134012002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
13402
13403 * emacs.c (main): Update the Copyright year in the blurb printed
13404 by "emacs --version".
13405
13406 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
13407
13408 * xterm.c (XTread_socket): If XK_ISO_Lock and
13409 XK_ISO_Last_Group_Lock are defined, handle keysyms between
13410 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
13411
134122002-03-21 Kim F. Storm <storm@cua.dk>
13413
13414 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
13415 menu-bar bindings in keymap and local-map properties _are_ used.
13416 But try keymap property first in accordance with 2002-01-03 patch.
13417 Added comment describing why this is not always reliable.
13418 (tool_bar_items): Ditto for tool-bar.
13419
134202002-03-21 Jason Rumney <jasonr@gnu.org>
13421
13422 * w32fns.c (x_clear_image_1): Disable color table code.
13423
134242002-03-21 Kim F. Storm <storm@cua.dk>
13425
13426 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
13427 removed the wrong version of the DEFUN macro; fixed it.
13428
13429 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
13430 Fmember rather than Fmemq).
13431 (Fprovide): Check that subfeatures is a list.
13432
13433 * process.c (QCfeature, QCdatagram): Removed variables.
13434 (QCtype, Qdatagram): New variables.
13435 (network_process_featurep): Removed function.
13436 (Fmake_network_process): Removed :feature check.
13437 Use :type 'datagram instead of :datagram t to create a datagram
13438 socket. This allows us to add other connection types (e.g. raw
13439 sockets) later in a consistent manner.
13440 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
13441 supported subfeatures for feature make-network-process.
13442 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
13443 Intern and staticpro QCtype and Qdatagram.
13444 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
13445
13446 * xfns.c: (QCtype): Remove duplicate declaration and
13447 initialization (is now declared in process.c).
13448
13449 * w32fns.c: (QCtype): Remove duplicate declaration and
13450 initialization (is now declared in process.c).
13451
134522002-03-21 Richard M. Stallman <rms@gnu.org>
13453
13454 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
13455 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
13456 when jumping to `fail' to avoid undoing reg changes in the
13457 last iteration of the loop.
13458 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
13459
13460 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
13461 Depend on process.h.
13462
134632002-03-20 Jason Rumney <jasonr@gnu.org>
13464
13465 Most of the following changes are still conditional on HAVE_IMAGES
13466 which is not set by default on Windows.
13467
13468 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
13469
13470 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
13471 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
13472 (four_corners_best, x_clear_image_1, x_clear_image)
13473 (x_alloc_image_color, postprocess_image)
13474 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
13475 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
13476 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
13477
13478 * w32gui.h (struct XImage): Define.
13479
13480 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
13481 extract mouse co-ordinates.
13482
134832002-03-20 Jason Rumney <jasonr@gnu.org>
13484
13485 * w32.c (init_winsock): Dynamically load new server and UDP
13486 socket functions.
13487 (socket_to_fd): New function.
13488 (sys_socket): Use it.
13489 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
13490 (sys_recvfrom, sys_sendto): New wrapper functions.
13491
13492 * process.c (QCfamily, QCfilter): Remove duplicate declaration
13493 and initialization.
13494
13495 * makefile.w32-in (LIBS): Remove $(WSOCK32).
13496
134972002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
13498
13499 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
13500 Don't use "sun" as a variable, it's a predefined constant on Sun
13501 machines.
13502
135032002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13504
13505 * bytecode.c (Fbyte_code): Revert last change.
13506
135072002-03-19 Kim F. Storm <storm@cua.dk>
13508
13509 * makefile.w32-in (LIBS): Add $(WSOCK32).
13510 From David Ponce <dponce@voila.fr>.
13511
135122002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13513
13514 * process.c (wait_reading_process_input): Move variables `pname'
13515 and `pnamelen' down where they are used.
13516
13517 * bytecode.c (Fbyte_code): Discard unused computed value to
13518 prevent gcc warning.
13519
13520 * lisp.h (Fplist_member): Add prototype.
13521
135222002-03-18 Kim F. Storm <storm@cua.dk>
13523
13524 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
13525 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
13526
13527 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
13528 Remove explicit GNU_LINUX settings for datagram support.
13529
135302002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13531
13532 * process.c (Fmake_network_process): Remove unused variable `sa'.
13533 Doc fix. Add usage:.
13534 (set_socket_options): Remove unused variables `optnum' and `opttype'.
13535
135362002-03-17 Richard M. Stallman <rms@gnu.org>
13537
13538 * xdisp.c (cursor_type_changed): New variable.
13539 (redisplay_internal): Redisplay all windows if cursor_type_changed.
13540 Clear it when clearing windows_or_buffers_changed.
13541 (try_cursor_movement, redisplay_window, try_window_id)
13542 (try_window_reusing_current_matrix): Test cursor_type_changed
13543 along with windows_or_buffers_changed.
13544
13545 * window.h (cursor_type_changed): New variable.
13546
13547 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
13548 not update_mode_lines, and always set it to 1.
13549
13550 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
13551 if no frames needed redrawing.
13552
135532002-03-17 Kim F. Storm <storm@cua.dk>
13554
13555 The following changes add support for network server processes,
13556 datagram connections, and local (unix) sockets.
13557
13558 * process.h (struct Lisp_Process): New member log.
13559 Doc fix: Member command used to indicate stopped network process.
13560 Doc fix: Member childp contains plist for network process.
13561 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
13562
13563 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
13564 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
13565 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
13566 New variables.
13567 (NETCONN1_P): New macro.
13568 (DATAGRAM_SOCKETS): New conditional symbol.
13569 (datagram_address): New array.
13570 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
13571 (status_message): Use concat3.
13572 (Fprocess_status): Add `listen' status to doc string. Return `stop'
13573 for a stopped network process.
13574 (Fset_process_buffer): Update contact plist for network process.
13575 (Fset_process_filter): Ditto. Don't enable input for stopped
13576 network processes. Server must listen, even if filter is t.
13577 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
13578 New functions.
13579 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
13580 (Fprocess_contact): Added KEY argument. Handle datagrams.
13581 (list_processes_1): Optionally show only processes with the query
13582 on exit flag set. Dynamically adjust column widths. Omit tty
13583 column if not needed. Report stopped network processes.
13584 Identify server and datagram network processes.
13585 (Flist_processes): New optional arg `query-only'.
13586 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
13587 (conv_lisp_to_sockaddr, set_socket_options)
13588 (network_process_featurep, unwind_request_sigio): New helper functions.
13589 (Fprocess_datagram_address, Fset_process_datagram_address):
13590 (Fset_network_process_options): New lisp functions.
13591 (Fopen_network_stream): Removed. Now defined in simple.el.
13592 (Fmake_network_process): New lisp function. Code is based on previous
13593 Fopen_network_stream, but heavily reworked with new property list based
13594 argument list, support for datagrams, server processes, and local
13595 sockets in addition to old client-only functionality.
13596 (server_accept_connection): New function.
13597 (wait_reading_process_input): Use it to handle incoming connects.
13598 Do not enable input on a new connection if process is stopped.
f63fd14e 13599 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
13600 (send_process): Handle datagram sockets.
13601 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
13602 network process is indicated by setting command field to t .
13603 (Fprocess_send_eof): No-op if datagram connection.
13604 (Fstatus_notify): Don't read input for a stream server socket or a
13605 stopped network process.
13606 (init_process): Initialize datagram_address array.
13607 (syms_of_process): Intern and staticpro new variables, defsubr new
13608 functions.
13609
136102002-03-16 Jason Rumney <jasonr@gnu.org>
13611
13612 * w32fns.c (w32_to_all_x_charsets): Return correct type in
13613 startup case.
13614
136152002-03-16 Richard M. Stallman <rms@gnu.org>
13616
13617 * xdisp.c (redisplay_internal, redisplay_windows):
13618 Use list_of_error to call internal_condition_case_1.
13619 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
13620 so as to catch all errors with no possibility of debugger redisplay.
13621 (list_of_error): New variable.
13622 (syms_of_xdisp): Init and staticpro it.
13623
13624 * print.c (print_object): Delete `\ ' from printed rep of frame.
13625
136262002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
13627
13628 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
13629 until its implementation is fixed.
13630
136312002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13632
13633 * xfns.c (png_load): Remove unused variable `gamma_str'.
13634
136352002-03-14 Richard M. Stallman <rms@gnu.org>
13636
13637 * xfns.c (x_real_positions): Handle failure in XQueryTree.
13638
136392002-03-14 Miles Bader <miles@gnu.org>
13640
13641 * intervals.c (adjust_for_invis_intang): New function.
13642 (set_point_both): Use `adjust_for_invis_intang' to do most of the
13643 work for dealing with invisible+intangible regions. Do so before
13644 and after both forward and backward movements, to handle both
13645 front-sticky and rear-sticky cases.
13646 * textprop.c (text_property_stickiness): Function moved here from
13647 `editfns.c'.
13648 * intervals.h (text_property_stickiness): New declaration.
13649 * editfns.c (char_property_eq): Function removed.
13650 (text_property_stickiness): Function moved to `textprop.c'.
13651
136522002-03-13 Jason Rumney <jasonr@gnu.org>
13653
13654 * config.in: Add STRFTIME_NO_POSIX2.
13655
13656 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
13657 and %OX when underlying strftime does not.
13658
136592002-03-13 Stefan Monnier <monnier@cs.yale.edu>
13660
13661 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
13662 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
13663 line) to avoid annoying flicker.
13664 (xm_scroll_callback): Get rid of the now unnecessary kludge.
13665 (XTread_socket): Mark it static.
13666
13667 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
13668
136692002-03-13 Kim F. Storm <storm@cua.dk>
13670
13671 * puresize.h (BASE_PURESIZE): Increase to 775000.
13672
136732002-03-12 Juanma Barranquero <lektu@terra.es>
13674
13675 * editfns.c (syms_of_editfns): Fix typo.
13676
136772002-03-12 Gerd Moellmann <gerd@gnu.org>
13678
13679 * xsmfns.c: Include stdio.h because termhooks.h needs it.
13680 Include termopt.h for interrupt_input.
13681
136822002-03-11 Andreas Schwab <schwab@suse.de>
13683
13684 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
13685
136862002-03-11 Gerd Moellmann <gerd@gnu.org>
13687
13688 * xterm.c (note_mouse_movement): Put code for
13689 x_autoselect_window_p in #if 0.
13690
13691 * lread.c (Fload): Don't assume that message_with_string uses the
13692 string it is given like a C string.
13693
136942002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13695
78819ebb 13696 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
13697
13698 * xterm.c: (XTread_socket): Add call to x_session_check_input and
13699 x_session_have_connection.
13700 (x_initialize): Add call to x_session_initialize.
13701
13702 * termhooks.h (enum event_kind): Add save_session_event.
13703
13704 * keyboard.c: Add Emacs event save_session_event.
13705
13706 * emacs.c (main): Add call to syms_of_xsmfns.
13707
78819ebb 13708 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
13709
13710 * config.in: Add HAVE_X_SM.
13711
13712 * Makefile.in (LIBXT): Add -lSM -lICE
13713 if HAVE_X_SM and not USE_X_TOOLKIT.
13714 (XOBJ): New file xsmfns.c added.
13715
13716 * xsmfns.c: New file for X session management.
13717
137182002-03-09 Jason Rumney <jasonr@gnu.org>
13719
13720 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
13721 read-only when setting modified time.
13722
137232002-03-08 Gerd Moellmann <gerd@gnu.org>
13724
13725 * xdisp.c (move_it_vertically_backward): At the end of the function,
13726 when moving forward by lines, treat terminal frames specially.
13727
13728 * keyboard.c (echo_char): Make sure to add a separator between
13729 keys even if echo_dash hasn't been called.
13730
13731 * xdisp.c: Use new string macros.
13732 (update_echo_area): Pass number of bytes to message3 instead of
13733 number of chars.
13734 (set_message_1): Don't access a string's size_byte directly.
13735 (decode_mode_spec_coding): Use number of bytes of eoltype string
13736 instead number of chars.
13737
13738 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
13739
137402002-03-08 Juanma Barranquero <lektu@terra.es>
13741
13742 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
13743 24-bit.
13744
137452002-03-06 Jason Rumney <jasonr@gnu.org>
13746
13747 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
13748
137492002-03-06 Gerd Moellmann <gerd@gnu.org>
13750
13751 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
13752 (cancel_echoing, echo_length, echo_truncate): Changed to
13753 work with new kboard definition.
13754 (echo_now): Use message3_nolog instead of message2_nolog.
13755
13756 * alloc.c (mark_kboards): Mark echo_string.
13757
13758 * keyboard.h (ECHOBUFSIZE): Removed.
13759 (struct kboard): Member echoptr removed, member echobuf renamed
13760 to echo_string.
13761
13762 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
13763 message3 instead of message2 to display the message using STRING's
13764 text properties.
13765
137662002-03-05 Andreas Schwab <schwab@suse.de>
13767
13768 * xdisp.c (hscroll_margin): Change to EMACS_INT.
13769
137702002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
13771
13772 * frame.c (default-frame-alist): Explain that setting it doesn't
13773 affect existing frames.
13774
137752002-03-05 Stefan Monnier <monnier@cs.yale.edu>
13776
13777 * indent.c (skip_invisible): Fix my brain fart.
13778
13779 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
13780
137812002-03-04 Stefan Monnier <monnier@cs.yale.edu>
13782
13783 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
13784 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
13785 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
13786 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
13787 and variables to use EMACS_INT instead of just int.
13788
13789 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
13790
137912002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
13792
13793 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
13794 environment, pass it down with corrected value.
13795
137962002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13797
13798 * lread.c (read_filtered_event): Do not call start_hourglass
13799 before returning.
13800
138012002-03-04 Juanma Barranquero <lektu@terra.es>
13802
13803 * w32term.c (x_display_and_set_cursor): Fix typo.
13804
138052002-03-03 Richard M. Stallman <rms@gnu.org>
13806
13807 * fileio.c (Fmake_temp_name): Doc fix.
13808
138092002-03-03 Gary Wong <gtw@gnu.org>
13810
13811 * termcap.c [!emacs]: Replace ospeed for building standalone
13812 libtermcap, for binary compatibility.
13813
13814 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
13815
138162002-03-03 Richard M. Stallman <rms@gnu.org>
13817
13818 * xrdb.c (file_p): Rename arg `path' to `filename'.
13819
13820 * abbrev.c (Fexpand_abbrev): Increment plist as use count
13821 only if it is an integer.
13822
13823 * xfns.c (png_load): Set screen_gamma based on f->gamma.
13824 If png_get_sRGB gives an answer, call png_set_gamma
13825 using the default image gamma value.
13826
13827 * lread.c (read1): When reading from a file, default string to
13828 multibyte only if it has some multibyte characters.
13829
13830 * print.c (print_object): Output multibyte chars 128...255
13831 using \x even if ! print_escape_multibyte.
13832
13833 * xdisp.c (display_mode_element): Move the places where
13834 bytepos, charpos, this, and lisp_string are set.
13835 Use lisp_string to set bytepos.
13836
13837 * xdisp.c (redisplay_internal):
13838 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
13839
13840 * xdisp.c (display_mode_element): Merge properties specified with
13841 :propertize onto those that come with the string.
13842
138432002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
13844
13845 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
13846 automatic-hscrolling. Users changed.
13847 <hscroll-margin>: Renamed from automatic-hscroll-margin.
13848 Users changed.
13849 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13850
138512002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13852
13853 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13854
138552002-03-02 Kim F. Storm <storm@cua.dk>
13856
13857 * window.c (Fminibuffer_selected_window): New function.
13858 (syms_of_window): Defsubr it.
13859
138602002-03-01 Kim F. Storm <storm@cua.dk>
13861
13862 * window.h (struct window): New member phys_cursor_width.
13863
13864 * window.c (make_window, replace_window): Init phys_cursor_width.
13865
13866 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13867 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13868
13869 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13870 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13871
13872 * lisp.h (GCPRO6): New macro.
13873
13874 * process.c (Fopen_network_stream): Use GCPRO6.
13875
138762002-03-01 Kim F. Storm <storm@cua.dk>
13877
13878 * process.c (Qconnect, Qfailed): New variables.
13879 (syms_of_process): Intern and staticpro them.
13880 (Fprocess_status): Document connect and failed return values.
13881 [NON_BLOCKING_CONNECT]: New conditional.
13882 (connect_wait_mask, num_pending_connects): New variables.
13883 (status_message): Convert Qfailed status.
13884 (Fopen_network_stream): Added support for non-blocking connect.
13885 New optional args: filter, sentinel, non_blocking. Doc updated.
13886 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13887 (deactivate_process): Handle pending non-blocking connect.
13888 (wait_reading_process_input): Poll for status of non-blocking
13889 connects. Exec sentinel directly when connect succeeds.
13890 (status_notify): Don't read process output if not yet connected.
13891
138922002-02-28 Kim F. Storm <storm@cua.dk>
13893
13894 * window.c: (minibuf_selected_window): Renamed from
13895 Vminibuf_selected_window. Users changed.
13896 (syms_of_window): Staticpro it.
13897
138982002-02-26 Kim F. Storm <storm@cua.dk>
13899
13900 The following changes add a new Vminibuf_selected_window variable
13901 which is similar to Vminibuf_scroll_window, but which is only set
13902 on entry to the minibuffer (from a non-minibuffer window):
13903
13904 * window.c: (Vminibuf_selected_window): New variable.
13905 (struct save_window_data): New member minibuf_selected_window.
13906 (Fset_window_configuration): Restore Vminibuf_selected_window.
13907 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13908 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13909 (compare_window_configurations): Compare minibuf_selected_window.
13910
13911 * window.h: (Vminibuf_selected_window): Declare extern.
13912
13913 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13914 entry to minibuffer or on entry from a non-minibuffer window.
13915
13916 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13917 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13918
13919 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13920 instead of Vminibuf_scroll_window when deciding in which window
13921 the region should be highlighted. Consequently, the region remains
13922 highlighteded even when a completion buffer is also displayed.
13923
139242002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13925
13926 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13927
13928 * xselect.c (Qcompound_text_with_extensions): Renamed from
13929 Qcompound_text_no_extensions.
13930 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13931
139322002-02-26 Juanma Barranquero <lektu@terra.es>
13933
13934 * w32proc.c (syms_of_ntproc): Doc fix.
13935
139362002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13937
13938 * intervals.h: Include "dispextern.h" unconditionally.
13939
139402002-02-24 Jason Rumney <jasonr@gnu.org>
13941
13942 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13943 and disp-table.elc.
13944 (lisp): Add emacs-lisp/backquote.elc.
13945
139462002-02-24 Kim F. Storm <storm@cua.dk>
13947
13948 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13949 The validation of the event type was too strict as it didn't
13950 allow string events; buffer names are used in bindings for
13951 menu-bar-select-buffer (see `menu-bar-update-buffers').
13952
139532002-02-23 Kim F. Storm <storm@cua.dk>
13954
13955 The following changes rework my patch of 2002-02-06 which
13956 added command remapping by entering the commands directly into
13957 the keymaps. Now, command remapping uses an explicit `remap'
13958 prefix in the keymaps, i.e. [remap COMMAND].
13959
13960 * keymap.c (Qremap, remap_command_vector): New variables.
13961 (is_command_symbol): Removed function.
13962 (Fdefine_key): No longer accept a symbol for KEY.
13963 Added validation of [remap COMMAND] argument for KEY.
13964 The DEF is no longer required to be a symbol when remapping a command.
13965 (Fremap_command): New function to remap command through keymaps.
13966 (Flookup_key): Perform command remapping initiated by
13967 Fremap_command directly for speed.
13968 (Fkey_binding): Use Fremap_command for command remapping.
13969 (where_is_internal): Handle new command remapping representation.
13970 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13971 staticpro them. Defsubr Fremap_command.
13972
13973 * keymap.h (Fremap_command): Declare extern.
13974 (is_command_symbol): Remove extern.
13975
13976 * keyboard.c (command_loop_1): Use Fremap_command for command
13977 remapping; now try command remapping for all symbols.
13978
139792002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13980
13981 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13982
139832002-02-23 Jason Rumney <jasonr@gnu.org>
13984
13985 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13986 on the string before encoding it.
13987 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13988 after decoding it.
13989
13990 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13991
139922002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13993
13994 * w32term.c (enter_timestamp): Remove unused static variable to
13995 prevent warning.
13996
13997 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13998
139992002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
14000
14001 * w16select.c (Fw16_get_clipboard_data): Fix last change.
14002
14003 * xselect.c (selection_data_to_lisp_data): Fix last change.
14004
140052002-02-22 Jason Rumney <jasonr@gnu.org>
14006
14007 * w32term.h (struct w32_output): New member menu_command_in_progress.
14008
14009 * w32menu.c (menubar_selection_callback): Free the menu and
14010 clear the menu_command_in_progress flag.
14011
14012 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
14013 (menu_free_timer): New variable.
14014 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
14015 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
14016 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
14017 menu command is in progress.
14018 <WM_COMMAND>: Set the menu_command_in_progress flag.
14019 Kill any menu_free_timer that is running.
14020
14021 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
14022 Call ExtTextOutA rather than ExtTextOut.
14023
140242002-02-22 Eli Zaretskii <eliz@gnu.org>
14025
14026 * puresize.h (BASE_PURESIZE): Increase to 755000.
14027
140282002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14029
14030 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
14031 on the string before encoding it.
14032 (Fw16_get_clipboard_data): Run post-read-conversion on the string
14033 after decoding it.
14034
140352002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
14036
14037 Support for ICCCM Extended Segments in X selections:
14038
14039 * xselect.c <Qcompound_text_no_extensions>: New variable.
14040 (syms_of_xselect): Intern and staticpro it.
14041 (selection_data_to_lisp_data): Run post-read-conversion on decoded
14042 selection text.
14043 (lisp_data_to_selection_data): If next-selection-coding-system is
14044 compound-text-no-extensions, set the type of selection to be
14045 compound-text.
14046
14047 * xterm.h (x_encode_text): Update prototype.
14048
14049 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
14050 callers changed. If SELECTIONP is non-zero, run the
14051 pre-write-conversion function before encoding the selection text.
14052
140532002-02-21 Kim F. Storm <storm@cua.dk>
14054
14055 * frame.c (syms_of_frame): Change mouse-highlight default to t.
14056
14057 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
14058 Correct composing of language-change event.
14059
140602002-02-20 Kim F. Storm <storm@cua.dk>
14061
14062 * keyboard.c (menu_bar_items): Don't include keymap or local-map
14063 bindings at PT when building menu (the menu is not updated often
14064 enough for this to work reliable).
14065 (tool_bar_items): Likewise.
14066 (current_active_maps): Removed unused (and buggy) function.
14067
140682002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14069
14070 * xfns.c (gif_load): Use correct width and height for GIF images.
14071
140722002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
14073
14074 * floatfns.c (Fatan): Accept an optional second arg and call
14075 atan2 if passed 2 args.
14076
140772002-02-18 Jason Rumney <jasonr@gnu.org>
14078
14079 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
14080
140812002-02-17 Jason Rumney <jasonr@gnu.org>
14082
14083 * w32term.c (x_autoselect_window_p): New variable.
14084 (syms_of_w32term): DEFVAR_BOOL and initialize it.
14085 (note_mouse_movement): Use it.
14086
14087 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
14088
14089 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
14090
14091 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14092 New variables.
14093 (syms_of_w32fns): Intern and staticpro them.
14094 (x_frame_parms) <"fullscreen">: New parameter.
14095 (x_fullscreen_move, x_set_fullscreen): New functions.
14096 (x_set_frame_parameters): Support Qfullscreen.
14097 (x_real_positions): Save x/y_pixels_diff frame params.
14098 (x_figure_window_size): Support full-screen frames.
14099 (Fx_create_frame): Default the fullscreen parameter.
14100
14101 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
14102 (x_fullscreen_adjust): New functions.
14103 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
14104 fullscreen. Call x_check_fullscreen_move, and set the
14105 want_fullscreen member of output_data.w32
14106 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
14107
14108 * w32term.h: New enum for FULLSCREEN_* constants.
14109 (struct w32_output): New members want_fullscreen, x_pixels_diff,
14110 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
14111 (x-fullscreen-adjust): New prototype.
14112
141132002-02-17 Kim F. Storm <storm@cua.dk>
14114
14115 * frame.c: (Vmouse_highlight): New variable.
14116 (syms_of_frame): DEFVAR_LISP it.
14117
14118 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 14119
048addec 14120 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 14121
048addec
JD
14122 * xterm.c (disable_mouse_highlight): Removed variable.
14123 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14124 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14125 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
14126 and on after keyboard input.
14127 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 14128
048addec 14129 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 14130
048addec
JD
14131 * msdos.c (disable_mouse_highlight): Removed variable.
14132 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14133 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
14134 (internal_terminal_init): Initialize mouse_face_hidden.
14135 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
14136 and on after keyboard input.
4f1b1854 14137
048addec 14138 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 14139
048addec
JD
14140 * w32term.c (disable_mouse_highlight): Removed variable.
14141 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
14142 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
14143 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
14144 and on after keyboard input.
14145 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 14146
048addec 141472002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 14148
048addec
JD
14149 * msdos.c (last_mouse_window): New variable.
14150 (dos_rawgetc): Fix last change--if the mouse is in the same window
14151 as recorded in last_mouse_window, don't select this window.
5cb6905d 14152
048addec 14153 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 14154
048addec
JD
14155 * msdos.c (x_autoselect_window_p): New variable.
14156 (syms_of_msdos): Defvar it.
14157 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
14158 which the last mouse movement occured, unless it is already selected.
437dfb9f 14159
048addec
JD
14160 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
14161 New variables.
14162 (syms_of_xdisp): DEVFAR them.
14163 (hscroll_window_tree): Use automatic_hscroll_margin and
14164 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 14165
048addec 141662002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 14167
048addec
JD
14168 * xterm.c (x-autoselect-window): New variable.
14169 (note_mouse_movement): Use it.
9f696a00 14170
048addec 14171 * keyboard.c: Do not include "systime.h" twice.
d57966d7 14172
048addec 141732002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 14174
bfa02563 14175 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 14176
048addec 14177 * alloc.c (NSTATICS): Increase to 1280.
74779f52 14178
048addec 141792002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 14180
048addec 14181 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 14182
048addec
JD
14183 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
14184 (Vx_super_keysym): New variables.
14185 (syms_of_xterm): DEFVAR_LISP them.
14186 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
14187 variables to determine which keys to use for the various modifiers.
a474d59c 14188
048addec 141892002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 14190
048addec
JD
14191 * window.c: (Vmode_line_in_non_selected_windows): Removed.
14192 (mode_line_in_non_selected_windows): New variable.
14193 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 14194
048addec
JD
14195 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
14196 Use mode_line_in_non_selected_windows.
14197 (mode_line_in_non_selected_windows): Declare extern.
14198 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 14199
048addec 142002002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 14201
048addec
JD
14202 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
14203 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
14204 (Fclear_this_command_keys): Doc fixes.
2d10309f 14205
048addec
JD
14206 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
14207 (update_face_from_frame_parameter): Increment face_change_count
14208 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 14209
048addec
JD
14210 * xdisp.c (QCpropertize): New variable.
14211 (mode_line_proptrans_alist): New variable.
14212 (display_mode_element): New arg PROPS; all calls changed.
14213 Implement this, for strings.
14214 Handle literal output of strings by sharing the
14215 main-line code for strings, using local var `literal'.
14216 Handle :propertize feature.
14217 (syms_of_xdisp): Initialze and staticpro QCpropertize and
14218 mode_line_proptrans_alist.
0b1e6b54 14219
048addec 142202002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 14221
048addec
JD
14222 * window.c: (Vmode_line_in_non_selected_windows): New variable.
14223 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 14224
048addec
JD
14225 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
14226 (CURRENT_MODE_LINE_FACE_ID): Use it.
14227 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 14228
048addec
JD
14229 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
14230 to get mode line face.
e17144de 14231
048addec 142322002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14233
048addec
JD
14234 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
14235 variables; cus-start.el doesn't need them anymore.
44368f8f 14236
048addec 142372002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 14238
048addec
JD
14239 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
14240 reduction. This fixes a display problem where stray newlines were
14241 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 14242
048addec 142432002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 14244
048addec 14245 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 14246
048addec 14247 * xdisp.c (display_mode_lines): Fix last change.
453c5510 14248
048addec 142492002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 14250
048addec
JD
14251 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
14252 match each other.
14253 (w32_load_system_font): Prevent Cleartype fonts from loading.
14254 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 14255
048addec 142562002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 14257
048addec
JD
14258 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
14259 (CURRENT_MODE_LINE_HEIGHT): Use it.
14260 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14261
048addec
JD
14262 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
14263 (pos_visible_p, handle_face_prop): Likewise.
14264 (display_mode_lines): Likewise, but for the real selected window.
14265 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 14266
048addec
JD
14267 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
14268 in non-selected windows.
14269 (realize_basic_faces): Realize it.
14270 (syms_of_term): Intern and staticpro it.
308dd672 14271
048addec 142722002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 14273
048addec
JD
14274 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
14275 Changed mail addresses to emacs-devel@gnu.org.
308dd672 14276
048addec 142772002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 14278
048addec
JD
14279 * fileio.c (Fsubstitute_in_file_name): If the file name includes
14280 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 14281
048addec 14282 * floatfns.c (Fround): Doc fix.
3c1e6b46 14283
048addec 142842002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 14285
048addec 14286 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 14287
048addec 142882002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 14289
048addec 14290 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 14291
048addec 142922002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 14293
048addec
JD
14294 * keymap.c (where_is_internal): Only check whether definition is
14295 remapped if it fulfills is_command_symbol.
0065bb74 14296
048addec 142972002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 14298
048addec 14299 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 14300
048addec 14301 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 14302
048addec 143032002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 14304
048addec
JD
14305 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
14306 defining command remapping. Doc updated.
14307 (Flookup_key): Remap command through keymap if KEY is a symbol.
14308 (is_command_symbol): New function.
14309 (Fkey_binding): Use it. New optional argument NO-REMAP.
14310 Doc updated. Callers changed. Perform command remapping via
14311 recursive call unless that arg is non-nil.
14312 (where_is_internal): New argument no_remap. Callers changed.
14313 Call recursively to find original key bindings for a remapped
14314 comand unless that arg is non-nil.
14315 (Fwhere_is_internal): New optional argument NO-REMAP.
14316 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 14317
048addec
JD
14318 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
14319 (is_command_symbol): Added prototype.
0d8466cc 14320
048addec
JD
14321 * keyboard.c (Vthis_original_command): New variable.
14322 (syms_of_keyboard): DEFVAR_LISP it.
14323 (command_loop_1): Set it, and perform command remapping.
15fff01d 14324
048addec 143252002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 14326
048addec 14327 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 14328
048addec 143292002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 14330
048addec 14331 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 14332
048addec 143332002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 14334
048addec 14335 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 14336
048addec 143372002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 14338
048addec 14339 * filelock.c (S_ISLNK): Define if not defined.
3a232704 14340
048addec 143412002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 14342
048addec 14343 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 14344
048addec
JD
14345 * lread.c (read1): Redesign strategy for force_multibyte and
14346 force_singlebyte. Now is_multibyte records whether read_buffer
14347 is multibyte. Encountering any multibyte character makes it so.
4e02881b 14348
048addec 143492002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 14350
048addec
JD
14351 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
14352 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 14353
048addec 143542002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 14355
048addec
JD
14356 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
14357 latter never being defined on GNU/Linux.
749f499f 14358
048addec 143592002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 14360
048addec
JD
14361 * xfaces.c (realize_default_face): Don't set the weight and slant of
14362 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 14363
048addec 143642002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 14365
048addec
JD
14366 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
14367 Call cancel_hourglass unconditionally.
d0fd26dd 14368
048addec
JD
14369 * eval.c (Fsignal): Remove duplicated declaration of
14370 the variable `display_hourglass_p'.
b4c45162 14371
048addec 143722002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 14373
048addec 14374 * editfns.c (region_limit): Nicer error message.
c95eaa61 14375
048addec
JD
14376 * coding.c (decode_composition_emacs_mule):
14377 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 14378
048addec
JD
14379 * callint.c (check_mark): New arg to specify clearer error message.
14380 Callers changed.
c95eaa61 14381
048addec 143822002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 14383
048addec 14384 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 14385
048addec 143862002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 14387
048addec
JD
14388 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
14389 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
14390 Fix doc-strings.
c95eaa61 14391
048addec 143922002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 14393
048addec 14394 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 14395
048addec
JD
14396 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
14397 and scroll_up_aggressively.
c95eaa61 14398
048addec 143992002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 14400
048addec 14401 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 14402
048addec 144032002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 14404
048addec
JD
14405 * textprop.c (Fnext_property_change, Fnext_single_property_change)
14406 (Fprevious_property_change, Fprevious_single_property_change):
14407 Stay within the narrowed-buffer boundaries.
e2c3786a 14408
048addec 144092002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 14410
048addec
JD
14411 * term.c (Ftty_display_color_cells): New function.
14412 (syms_of_term): Defsubr it.
14413 (Ftty_display_color_cells, Ftty_display_color_p): Change the
14414 argument name to DISPLAY. Doc fix.
bf794306 14415
048addec
JD
14416 * dispextern.h: Add prototype for set_tty_color_mode and
14417 tty_setup_colors.
bf794306 14418
048addec 144192002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 14420
048addec
JD
14421 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
14422 If region left to draw is not what was expected, mark the frame as
14423 garbaged.
62582985 14424
048addec
JD
14425 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
14426 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 14427
048addec 144282002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 14429
048addec
JD
14430 * w32term.c (x_update_window_begin): Only hide caret if
14431 w32_use_visible_system_caret is set.
14432 (x_update_window_end): Only show caret if
14433 w32_use_visible_system_caret is set.
14434 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 14435
048addec 14436 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 14437
048addec 144382002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 14439
048addec
JD
14440 * unexelf.c (unexec): Define n so as to cause compilation error
14441 for the code where people have often written n instead of nn.
1e9a6186 14442
048addec 14443 * .gdbinit (hookpost-run): Defined.
1e9a6186 14444
048addec 144452002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 14446
048addec 14447 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 14448
048addec 144492002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 14450
048addec
JD
14451 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
14452 if fullscreen is being set.
7c75be36 14453
048addec 144542002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 14455
048addec
JD
14456 * minibuf.c (Fminibuffer_contents)
14457 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
14458 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 14459
048addec 144602002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 14461
048addec 14462 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 14463
048addec 144642002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 14465
048addec
JD
14466 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
14467 height before comparison.
14468 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 14469
048addec 144702002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 14471
048addec
JD
14472 * w32term.c (w32_system_caret_width): Remove.
14473 (w32_use_visible_system_caret): New user flag.
14474 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
14475 Windows reports a screen reader running.
14476 (x_update_window_begin): Hide the system caret.
14477 (x_update_window_end): Show the system caret.
14478 (x_display_and_set_cursor): Don't draw a cursor when
14479 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 14480
048addec
JD
14481 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
14482 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
14483 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
14484 the user requests it. Use system default width when creating.
14485 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 14486
048addec
JD
14487 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
14488 New window messages.
905cc05a 14489
048addec 144902002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 14491
048addec 14492 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 14493
048addec 144942002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 14495
048addec 14496 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 14497
048addec 144982002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 14499
048addec 14500 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 14501
048addec 145022002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 14503
048addec
JD
14504 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
14505 that Windows returns. If a double check fails, try to guess how
14506 ExtTextOut is going to act.
4d0fa4f3 14507
048addec
JD
14508 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
14509 in place of stricmp.
14510 (w32_list_synthesized_fonts): Removed.
14511 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
14512 (struct enumfont_t): New element; list.
14513 (enum_font_cb2): List all style and charset variations of a font.
14514 (Fw32_select_font): New optional argument; include_proportional.
14515 Exclude vertical fonts. Exclude proportional fonts unless
14516 include_proportional is non-nil.
14517 (w32_enable_synthesized_fonts): Change to a boolean.
14518 (Fw32_send_sys_command): Doc fix.
493faf20 14519
048addec 145202002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 14521
048addec
JD
14522 * dispnew.c (update_frame): Move the variable `tem' to the block
14523 where it is used.
4971e491 14524
048addec 145252002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 14526
048addec
JD
14527 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
14528 call to face-set-after-frame-default.
4971e491 14529
048addec 145302002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 14531
048addec
JD
14532 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
14533 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 14534
048addec 145352002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 14536
048addec
JD
14537 * window.c (enlarge_window): When exceeding size of parent,
14538 directly delete all the siblings instead of trying to resize it.
201c831a 14539
048addec 145402002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 14541
048addec 14542 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 14543
048addec 145442002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 14545
048addec 14546 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 14547
048addec 145482002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 14549
048addec
JD
14550 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
14551 is invisible. This can happen if cursor is on top line of a
14552 window, and we switch to a buffer with a header line.
d77fbc16 14553
048addec 14554 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 14555
048addec 145562002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 14557
048addec
JD
14558 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
14559 `dont_resize' only when used.
61e3b944 14560
048addec 14561 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 14562
048addec 145632002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 14564
048addec
JD
14565 * xdisp.c (display_mode_element): When computing charpos, depend
14566 on multibyteness of elt, not the text in field.
8af01033 14567
048addec 145682002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 14569
048addec
JD
14570 * buffer.c (Fkill_all_local_variables):
14571 Increment `update_mode_lines' only once.
7363986a 14572
048addec 145732002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 14574
048addec
JD
14575 * lisp.h (adjust_after_replace_noundo)
14576 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 14577
048addec 14578 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 14579
048addec 145802002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 14581
048addec
JD
14582 Support for the --color command-line argument and tty-color-mode
14583 frame parameter:
f1a85b89 14584
048addec
JD
14585 * term.c (tty_default_color_capabilities, tty_setup_colors)
14586 (set_tty_color_mode): New functions.
14587 (term_init): Call tty_default_color_capabilities.
14588 (Qtty_color_mode_alist): New variable.
14589 (syms_of_term): Intern and staticpro it.
f1a85b89 14590
048addec
JD
14591 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
14592 frames.
14593 (do_switch_frame): For termcap frames, switch the tty
14594 color mode as specified by the frame's parameters.
14595 (Qtty_color_mode): New variable.
14596 (syms_of_frame): Intern and staticpro it.
3a62677f 14597
048addec
JD
14598 * emacs.c (USAGE2): Add the --color option.
14599 (standard_args): Ditto.
72244db2 14600
048addec
JD
146012002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14602
14603 * xterm.h (struct x_output): New members want_fullscreen,
14604 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
14605 y_pixels_outer_diff.
14606 New enum for FULLSCREEN_* constants.
14607 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
14608 is NULL.
14609 (x_fullscreen_adjust): Add prototype.
3a62677f 14610
048addec
JD
14611 * emacs.c (USAGE2): Add the new full-screen arguments.
14612 (standard_args): Ditto.
3a62677f 14613
048addec
JD
14614 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
14615 New variables.
14616 (syms_of_xfns): Intern and staticpro them.
14617 (x_frame_parms) <"fullscreen">: New parameter.
14618 (x_fullscreen_move, x_set_fullscreen): New functions.
14619 (x_set_frame_parameters): Support for Qfullscreen.
14620 (x_real_positions): More accurate computation of the frame position.
14621 (x_figure_window_size): Support full-screen frames.
14622 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 14623
048addec
JD
14624 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
14625 (XTread_socket) <Expose>: Call x_check_fullscreen.
14626 <ConfigureNotify>: Don't resize to fullscreen.
14627 Call x_check_fullscreen_move, and set the want_fullscreen member of
14628 output_data.x.
3a62677f 14629
048addec 146302002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 14631
048addec
JD
14632 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
14633 for mice with more than 3 buttons.
b8523839 14634
048addec
JD
14635 * w32term.c (parse_button): New parameter xbutton. Callers changed.
14636 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 14637
048addec
JD
14638 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
14639 (syms_of_w32fns): DEFVAR_BOOL it.
14640 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 14641
048addec 146422002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 14643
048addec 14644 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 14645
048addec 146462002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 14647
048addec 14648 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 14649
048addec 146502002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 14651
048addec
JD
14652 * .gdbinit (xbuffer): Remove address operator since data is now a
14653 pointer.
c93674bb 14654
048addec 146552002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 14656
048addec 14657 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 14658
048addec 14659 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 14660
048addec 146612002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 14662
048addec
JD
14663 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
14664 when checking for multiple frames.
91175673 14665
048addec 146662002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 14667
048addec
JD
14668 * window.c (delete_window): Rewrite the code for changing the
14669 selected window to handle the case where WINDOW is not a leaf.
91175673 14670
048addec 146712002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 14672
048addec
JD
14673 * process.c (send_process): Set src_multibyte to 1 after the call
14674 top setup_coding_system, not before the call.
e0fead5d 14675
048addec 146762002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 14677
048addec
JD
14678 * xmenu.c (set_frame_menubar, xmenu_show):
14679 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 14680
048addec
JD
14681 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
14682 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 14683
048addec 146842002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 14685
048addec 14686 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 14687
048addec 14688 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 14689
048addec 14690 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 14691
048addec 146922002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 14693
048addec
JD
14694 * insdel.c (make_gap_larger): Make sure buffer size does not
14695 overflow range of int.
62854fe2 14696
048addec 146972002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 14698
048addec
JD
14699 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14700 OVERLAPS_P.
656f46bb 14701
048addec 14702 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 14703
048addec
JD
14704 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
14705 to the left or to the right of the pointer, put it against
14706 the left screen edge.
14707 (x_frame_parms): Add missing braces around initializer.
036e218d 14708
048addec
JD
14709 * w32term.c (x_setup_relief_colors): Don't compute an image's
14710 background color if it doesn't have a Pixmap.
14711 (notice_overwritten_cursor): Don't depend on
14712 output_cursor and updated_area. Compare pixel coordinates with
14713 window's cursor pixel coordinates.
14714 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14715 Call notice_overwritten_cursor with new arg list.
14716 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14717 unconditionally.
14718 (x_draw_image_relief): Use predefined macro instead of
14719 constant when the value of `tool_bar_button_relief' is negative.
036e218d 14720
048addec 14721 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 14722
048addec 147232002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 14724
048addec 14725 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 14726
048addec 147272002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 14728
048addec
JD
14729 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
14730 (Fkey_binding): Try the `keymap' property map first.
14731 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
14732 minor mode bindings.
90647b07 14733
048addec 147342002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 14735
048addec 14736 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 14737
048addec 147382002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 14739
048addec
JD
14740 * keyboard.c (read_key_sequence): Handle the keymap property
14741 before minor mode maps.
9fbc32aa 14742
048addec
JD
14743 * editfns.c (Fformat): Update thissize from field_width
14744 based on the actual width, in the string case.
036e218d 14745
048addec 147462002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 14747
048addec
JD
14748 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
14749 when used as truth value to prevent gcc warnings.
9fbc32aa 14750
048addec
JD
14751 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
14752 * w32proc.c: Include <config.h>.
9fbc32aa 14753
048addec 147542002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 14755
048addec
JD
14756 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
14757 not EMACS_INT, to make them compatible with DEFVAR_INT.
14758 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 14759
048addec 147602002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 14761
048addec
JD
14762 * print.c (print_object): Test print_escape_nonascii only for
14763 unibyte strings.
14764 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
14765 when outputting to a multibyte buffer.
9fbc32aa 14766
048addec 147672001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 14768
048addec
JD
14769 * print.c (print_object): In multibyte string, use hex escapes.
14770 Use octal only for unibyte strings.
14771 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 14772
048addec
JD
14773 * lread.c (read_escape): New arg BYTEREP for reporting whether
14774 escape forces unibyte or multibyte.
14775 (read1): When reading a string, take note of that info.
0142178a 14776
048addec 147772001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 14778
048addec
JD
14779 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
14780 comparison to test lisp value returned by Fget.
d4824a5d 14781
048addec 147822001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 14783
048addec 14784 * lisp.h (max_specpdl_size): Add declaration.
b1356234 14785
048addec 14786 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 14787
048addec
JD
14788 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
14789 Handle modifier bits. Correct typo in error message.
99e380ee 14790
048addec 147912001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 14792
048addec
JD
14793 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
14794 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
14795 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
14796 Update calls to Fdefine_abbrev.
14797 (write_abbrev): Update for changed data format.
14798 Don't list "system" abbrevs.
14799 (Fexpand_abbrev): Update use count with new data format.
14800 (describe_abbrev): Update for changed data format.
14801 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 14802
048addec 14803 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 14804
048addec 14805 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 14806
048addec
JD
14807 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
14808 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 14809
048addec
JD
14810 * keymap.c (Flookup_key): Error message if key has wrong data type.
14811 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
14812 (exclude_key): New variable.
59a86c99 14813
048addec 148142001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 14815
048addec
JD
14816 * xterm.c (x_setup_relief_colors): Don't compute an image's
14817 background color if it doesn't have a Pixmap.
eb77a5f4 14818
048addec
JD
14819 * xterm.c (notice_overwritten_cursor): Don't depend on
14820 output_cursor and updated_area. Compare pixel coordinates with
14821 window's cursor pixel coordinates.
14822 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14823 Call notice_overwritten_cursor with new arg list.
14824 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14825 unconditionally.
eb77a5f4 14826
048addec
JD
14827 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
14828 height of the cursor line to the amount to scroll.
eb77a5f4 14829
048addec 148302001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 14831
048addec
JD
14832 * intervals.c (set_point_both): The position after an invisible,
14833 intangible character is not an acceptable stopping point.
bb313871 14834
048addec 148352001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 14836
048addec
JD
14837 * window.c (enlarge_window): In new preserve_before code, convert
14838 CURBEG from lisp object to integer before doing arithmetic.
6052529b 14839
048addec 148402001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 14841
048addec 14842 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 14843
048addec 148442001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 14845
048addec
JD
14846 * keyboard.c (record_char): Ignore duplicate help-echo events only
14847 separated by mouse-movement. When tracking mouse, only record
14848 first and last mouse-movement event in same window.
14849 Don't record mouse-movement events in keyboard macros.
3ce081f5 14850
048addec 148512001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 14852
048addec
JD
14853 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14854 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 14855
048addec
JD
14856 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14857 instead of Fstring_as_unibyte.
9fabb2f5 14858
048addec 148592001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 14860
048addec 14861 The following changes remove mocklisp support:
9fabb2f5 14862
048addec 14863 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 14864
048addec
JD
14865 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14866 `Qmocklisp' and `Qmocklisp_arguments'.
14867 Remove prototype of syms_of_mocklisp.
2fa0eedf 14868
048addec 14869 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 14870
048addec
JD
14871 * callint.c: Do not include mocklisp.h.
14872 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 14873
048addec
JD
14874 * eval.c: Remove variables `Qmocklisp_arguments',
14875 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14876 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14877 Do not test for mocklisp case.
14878 (Fwhile): Remove unused variable `tem'.
14879 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 14880
048addec 14881 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 14882
048addec 14883 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 14884
048addec 14885 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 14886
048addec 148872001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 14888
048addec
JD
14889 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14890 to the left or to the right of the pointer, put it against
14891 the left screen edge.
6108b49c 14892
048addec 148932001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 14894
048addec
JD
14895 * Makefile.in (distclean): Remove .gdbinit if we are building
14896 outside the source tree.
5eea19a4 14897
048addec 148982001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 14899
048addec 14900 * w32.c (emacs_root_dir): New function.
5eea19a4 14901
048addec 14902 * msdos.c (emacs_root_dir): New function.
5eea19a4 14903
048addec
JD
14904 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14905 of the current drive as the fallback for default_directory.
438e57dd 14906
048addec
JD
14907 * dired.c (file_name_completion): Run the elements of
14908 completion-ignored-extensions through ENCODE_FILE.
438e57dd 14909
048addec
JD
14910 * lisp.h (scmp): Remove prototype, since it's now a static
14911 function private to dired.c.
c88e5347 14912
048addec 149132001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 14914
048addec
JD
14915 * dired.c (scmp): Function moved from minibuf.c.
14916 Delete multibyte handling--used only on encoded strings.
59ce1461 14917
048addec 14918 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14919
048addec 14920 * fns.c (merge): Add QUIT call.
59ce1461 14921
048addec 149222001-12-18 Dave Love <fx@gnu.org>
8727d588 14923
048addec
JD
14924 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14925 language/georgian.el.
8727d588 14926
048addec 149272001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14928
048addec
JD
14929 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14930 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14931
048addec 149322001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14933
048addec
JD
14934 * xdisp.c (window_box_height): Do not return negative values.
14935 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14936
048addec 14937 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14938
048addec 14939 * term.c (keys): Likewise.
deece6f5 14940
048addec 14941 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14942
048addec 149432001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14944
048addec
JD
14945 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14946 patch (COMPOSING_P, not COMPOSING).
28ff4293 14947
048addec 149482001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14949
048addec 14950 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14951
048addec
JD
14952 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14953 before calling decode_coding.
9b46de40 14954
048addec 14955 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14956
048addec
JD
14957 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14958 instead of only for COMPOSITION_DISABLED.
9b46de40 14959
048addec 149602001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14961
048addec 14962 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14963
048addec 14964 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14965
048addec
JD
14966 * buffer.h (struct buffer): New field `display_error_modiff'.
14967 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14968
048addec 14969 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14970
048addec
JD
14971 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14972 Call redisplay_window, but not if display_error_modiff field says no.
14973 (redisplay_window_error): New function.
14974 (displayed_buffer): New variable.
14975 (redisplay_internal, redisplay_windows): Call the new functions
14976 instead of redisplay_window directly.
2cd23960 14977
048addec 149782001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14979
048addec 14980 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14981
048addec 149822001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14983
048addec 14984 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14985 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14986 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14987
048addec 149882001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14989
048addec
JD
14990 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14991 parameter have a numeric value all the time.
f6fa0866 14992
048addec 14993 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14994
048addec 149952001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14996
048addec 14997 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14998
048addec
JD
14999 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
15000 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 15001
048addec 150022001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 15003
048addec
JD
15004 * xdisp.c (move_it_vertically_backward): Change heuristic
15005 for the case that we didn't move far enough initially.
91c153e2 15006
048addec
JD
15007 * window.c (Frecenter): Simplify computation in the case of window
15008 system frames and ARG < 0; use window_box_height.
65b7d3e7 15009
048addec 150102001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 15011
048addec
JD
15012 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
15013 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 15014
048addec 150152001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 15016
048addec
JD
15017 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
15018 arg is negative.
be676094 15019
048addec 150202001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 15021
048addec
JD
15022 * m/hp800.h: Split the __hpux conditional into the parts
15023 that are right for GNU/Linux too and the parts that are not.
15024 Use the former if GNU_LINUX.
15025 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 15026
048addec 15027 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 15028
048addec 150292001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 15030
048addec
JD
15031 * macros.c, msdos.c, w16select.c: Change doc-string comments to
15032 `new style' [w/`doc:' keyword].
032a857d 15033
048addec 150342001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 15035
048addec
JD
15036 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
15037 before using.
b6270150 15038
048addec 150392001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 15040
048addec
JD
15041 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
15042 keyword].
98cbb9fa 15043
048addec 150442001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 15045
048addec 15046 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 15047
048addec 15048 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 15049
048addec 150502001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 15051
048addec 15052 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 15053 Add comment to explain where the struct came from.
048addec
JD
15054 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
15055 (add_menu_item): Process pop-up menus first to avoid memory leak.
15056 (add_menu_item, w32_menu_display_help): Use `help' field as
15057 Lisp_Object.
15058 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 15059
048addec 150602001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 15061
048addec 15062 * COPYING: Moved back.
fa336b91 15063
048addec
JD
15064 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
15065 Add parentheses around && within ||.
077907d4 15066
048addec 15067 * indent.c (compute_motion): Likewise.
aa2af83a 15068
048addec 15069 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 15070
048addec
JD
15071 * coding.c (setup_coding_system, shrink_encoding_region)
15072 (Fdecode_sjis_char): Likewise.
60a653f1 15073
048addec 150742001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 15075
048addec
JD
15076 * xdisp.c (display_mode_element): Don't read past end of string if
15077 it ends with '%'.
60a653f1 15078
048addec
JD
15079 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
15080 can hold.
60a653f1 15081
048addec
JD
15082 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
15083 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
15084 type changed to Lisp_Object.
15085 (syms_of_data): DEFVAR_LISP them.
60a653f1 15086
048addec 150872001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 15088
048addec
JD
15089 * callproc.c (init_callproc): Set Vdata_directory based on the source
15090 location whenever Emacs was run uninstalled.
60a653f1 15091
048addec 150922001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 15093
048addec
JD
15094 * config.in (HAVE_WORKING_VFORK): New #undefs.
15095 * process.c (create_process):
15096 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
15097 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
15098 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
15099 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
15100 * m/intel386.h (HAVE_VFORK): Likewise.
15101 * m/mips-siemens.h (HAVE_VFORK): Likewise.
15102 * m/mips.h (HAVE_VFORK): Likewise.
15103 * s/freebsd.h (vfork): Remove #define.
15104 * s/lynxos.h (HAVE_VFORK): Remove #undef.
15105 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 15106
048addec 151072001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 15108
048addec
JD
15109 * s/hpux10.h (random): Add undef.
15110 (HAVE_RANDOM): Define it just once.
60a653f1 15111
048addec 151122001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15113
048addec 15114 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 15115
048addec 151162001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15117
048addec
JD
15118 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
15119 scroll bars of the frame before deleting the frame itself. If the
15120 frame has a widget, delete the frame with XtDestroyWidget, and do
15121 not call XDestroyWindow before that.
60a653f1 15122
048addec 151232001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 15124
048addec 15125 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15126
048addec 15127 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 15128
048addec 151292001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 15130
048addec
JD
15131 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
15132 excessively large.
60a653f1 15133
048addec
JD
15134 * insdel.c (make_gap_larger): New function.
15135 (make_gap_smaller): New function.
15136 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
15137 Call make_gap_smaller if arg is negative.
60a653f1 15138
048addec 151392001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15140
048addec
JD
15141 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
15142 Pass a dummy argument when calling interrupt_signal.
15143 (parse_menu_item): Mark disabled items before checking for empty def.
15144 (read_char_minibuf_menu_prompt): Make safety more visible.
15145 (read_key_sequence): Add a `first_unbound' variable.
15146 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
15147 unbound prefix as soon as we can detect it.
60a653f1 15148
048addec
JD
15149 * doc.c (Fsnarf_documentation): Add prototype.
15150 (get_doc_string): Handle negative arguments.
15151 (Fdocumentation): Use AREF and ASIZE.
15152 Move the calls to get_doc_string to a single place.
15153 Don't confuse an interactive-spec for a docstring reference.
15154 (Fdocumentation_property): Take advantage of the fact that
15155 get_doc_string now ignores the sign of the docstring position.
60a653f1 15156
048addec 15157 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 15158
048addec 151592001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15160
a64387ee 15161 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 15162
048addec 151632001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15164
048addec
JD
15165 * xterm.c (x_draw_image_relief): Use predefined macro instead of
15166 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 15167
048addec 151682001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 15169
048addec
JD
15170 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
15171 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 15172
048addec 15173 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 15174
048addec 151752001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15176
048addec 15177 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 15178
048addec 151792001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 15180
048addec 15181 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 15182
048addec 151832001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 15184
f63fd14e 15185 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 15186
048addec
JD
15187 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
15188 [!WM_MOUSELEAVE]: Define.
60a653f1 15189
048addec
JD
15190 * w32menu.c (current_popup_menu, get_menu_item_info):
15191 (set_menu_item_info): New vars.
15192 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
15193 (w32_menu_show): Set current_popup_menu.
15194 (add_menu_item): Allocate new strings for owner-drawn menu items
15195 and help strings.
15196 Use owner-draw for disabled menu items again.
15197 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
15198 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 15199
048addec
JD
15200 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
15201 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
15202 <WM_EXITMENULOOP>: Free menu strings.
15203 <WM_MOUSELEAVE>: Stop tracking mouse.
15204 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 15205
048addec
JD
15206 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
15207 and mouse face.
60a653f1 15208
048addec 152092001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 15210
048addec
JD
15211 The following changes add left-fringe and right-fringe
15212 frame parameters to adjust fringe widths, or remove one or
15213 both fringes.
60a653f1 15214
048addec
JD
15215 * frame.h (struct frame): Remove trunc_area_pixel_width and
15216 trunc_area_cols fields.
15217 (Qleft_fringe, Qright_fringe): Declare.
15218 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 15219
048addec
JD
15220 * frame.c (Qleft_fringe, Qright_fringe): New vars.
15221 (syms_of_frame): Initialize them.
60a653f1 15222
048addec
JD
15223 * window.c (coordinates_in_window): Handle separate left and right
15224 fringe widths.
60a653f1 15225
048addec
JD
15226 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
15227 and fringe_cols fields.
15228 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
15229 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
15230 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
15231 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
15232 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
15233 (x_compute_fringe_widths): Add prototype.
60a653f1 15234
048addec
JD
15235 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
15236 fill fringe evenly with small dashes.
f63fd14e 15237 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
15238 clip the new ZV bitmap to avoid jitter between rows.
15239 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
15240 background. Don't draw fringe bitmaps if fringe width is zero.
15241 (x_compute_fringe_widths): New function.
15242 (x_new_font, x_set_window_size_1): Use it.
60a653f1 15243
048addec
JD
15244 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
15245 (x_set_frame_parameters): Process `font' parameter before other
15246 parameters as fringe widths depend on it.
15247 (x_set_fringe_width): New function.
15248 (x_figure_window_size): Use x_compute_fringe_widths.
15249 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
15250 parameters.
60a653f1 15251
048addec
JD
15252 * widget.c (set_frame_size): Use x_compute_fringe_widths.
15253 (EmacsFrameSetCharSize): Ditto.
60a653f1 15254
048addec
JD
15255 * w32term.h: Merged changes from xterm.h.
15256 * w32term.c: Merged changes from xterm.c.
15257 * w32fns.c: Merged changes from xfns.c.
60a653f1 15258
048addec 152592001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15260
048addec 15261 * COPYING: Removed.
60a653f1 15262
048addec 152632001-11-29 Dave Love <fx@gnu.org>
60a653f1 15264
048addec
JD
15265 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
15266 extra extra slot.
15267 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 15268
048addec 152692001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15270
048addec
JD
15271 * fileio.c (file-name-coding-system)
15272 (default-file-name-coding-system): Doc fix (links to referenced
15273 variables added).
60a653f1 15274
048addec 152752001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15276
048addec
JD
15277 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
15278 Add dummy uses of gcproN variables.
60a653f1 15279
048addec
JD
15280 * category.c (describe_category, describe_category_1)
15281 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
15282 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 15283
048addec 152842001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 15285
048addec 15286 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 15287
048addec
JD
15288 * Makefile.in (lispdir): New variable, referring to build dir.
15289 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 15290
048addec 152912001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 15292
048addec
JD
15293 * w32menu.c (w32_menu_display_help): Actually add the new argument
15294 OWNER.
60a653f1 15295
048addec 152962001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 15297
048addec
JD
15298 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
15299 menu items. From David Ponce <dponce@wanadoo.fr>.
15300 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
15301 conditionally.
f63fd14e 15302 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 15303 help event in the owner frame's keyboard buffer.
60a653f1 15304
048addec
JD
15305 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
15306 (Fx_show_tip): Don't subtract last width from row width.
15307
15308 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
15309 (w32_read_socket): Use EQ to compare frames.
60a653f1 15310
048addec 153112001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 15312
048addec
JD
15313 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
15314 OVERLAPS_P.
60a653f1 15315
048addec 153162001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15317
048addec
JD
15318 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
15319 `gcpro3' and `gcpro4'.
60a653f1 15320
048addec 15321 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 15322
048addec 153232001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15324
048addec 15325 * ccl.c: Use AREF and ASIZE.
60a653f1 15326
048addec 153272001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15328
048addec
JD
15329 * lisp.h (run_hook_list_with_args): Remove.
15330 (LIST_END_P): Fix call to wrong_type_argument.
15331 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 15332
048addec 153332001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15334
048addec
JD
15335 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
15336 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 15337
048addec
JD
15338 * eval.c: Use AREF and ASIZE.
15339 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 15340
048addec
JD
15341 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
15342 which match the end of the file-name.
15343 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
15344 is not a valid env var, but leave it as is instead.
60a653f1 15345
048addec
JD
15346 * keymap.c (access_keymap): Handle t bindings like nil bindings.
15347 Make nil bindings in char-tables transparent.
15348 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 15349
048addec 153502001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 15351
048addec
JD
15352 * textprop.c (set_text_properties_1): Allow START, END in either order.
15353 Do nothing if range is empty.
60a653f1 15354
048addec 15355 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 15356
048addec
JD
15357 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
15358 (clean): Not here.
60a653f1 15359
048addec 153602001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15361
048addec
JD
15362 * textprop.c (set_text_properties_1): Clearly mark that the
15363 interval should not be empty.
60a653f1 15364
048addec
JD
15365 * intervals.c (graft_intervals_into_buffer):
15366 Don't call set_text_properties_1 on an empty interval.
60a653f1 15367
048addec 153682001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 15369
048addec 15370 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 15371
048addec
JD
15372 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
15373 don't lose the data in it.
60a653f1 15374
048addec 153752001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 15376
048addec 15377 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 15378
c62aec78 15379 * buffer.c (Fkill_buffer): Likewise.
60a653f1 15380
c62aec78 15381 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 15382
048addec 153832001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15384
048addec 15385 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 15386
048addec 153872001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15388
048addec
JD
15389 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
15390 Niemitalo <kon@iki.fi>.
60a653f1 15391
048addec 153922001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 15393
048addec 15394 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 15395
048addec
JD
15396 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
15397 (Fx_show_tip): Block input during frame creation.
15398 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 15399
048addec 154002001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 15401
048addec
JD
15402 * lread.c (Fload): Detect recursive load error for more than 3
15403 nestings of the same file.
15404 (Vrecursive_load_depth_limit): Variable deleted.
15405 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 15406
048addec 154072001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 15408
048addec
JD
15409 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
15410 mouse position if either left or top is not specified.
60a653f1 15411
048addec
JD
15412 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
15413 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
15414 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
15415 (my_create_tip_window): Assign tip_window.
15416 (x_create_tip_frame): Use same defaults as X.
15417 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 15418 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 15419
048addec
JD
15420 * w32term.c (x_after_update_window_line): Doc fix.
15421 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
15422 frames.
15423 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 15424
048addec
JD
15425 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
15426 for all Windowed systems.
60a653f1 15427
048addec 154282001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 15429
048addec
JD
15430 * msdos.c (IT_clear_screen): If the frame's faces are not yet
15431 realized, use the initial screen colors to clear the screen.
60a653f1 15432
048addec 154332001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15434
048addec
JD
15435 * textprop.c (Fset_text_properties): Remove unused variables
15436 `unchanged', `prev_changed', `s' and `len'.
60a653f1 15437
048addec
JD
15438 * search.c (Freplace_match): Remove unused variable `inslen'.
15439
15440 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
15441
154422001-11-22 Jason Rumney <jasonr@gnu.org>
15443
15444 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
15445 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
15446 (my_create_tip_window): New function.
15447 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
15448 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
15449
154502001-11-20 Jason Rumney <jasonr@gnu.org>
15451
15452 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
15453 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
15454
15455 * w32fns.c (Vw32_system_coding_system): Remove.
15456 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
15457
154582001-11-19 Stefan Monnier <monnier@cs.yale.edu>
15459
15460 * fileio.c (Fwrite_region): Move choose_write_coding_system to
15461 after build_annotations.
15462
15463 * syntax.c (describe_syntax): Add dummy arg.
15464 (describe_syntax_1): Update call to describe_vector.
15465
15466 * category.c (describe_category): Add dummy arg.
15467 (describe_category_1): Update call to describe_vector.
15468
15469 * keymap.c (Fdescribe_vector): Add `describer' parameter.
15470 (describe_command, describe_translation): Add dummy second param.
15471 (describe_map): Call elt_describer with two arguments.
15472 (describe_vector_princ): Add `fun' parameter.
15473 Call it instead of the hardcoded `princ'.
15474 (describe_vector): Add arg `args'.
15475 Pass it as a new second argument to elt_describer.
60a653f1 15476
048addec 15477 * keymap.h (describe_vector): Update prototype.
60a653f1 15478
048addec
JD
15479 * frame.c: Don't include keymap.h any more.
15480 (keys_of_frame): Remove.
60a653f1 15481
048addec 15482 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 15483
048addec 15484 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 15485
048addec 154862001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 15487
048addec
JD
15488 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
15489 if defined, 0 otherwise.
15490 (MAP_FAILED): Define if not defined and use it to test mmap failure.
15491 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 15492
048addec 154932001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 15494
048addec 15495 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 15496
048addec 154972001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 15498
048addec
JD
15499 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
15500 (x_draw_bar_cursor): If the background color of the glyph under
15501 the cursor equals the frame's cursor color, use the glyph's
15502 foreground color for drawing the bar cursor.
15503 (x_after_update_window_line): Clear internal border in different
15504 circumstances.
15505 (w32_set_vertical_scroll_bar): Check for width and height > 0.
15506 (w32_draw_relief_rect): Correct relief by 1 pixel.
15507 (x_set_glyph_string_background_width):
15508 Set extends_to_end_of_line_p if the row's fill_line_p is set and
15509 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
15510 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
15511 if cursor_in_non_selected_windows is false.
15512 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
15513 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
15514 Notice if cursor gets overwritten.
15515 (notice_overwritten_cursor): Renamed from
15516 note_overwritten_text_cursor. Rewritten to take glyph widths
15517 into account, and to take X positions as parameters.
15518 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15519 around call to x_draw_glyphs.
15520 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15521 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15522 color to use for image glyph reliefs.
15523 (x_draw_image_relief): Accept zero tool_bar_button_relief.
15524 (glyph_rect): Remove unused variable `area'.
60a653f1 15525
048addec
JD
15526 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
15527 some items.
15528 (x_set_internal_border_width): Set frame garbaged when window
15529 doesn't exist yet.
15530 (Fx_create_frame): Accept zero tool_bar_button_relief.
15531 (x_clear_image_1, four_corners_best, image_background)
15532 (image_background_transparent): New functions.
15533 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15534 (gs_format): Add `:background' entry.
15535 (lookup_image): Set IMG's background color if specified.
15536 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15537 when appropriate.
15538 (x_clear_image_1): Reset `background_valid' and
15539 `background_transparent_valid' fields.
15540 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15541 calculating it here. Set IMG's background_transparent field.
15542 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15543 (enum png_keyword_index): Add PNG_BACKGROUND.
15544 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15545 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15546 (enum gif_keyword_index): Add GIF_BACKGROUND.
15547 (enum gs_keyword_index): Add GS_BACKGROUND.
15548 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15549 Pre-calculate image background color where necessary.
15550 (x_create_x_image_and_pixmap, xbm_load, gs_load):
15551 Use display info's n_cbits entry for screen depth.
15552 (Fx_show_tip): Remove unused variables `buffer', `top',
15553 `left', `max_width' and `max_height'.
60a653f1 15554
048addec 15555 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 15556
048addec 155572001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 15558
048addec 15559 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 15560
048addec 155612001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 15562
048addec 15563 * frame.c (Fframe_live_p): Doc fix.
60a653f1 15564
048addec 155652001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 15566
048addec
JD
15567 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
15568 (message_dolog_marker3): New static variables hold three markers.
15569 (syms_of_xdisp): Initialize and staticpro them.
15570 (message_dolog): Use message_dolog_marker1..3 instead of
15571 allocating markers each time. Unchain them when done.
60a653f1 15572
048addec 155732001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 15574
048addec 15575 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 15576
048addec 155772001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 15578
048addec 15579 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 15580
048addec 155812001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 15582
048addec 15583 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 15584
048addec 155852001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 15586
048addec 15587 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 15588
048addec 155892001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 15590
048addec
JD
15591 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
15592 with invalid position.
60a653f1 15593
048addec 155942001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 15595
048addec 15596 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 15597
048addec
JD
15598 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
15599 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
15600 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 15601
048addec 15602 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 15603
048addec 156042001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 15605
048addec
JD
15606 * fileio.c (build_annotations): Split off the tail.
15607 (build_annotations_2): New fun. Extracted from build_annotations.
15608 (Fwrite_region): Split the call to build_annotations into two
15609 calls to build_annotations and build_annotations_2.
077907d4 15610
048addec 156112001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 15612
048addec
JD
15613 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
15614 clear_waiting_for_input with argument.
1756e2fb 15615
048addec 15616 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 15617
048addec 15618 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 15619
048addec 15620 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 15621
048addec 15622 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 15623
048addec 156242001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 15625
048addec
JD
15626 * fileio.c (choose_write_coding_system): New fun, extracted
15627 from Fwrite_region.
15628 (Fwrite_region): Use it.
fa336b91 15629
048addec
JD
15630 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
15631 (funcall_lambda, run_hook_with_args): Make static and add prototype.
15632 (ml_apply, find_handler_clause): Add prototype.
fa336b91 15633
048addec 156342001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 15635
048addec 15636 * config.in: Add #undef HAVE_COFF_H.
fa336b91 15637
048addec
JD
15638 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
15639 Required for ISC 4.1.
fa336b91 15640
048addec 156412001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 15642
048addec
JD
15643 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
15644 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 15645
048addec 156462001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 15647
048addec
JD
15648 The following changes are made to clean up the various internal
15649 references to the fringes to actually use the term `fringe' for
15650 them. Previously, they were called `flags areas', `bitmap areas',
15651 `left/right side of windows', or implicitly as `flags' or
15652 `bitmaps':
fa336b91 15653
048addec 15654 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 15655 Comments fixed. Use renamed symbols.
06e8f738 15656
f63fd14e 15657 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 15658
048addec
JD
15659 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
15660 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
15661 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 15662
048addec 15663 * msdos.c: Comment fix.
9ce647f4 15664
048addec 15665 * w32fns.c: Use renamed symbols.
9b784ab8 15666
f63fd14e 15667 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
15668 (fringe_bitmap_type): Renamed from bitmap_type.
15669 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15670 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
15671 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 15672
f63fd14e 15673 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
15674 (fringes_extra): Renamed from flags_areas_extra.
15675 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15676 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15677 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15678 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15679 (FRAME_X_LEFT_FRINGE_WIDTH):
15680 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15681 (FRAME_X_RIGHT_FRINGE_WIDTH):
15682 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 15683
048addec 15684 * widget.c: Use renamed symbols.
9f7e52b4 15685
f63fd14e 15686 * window.c: Comment fixes. Use renamed symbols.
048addec 15687 (coordinates-in-window-p): Doc fix.
fa336b91 15688
f63fd14e 15689 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 15690
048addec 15691 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 15692
048addec 15693 * xfns.c: Use renamed symbols.
89512fcd 15694
f63fd14e 15695 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
15696 (fringe_bitmap_type): Renamed from bitmap_type.
15697 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
15698 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
15699 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 15700
f63fd14e 15701 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
15702 (fringes_extra): Renamed from flags_areas_extra.
15703 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
15704 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
15705 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
15706 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
15707 (FRAME_X_LEFT_FRINGE_WIDTH):
15708 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
15709 (FRAME_X_RIGHT_FRINGE_WIDTH):
15710 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
15711
157122001-11-15 Jason Rumney <jasonr@gnu.org>
15713
15714 * w32menu.c (add-menu-item): Make help_echo and radio buttons
15715 work for most menu items. From David Ponce
15716 <david.ponce@wanadoo.fr>.
15717
157182001-11-15 Gerd Moellmann <gerd@gnu.org>
15719
15720 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
15721 Some x_set_* function expect to be called even if old and new
15722 value are equal.
15723
15724 * xdisp.c (build_desired_tool_bar_string): Accept zero
15725 tool_bar_button_relief.
15726
15727 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
15728
15729 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
15730
15731 * xterm.c (x_draw_bar_cursor): If the background color of the
15732 glyph under the cursor equals the frame's cursor color, use
15733 the glyph's foreground color for drawing the bar cursor.
15734
15735 * dispnew.c (direct_output_forward_char): Fix character/byte
15736 position comparison.
7d18891d 15737
048addec 157382001-11-15 Miles Bader <miles@gnu.org>
d2936d21 15739
048addec
JD
15740 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
15741 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
15742 Update arguments to find_field.
15743 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
15744 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
15745 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
15746 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 15747
048addec 157482001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 15749
048addec 15750 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 15751
048addec
JD
15752 * dispextern.h (image_background, image_background_transparent):
15753 Conditionalize on HAVE_X_WINDOWS.
7d18891d 15754
048addec 157552001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 15756
048addec 15757 * print.c (Fprin1_to_string): Doc fix.
7d18891d 15758
048addec 15759 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 15760
048addec 15761 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 15762
048addec 15763 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 15764
048addec 15765 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 15766
048addec 15767 * eval.c (syms_of_eval): Doc fix.
7d18891d 15768
048addec 15769 * coding.c (syms_of_coding): Doc fix.
7d18891d 15770
048addec 15771 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 15772
048addec 15773 * dispnew.c (syms_of_display): Doc fix.
9474c847 15774
048addec 15775 * category.c (Fget_unused_category): Doc fix.
9474c847 15776
048addec 15777 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 15778
048addec 157792001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 15780
048addec 15781 * print.c (prin1, print): Doc fix.
e3059a5d 15782
048addec 157832001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 15784
048addec
JD
15785 * fontset.h: Remove declarations of variables
15786 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 15787
048addec
JD
15788 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
15789 `Vclip_large_size_font'.
eae936e2 15790
048addec 157912001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 15792
048addec 15793 * w32fns.c: Doc fix.
ddb67bdc 15794
048addec 157952001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 15796
048addec 15797 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 15798
048addec 15799 * fns.c: Doc fix.
6e1b91d7 15800
048addec 15801 * emacs.c: Doc fix.
1c1d3d69 15802
048addec 15803 * coding.c: Doc fix.
1c1d3d69 15804
048addec
JD
15805 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
15806 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
15807 `new style' [w/`doc:' keyword].
b6f4c7ba 15808
048addec 158092001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 15810
048addec
JD
15811 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
15812 LeaveNotify events. Only FocusIn and FocusOut do that now.
15813 (x_display_and_set_cursor): Do display hollow cursors in active
15814 minibuffer windows when they are not selected.
b6f4c7ba 15815
048addec 158162001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 15817
048addec 15818 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
15819 * w32term.c: Change doc-string comments to `new style'
15820 [w/`doc:' keyword]. Doc fixes.
a89f435d 15821
048addec
JD
15822 * w32fns.c: Don't define max.
15823 (Fx_open_connection): Only execute once.
a4cd0cd7 15824
048addec 158252001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 15826
048addec
JD
15827 * ccl.c: Change macros to use do-while block instead of if-else.
15828 Use braces to follow GNU Coding Standards.
eafb659a 15829
048addec 158302001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 15831
048addec 15832 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 15833
048addec 15834 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 15835
048addec
JD
15836 * insdel.c (replace_range): Use adjust_markers_for_replace
15837 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 15838
78819ebb 15839 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 15840
048addec
JD
15841 * textprop.c (set_text_properties_1): New subroutine
15842 broken out of set_text_properties.
15843 (set_text_properties): Use set_text_properties_1.
91823618 15844
048addec
JD
15845 * intervals.c (graft_intervals_into_buffer):
15846 Use set_text_properties_1 to clear out properties.
91823618 15847
048addec
JD
15848 * search.c (Freplace_match): Use replace_range to insert
15849 and delete. Don't request property inheritance from
15850 surrounding text.
86928dfb 15851
048addec 158522001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 15853
048addec 15854 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 15855 vertical fonts. Allow them if face name is explicitly specified.
048addec 15856 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 15857
048addec 158582001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 15859
048addec
JD
15860 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15861 instead of malloc/free.
a78e0303 15862
048addec 158632001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 15864
048addec
JD
15865 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15866 Coding Standards.
15867 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 15868
048addec 15869 * buffer.c (Fbury_buffer): Likewise.
0c99b139 15870
048addec 15871 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 15872
048addec
JD
15873 * coding.c (encode_coding): Use precomputed value of `src'.
15874 (encode_coding): Remove unused variable `src_end'.
15875 (code_convert_region): Remove unused variables `count'.
830ddd77 15876
048addec 158772001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 15878
048addec
JD
15879 * w32term.c (x_display_and_set_cursor): Do not move system caret
15880 if cursor_glyph is NULL.
55c6d645 15881
048addec 158822001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 15883
048addec 15884 * keymap.c (access_keymap): Fix compilation error.
5de38842 15885
048addec 158862001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 15887
048addec 15888 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 15889
048addec 158902001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 15891
048addec
JD
15892 * intervals.c (graft_intervals_into_buffer):
15893 Remove #ifdef'd-out code.
15894 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 15895
048addec
JD
15896 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15897 code (eval-current-buffer).
15898 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 15899
048addec 159002001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 15901
048addec 15902 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 15903
048addec 159042001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 15905
048addec 15906 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 15907
048addec
JD
15908 * keyboard.c (make_lispy_event): Check integerness and fix
15909 Lisp_Object/int mixup.
17893c65 15910
048addec 159112001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 15912
048addec 15913 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 15914
048addec
JD
15915 * fontset.c (fontset_font_pattern): Remove unused variable
15916 `family_registry'.
d5360cc7 15917
048addec 15918 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15919
048addec 159202001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15921
048addec 15922 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15923
048addec
JD
15924 * buffer.c (Fkill_buffer): Don't delete auto save file
15925 if buffer is modified.
d9d54213 15926
048addec 159272001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15928
048addec
JD
15929 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15930 CHECK_NUMBER_CDR.
b116830b 15931
048addec 159322001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15933
048addec 15934 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15935
048addec 159362001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15937
048addec 15938 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15939
048addec 159402001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15941
048addec 15942 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15943
048addec 159442001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15945
048addec
JD
15946 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15947 the program image directly.
982f6c7e 15948
048addec 159492001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15950
048addec 15951 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15952
048addec 159532001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15954
048addec
JD
15955 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15956 and CHECK_BUFFER.
d31053f9 15957
048addec
JD
15958 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15959 (record_char): Likewise.
d31053f9 15960
048addec
JD
15961 * keyboard.c (make_lispy_event): Don't insist a drag event must
15962 move to a different buffer position. Instead, check for moving at
15963 least double_click_fuzz.
982f6c7e 15964
048addec 15965 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15966
048addec 15967 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15968
048addec
JD
15969 * indent.c (current_column_1, Fmove_to_column): Separate the code
15970 for display-table glyphs from the code for buffer text, to fix
15971 bugs in the former.
830047fd 15972
048addec 159732001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15974
048addec
JD
15975 * buffer.c (Fbuffer_local_value): New function.
15976 (syms_of_buffer): Defsubr it.
2df5238c 15977
048addec
JD
15978 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15979 value of `cursor-in-non-selected-windows'.
4e397688 15980
048addec
JD
15981 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15982 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15983 (syms_of_xdisp): Initialize it.
48b0f3ae 15984
048addec 159852001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15986
048addec 15987 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15988
048addec
JD
15989 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15990 keyword].
3ecaf7e5 15991
048addec
JD
15992 * eval.c (top_level_value, top_level_set): Remove commented and
15993 #ifdef'd-out code.
15994 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15995
048addec 159962001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15997
048addec 15998 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15999
048addec 16000 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 16001
048addec 16002 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 16003
048addec 160042001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 16005
048addec
JD
16006 * lisp.h (CHECK_STRING_CAR): New macro.
16007 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
16008 treating XCAR and XCDR as lvalues.
16009 (openp): Use CHECK_STRING_CAR.
16010 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 16011
048addec 160122001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 16013
048addec
JD
16014 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
16015 (SIGMASKTYPE): Define.
1b1acc13 16016
048addec 16017 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 16018
048addec 160192001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 16020
048addec
JD
16021 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
16022 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
16023 Fix typos in comments.
6cb16f95 16024
048addec
JD
16025 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
16026 and #ifdef'd-out code.
16027 Fix and reindent comments.
6cb16f95 16028
048addec 16029 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 16030
048addec
JD
16031 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
16032 argument `i' in macros.
6cb16f95 16033
048addec
JD
16034 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
16035 `i' in macros.
7e9d3c2f 16036
048addec
JD
16037 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
16038 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
16039 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
16040 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
16041 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
16042 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
16043 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
16044 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
16045 in macros.
7e9d3c2f 16046
048addec
JD
16047 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
16048 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
16049 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
16050 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
16051 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
16052 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
16053 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
16054 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
16055 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
16056 (remove unused second argument).
7e9d3c2f 16057
048addec 160582001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16059
048addec
JD
16060 * syntax.c (describe_syntax): New wrapper.
16061 (Finternal_describe_syntax_value): Rename from describe_syntax.
16062 Don't insert space at front and \n at the end.
16063 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 16064
048addec
JD
16065 * regex.c (re_wctype): Try to fix some warnings.
16066 (regcomp, regexec): Don't forget the __restrict.
9ba48103 16067
048addec 160682001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 16069
048addec 16070 * textprop.c (Fget_char_property): Doc fix.
9ba48103 16071
048addec 160722001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 16073
048addec 16074 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 16075
048addec 16076 * data.c (Fsetq_default): Ditto.
c22e59e1 16077
048addec 16078 * callint.c (Finteractive): Ditto.
9271ed2c 16079
048addec 160802001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 16081
048addec
JD
16082 * macros.c: Don't include keymap.h any more.
16083
160842001-11-01 Richard M. Stallman <rms@gnu.org>
16085
16086 * data.c (Fmake_local_variable): Doc fix.
16087
16088 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
16089 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 16090
048addec 16091 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
16092 bindings along with or instead of the buffer local map.
16093 Make the overriding maps override what they should.
16094
f00691a3 160952001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
16096
16097 * window.c (grow_mini_window): Fix typo in comment.
16098
27188d11
GM
160992001-11-01 Gerd Moellmann <gerd@gnu.org>
16100
7b49b9d2
GM
16101 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
16102 (XTset_vertical_scroll_bar): Likewise.
16103
43f7c3ea
GM
16104 * xfns.c (x_build_heuristic_mask): Use four_corners_best
16105 instead of IMAGE_BACKGROUND.
c22e59e1 16106
b350c2e5
GM
16107 * xfns.c (four_corners_best): Reindent.
16108
c22e59e1 16109 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
16110 Handle :box so that it is possible to specify sexprs.
16111
bf00d461
EZ
161122001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
16113
16114 * s/hpux11.h: New file.
16115
f00691a3 161162001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 16117
2b209b97
PJ
16118 * emacs.c (USAGE1): Show command line option --no-window-system
16119 instead of --no-windows in usage.
16120 (standard_args): Rename --no-windows to --no-window-system.
16121 (bug_reporting_address): Follow Emacs coding conventions.
16122
9dbc9081
PJ
16123 * eval.c (Fcommandp): Doc fix.
16124 Change doc-string comments to `new style' [w/`doc:' keyword].
16125
4e10df59
PJ
16126 * frame.c (Fframe_live_p): Doc fix.
16127
16128 * buffer.c (selective-display-ellipses): Doc fix.
16129
dd387b25
GM
161302001-10-31 Gerd Moellmann <gerd@gnu.org>
16131
fe957e65
GM
16132 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
16133
dd387b25
GM
16134 * xfaces.c (realize_x_face): If C is not a single-byte character,
16135 set the face's colors_copied_bitwise_p instead of the defaulted_p
16136 members which have a different meaning.
16137 (free_face_colors): Do nothing for a face whose colors have been
16138 copied bitwise.
16139
c22e59e1 16140 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 16141
f00691a3 161422001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 16143
687784e8
PJ
16144 * marker.c, mocklisp.c: Change doc-string comments to `new style'
16145 [w/`doc:' keyword].
2e1280f8 16146
b9d9a9b9
GM
161472001-10-31 Gerd Moellmann <gerd@gnu.org>
16148
16149 * fns.c (require_unwind): Return Lisp_Object.
16150
f00691a3 161512001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 16152
fa1361cb
PJ
16153 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
16154 (last-input-char): Revert doc-string to be the same as the
16155 doc-string of `last-input-event'.
16156
6c465a15 16157 * xdisp.c: Fix typos in comments.
48400103 16158
eafa3196
GM
161592001-10-31 Gerd Moellmann <gerd@gnu.org>
16160
16161 * window.c (grow_mini_window): Handle case that the root
16162 window is already smaller than the nominal mininum height.
16163
747d3f2a
SM
161642001-10-30 Stefan Monnier <monnier@cs.yale.edu>
16165
bf9bb76f
SM
16166 * emacs.c (main): Don't call keys_of_macros any more.
16167
16168 * lisp.h (keys_of_macros): Remove.
16169
16170 * macros.c (keys_of_macros): Remove.
16171
747d3f2a
SM
16172 * xfaces.c (Fface_attribute_relative_p): Declare args.
16173
5e905a57
JR
161742001-10-30 Jason Rumney <jasonr@gnu.org>
16175
16176 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
16177 (enum_font_cb2): Ignore fonts with vertical orientation.
16178
3a426197
RS
161792001-10-30 Richard M. Stallman <rms@gnu.org>
16180
16181 * keyboard.c (Finput_pending_p): Doc fix.
16182
a742d646
GM
161832001-10-30 Gerd Moellmann <gerd@gnu.org>
16184
259cf6bc
GM
16185 * xterm.c (x_after_update_window_line): Don't run the code
16186 clearing in borders for rows whose visible height is 0.
16187
3f99f948
GM
16188 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
16189 resized_p flag is set. If not set, use the much less flickering
16190 method previously used.
16191
16192 * dispnew.c (change_frame_size_1): Set frame's resized_p.
16193
16194 * frame.h (struct frame) <resized_p>: New member.
16195
b4a3be43
GM
16196 * lread.c (to_multibyte): Ensure read_buffer is at least twice
16197 as large as the number of bytes to convert.
747d3f2a 16198
a742d646
GM
16199 * lread.c (to_multibyte): New function.
16200 (read1): Use it.
16201
cacbb9e9
EZ
162022001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
16203
16204 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
16205
99cb6b2f
GM
162062001-10-30 Gerd Moellmann <gerd@gnu.org>
16207
327f42ee 16208 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
16209 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
16210 if the row's fill_line_p is set and drawing the last glyph with
16211 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 16212
99cb6b2f
GM
16213 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
16214
8e8223e2
SM
162152001-10-29 Stefan Monnier <monnier@cs.yale.edu>
16216
16217 * xmenu.c: Include coding.h and charset.h.
16218 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
16219 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
16220 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
16221 Explicitly set wv->help. Use `TRUE' rather than `True'.
16222 (menu_help_callback): Use empty_string.
16223
16224 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
16225 (Fx_popup_dialog): Explicitly init f.
16226 (w32_menu_display_help): Use empty_string.
16227
4d083a8f
RS
162282001-10-29 Richard M. Stallman <rms@gnu.org>
16229
b2304472
RS
16230 * fns.c (Frequire): Detect recursive try to require the same
16231 feature 3 or more levels deep, and get error.
16232 (require_unwind): New subroutine.
16233 (require_nesting_list): New variable.
16234 (syms_of_fns): Init and staticpro it.
16235
4d083a8f
RS
16236 * print.c (print_object): Clarify indication of insertion type.
16237
2fe41216
EZ
162382001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
16239
90480000
EZ
16240 * coding.c (syms_of_coding): Document that locale-coding-system is
16241 used for decoding input on X.
16242
2fe41216
EZ
16243 * window.c (Fscroll_left, Fscroll_right): Doc fix.
16244
f00691a3 162452001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
16246
16247 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
16248 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
16249
60ebcfe8
GM
162502001-10-29 Gerd Moellmann <gerd@gnu.org>
16251
9a7bdceb
GM
16252 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
16253 use NO_CURSOR if cursor_in_non_selected_windows is false.
16254
3f08fcd2
GM
16255 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
16256 the slant attribute if FRAME is t.
16257
0ccfdad2
GM
16258 * xfns.c (x_set_internal_border_width): Set frame garbaged
16259 when X window doesn't exist yet.
16260
ef253080
GM
16261 * xterm.c (x_after_update_window_line): Clear internal border
16262 in different circumstances.
b116830b 16263
60ebcfe8
GM
16264 * xterm.c (XTread_socket) <KeyPress>: Don't use
16265 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
16266 <handa@etl.go.jp>.
16267
73d25f9c
EZ
162682001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
16269
16270 * m/ibms390.h: New file. From Adam Thornton
16271 <athornton@sinenomine.net>.
16272
cac1daf0
GM
162732001-10-28 Gerd Moellmann <gerd@gnu.org>
16274
053b3256 16275 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 16276
cac1daf0
GM
16277 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
16278 a loop counter.
16279
f00691a3 162802001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 16281
f9711de4 16282 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 16283
4707d2d0
PJ
16284 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
16285 keyword].
16286 Fix typos in comments.
b116830b 16287
d883731c
PJ
16288 * emacs.c (bug_reporting_address): New function.
16289 Use it when displaying usage message.
16290
04012254
PJ
16291 * minibuf.c (read_minibuf): Remove unused external declaration of
16292 variable `Qread_only'.
16293
13b1a09c
PJ
16294 * keymap.c (access_keymap): Remove unused variable `charset'.
16295
5bbf4378
MB
162962001-10-28 Miles Bader <miles@gnu.org>
16297
16298 * xfaces.c (merge_face_heights): Handle TO being relative as well.
16299 Remove #ifdef'd-out code.
16300 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
16301 (syms_of_xfaces): Initialize them.
16302
1ce1e4ee
JR
163032001-10-27 Jason Rumney <jasonr@gnu.org>
16304
16305 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
16306 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
16307 position using the system caret.
16308
16309 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
16310 (w32_system_caret_height, w32_system_caret_x)
16311 (w32_system_caret_y): New variables for tracking system caret.
16312 (w32_initialize): Initialize them.
c2d53558 16313 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 16314
c2d53558
SM
16315 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
16316 New messages types.
1ce1e4ee
JR
16317
16318 * w32term.c (note_mouse_highlight): Clear old help_echo.
16319
f00691a3 163202001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 16321
bb4600a4
PJ
16322 * xterm.c: Fix typo in a comment.
16323
7db35a48
PJ
16324 * emacs.c: Fix typos in comments.
16325 Remove unnecessary spaces.
16326 Change doc-string comments to `new style' [w/`doc:' keyword].
16327 (USAGE2): Fix typos in usage string.
16328
a7248e4f
PJ
16329 * xterm.c: Fix typo in a comment.
16330
4e30ce42
PJ
16331 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
16332 emacs.c.
16333
62725a92
GM
163342001-10-27 Gerd Moellmann <gerd@gnu.org>
16335
798dbe1f 16336 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 16337 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
16338 farther backward when target_y was not reached.
16339
62725a92
GM
16340 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
16341 Display errno only if non-zero.
16342 (sound_warning): New function.
16343 (vox_configure): Don't treat failing to set sample rate as error.
16344 (various places): Improve error messages.
16345
d4e34d24
EZ
163462001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
16347
944e6f60
EZ
16348 * fileio.c (Faccess_file): Run the argument filename through
16349 Fexpand_file_name, before using it.
16350
d4e34d24
EZ
16351 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
16352 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
16353
38d2af0c
GM
163542001-10-26 Gerd Moellmann <gerd@gnu.org>
16355
da80a8d5
GM
16356 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
16357
38d2af0c
GM
16358 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16359 Fix clearing in the case of scroll bars on the right.
c2d53558 16360
45de4a6f 163612001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
16362
16363 * w32gui.h (XImage): Add a dummy typedef.
16364
fbd5ceb2
GM
163652001-10-26 Gerd Moellmann <gerd@gnu.org>
16366
c2d53558 16367 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 16368
b23236fb
EZ
163692001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
16370
16371 * frame.c (Fframe_parameter): Fix last change.
16372
5d991fc4
EZ
16373 * fileio.c: Revert last change (which removed old commented-out
16374 version of expand-file-name). Add a comment that explains why
16375 this old version should not be removed.
16376
879eadc3
GM
163772001-10-25 Gerd Moellmann <gerd@gnu.org>
16378
75700ff2
GM
16379 * frame.c (Fframe_parameter): Fix a bug whereby some
16380 ``artificial'' frame parameters, like `minibuffer' were not
16381 obtained by calling Fframe_parameters.
16382
dfe92a6a
GM
16383 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
16384 cursor differently.
16385
879eadc3
GM
16386 * xdisp.c (move_it_vertically_backward): Compute line height
16387 differently. Add heuristic to try to be more compatible to 20.x.
16388
e1010ebe
SM
163892001-10-25 Stefan Monnier <monnier@cs.yale.edu>
16390
d73a471b
SM
16391 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
16392
d6da5a06
GM
16393 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
16394 boolean.
e1010ebe 16395
f66bd220
MB
163962001-10-25 Miles Bader <miles@gnu.org>
16397
16398 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
16399 BG is a pointer to a structure, not a structure.
16400 (gif_format, png_format): Add missing commas.
16401
d436d538
RS
164022001-10-24 Richard M. Stallman <rms@gnu.org>
16403
16404 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 16405 (syms_of_xfaces): Defsubr it.
d436d538 16406
f00691a3 164072001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
16408
16409 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
16410 variable `area'.
16411
f00691a3 164122001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 16413
c2d53558 16414 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 16415
e2a57b34
MB
164162001-10-25 Miles Bader <miles@gnu.org>
16417
16418 * dispextern.h (struct image): Add `background',
16419 `background_valid', and `background_transparent' fields.
16420 (image_background, image_background_transparent): New declarations.
16421 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
16422 * xfns.c (image_background, image_background_transparent)
16423 (four_corners_best): New functions.
c2d53558 16424 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
16425 (gs_format): Add `:background' entry.
16426 (lookup_image): Set IMG's background color if specified.
16427 (pbm_load, xbm_load_image, png_load): Set IMG's background field
16428 when appropriate.
16429 (x_clear_image_1): Reset `background_valid' and
16430 `background_transparent_valid' fields.
16431 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
16432 calculating it here. Set IMG's background_transparent field.
16433 (enum xpm_keyword_index): Add XPM_BACKGROUND.
16434 (enum png_keyword_index): Add PNG_BACKGROUND.
16435 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
16436 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
16437 (enum gif_keyword_index): Add GIF_BACKGROUND.
16438 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 16439 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
16440 Pre-calculate image background color where necessary.
16441 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
16442 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
16443 color to use for image glyph reliefs.
16444
b547b6e8
GM
164452001-10-24 Gerd Moellmann <gerd@gnu.org>
16446
d9e3b8c6
GM
16447 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
16448 in full-width rows.
c2d53558 16449
b547b6e8
GM
16450 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16451 Fix clearing of area not covered by scroll bar.
16452
f00691a3 164532001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
16454
16455 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
16456 and `real_start'.
c2d53558 16457 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
16458 (glyph_rect): Remove unused variable `area'.
16459
76cb5e06
GM
164602001-10-24 Gerd Moellmann <gerd@gnu.org>
16461
bdbdebff 16462 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
16463
16464 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
16465 (row_containing_pos): Take additional argument DY.
16466 Treat rows ending in middle of char differently.
62e33982
GM
16467 (display_line): Handle tabs on window systems differently.
16468
16469 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
16470 with additional argument.
16471
16472 * dispextern.h (row_containing_pos): Adjust prototype.
16473
76cb5e06
GM
16474 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
16475 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
16476 (try_window_id, try_window_reusing_current_matrix)
16477 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 16478 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 16479
f00691a3 164802001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 16481
c9e60620
PJ
16482 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
16483 gnuemacs).
16484 (HAVE_BOXES): Fix typo in comment.
16485 (push_menu_pane): Fix typo in comment.
16486
3b552d56
PJ
16487 * xdisp.c: (display_prop_string_p): Remove unused local declaration
16488 of `Qwhen'.
16489 (single_display_prop_string_p): Remove unused local declarations
16490 of `Qwhen' and `Qmargin'.
16491 (string_buffer_position): Remove unused variable `around'.
16492 (store_frame_title): Remove unused variable `width'.
16493
15c565ac
PJ
16494 * window.c: Don't define max.
16495 (coordinates_in_window): Remove unused variable `uy'.
16496
a8818eb9
PJ
16497 * widget.c: Don't define max.
16498
996fee11
PJ
16499 * process.c: Don't define max.
16500 (create_process): Remove unused variable `buffer'.
16501
496e1a5b
GM
165022001-10-23 Gerd Moellmann <gerd@gnu.org>
16503
c2d53558 16504 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 16505
5905ae8b
EZ
165062001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
16507
16508 * xfaces.c (Finternal_set_lisp_face_attribute)
16509 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
16510 frame is on a windowed display.
16511
24db49fb
GM
165122001-10-23 Gerd Moellmann <gerd@gnu.org>
16513
c2d53558
SM
16514 * dispnew.c (sync_window_with_frame_matrix_rows):
16515 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
16516 of marginal areas.
16517
c2d53558 16518 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 16519
f0487f05
EZ
165202001-10-23 Andreas Schwab <schwab@suse.de>
16521
16522 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
16523 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
16524
f0a48a01
GM
165252001-10-23 Gerd Moellmann <gerd@gnu.org>
16526
c2d53558 16527 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
16528 REAL_END. Notice if cursor gets overwritten.
16529 (notice_overwritten_cursor): Take X positions as parameters.
16530 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
16531 around call to x_draw_glyphs.
16532
f00691a3 165332001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 16534
fc11dff0
PJ
16535 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
16536 instead of C) and usage.
a50a10a0 16537
fc11dff0
PJ
16538 * editfns.c (char-to-string): Fix argument names (use CHAR instead
16539 of C) and usage.
a50a10a0
PJ
16540
16541 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
16542 `left', `max_width' and `max_height'.
16543
8738febd
GM
165442001-10-23 Gerd Moellmann <gerd@gnu.org>
16545
16546 * xdisp.c (display_line): For a tab continued to the next line,
16547 set row's ends_in_middle_of_char_p.
16548
653c329b
GM
165492001-10-22 Gerd Moellmann <gerd@gnu.org>
16550
16551 * xdisp.c (display_line): Fix computation of continuation lines
16552 width for TABs.
16553
f00691a3 165542001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 16555
7ba51063
PJ
16556 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
16557 `Qlaplace'.
16558
f958c5ac
PJ
16559 * fileio.c: Remove unused code.
16560
eb360291
MB
165612001-10-22 Miles Bader <miles@gnu.org>
16562
16563 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
16564 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
16565 Remove `DOC_STRINGS_IN_COMMENTS' cases.
16566
98515cf0
JR
165672001-10-21 Jason Rumney <jasonr@gnu.org>
16568
16569 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
16570
93026d88
EZ
165712001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
16572
16573 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
16574 (Finsert_string): Avoid the multi-line string literals warning.
16575
c9a95b79
MB
165762001-10-22 Miles Bader <miles@gnu.org>
16577
16578 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
16579 (Fdocumentation): Don't use it.
16580 (syms_of_doc): Don't initialize it.
16581
16582 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
16583 * print.c (Fwith_output_to_temp_buffer): Likewise.
16584 * window.c (Fsave_window_excursion): Likewise.
c2d53558 16585 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 16586 (Fsave_restriction): Likewise.
c2d53558
SM
16587 * eval.c (Frun_hooks, Frun_hook_with_args)
16588 (Frun_hook_with_args_until_failure)
16589 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
16590 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
16591 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
16592 (Funwind_protect, Fcondition_case): Likewise.
16593 * coding.c (Ffind_operation_coding_system): Likewise.
16594 * keyboard.c (Ftrack_mouse): Likewise.
16595
a3b10252
MB
165962001-10-21 Miles Bader <miles@gnu.org>
16597
c2d53558 16598 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
16599 (Fmake_hash_table): Add usage: string to doc string.
16600 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 16601 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
16602 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
16603 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
16604 (Fml_prefix_argument_loop): Likewise.
16605
f00691a3 166062001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 16607
c2d53558 16608 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 16609
c6f73eec
PJ
16610 * sysdep.c (init_sys_modes): Change doc-string comments to `new
16611 style' [w/`doc:' keyword].
16612
16613 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
16614 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
16615 comments to `new style' [w/`doc:' keyword].
16616
3cf3436e
JR
166172001-10-21 Jason Rumney <jasonr@gnu.org>
16618
16619 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
16620
c169b8f1
JR
16621 * w32term.c (remember_mouse_glyph): New function.
16622 (w32_mouse_position): Use it.
16623 (note_mouse_movement): If the mouse moved off the glyph, remember
16624 its new position.
c2d53558 16625
4fdd691b
JR
16626 * w32term.h (struct w32_output): Correct spelling of x_compatible.
16627 (w32_display_info): Add mouse_face_overlay.
16628
c169b8f1
JR
16629 * w32term.c (notice_overwritten_cursor): Renamed from
16630 note_overwritten_text_cursor. Rewritten to take glyph widths into
16631 account.
16632 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
16633 (fast_find_string_pos): New function.
16634 (fast_find_position): Return the correct vpos. Add parameter
16635 STOP. In the final row, stop before glyphs having STOP as object.
16636 Don't consider glyphs that are not from a buffer.
16637 (fast_find_position) [0]: Add a presumably more correct version
16638 for after 21.1.
16639 (expose_window_tree, expose_frame): Don't compute intersections here.
16640 (expose_window): Do it here instead.
16641 (expose_window_tree, expose_window, expose_line): Return 1 when
16642 overwriting mouse-face.
16643 (expose_window): If W is the window currently being updated, mark
16644 the frame garbaged.
16645 (expose_frame): If mouse-face was overwritten, redo it.
16646 (x_use_underline_position_properties): New variable.
16647 (syms_of_xterm): DEFVAR_BOOL it.
16648 (x_draw_glyph_string): Add comment to use it in future.
16649 (x_draw_glyph_string): Restore clipping after drawing box.
16650 Fix a computation of the underline position.
16651 (w32_get_glyph_string_clip_rect): Minor cleanup.
16652 (x_fill_stretch_glyph_string): Remove an assertion.
16653 (x_produce_glyphs): Don't convert multibyte characters
16654 to unibyte characters in unibyte buffers.
16655 (cursor_in_mouse_face_p): New function.
16656 (x_draw_stretch_glyph_string): Use it to choose a different GC
16657 when drawing a cursor within highlighted text. Don't draw
16658 background again if it has already been drawn.
16659 (x_draw_glyph_string_box): Don't draw a full-width
16660 box just because the glyph row's full_width_p flag is set.
16661 (x_draw_glyphs): Fix computation of rightmost x for
16662 full-width rows.
16663 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
16664 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 16665 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
16666 (x_update_window_end): Handle overwritten mouse face
16667 also for tool bar windows.
16668 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
16669 DRAW is DRAW_IMAGE_RAISED.
16670 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
16671 actually redrawn. Make the function static.
16672 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
16673 optimize away highlighting if we pass over that same overlay again.
16674 (note_mouse_highlight): Call mouse_face_overlay_overlaps
16675 to detect a case where we have to highlight a different region
16676 despite not having left the currently highlighted region.
16677 Set mouse_face_overlay in the x_display_info. Avoid changing the
16678 mouse pointer shape when show_mouse_face has already done it, or
16679 there is no need. Handle mouse-face and help-echo in strings.
16680 (glyph_rect): New function.
16681 (w32_mouse_position): Use it to raise the threshold for mouse
16682 movement event generation.
16683 (w32_initialize_display_info): Initialize the x_display_info's
16684 mouse_face_overlay.
16685 (w32_set_vertical_scroll_bar): Don't clear a zero height
16686 or width area.
16687 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
16688 a widget to zero height.
16689
3cf3436e 16690 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 16691 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
16692 equivalents in menu_items.
16693 (w32_menu_show): Don't overwrite an item's name with its key
16694 description in case the description is a multibyte string.
16695 (single_submenu): Some cleanup.
16696
16697 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
16698 (postprocess_image): New function.
16699 (lookup_image): Call it for all image types except PostScript.
16700 (x_kill_gs_process): Call postprocess_image.
16701 (tiff_error_handler, tiff_warning_handler): New functions.
16702 (tiff_load): Install them as handlers.
16703 (x_kill_gs_process): Recognize if someone has cleared the image
16704 cache under us.
16705 (valid_image_p): Protect better against invalid image
16706 specifications. Previous code could signal an error.
16707 (Fx_hide_tip, Fshow_tip): Doc fix.
16708 (Fv_max_tooltip_size): New variable.
16709 (syns_of_xfns): DEFVAR_LISP it.
16710 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 16711 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
16712 window_width. Use a maximum tooltip size specified by
16713 Vx_max_tooltip_size, if that has valid contents.
16714 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
16715 Make sure the tooltip is completely visible.
16716 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
16717 (Fx_create_frame): Adjust the frame's height for presence
16718 of the tool bar before calling x_figure_window_size.
16719 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
16720 when the window gets smaller.
16721 (x_set_foreground_color): Set frame's cursor_pixel.
16722 (x_set_foreground_color, x_set_background_color): Cleaned up.
16723 (x_set_font): Handle case of x_new_fontset returning the same name
16724 as before, although there was a change in fontsets.
16725
386ca361
MB
167262001-10-21 Miles Bader <miles@gnu.org>
16727
c2d53558 16728 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
16729 (Flogxor): Add usage: string to doc string.
16730 * charset.c (Fstring): Likewise.
16731 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
16732 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
16733
f00691a3 167342001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 16735
03be2694
PJ
16736 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
16737
16738 * alloc.c: Reindent DEFUNs with doc: keywords.
16739
16740 * abbrev.c (Finsert_abbrev_table_description): Reindent.
16741
14ff1ee0
PJ
16742 * frame.c: Change doc-string comments to `new style' [w/`doc:'
16743 keyword].
16744
2f147815 16745See ChangeLog.9 for earlier changes.
6922b018
KH
16746
16747;; Local Variables:
49b3bd82 16748;; coding: iso-2022-7bit
6922b018 16749;; End:
2a34a036 16750
2f147815 16751 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
16752 Copying and distribution of this file, with or without modification,
16753 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
16754
16755;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4