(${CHINESE-TIT:.elc=.el}): Depend on changed.tit to
[bpt/emacs.git] / src / ChangeLog
CommitLineData
59feca74 12004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
31983645
AS
2
3 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4 (XTread_socket): Send mouse button events to the toolbox
5 dispatcher even when the mouse is grabbed. Don't process window
6 activate events for non-Emacs windows. Replace function calls to
7 do_window_activate and do_window_deactivate with their contents.
8 Reset mouse grabbing status when a window is deactivated.
59feca74 9
c61278bb
ST
102004-06-29 Steven Tamm <steventamm@mac.com>
11
12 * macterm.c (mac_get_emulated_btn)
13 (mac_event_to_emacs_modifiers): Fix emulated mouse button
14 support to correctly mask out modifiers.
15
c3762cbd
DK
162004-06-29 David Kastrup <dak@gnu.org>
17
18 * search.c (Fset_match_data): Allow buffer before end of list
19 which can happen if set-match-data is using a pre-consed list.
20
c61278bb 212004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
22
23 * macterm.c (XTread_socket): Correctly set the frame position
24 after the window is moved.
25
74cdfe05
JD
262004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
27
28 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
29 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
30 (xg_get_image_for_pixmap): Add workaround for monochrome displays
31 so insensitive and activated icons look ok.
74cdfe05 32
ef544dc8
JR
332004-06-27 Jason Rumney <jasonr@gnu.org>
34
35 * w32fns.c (file_dialog_callback): Disable edit control if set
36 to directories only on CDN_INITDONE message.
37 (Fx_file_dialog): Default to directories only when prompt starts
38 with "Dired".
39
7b7990cc
KS
402004-06-25 Kim F. Storm <storm@cua.dk>
41
42 * alloc.c (allocate_misc): Update total_free_markers.
43 (free_misc): New function.
44 (safe_alloca_unwind, free_marker): Use it.
45
46 * lisp.h (free_misc): Add prototype.
47
48 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
49
d8c379f8
RS
502004-06-24 Richard M. Stallman <rms@gnu.org>
51
52 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
53 (syms_of_emacs): Lisp variables deleted.
54
559cdd07
DK
552004-06-23 David Kastrup <dak@gnu.org>
56
94939b84
DK
57 * search.c (Freplace_match): Adjust the match-data more thoroughly
58 when replacing strings in the buffer.
59 (Fmatch_data): When INTEGERS is non-nil and the last match was in
60 a buffer, add the buffer as last element to the match data.
61 (Fset_match_data): If an additional element of the match-data is a
62 buffer, restore it to last_thing_searched.
559cdd07
DK
63 (save_search_regs): Save last_thing_searched as part of the match
64 data.
65 (restore_match_data): Restore it again.
66
dce417e7
LT
672004-06-23 Luc Teirlinck <teirllm@auburn.edu>
68
69 * keymap.c (Ftext_char_description): Doc fix.
70 * doc.c (Fsnarf_documentation): Doc fix.
71
ef54b2d0
KS
722004-06-22 Kim F. Storm <storm@cua.dk>
73
b5bc4d05
KS
74 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
75
ef54b2d0
KS
76 * lisp.h (struct Lisp_Save_Value): New member dogc.
77 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
78 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
79 (SAFE_FREE_LISP): New macro.
80
81 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
82 (make_save_value): Init new dogc member.
83 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
84
85 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
86 SAFE_FREE_LISP macros.
87
3d33d993
KS
882004-06-22 Kim F. Storm <storm@cua.dk>
89
90 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
91 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
92 in that memory area are unknown to GC. Add comments.
93
94 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
95
5c917f98
KS
962004-06-21 Kim F. Storm <storm@cua.dk>
97
98 * lisp.h (MAX_ALLOCA): Define here.
99 (safe_alloca_unwind): Add prototype.
100 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
101
102 * alloc.c (safe_alloca_unwind): New function.
103
104 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
105
106 * charset.c (Fstring): Use SAFE_ALLOCA.
107
108 * coding.c (MAX_ALLOCA): Remove define.
109
110 * data.c (MAX_ALLOCA): Remove define.
111 (Faset): Use SAFE_ALLOCA.
112
113 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
114
115 * fns.c (string_make_multibyte, string_to_multibyte)
116 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
117 (MAX_ALLOCA): Remove define.
118 (Fbase64_encode_region, Fbase64_encode_string)
119 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
120 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
121 memory leak if encoding fails.
122
123 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
124
9a09408e
EZ
1252004-06-21 Eli Zaretskii <eliz@gnu.org>
126
127 * print.c (Fwith_output_to_temp_buffer): Doc fix.
128
376de739
RS
1292004-06-20 Richard M. Stallman <rms@gnu.org>
130
131 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
132
133 * search.c (match_limit): Cleaner err msg when no match data available.
134
135 * window.c (syms_of_window): Doc fix.
136
137 * keyboard.c (command_loop_1): Handle values `only' and `identity'
138 for Vtransient_mark_mode.
139
140 * buffer.c (syms_of_buffer): Doc fix.
141
acd81db9
DK
1422004-06-21 David Kastrup <dak@gnu.org>
143
144 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
145 and unbinding of `case-fold-search' according to
146 `completion-ignore-case' around calls of string-match and
147 predicates, respectively. Should give satisfactory performance
148 in all relevant cases.
149
f303762d
JD
1502004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
151
95911c74
JD
152 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
153 clip_x/y_origin.
154
a6cb6b78
JD
155 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
156
f303762d
JD
157 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
158
159 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
160 on Mac OSX.
161
bbdb2684
LT
1622004-06-16 Luc Teirlinck <teirllm@auburn.edu>
163
164 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
165
5ea48b1c
KS
1662004-06-16 Kim F. Storm <storm@cua.dk>
167
168 * dispextern.h (Vimage_types): Remove extern.
169
803aac3e
MB
1702004-06-16 Miles Bader <miles@gnu.org>
171
172 * image.c (lookup_image_type): Initialize image type if necessary.
173
cdc97764
KS
1742004-06-15 Kim F. Storm <storm@cua.dk>
175
c4a5739c
KS
176 * xdisp.c (try_cursor_movement): Exclude header line from scroll
177 margin at top of window.
178 (try_window_reusing_current_matrix): Calculate proper cursor position
179 after scrolling up with non-zero scroll margin, as the old cursor
180 position corresponds to value of PT before executing this command.
181 (try_window_id): Consider scroll margin at bottom of window too;
182 otherwise we fail to scroll when hl-line-mode is enabled.
183
cdc97764
KS
184 * syntax.c (skip_chars): Only recognize [:class:] when it has the
185 proper format and class is a lower-case word.
186
5b166323
JD
1872004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
188
189 * gtkutil.c (xg_get_image_for_pixmap): New function.
190 (xg_get_gdk_pixmap_and_mask): Removed.
191 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
192 xg_get_gdk_pixmap_and_mask.
cdc97764 193
5b166323
JD
194 * xterm.h (struct x_display_info): Typo in comment fixed.
195
1ebd4f78
JB
1962004-06-14 Juanma Barranquero <lektu@terra.es>
197
198 * dispextern.h (Vimage_types): Make it conditional on
199 HAVE_WINDOW_SYSTEM.
200
201 * image.c (Vimage_types): Move from xdisp.c.
202 (Vimage_type_cache): New variable.
203 (define_image_type): New argument indicating whether an image
204 library was loaded; cache loaded status and return t on success,
205 nil otherwise.
206 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
207 (w32_delayed_load): New function to load an image library from a
208 list of possible filenames.
209 (init_xpm_functions, init_png_functions, init_jpeg_functions)
210 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
211 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
212 argument.
213 (Finit_image_library): New function, extracted from `init_image'.
214 Try to initialize an image library on demand and cache whether we
215 were successful or not.
216 (syms_of_image): Initialize `Vimage_types' and
217 `Vimage_type_cache'. Add recognized image types to Vimage_types.
218 Export `init-image-library'.
219 (init_image): Remove initialization of all image types, except xbm
220 and pbm.
221
222 * xdisp.c (Vimage_types): Delete (moved to image.c).
223
904ee128
AS
2242004-06-14 Andreas Schwab <schwab@suse.de>
225
226 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
227 Avoid calling specbind when completion-regexp-list is empty.
228
092de21d
RS
2292004-06-13 Richard M. Stallman <rms@gnu.org>
230
231 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
232 (re_wctype, re_iswctype, re_wctype_to_bit):
233 Non-function definitions moved here from regex.c.
1ebd4f78 234
092de21d
RS
235 * regex.c (re_wctype, re_iswctype): Function defs longer static.
236 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
237 (re_wctype, re_iswctype, re_wctype_to_bit):
238 Non-function definitions moved to regex.h.
239
240 * window.c (Fselect_window): Doc fix.
241
242 * syntax.c: Include regex.h.
243 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
244 If requested, make a list of classes, then check the scanned
245 chars for membership in them.
246 (in_classes): New function.
247 Doc fix.
248
249 * keyboard.c (cmd_error): Don't call any_kboard_state
250 if inside a recursive edit level.
251
2522004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
253
254 * keyboard.c (command_loop): Call any_kboard_state before
255 command_loop_2 when at top level.
256
3ebc0939
AS
2572004-06-13 Andreas Schwab <schwab@suse.de>
258
cea5d0d4
AS
259 * print.c (print_object): Always use %ld for printing EMACS_INT.
260
261 * keyboard.c (cancel_hourglass_unwind): Return a value.
262 (modify_event_symbol): Always use %ld for printing EMACS_INT.
263 (Fexecute_extended_command): Likewise.
264
265 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
266 avoid clashes.
267 (SYNTAX): Likewise.
268 (SYNTAX_WITH_FLAGS): Likewise.
269 (SYNTAX_MATCH): Likewise.
270
271 * syntax.c (char_quoted): Avoid warning about undefined operation.
272 (find_defun_start): Likewise.
273 (scan_lists): Likewise.
274 (INC_FROM): Likewise.
275 (scan_sexps_forward): Likewise.
276
be8c4ce4
AS
277 * image.c: Include <ctype.h>.
278
3ebc0939
AS
279 * xfaces.c (face_attr_equal_p): Declare parameters.
280
6fb41b5b
KH
2812004-06-13 Kenichi Handa <handa@m17n.org>
282
283 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
284
fc3095ce
EZ
2852004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
286
287 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
288
66189a40
KH
2892004-06-12 Kenichi Handa <handa@m17n.org>
290
291 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
292 ccl_prog_stack_struct and update it.
293 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
294 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
295 ccl->eof_ic on EOF.
296 (ccl_debug_hook): New function.
297 (struct ccl_prog_stack): New member eof_ic.
298 (ccl_driver): Handle EOF in subrountine call correctly.
299
3002004-06-11 Kenichi Handa <handa@m17n.org>
301
302 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
303
1da71023
KS
3042004-06-11 Kim F. Storm <storm@cua.dk>
305
306 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
307
e9efcef4
JB
3082004-06-11 Juanma Barranquero <lektu@terra.es>
309
310 * keyboard.c (Fposn_at_point): Doc fix.
311
9b9ceb61
DK
3122004-06-11 David Kastrup <dak@gnu.org>
313
314 * search.c (match_limit): Don't flag an error if match-data
315 exceeding the allocated search_regs.num_regs gets requested, just
316 return Qnil.
317
6e87ac8f
MB
3182004-06-08 Miles Bader <miles@gnu.org>
319
320 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
321
0b0dea7b
JB
3222004-06-07 Juanma Barranquero <lektu@terra.es>
323
324 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
325 (Fcurrent_time_string, Fcurrent_time_zone)
326 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
327
a0a23346
MB
3282004-06-07 Miles Bader <miles@gnu.org>
329
08384afd 330 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
331 (push_named_merge_point): New function.
332 (merge_named_face): New function.
333 (merge_face_ref, face_at_buffer_position, face_at_string_position):
334 Use `merge_named_face'.
335 (merge_face_inheritance): Function removed.
336 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
337 Add new `err_msgs' and `named_merge_points' args. Return error
338 status. Only print error messages if ERR_MSGS is true. Don't try to
339 do :inherit attribute validation.
340 (merge_face_heights): Handle `unspecified' in both directions.
341 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
342 Call `merge_face_ref' instead of `merge_face_inheritance'.
343 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
344 (compute_char_face, face_at_buffer_position)
345 (face_at_string_position): Call `merge_face_ref' instead of
346 `merge_face_vector_with_property'.
347
12d5b185
KH
3482004-06-07 Kenichi Handa <handa@m17n.org>
349
350 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
351 the necessary places.
352
2e2d7ee6
KS
3532004-06-07 Kim F. Storm <storm@cua.dk>
354
355 * process.c (Fdelete_process): Undo 2004-05-28 change.
356 Instead, call status_notify also for network process.
357 (status_message): Use process instead of status as arg.
358 Give messages "deleted" or "connection broken by remote peer" for
359 an exited network process.
360 (status_notify): Change call to status_message.
361 (read_process_output): Increase readmax to 4096. Do not increase
362 buffer size for datagram channels (default is now large enough).
363
fcf0d299
ST
3642004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
365
366 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
367 problem due to newly defined variable.
368
0722292b
MB
3692004-06-06 Miles Bader <miles@gnu.org>
370
371 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
372 immediately if non-interactive or not initialized.
373
ddfb8369
RS
3742004-06-05 Richard M. Stallman <rms@gnu.org>
375
376 * minibuf.c (Fcompleting_read): Doc fix.
377
57015754
AS
3782004-06-05 Andreas Schwab <schwab@suse.de>
379
380 * macfns.c (x_create_tip_frame): Fix declaration after statement.
381
23715ea6
JB
3822004-06-05 Juanma Barranquero <lektu@terra.es>
383
384 * keymap.c (Fdescribe_vector): Fix docstring.
385 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
386
8e330b22
MB
3872004-06-05 Miles Bader <miles@gnu.org>
388
389 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
390 attributes have different values than the default face.
391
9742a3a6
EZ
3922004-06-04 Eli Zaretskii <eliz@gnu.org>
393
394 * xfaces.c (x_supports_face_attributes_p): Make this function
395 conditional on HAVE_WINDOW_SYSTEM.
396 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
397 call x_supports_face_attributes_p if it was not compiled in.
398
9717e36c
MB
3992004-06-04 Miles Bader <miles@gnu.org>
400
401 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
402 from Ftty_supports_face_attributes_p.
403 (x_supports_face_attributes_p): New function.
404 (Ftty_supports_face_attributes_p): Function deleted.
405 (Fdisplay_supports_face_attributes_p): New function.
406 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 407 (face_attr_equal_p): New function.
9717e36c
MB
408 (lface_equal_p): Use it.
409
52deb19f
JB
4102004-06-03 Juanma Barranquero <lektu@terra.es>
411
412 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
413 (Vw32_color_map): Fix typo in docstring.
414 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
415 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
416 Make argument names match their use in docstring.
417
86d373e6
JB
4182004-06-02 Juanma Barranquero <lektu@terra.es>
419
420 Work around bugs/problems with MinGW builds of graphics libraries
421 called from MSVC builds of Emacs.
422
423 * image.c (lookup_image): Make pointer to img static.
424 (png_read_from_memory): Disable "global" optimization.
425
2fb0ce67
SM
4262004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
427
428 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
429
50bf7673
ST
4302004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
431
432 * macfns.c: Don't include ccl.h.
433 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
434 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
435 TextUtils.h.
436 (Fx_create_frame): Sync with xfns.c. Initialize cursor
437 descriptors.
50bf7673
ST
438 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
439 display height/width.
440 (compute_tip_xy, Vx_max_tooltip_size): Declare.
441 (unwind_create_tip_frame, compute_tip_xy): New functions.
442 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
443 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
444 and last_show_tip_args.
2fb0ce67 445
50bf7673
ST
446 * macgui.h [!MAC_OSX]: Include Gestalt.h.
447 (Cursor, No_Cursor): New defines.
86d373e6
JB
448 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
449 macro.
50bf7673
ST
450 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
451
452 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
453
454 * macterm.c: Don't include Gestalt.h.
455 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
456 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
457 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
458 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
459 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
460 (construct_mouse_click, XTmouse_position)
461 (x_scroll_bar_report_motion, x_calc_absolute_position)
462 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
463 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
464 (note_mouse_movement): Clear the mouse face and reset the pointer
465 shape when the pointer goes outside the frame without grabbing.
466 (mac_front_window): New function.
467 (mac_window_to_frame): New macro.
468 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
469 (do_window_activate, do_window_deactivate, do_app_resume)
470 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
471 (do_zoom_window, mac_do_receive_drag, XTread_socket)
472 (mac_check_for_quit_char): Use mac_front_window and/or
473 mac_window_to_frame.
474 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
475 scroll-bar click event.
476 (mac_define_frame_cursor): Change the pointer shape.
86d373e6
JB
477 (x_free_frame_resources): Reset tip_window to NULL when it is
478 disposed.
50bf7673 479 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
86d373e6
JB
480 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
481 arrow_cursor.
50bf7673
ST
482 (do_window_update): Don't do anything if the updated window is the
483 tooltip window.
484 (do_mouse_moved): Handle mouse movement events here (previously in
485 XTread_socket). Clear the mouse face if
486 dpyinfo->mouse_face_hidden is set.
487 (do_os_event, do_events): Remove (now in XTread_socket).
488 (XTread_socket): Immediately return if interrupt_input_blocked.
86d373e6
JB
489 Loop until all the events in the queue are processed. Rearrange
490 codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
491 contents of do_os_event and do_events. Remove mouse movement
492 handling (now in do_mouse_moved). Add the case where
493 Vmouse_highlight has an integer value.
494 (NewMacWindow): Remove.
495 (make_mac_frame): Do what NewMacWindow previously did. Don't do
496 excess initializations.
497 (make_mac_terminal_frame): Previous initializations in
498 make_mac_frame are moved here.
86d373e6
JB
499 (mac_initialize_display_info): Initialize
500 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
501
502 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
503 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
504
08fd1251
RS
5052004-05-29 Richard M. Stallman <rms@gnu.org>
506
507 * lisp.h (truncate_undo_list): Update decl.
508
509 * alloc.c (undo_outer_limit): New variable.
510 (syms_of_alloc): Defvar it.
511 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
512
513 * undo.c (truncate_undo_list): New arg LIMITSIZE.
514
515 * alloc.c (lisp_align_malloc): Check for base == 0
516 regardless of HAVE_POSIX_MEMALIGN.
517 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
518
227ef0ff
SM
5192004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
520
521 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
522 (marker_blocks_pending_free): Remove.
523 (Fgarbage_collect): Sweep after cleaning up undo-lists.
524 Mark the undo lists after claning them up.
525 Don't free block in marker_blocks_pending_free.
526 (mark_buffer): Don't mark undo_list.
527 (gc_sweep): Sweep hash-tables and strings first.
528 Do free marker blocks that are empty.
529
034a6113
SM
5302004-05-28 Jim Blandy <jimb@redhat.com>
531
532 * regex.c (print_partial_compiled_pattern): Add missing 'break'
533 after 'case wordend'. For symbeg and symend, print to stderr,
534 like the other cases.
535
33594a8d
NF
5362004-05-28 Noah Friedman <friedman@splode.com>
537
538 * process.c (Fdelete_process): Do not call remove_process.
539
ce50a847
SM
5402004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
541
542 * alloc.c (struct backtrace): Remove.
543 (Fgarbage_collect): Use the new mark_backtrace.
544
545 * eval.c (mark_backtrace): New function.
546
547 * minibuf.c (run_exit_minibuf_hook): New function.
548 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
549 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
550
1e8dae36
KS
5512004-05-27 Kim F. Storm <storm@cua.dk>
552
553 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
554 over display properties, e.g. images, that replace buffer text.
555
846faa3b
KS
5562004-05-25 Kim F. Storm <storm@cua.dk>
557
558 * alloc.c (marker_blocks_pending_free): New var.
559 (gc_sweep): Store free marker blocks on that list.
560 (Fgarbage_collect): Free them after undo-list cleanup.
561
562 * process.c (wait_reading_process_input): Check connect_wait_mask
563 before actually accepting connection in case it has already been
564 accepted due to recursion.
565
6239a668
KH
5662004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
567
ce50a847
SM
568 * coding.c (Fset_safe_terminal_coding_system_internal):
569 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 570
71d5a208
RS
5712004-05-22 Richard M. Stallman <rms@gnu.org>
572
573 * alloc.c (Fmake_string): Doc fix.
574
575 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
576 and the alist pairs too.
577
578 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
579
580 * emacs.c (main): Update copyright year.
581
582 * fileio.c (Fread_file_name): Expand DIR if not absolute.
583
584 * insdel.c (del_range_2, replace_range): Don't write an anchor
585 if the gap is empty.
586
587 * xdisp.c (try_scrolling): If scroll-up-aggressively or
588 scroll-down-aggressively is small but positive, put point
589 near the screen edge.
590
f63fd14e
JB
5912004-05-22 Juanma Barranquero <lektu@terra.es>
592
593 * keymap.c (Fdefine_key): Doc fix.
594
4d12067c
KS
5952004-05-22 Kim F. Storm <storm@cua.dk>
596
597 * alloc.c (struct backtrace): Add debug_on_exit member.
598 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
599 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
600 the removed cons cells.
601 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
602 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
603 any cons cells pointing to unallocated stings.
604 Do not lisp_free any marker blocks, as there may still be pointers
605 to them from buffer undo lists at this stage of GC.
606
607 * keyboard.c (struct backtrace): Add debug_on_exit member.
608 (Fcommand_execute): Clear it.
609
931285e2
LT
6102004-05-20 Luc Teirlinck <teirllm@auburn.edu>
611
612 * intervals.c (lookup_char_property): Do not prematurely return nil.
613
669fa600
SM
6142004-05-19 Jim Blandy <jimb@redhat.com>
615
616 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 617 beginning and end of symbols.
4d12067c 618
669fa600
SM
619 * regex.c (enum syntaxcode): Add Ssymbol.
620 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
621 (re_opcode_t): New opcodes `symbeg' and `symend'.
622 (print_partial_compiled_pattern): Print the new opcodes properly.
623 (regex_compile): Parse the new operators.
ce50a847 624 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
625 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
626 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
627 (re_match_2_internal): Match symbeg and symend.
628
629 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
630
0d8c2e5c
KS
6312004-05-19 Kim F. Storm <storm@cua.dk>
632
633 * .gdbinit (xsymbol): Fix last change.
634
669fa600
SM
6352004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
636
637 * .gdbinit (xprintstr): New fun.
638 (xstring, xprintsym): Use it.
639
640 * w32proc.c (create_child): Use INTMASK.
641
642 * alloc.c (Fgarbage_collect): Do all the marking before flushing
643 unmarked elements of the undo list.
644
9a6a4c40
DP
6452004-05-18 David Ponce <david@dponce.com>
646
647 * print.c (print): Reset print_depth before to call print_object.
648
f3c4ec74
JR
6492004-05-18 Jason Rumney <jasonr@gnu.org>
650
651 * w32console.c: Prefix RIF functions with w32con_ to avoid
652 namespace clash with functions in term.c and w32term.c.
653
654 * w32menu.c (add_menu_item, w32_menu_display_help)
655 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
656
0d8c2e5c 657 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 658
6be49c3a
EZ
6592004-05-18 Eli Zaretskii <eliz@gnu.org>
660
4d0b9a0a
EZ
661 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
662
6be49c3a
EZ
663 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
664 with make_number.
665 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
666 with XINT.
667
0bc90bba
KS
6682004-05-18 Kim F. Storm <storm@cua.dk>
669
89d19988
KS
670 * blockinput.h (INPUT_BLOCKED_P): New macros.
671
672 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
673 (Ftop_level): Unblock input if blocked.
674
0bc90bba
KS
675 * buffer.h (GET_OVERLAYS_AT): New macro.
676 * msdos.c (IT_note_mouse_highlight): Use it.
677 * textprop.c (get_char_property_and_overlay): Use it.
678 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
679 * xfaces.c (face_at_buffer_position): Use it.
680
681 * print.c (print_object): Increase buf size.
682
653bd0f6
JR
6832004-05-17 Jason Rumney <jasonr@gnu.org>
684
685 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
686 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
687 Lisp_Object using i member.
688 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
689 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
690 consistently.
691
692 * w32proc.c (create_child): Use make_number instead of masking pid.
693
694 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
695 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
696 Use EQ to compare Lisp_Objects.
697 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
698
699 * w32term.c (w32_num_mouse_buttons): Rename from
700 Vw32_num_mouse_buttons and make it an int.
701
702 * w32.c (init_environment): Use it.
703
704 * w32fns.c (w32_wnd_proc): Likewise.
705
706 * w32proc.c (w32_pipe_read_delay): Rename from
707 Vw32_pipe_read_delay and make it an int.
708
709 * w32.c (_sys_read_ahead): Use it.
710
711 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
712
713 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
714
715 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
716 (key_event): Don't mix Lisp_Object and int.
717
718 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
719
720 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
721 modifiers in language change event.
722
54b53ba7
KS
7232004-05-17 Kim F. Storm <storm@cua.dk>
724
725 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
726 Such objects may be freed markers which still exist on an undo list.
727
6e86a75d
JB
7282004-05-16 Juanma Barranquero <lektu@terra.es>
729
730 * data.c (Fset_default): Make argument names match their use in
731 docstring.
732
fc80da24
AS
7332004-05-15 Andreas Schwab <schwab@suse.de>
734
735 * emacs.c (gdb_array_mark_flag): Define.
736 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
737
c1380aa6
EZ
7382004-05-15 Eli Zaretskii <eliz@gnu.org>
739
740 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
741 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
742 defined for the MS-DOS build.
743
89458937
SM
7442004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
745
746 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
747
08020f9a
KH
7482004-05-14 Kenichi Handa <handa@m17n.org>
749
750 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
751
a433994a
ST
7522004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
753
754 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
755 section to frame.c section.
756 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 757 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 758
a433994a 759 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 760
a433994a 761 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 762
a433994a
ST
763 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
764 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
765 (XTread_socket): Fix int/Lisp_Object mixup.
766 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 767
a433994a
ST
768 * macterm.h (struct frame, struct face, struct image)
769 (display_x_get_resource, Fx_display_color_p)
89458937
SM
770 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
771 Add prototypes.
a433994a 772
b51a51b9
KS
7732004-05-14 Kim F. Storm <storm@cua.dk>
774
775 * process.c (wait_reading_process_input): Make reentrant.
776 Make Available and Connecting non-static. Save and restore value
777 of waiting_for_user_input_p.
778
2bde1dd8
KS
7792004-05-13 Kim F. Storm <storm@cua.dk>
780
781 * keyboard.c (mark_kboards): Don't mark x and y members
782 that are overloaded in selection request events.
783
a267ab4d
SM
7842004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
785
786 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
787
eb15ce9e
GM
7882004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
789
790 * window.c (Fdisplay_buffer, Fsplit_window)
791 (split-height-threshold): Doc fix.
792
7fc92635
JB
7932004-05-13 Juanma Barranquero <lektu@terra.es>
794
795 * xfaces.c (Ftty_supports_face_attributes_p)
796 (Finternal_copy_lisp_face): Fix typo in docstring.
797 (Finternal_get_lisp_face_attribute): Fix docstring.
798
1ec2a572
JD
7992004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
800
801 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
802
ae9292e0
ST
8032004-05-11 Steven Tamm <steventamm@mac.com>
804
805 * macfns.c (Fx_create_frame): Default to using tool-bar by
806 setting tool-bar-lines to 1 in default-frame-alist.
807
8082004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
809
810 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
811 (xpm_get_color_table_v, xpm_make_color_table_h)
812 (xpm_put_color_table_h, xpm_get_color_table_h)
813 (xpm_str_to_color_key, xpm_load_image, xpm_load)
814 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 815 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 816
fe97e8df
ST
8172004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
818
a267ab4d 819 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
820 instead of FRAME_X_P
821
b47e779e
KS
8222004-05-11 Kim F. Storm <storm@cua.dk>
823
824 * process.c (read_process_output): Grow decoding_buf when needed;
825 this could cause a crash in allocate_string and compact_small_strings.
826
cdc9b845
EZ
8272004-04-29 Jim Blandy <jimb@redhat.com>
828
829 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
830 against proper opcode.
831
aa7094ba
JB
8322004-05-10 Juanma Barranquero <lektu@terra.es>
833
834 * process.c (Fstart_process): Fix docstring.
835
836 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
837 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
838 (Fsplit_char, Fchar_charset): Make argument names match their use
839 in docstring.
840
e109331a
RS
8412004-05-10 Richard M. Stallman <rms@gnu.org>
842
843 * print.c (print_preprocess): Use being_printed, loop_count and
844 halftail to detect overdeep nesting and cyclic cdr chains.
845
9a28b921
AS
8462004-05-10 Andreas Schwab <schwab@suse.de>
847
848 * lisp.h: Declare Fmake_symbolic_link.
849
850 * fileio.c (Frename_file): Remove extra argument in call to
851 Fmake_symbolic_link.
852
e2c02c1a
KS
8532004-05-10 Kim F. Storm <storm@cua.dk>
854
855 * xdisp.c (calc_line_height_property): Use string position when
856 object is a string.
857
cfe9d13e
KH
8582004-05-10 Kenichi Handa <handa@m17n.org>
859
a57e8159
KH
860 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
861 inhibit-modification-hooks to t temporarily before calling
862 Ferase_buffer.
863
864 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
865 inhibit-modification-hooks to t temporarily before calling
866 Ferase_buffer.
867
868 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
869 inhibit-modification-hooks to t temporarily before calling
870 Ferase_buffer.
871
cfe9d13e
KH
872 * fns.c (count_combining): Delete it.
873 (concat): Don't check combining bytes.
874
ceb96489
JR
8752004-05-09 Jason Rumney <jasonr@gnu.org>
876
877 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
878 (globals_of_w32fns): Set it.
879
b1c661c7
JB
8802004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
881
882 * data.c (Fquo): Simplify.
883
28712a21
JB
8842004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
885
886 * data.c (Fquo): If any argument is float, do the computation in
887 floating point.
888
0f0af7a8
JB
8892004-05-08 Juanma Barranquero <lektu@terra.es>
890
88214ef6
JB
891 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
892 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
893 Fix spelling of Emacs on docstring.
894 (Fset_process_coding_system, Fprocess_coding_system)
895 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
896 Make argument names match their use in docstring.
897 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
898 Fix docstring.
899
0f0af7a8
JB
900 * editfns.c (Finsert_buffer_substring): Make argument names match their
901 use in docstring.
902
903 * syntax.c (Fmodify_syntax_entry): Fix docstring.
904
2a316a84
ST
9052004-05-07 Steven Tamm <steventamm@mac.com>
906
907 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
908 around call to ReceiveEvent to avoid certain crashes.
909
9102004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 911
2a316a84
ST
912 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
913 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
914 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
915 Save/restore the current graphics port and device handle when
916 drawing into an offscreen graphics world.
917
918 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
919 (gif_load): Likewise.
920
ab80314b
JB
9212004-05-07 Juanma Barranquero <lektu@terra.es>
922
923 * window.c (Fset_window_buffer): Fix docstring.
924
70646bb5
TTN
9252004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
926
927 * emacs.c (main) [VMS]: Fix var ref.
928
b03a4fdd
JB
9292004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
930
931 * data.c (Fsetq_default): Fix docstring.
932
279d3293
JR
9332004-05-06 Jason Rumney <jasonr@gnu.org>
934
935 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
936 to avoid name clash.
937
f72b5416
JD
9382004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
939
940 * fileio.c (barf_or_query_if_file_exists): Use lstat.
941 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 942 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 943
6ab66799
KS
9442004-05-04 Kim F. Storm <storm@cua.dk>
945
946 * xdisp.c (Qtotal): New var.
947 (syms_of_xdisp): Intern and staticpro it.
948 (calc_line_height_property): New arg total. Set it if
949 line-spacing property has format (total . VALUE).
950 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
951 Handle total line-spacing property.
952
ab2d724b
JD
9532004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
954
955 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
956 "under" scroll bar when size/position changes.
957
238add5e
JR
9582004-05-03 Jason Rumney <jasonr@gnu.org>
959
960 * makefile.nt: Remove.
961
1644f4e4
EZ
9622004-05-02 Eli Zaretskii <eliz@gnu.org>
963
a267ab4d
SM
964 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
965 Avoid compiler warnings.
05fdbeb8 966
1644f4e4
EZ
967 * Makefile.in (region-cache.o): Depend on config.h.
968
6cbc951e
SM
9692004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
970
971 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
972 with continuation lines, too.
973
2b98b088
TTN
9742004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
975
976 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
977
d9bf7950
SM
9782004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
979
980 * xdisp.c (calc_line_height_property): YAILOM (yet another
981 int/Lisp_Object mixup).
982
affa509c
EZ
9832004-05-01 Eli Zaretskii <eliz@gnu.org>
984
985 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
986 undo bad effect of pack(4) in some versions of system headers.
987
07c07cfe
JR
9882004-05-01 Jason Rumney <jasonr@gnu.org>
989
990 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
991
e71caa4e
KS
9922004-04-30 Kim F. Storm <storm@cua.dk>
993
994 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 995 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
996
997 * dispextern.h (struct it): Remove member use_default_face.
998 Add members override_ascent, override_descent, override_boff.
999
1000 * xdisp.c (init_iterator): Handle line-spacing float value.
1001 Initialize override_ascent member.
1002 (append_space_for_newline): Reset override_ascent.
1003 Remove use_default_face.
1004 (calc_line_height_property): New function to calculate value of
1005 line-height and line-spacing properties. Look at overlays, too.
1006 Set override_ascent, override_descent, override_boff members when
1007 using another face than the current face. Float values are now
1008 relative to the frame default font, by default; accept a cons
1009 of ratio and face name to specify value relative to a specific face.
1010 (x_produce_glyphs): Use calc_line_height_property.
1011 Use override_ascent etc. when set to handle different face heights.
1012 A negative line-spacing property value is interpreted as a total
1013 line height, rather than inter-line spacing.
1014 (note_mouse_highlight): Allocate room for 40 overlays initially.
1015
0fddae66
SM
10162004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1017
1018 * data.c (Fsubr_name): New fun.
1019 (syms_of_data): Defsubr it.
1020
712d23dc
KS
10212004-04-29 Kim F. Storm <storm@cua.dk>
1022
1023 * xdisp.c (null_glyph_slice): New var.
1024 (append_glyph, append_composite_glyph, append_stretch_glyph):
1025 Use it to initialize glyph slice.
1026
033ad8c6
SM
10272004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1028
1029 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1030 (on_hot_spot_p): Make sure we always return a value.
1031 (Flookup_image_map): Remove unused var ix and iy.
1032 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1033
93397360
EZ
10342004-04-27 Eli Zaretskii <eliz@gnu.org>
1035
1036 * msdos.c (init_environment): If one of the TMP... environment
1037 variables is set to a drive letter without a trailing slash,
1038 append a slash.
1039
0c54865e
EZ
10402004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1041
1042 * editfns.c (lisp_time_argument): Provide externally.
1043
1044 * fileio.c (Fset_file_times): New function.
1045 (syms_of_fileio): Intern and staticpro it.
1046
d3b111bd
KS
10472004-04-27 Kim F. Storm <storm@cua.dk>
1048
07dc1231
KS
1049 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1050 header line strings.
1051
360fe9d2
KS
1052 * dispextern.h (struct it): New member use_default_face.
1053
d3b111bd
KS
1054 * xdisp.c (Qline_height): New variable.
1055 (syms_of_xdisp): Intern and staticpro it.
1056 (append_space_for_newline): Partially undo 2004-04-25 change;
1057 add default_face_p arg, and restore callers.
1058 Clear it->use_default_face after use.
1059 (x_produce_glyphs): Set default font for ascii char if
1060 it->use_default_font is set. Change line-spacing property to set
1061 just extra line spacing. Handle new line-height property.
1062
0448588b
AS
10632004-04-26 Andreas Schwab <schwab@suse.de>
1064
1065 * print.c (print_object): Print non-ascii characters in bool
1066 vector representation as octal escapes.
1067
1068 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1069 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1070 bool vectors.
1071 * lread.c (read1): Likewise.
1072 * alloc.c (Fmake_bool_vector): Likewise.
1073 * data.c (Faref, Faset): Likewise.
1074 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1075 (mapcar1): Likewise.
d3b111bd 1076
536d6baa
ST
10772004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1078
1079 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1080
ae11577a
MB
10812004-04-26 Miles Bader <miles@gnu.org>
1082
1083 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1084
e198ba87
JB
10852004-04-26 Juanma Barranquero <lektu@terra.es>
1086
1087 * buffer.c (Fpop_to_buffer): Fix docstring.
1088
f3d5f92d 10892004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1090
f3d5f92d
ST
1091 * lread.c (init_lread): Don't display missing lisp directory
1092 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1093 may be built without correct installation path.
f3d5f92d 1094
03e35edc
KS
10952004-04-25 Kim F. Storm <storm@cua.dk>
1096
9ff3aa31
KS
1097 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1098
1099 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1100
03e35edc
KS
1101 * xdisp.c (append_space_for_newline): Rename from append_space.
1102 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1103 (x_produce_glyphs): Handle line-spacing property on newline char.
1104 If value is t, adjust ascent and descent to fit current row height.
1105 If value is an integer or float, set extra_line_spacing to integer
1106 value, or to float value x current line height.
1107
f24814e0
KH
11082004-04-23 Kenichi Handa <handa@m17n.org>
1109
1110 * fontset.c (Finternal_char_font): If POSITION is nil, return
1111 font for displaying CH with the default face.
1112
d814862a
JB
11132004-04-23 Juanma Barranquero <lektu@terra.es>
1114
1115 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1116
063a45c5
SM
11172004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1118
1119 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1120 Don't make assumptions about the relative place of i and val.
1121 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1122
ae7ab2d3
KS
11232004-04-21 Kim F. Storm <storm@cua.dk>
1124
1125 * dispextern.h (struct glyph_slice): New struct.
1126 (struct glyph): New member slice.
1127 (GLYPH_SLICE_EQUAL_P): New macro.
1128 (GLYPH_EQUAL_P): Use it.
1129 (struct glyph_string): New member slice.
1130 (struct it_slice): New struct.
1131 (struct it): New member slice, add member to stack too.
1132 New member constrain_row_ascent_descent_p.
1133 (image_ascent): Add prototype.
1134
1135 * dispnew.c (buffer_posn_from_coords): Return full image width
1136 and height even for image slices (posn is relative to full image).
1137 (marginal_area_string): Adjust x0,y0 for image slice.
1138
1139 * image.c (image_ascent): Add slice arg; calculate ascent for
1140 image slice (or full image).
1141
1142 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1143 (syms_of_keyboard): Defsubr them.
1144
1145 * lisp.h (pos_visible_p): Fix prototype.
1146
c62aec78 1147 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1148 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1149 (x_draw_image_foreground, x_draw_image_relief)
1150 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1151 Draw sliced images.
1152
1153 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1154 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1155 (x_draw_image_foreground, x_draw_image_relief)
1156 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1157 Draw sliced images.
1158
1159 * w32term.h (image_ascent): Remove prototype.
1160
1161 * window.c (Fpos_visible_in_window_p): Return pixel position if
1162 PARTIALLY arg is non-nil. Simplify. Doc fix.
1163 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1164 to return/set vscroll in pixels.
1165
1166 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1167
1168 * xdisp.c (Qslice): New variable.
1169 (syms_of_xdisp): Intern and staticpro it.
1170 (pos_visible_p): Return pixel position in new x and y args.
1171 (init_iterator): Reset it->slice info.
1172 (handle_display_prop): Parse (slice ...) property.
1173 (push_it, pop_it): Save/restore slice info.
1174 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1175 force repositioning of tall row if window is vscrolled, as that
1176 would reset vscroll.
1177 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1178 increasing row height if row is non-empty.
1179 (fill_image_glyph_string): Copy slice info.
1180 (take_vertical_position_into_account): Simplify.
1181 (produce_image_glyph): Handle iterator slice info, setup glyph
1182 slice info. Do not force minimum line height.
1183 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1184 do not increase height (ascent/descent) of non-empty row when
1185 adding normal character glyph; instead reduce glyph ascent/descent
1186 appropriately; if row is higher than current glyph, adjust glyph
1187 descent/ascent to reposition glyph within the existing row.
1188 Likewise, when char is newline, only set ascent/descent if row is
1189 currently empty.
1190 (note_mouse_highlight): Handle hotspots with sliced image.
1191
1192 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1193 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1194 (x_draw_image_foreground, x_draw_image_relief)
1195 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1196 Draw sliced images.
1197
1198 * xterm.h (image_ascent): Remove prototype.
1199
d58f8753
SM
12002004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1201
1202 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1203
4ce2719d
JPW
12042004-04-20 John Paul Wallington <jpw@gnu.org>
1205
1206 * fns.c (Fassoc, Feql): Fix indentation.
1207
d58f8753 1208 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1209
95f8c3b9
JPW
12102004-04-19 John Paul Wallington <jpw@gnu.org>
1211
1212 * fns.c (Feql): New function.
d58f8753 1213 (syms_of_fns): Defsubr it.
95f8c3b9 1214
b7e85537
JR
12152004-04-18 Jason Rumney <jasonr@gnu.org>
1216
1217 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1218 after closing the clipboard.
1219
5a72efd4
LT
12202004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1221
1222 * buffer.c (Fbuffer_base_buffer): Doc fix.
1223
20dc8583
KS
12242004-04-17 Kim F. Storm <storm@cua.dk>
1225
60962ec4
KS
1226 * keymap.c (Fkey_description): Add optional PREFIX arg.
1227 Combine prefix with KEYS to make up the full key sequence to describe.
1228 Correlate meta_prefix_char and following (simple) key to describe
1229 as meta modifier. All callers changed.
1230 (describe_map): Rename arg `keys' to `prefix'. Remove local
1231 `elt_prefix' var. Use Fkey_description with prefix instead of
1232 elt_prefix combined with Fsingle_key_description.
1233 (describe_vector): Declare static. Replace arg `elt_prefix' with
1234 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1235 if !KEYMAP_P. Use Fkey_description with prefix instead of
1236 Fsingle_key_description.
1237
1238 * keymap.h (Fkey_description): Fix prototype.
1239 (describe_vector): Remove prototype.
1240
409368b9
KS
1241 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1242
20dc8583
KS
1243 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1244 (png_load): Fix calculation of transparent background color on X
1245 and W32 platforms.
1246
75c5501b
JB
12472004-04-16 Juanma Barranquero <lektu@terra.es>
1248
1249 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1250 not too large before computing how much to scroll.
1251
da879ae8
SM
12522004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1253
1254 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1255
d01ca4a8
LT
12562004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1257
1258 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1259 Add hyperlink to Elisp manual to the docstring.
1260
572943b3
SM
12612004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1262
1263 * callint.c (fix_command): Use XDCR.
1264
5e30a0fb
NR
12652004-04-14 Nick Roberts <nick@nick.uklinux.net>
1266
1267 * window.c (Fget_lru_window): Doc fix.
1268
a27ddfaf
KS
12692004-04-14 Kim F. Storm <storm@cua.dk>
1270
1271 * editfns.c (Fformat): Fix allocation size of precision array.
1272
1273 * dispnew.c (update_window): Only set changed_p if
1274 scrolling_window actually did scroll.
1275 (scrolling_window): Only return 1 if we actually did scroll.
1276
1277 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1278 height to glyph height when cursor row is not fully visible.
1279 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1280 failure in case row is higher than window. Callers changed.
1281 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1282 Try to scroll partially visible, higher-than-window cursor row.
1283 (redisplay_window): Always try to scroll partially visible,
1284 higher-than-window cursor row - both initially and again with
1285 centering_position = 0.
1286 Clear desired matrix before retrying with centering_position = 0.
1287
da879ae8
SM
12882004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1289
1290 * syntax.c (scan_lists): Simplify backward string scan.
1291 Fix off-by-one boundary check for string and comment fences.
1292
5fc16e8e
SM
12932004-04-13 Joe Buehler <jbuehler@hekimian.com>
1294
1295 * sheap.c, unexcw.c: New files.
1296
c9aac8e6
LT
12972004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1298
1299 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1300 base buffer has been killed. Correct the error message if the
1301 base buffer does not exist.
1302
1e88a355
SM
13032004-04-12 Joe Buehler <jbuehler@hekimian.com>
1304
1305 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1306 Cygwin itself. Add support for Xaw3d scrollbars.
1307
1308 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1309
1310 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1311
1312 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1313 before Cygwin unexec.
1314
1315 * Makefile.in: Link changes for Cygwin unexec() support.
1316
8dbff9a0
AS
13172004-04-12 Andreas Schwab <schwab@suse.de>
1318
1319 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1320
54dffe35
LT
13212004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1322
1323 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1324 IGNORE argument equals NAME. Doc fix.
1325
99a72bdf
MY
13262004-04-11 Masatake YAMATO <jet@gyve.org>
1327
1e88a355 1328 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1329 empty if they are backwards.
1330
40899d7b
SM
13312004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1332
1333 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1334
f8f853de
SM
13352004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1336
1337 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1338
c953fe1b
KS
13392004-04-06 Kim F. Storm <storm@cua.dk>
1340
661e85c1
KS
1341 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1342 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1343
1344 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1345 clearing highlight.
1346
1347 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1348
1349 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1350 clearing highlight.
1351
c953fe1b
KS
1352 * indent.c (vmotion): Do not reserve one column for continuation
1353 marks on window frames.
1354
c1994268
EZ
13552004-04-04 Eli Zaretskii <eliz@gnu.org>
1356
1357 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1358 from GCC.
1359
9f691b0d
SM
13602004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1361
1362 * .gdbinit-union: Remove.
1363
1364 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1365 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1366 ($nonvalbits): Remove.
1367 ($valmask): Set it by calling xreload to avoid redundancy.
1368
1369 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1370 (gdb_emacs_intbits): Remove.
1371
7a8560d7
JD
13722004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1373
9f691b0d 1374 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1375
3c8111fc
KH
13762004-03-30 Kenichi Handa <handa@m17n.org>
1377
1378 * editfns.c (Fformat): Fix initialization of the array info.
1379
48a0bce4
KS
13802004-03-30 Kim F. Storm <storm@cua.dk>
1381
1382 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1383 (syms_of_xterm): DEFVAR_BOOL it.
1384 (ignore_next_mouse_click_timeout): New var.
1385 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1386 Use it to filter mouse clicks following focus event.
1387
1cd0066c
KS
13882004-03-29 David Ponce <david@dponce.com>
1389
1390 * callint.c (Fcall_interactively): Fix last change.
1391
adb3b353
SM
13922004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1393
1394 * eval.c (Fcommandp): Simplify.
1395
1396 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1397 Extend to handle all kinds of functions.
1398
1399 * lisp.h (Finteractive_form): Declare.
1400
1401 * callint.c (Fcall_interactively): Use it.
1402
6fc4c9c9
KS
14032004-03-26 Kim F. Storm <storm@cua.dk>
1404
1405 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1406 to catch errors in calc_pixel_width_or_height during redisplay.
1407
abdb9b83
MY
14082004-03-26 Masatake YAMATO <jet@gyve.org>
1409
b17856dd 1410 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1411
b17856dd 1412 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1413
b17856dd 1414 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1415
b17856dd 1416 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1417
e8a84b6c
JD
14182004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1419
b17856dd 1420 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1421
36a3fd05
RS
14222004-03-19 Richard M. Stallman <rms@gnu.org>
1423
1424 * s/sol2-6.h: Delete previous change.
1425
ab24c127
KS
14262004-03-19 Kim F. Storm <storm@cua.dk>
1427
1428 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1429 to_charpos corresponds to newline in right fringe. Use local
1430 BUFFER_POS_REACHED_P macro.
1431
992126de
JD
14322004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1433
1434 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1435 to compile on non-window system.
1436
45dbfc84
KS
14372004-03-19 Kim F. Storm <storm@cua.dk>
1438
1439 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1440
1441 * image.c (Qcenter): Move to xdisp.c.
1442
1443 * xdisp.c (Qcenter): Declare here.
adb3b353 1444 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1445 (handle_single_display_prop): Allow space display property on all
1446 platforms.
1447 (display_mode_line): Set mode_line_p before displaying line.
1448 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1449 handling. Remove complex cases for fringes and scroll-bars.
1450 Add left, right, and center alignment positions. Add text (area)
1451 width/height. Return width or height for image specs.
1452 (produce_stretch_glyph): Improve handling of :align-to. Is now
1453 relative to left of text area by default, but other base offsets
1454 can be specified -- also for text lines.
1455
1456 * term.c (produce_glyphs): Handle IT_STRETCH.
1457 (produce_stretch_glyph): New function to handle space width and
1458 align-to display properties on non-window systems.
1459
37264101
SM
14602004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1461
1462 * fileio.c (Fread_file_name): Set completion-ignore-case for
1463 case-insensitive systems.
1464
73bc43da
MY
14652004-03-14 Masatake YAMATO <jet@gyve.org>
1466
1467 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1468 when keymap and cursor are setup.
1469
9062aa89
ST
14702004-03-14 Steven Tamm <steventamm@mac.com>
1471
b17856dd 1472 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1473
e4b1b5ab
KS
14742004-03-14 Kim F. Storm <storm@cua.dk>
1475
1476 * dispextern.h (x_find_image_file): Add prototype.
1477
1478 * image.c (x_find_image_file): Make extern.
1479
1480 * xfns.c (x_find_image_file): Remove prototype.
1481
a6eeaa81 14822004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1483
37264101 1484 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1485
37264101 1486 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1487
e69cfac2
RS
14882004-03-12 Richard M. Stallman <rms@gnu.org>
1489
1490 * fns.c (internal_equal): New arg PROPS controls comparing
1491 text properties. All callers changed.
1492 (Fequal_including_properties): New function.
1493 (syms_of_fns): defsubr it.
1494
45034953
KS
14952004-03-12 Kim F. Storm <storm@cua.dk>
1496
1497 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1498
45034953
KS
1499 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1500 (image_background, image_background_transparent): Fix prototypes.
1501
37264101 1502 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1503
1504 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1505 (x_query_font, x_find_ccl_program, x_set_window_size)
1506 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1507 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1508 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1509
1510 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1511 (x_query_font, x_find_ccl_program, x_set_window_size)
1512 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1513 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1514 (mac_draw_line_to_pixmap): Add prototypes.
1515
15162004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1517
1518 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1519
a12d3d87
KS
15202004-03-11 Kim F. Storm <storm@cua.dk>
1521
d3ab1cf1
KS
1522 * dispextern.h: Move image related prototypes from xfns.c section
1523 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1524 HAVE_X_WINDOWS.
37264101 1525
37de9f51 1526 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1527 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1528 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1529 (GTK_OBJ) [USE_GTK]: New declaration.
1530 (obj): Add $(GTK_OBJ) to list.
1531
5243c06a 15322004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1533
5243c06a
ST
1534 * image.c [MAC_OSX]: Include sys/stat.h
1535
1536 * macfns.c (syms_of_macfns): Remove definitions of things now
1537 defined in image.c
1538
c0f97789
KS
15392004-03-11 Kim F. Storm <storm@cua.dk>
1540
1541 The following changes consolidates the identical/similar image
1542 support code previously found in xfns.c, w32fns.c, and macfns.c
1543 into a new file image.c.
1544
1545 * makefile.w32-in (OBJ1): Add image.o.
1546 ($(BLD)/image.$(O)): Add dependencies.
1547
1548 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1549 (image.o): Add dependencies.
37264101 1550
c0f97789
KS
1551 * image.c: New file with consolidated image support code.
1552 (COLOR_TABLE_SUPPORT): New define to control whether
1553 color table support is available (X only).
1554 (Bitmap_Record): Common name for x_bitmap_record,
1555 w32_bitmap_record, and mac_bitmap_record.
1556 (XImagePtr): Common name for pointer to XImage or equivalent.
1557 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1558 to XImagePtr on X+MAC, and to HDC on W32.
1559 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1560 (NO_PIXMAP): Common name for "None" or equivalent.
1561 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1562 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1563 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1564 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1565 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1566 (XDrawLine): Define on MAC for code sharing.
1567 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1568 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1569 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1570 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1571 (x_reference_bitmap, x_create_bitmap_from_data)
1572 (x_create_bitmap_from_file, x_destroy_bitmap)
1573 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1574 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1575 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1576 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1577 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1578 (define_image_type, lookup_image_type, valid_image_p)
1579 (image_error, enum image_value_type, struct image_keyword)
1580 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1581 (make_image, free_image, prepare_image_for_display, image_ascent)
1582 (four_corners_best, image_background, image_background_transparent)
1583 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1584 (make_image_cache, free_image_cache, clear_image_cache)
1585 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1586 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1587 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1588 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1589 (init_image_func_pointer, image_load_quartz2d)
1590 (struct ct_color, init_color_table, free_color_table)
1591 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1592 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1593 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1594 (x_disable_image, x_build_heuristic_mask)
1595 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1596 (TIFF support, GIF support, Ghostscript support): Consolidate image
1597 code from xfns.c, w32fns.c, and macfns.c.
1598 (syms_of_image): Consolidate image related symbol setup here.
1599 (init_image): Consolidate image related initializations here.
37264101 1600
c0f97789
KS
1601 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1602 and init_image. Remove call to init_xfns.
1603
37264101
SM
1604 * macterm.h (struct mac_bitmap_record): Add file member.
1605 Not currently used, but simplifies code sharing.
c0f97789
KS
1606
1607 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1608 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1609 (x_reference_bitmap, x_create_bitmap_from_data)
1610 (x_create_bitmap_from_file, x_destroy_bitmap)
1611 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1612 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1613 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1614 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1615 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1616 (define_image_type, lookup_image_type, valid_image_p)
1617 (image_error, enum image_value_type, struct image_keyword)
1618 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1619 (make_image, free_image, prepare_image_for_display, image_ascent)
1620 (four_corners_best, image_background, image_background_transparent)
1621 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1622 (make_image_cache, free_image_cache, clear_image_cache)
1623 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1624 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1625 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1626 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1627 (init_image_func_pointer, image_load_quartz2d)
1628 (struct ct_color, init_color_table, free_color_table)
1629 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1630 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1631 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1632 (x_disable_image, x_build_heuristic_mask)
1633 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1634 (TIFF support, GIF support, Ghostscript support): Merge with image
1635 code from xfns.c and macfns.c into image.c.
1636 (syms_of_xfns): Move image related symbols to image.c.
1637 (init_external_image_libraries, init_xfns): Remove; initialization
1638 moved to init_image in image.c.
1639
1640 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1641 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1642 (x_reference_bitmap, x_create_bitmap_from_data)
1643 (x_create_bitmap_from_file, x_destroy_bitmap)
1644 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1645 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1646 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1647 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1648 (define_image_type, lookup_image_type, valid_image_p)
1649 (image_error, enum image_value_type, struct image_keyword)
1650 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1651 (make_image, free_image, prepare_image_for_display, image_ascent)
1652 (four_corners_best, image_background, image_background_transparent)
1653 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1654 (make_image_cache, free_image_cache, clear_image_cache)
1655 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1656 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1657 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1658 (struct ct_color, init_color_table, free_color_table)
1659 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1660 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1661 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1662 (x_disable_image, x_build_heuristic_mask)
1663 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1664 (TIFF support, GIF support, Ghostscript support): Merge with image
1665 code from xfns.c and macfns.c into image.c.
1666 (syms_of_xfns): Move image related symbols to image.c.
1667 (init_external_image_libraries, init_xfns): Remove; initialization
1668 moved to init_image in image.c.
1669
1670 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1671 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1672 (x_reference_bitmap, x_create_bitmap_from_data)
1673 (x_create_bitmap_from_file, x_destroy_bitmap)
1674 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1675 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1676 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1677 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1678 (define_image_type, lookup_image_type, valid_image_p)
1679 (image_error, enum image_value_type, struct image_keyword)
1680 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1681 (make_image, free_image, prepare_image_for_display, image_ascent)
1682 (four_corners_best, image_background, image_background_transparent)
1683 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1684 (make_image_cache, free_image_cache, clear_image_cache)
1685 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1686 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1687 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1688 (struct ct_color, init_color_table, free_color_table)
1689 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1690 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1691 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1692 (x_disable_image, x_build_heuristic_mask)
1693 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1694 (TIFF support, GIF support, Ghostscript support): Merge with
1695 w32fns.c and macfns.c image code into image.c.
1696 (syms_of_xfns): Move image related symbols to image.c.
1697 (init_xfns): Remove; initialization moved to init_image in image.c.
1698
1699 * lisp.h (syms_of_image, init_image): Add protoypes.
1700 (init_xfns): Remove prototype.
1701
1702 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1703 (x_reference_bitmap, x_create_bitmap_from_data)
1704 (x_create_bitmap_from_file, x_destroy_bitmap)
1705 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1706 (gamma_correct) [MAC_OS]: Add prototype.
1707
1708 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1709 (x_reference_bitmap, x_create_bitmap_from_data)
1710 (x_create_bitmap_from_file, x_destroy_bitmap)
1711 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1712
6eced09c
KH
17132004-03-09 Kenichi Handa <handa@etlken2>
1714
1715 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1716 correctly.
1717
9a7e95f3
RS
17182004-03-04 Richard M. Stallman <rms@gnu.org>
1719
04a6e76b
RS
1720 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1721
9a7e95f3
RS
1722 * window.c (Fdisplay_buffer): Doc fix.
1723
1724 * buffer.c (Fpop_to_buffer): Doc fix.
1725
6c2488df
KS
17262004-03-03 Kim F. Storm <storm@cua.dk>
1727
1728 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1729
d8d95bc7
SM
17302004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1731
1732 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1733
357589bf
RS
17342004-03-02 Richard M. Stallman <rms@gnu.org>
1735
1736 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1737
409949b5
KH
17382004-03-02 Kenichi Handa <handa@m17n.org>
1739
1740 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1741
d24bc50f
KS
17422004-03-02 Kim F. Storm <storm@cua.dk>
1743
1744 * window.h (struct window): New member overlay_arrow_bitmap.
1745
1746 * window.c (make_window): Initialize overlay_arrow_bitmap.
1747
1748 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1749 implement and integrate multiple overlay arrows with redisplay.
1750 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1751 (last_arrow_position, last_arrow_string): Replace by properties.
1752 (Qlast_arrow_position, Qlast_arrow_string)
1753 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1754 (syms_of_xdisp): Intern and staticpro them.
1755 (overlay_arrow_string_or_property, update_overlay_arrows)
1756 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1757 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1758 (redisplay_internal): Use them instead of directly accessing
1759 Voverlay_arrow_position etc. for multiple overlay arrows.
1760 (mark_window_display_accurate): Use update_overlay_arrows.
1761 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1762 (try_window_id): Use overlay_arrows_changed_p.
1763 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1764 (display_line): Use overlay_arrow_at_row to check multiple
1765 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 1766 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
1767 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1768 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1769
1770 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1771 (update_window_fringes): Remove unused code.
1772
c1464661
JR
17732004-03-01 Jason Rumney <jasonr@gnu.org>
1774
1775 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1776
a64387ee
JB
17772004-03-01 Juanma Barranquero <lektu@terra.es>
1778
1779 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1780
1781 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1782
334faa08
JD
17832004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1784
1785 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1786 how many colors can be displayed.
1787
bb62616f
KH
17882004-03-01 Kenichi Handa <handa@m17n.org>
1789
1790 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1791 correctly.
1792
0fd16104
KS
17932004-02-28 Kim F. Storm <storm@cua.dk>
1794
1795 * dispnew.c (update_window): Update header line also if there are
1796 no other changes in window (move code after set_cursor label).
1797
1798 * lisp.h (mark_window_display_accurate): Remove prototype.
1799
1800 * window.c (window_loop, Fforce_window_update): Force mode line
1801 updates by setting prevent_redisplay_optimizations_p and
1802 update_mode_lines.
1803
b59dd9c8
JD
18042004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1805
d8d95bc7 1806 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
1807
1808 * xterm.c (x_calc_absolute_position): Call x_real_positions
1809 to get WM window sizes and use those to calculate position.
d8d95bc7 1810 (x_set_offset): Remove code commented out.
b59dd9c8 1811
a874691c
MB
18122004-02-28 Miles Bader <miles@gnu.org>
1813
1814 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1815
3e0c6482
KS
18162004-02-28 Kim F. Storm <storm@cua.dk>
1817
1818 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1819 an event into kbd fifo, but with special handling of quit event;
1820 a quit event is saved for later, and further events are discarded
1821 until the saved quit event has been processed.
1822 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1823 (gen_help_event): Store help event in kbd fifo.
1824 (NREAD_INPUT_EVENTS): Remove.
1825 (read_avail_input): Adapt to new read_socket_hook interface.
1826 Remove allocation and initialization of local input_event buffer,
1827 as read_socket_hook stores events directly in fifo. Allocate and
1828 initialize local hold_quit event to handle postponed quit event
1829 (and store it if set by kbd_buffer_store_event_hold).
1830
1831 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1832 (gen_help_event): Fix prototype.
1833
a64387ee 1834 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 1835 numcharsp args. Add hold_quit arg.
f63fd14e 1836 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1837 directly in fifo using kbd_buffer_store_event_hold.
1838
1839 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1840 (read_input_waiting): Adapt to new read_socket_hook interface.
1841 Remove allocation and initialization of local input_event buffer,
1842 as read_socket_hook stores events directly in fifo. Allocate and
1843 initialize local hold_quit event to handle postponed quit event
1844 (and store it if set by kbd_buffer_store_event_hold).
1845
a64387ee 1846 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
1847
1848 * termhooks.h (read_socket_hook): Fix prototype.
1849
1850 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1851 numcharsp args. Add hold_quit arg.
f63fd14e 1852 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1853 directly in fifo using kbd_buffer_store_event_hold.
1854
1855 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1856
1857 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
1858 Add hold_quit arg. Rework to use just one, local, inev
1859 input_event. Store inev directly in fifo using
3e0c6482
KS
1860 kbd_buffer_store_event_hold. Update count in one place.
1861 Postpone call to gen_help_event until inev is stored; use new
1862 local do_help for this.
1863 Remove local emacs_event in handing of ButtonPress event; just use
1864 inev instead (so no reason to copy it later).
1865
1866 * xsmfns.c (x_session_check_input): Remove numchars arg.
1867
d8d95bc7
SM
1868 * xterm.c (x_focus_changed, x_detect_focus_change):
1869 Remove numchars arg. Always store event into bufp arg.
1870 Return nothing. Callers changed accordingly.
3e0c6482
KS
1871 (glyph_rect): Simplify.
1872 (STORE_KEYSYM_FOR_DEBUG): New macro.
1873 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1874 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1875 (current_hold_quit) [USE_GTK]: Add.
1876 (event_handler_gdk): Adapt to new handle_one_xevent.
1877 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
1878 Add hold_quit arg. Rework to use just one, local, inev
1879 input_event. Store inev directly in fifo using
3e0c6482
KS
1880 kbd_buffer_store_event_hold. Update count in one place.
1881 Postpone call to gen_help_event until inev is stored; use new
1882 local do_help for this.
1883 Simplify handling of keysyms (consolidate common code). Fix bug
1884 where count was updated with nchars instead of nbytes.
1885 Remove local emacs_event in handing of ButtonPress event; just use
1886 inev instead (so no reason to copy it later).
1887 Remove `out' label. Rename label `ret' to `done'; add various
1888 `goto done' to clarify code flow in deeply nested blocks.
1889 (x_dispatch_event): Simplify as handle_one_xevent now calls
1890 kbd_buffer_store_event itself.
f63fd14e 1891 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
1892 arg. Call handle_one_xevent with new arglist. Store event from
1893 x_session_check_input in fifo.
1894 [USE_GTK]: Setup current_hold_quit.
1895 Decrement handling_signal before unblocking input.
1896 (x_initialize) [USE_GTK]: Initialize current_count.
1897
1898 * xterm.h (x_session_check_input): Fix prototype.
1899
e3564461 19002004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 1901
d8d95bc7 1902 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 1903
e3564461
ST
1904 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1905 macgui.h).
a64387ee 1906
e3564461 1907 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 1908
e3564461
ST
1909 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1910 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1911 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1912 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1913 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1914 (Bitmap): Remove typedef.
1915 (Pixmap): Change int to GWorldPtr.
1916
d8d95bc7 1917 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 1918
d8d95bc7
SM
1919 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1920 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1921 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
1922 long representation.
1923 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1924 colors used for masks.
1925 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 1926
e3564461
ST
1927 * macfns.c: Include sys/types.h and sys/stat.h.
1928 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1929 Include QuickTime/QuickTime.h.
1930 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1931 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1932 functions defined in macterm.c.
1933 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1934 (ZPixmap): New #define for compatibility with xfns.c.
1935 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1936 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
1937 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1938 New functions.
e3564461 1939 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
1940 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1941 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
1942 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1943 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1944 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1945 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1946 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1947 long mixup.
1948 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1949 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1950 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1951 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1952 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1953 (x_alloc_image_color, clear_image_cache, lookup_image)
1954 (x_find_image_file, xbm_read_bitmap_file_data)
1955 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1956 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1957 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1958 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1959 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 1960 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
1961 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1962 #if 0.
1963 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1964 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
1965 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1966 New functions (from xfns.c).
e3564461
ST
1967 (Fx_create_frame): Record unwind_create_frame.
1968 (Fxw_display_color_p): Use dpyinfo->color_p.
1969 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1970 dpyinfo->n_cbits.
1971 (Fx_display_color_cells): Use dpyinfo->n_planes;
1972 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1973 (Qheuristic, cross_disabled_images, emboss_matrix)
1974 (laplace_matrix): New variables (from xfns.c).
1975 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1976 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1977 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
1978 (image_background_transparent): New function (from xfns.c).
1979 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1980 (image_load_quicktime): Add declaration.
1981 [MAC_OSX] (image_load_quartz2d): Likewise.
1982 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1983 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 1984 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
1985 (xbm_load_image_from_file, x_laplace_read_row)
1986 (x_laplace_write_row, pbm_read_file): Remove functions.
1987 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1988 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1989 (colors_in_color_table): Sync with xfns.c (although not used).
1990 (lookup_rgb_color): Don't lookup color table. Just do gamma
1991 correction.
1992 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
1993 (x_disable_image): New function (from xfns.c).
1994 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1995 (x_build_heuristic_mask): Sync with xfns.c.
1996 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1997 (HAVE_PBM): Remove #ifdef.
1998 (pbm_load): Sync with xfns.c. Set img->width and img->height
1999 before IMAGE_BACKGROUND.
d8d95bc7 2000 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2001 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2002 Don't enclose with #if HAVE_PNG.
2003 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2004 symbol _CGImageCreateWithPNGDataProvider is defined.
2005 Otherwise use image_load_quicktime.
e3564461 2006 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2007 [HAVE_PNG] (png_load): Sync with xfns.c.
2008 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2009 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2010 HAVE_JPEG.
2011 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2012 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2013 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2014 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2015 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2016 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2017 HAVE_TIFF.
2018 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2019 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2020 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2021 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2022 New functions (from xfns.c).
e3564461 2023 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2024 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2025 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2026 Don't enclose with #if HAVE_GIF.
2027 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2028 animated gif. Otherwise use image_load_quicktime.
2029 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2030 gif_DrawText to avoid conflict with QuickdrawText.h.
2031 [HAVE_GIF] (gif_load): Sync with xfns.c.
2032 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2033 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2034 Ghostscript is not supported yet).
2035 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2036 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2037 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2038 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2039 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2040 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2041 HAVE_PNG. Call EnterMovies to support animated gifs.
2042 Call init_image_func_pointer to bind a symbol
e3564461 2043 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2044
d8d95bc7 2045 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2046 (x_draw_bar_cursor): Sync declaration with xterm.c.
2047 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2048 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2049 graphics).
2050 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2051 (mac_draw_line_to_pixmap, XCreatePixmap)
2052 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2053 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2054 New functions.
2055 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2056 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2057 Cast bits to char *.
e3564461
ST
2058 (reflect_byte): New function (from w32fns.c).
2059 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2060 due to byte alignment.
d8d95bc7
SM
2061 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2062 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2063 (XSetForeground): Remove static (now used in macfns.c).
2064 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2065 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2066 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2067 (x_draw_glyph_string_box, x_draw_image_foreground)
2068 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2069 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2070 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2071 Sync with xterm.c.
2072 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2073 than the xterm.c version when a strictly horizontal or vertical
2074 line is drawn.
2075 (XTset_terminal_window): Add static.
2076 (x_make_frame_visible): Add UNBLOCK_INPUT.
2077 (x_free_frame_resources): New funcion (from xterm.c).
2078 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2079 occurs in tool bar area.
d8d95bc7
SM
2080 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2081 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2082 Initialize image cache.
2083 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2084 Enclose unused functions with #if 0.
2085 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2086 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2087 from a mac font name to an XLFD font name according to its script code.
e3564461 2088 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2089 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2090 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2091 whose name starts with `.'.
2092 (init_font_name_table): Use decode_mac_font_name. Add both
2093 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2094 of a font is smJapanese.
2095 (mac_do_list_fonts): New function to list fonts that match a given
2096 pattern.
2097 (x_list_fonts, XLoadQueryFont): Use it.
2098 (XLoadQueryFont): Set rbearing field for each variable width
2099 character to avoid needless redraw.
2100 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2101
446f5f3d
KS
21022004-02-26 Kim F. Storm <storm@cua.dk>
2103
af617d0f
KS
2104 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2105 as read_socket_hook handler on X aborts if buffer is too small
2106 and W32 handler doesn't always check buffer limit.
2107
446f5f3d
KS
2108 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2109 right-fringe similar to a display margin image. Specifically,
2110 the characters having the fringe prop are no longer shown, and
2111 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2112 do this. Set fringe bitmap face_id in it->face_id.
2113 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2114 still realize it->face (i.e. the fringe bitmap face).
2115
7d8a0b55
MB
21162004-02-25 Miles Bader <miles@gnu.org>
2117
2118 * xdisp.c (check_it): Check string/string_pos consistency.
2119 (init_iterator): Initialize string-related fields properly.
2120
21212004-02-11 Miles Bader <miles@gnu.org>
2122
2123 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2124
21252004-02-10 Miles Bader <miles@gnu.org>
2126
2127 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2128 BLOCK_INPUT can be nested, so it doesn't make much sense.
2129
a64387ee 21302004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2131
2132 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2133 (xbm_read_bitmap_data): Use unsigned char for image data.
2134
92f5fba2
LT
21352004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2136
2137 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2138
8565fb3d
JR
21392004-02-22 Jason Rumney <jasonr@gnu.org>
2140
2141 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2142 correctly over other bitmaps.
2143
a6eeaa81 21442004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2145
2146 * emacs.c (USAGE1): Split into two halves.
2147 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2148 (USAGE3): Rename from USAGE2.
2149 (USAGE4): Rename from USAGE3.
f8125c39 2150
4effffca
EZ
21512004-02-21 Juri Linkov <juri@jurta.org>
2152
2153 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2154 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2155 --file. Fix -f, -l. Sort options. Untabify.
2156 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2157
923c1e6f
LT
21582004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2159
2160 * category.c (Fdefine_category, Fcategory_docstring)
2161 (Fget_unused_category, Fset_category_table)
2162 (Fcategory_set_mnemonics): Doc fixes.
2163
b0e225fd
KS
21642004-02-20 Kim F. Storm <storm@cua.dk>
2165
2166 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2167 The following changes are relative to the 2004-01-21 revision.
2168 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2169 in one call to read_socket_hook. Value is 8.
2170 (read_avail_input): Separate and rework handling of read_socket_hook
2171 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2172 in read_socket_hook case, and repeat if full buffer is read.
2173 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2174 In non-read_socket_hook case, just use a single input_event, and
2175 call kbd_buffer_store_event on the fly for each character.
2176
b15aa9f9
SM
21772004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2178
2179 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2180 Remove unused `gu' alternative.
2181
83c9aa95
AS
21822004-02-19 Andreas Schwab <schwab@suse.de>
2183
2184 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2185 warning.
2186
cc808173
KS
21872004-02-18 Kim F. Storm <storm@cua.dk>
2188
2189 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2190 Fix last change.
2191
ab90a54d
KS
21922004-02-17 Kim F. Storm <storm@cua.dk>
2193
b26f249f
KS
2194 * xdisp.c (fast_find_position): Fix return value of new version;
2195 it was inverted compared to the 21.1 version.
2196 (get_window_cursor_type): Don't look at glyph if NULL.
2197 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2198
ab90a54d
KS
2199 * keyboard.c: Rework previous change; it didn't consider that the
2200 buf array was allocated on the stack.
2201 (prev_read): Remove variable.
2202 (read_avail_input_buf): New static event buffer array.
b9568dfc 2203 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2204 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2205 Use in_read_avail_input to handle re-entrance; when re-entered,
2206 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2207 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2208 is always cleared on entry. To ensure that, we clear (just) the
2209 entries that were used before we return.
2210 (init_keyboard): Initialize read_avail_input_buf here.
2211
4e039f3f
EZ
22122004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2213
2214 * cmds.c (Fend_of_line): Doc fix.
2215
7b5368c1
EZ
22162004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2217
2218 * keyboard.c (prev_read): New static variable.
2219 (read_avail_input): Use it to zero out only those slots in buf[]
2220 that were used last time we were called.
2221
a6eeaa81 22222004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2223
2224 * Makefile.in (obj): Move fringe.o from here...
2225 (XOBJ, MAC_OBJ): ...to here.
2226
159c348e
SE
22272004-02-16 Stephen Eglen <stephen@gnu.org>
2228
2229 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2230
d2f14999
SM
22312004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2232
b15aa9f9
SM
2233 * data.c (Fbyteorder):
2234 * fringe.c (Fdefine_fringe_bitmap):
2235 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2236 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2237
8d50508a
JR
22382004-02-16 Jason Rumney <jasonr@gnu.org>
2239
2240 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2241
dd4497dc
ST
22422004-02-15 Steven Tamm <steventamm@mac.com>
2243
2244 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2245 controlling emulation of a three button mouse with option and
2246 command keys.
2247 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2248 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2249
c9159cb3
KS
22502004-02-15 Kim F. Storm <storm@cua.dk>
2251
2cc52658
KS
2252 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2253
c9159cb3
KS
2254 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2255 Perform byte-swapping.
2256
12fde2dc
KS
22572004-02-14 Kim F. Storm <storm@cua.dk>
2258
2259 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2260 bits from char to short to facilitate wider bitmaps.
2261 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2262 member.
2263
2264 * fringe.c (struct fringe_bitmap): Change member bits from char to
2265 short to facilitate 16 bits wide bitmaps. Modify all standard
2266 bitmaps accordingly.
2267 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2268 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2269 (draw_fringe_bitmap): Ditto.
2270 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2271 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2272 handle up to 16 bits wide bitmaps.
2273 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2274 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2275
2276 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2277 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2278 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2279
2280 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2281 so it is no longer necessary to expand them here.
2282
2283 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2284
9d7271e8
KS
22852004-02-12 Kim F. Storm <storm@cua.dk>
2286
2287 * window.c (Fwindow_fringes): Doc fix.
2288
706c1e4f
JD
22892004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2290
2291 * xselect.c (x_get_foreign_selection): Add new optional parameter
2292 time_stamp.
2293 (Fx_get_selection_internal): Ditto, pass time_stamp to
2294 x_get_foreign_selection.
2295
2296 * data.c (Fbyteorder): New function.
2297
c2d12b5d
JD
22982004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2299
2300 * atimer.c: Move include stdio.h to same place as in other files.
2301
2302 * region-cache.c: Ditto.
2303
2304 * sysdep.c: Ditto.
2305
2306 * xfaces.c: Ditto.
2307
4c1947b9
SS
23082004-02-09 Sam Steingold <sds@gnu.org>
2309
89458937 2310 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2311
82722af3
KS
23122004-02-09 Kim F. Storm <storm@cua.dk>
2313
2314 * fringe.c: New file. Move original fringe related declarations
2315 and code from dispextern.h and xdisp.c here.
2316 Rework code to support user defined fringe bitmaps, redefining
2317 standard bitmaps, ability to overlay user defined bitmap with
2318 overlay arrow bitmap, and add faces to bitmaps.
2319 (Voverflow_newline_into_fringe): Declare here.
2320 (enum fringe_bitmap_align): New enum.
2321 (..._bits): All bitmaps are now defined without bitswapping; that
2322 is now done in init_fringe_once (if necessary).
2323 (standard_bitmaps): New array with specifications for the
2324 standard fringe bitmaps.
2325 (fringe_faces): New array.
2326 (valid_fringe_bitmap_id_p): New function.
2327 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2328 (draw_fringe_bitmap): New function which draws fringe bitmap,
2329 possibly overlaying bitmap with cursor in right fringe or the
2330 overlay arrow in the left fringe.
2331 (update_window_fringes): Do not handle overlay arrow here.
2332 Compare and copy fringe bitmap faces.
2333 (init_fringe_bitmap): New function.
2334 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2335 define and destroy user defined fringe bitmaps.
2336 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2337 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2338 (syms_of_fringe): New function. Defsubr new DEFUNs.
2339 DEFVAR_LISP Voverflow_newline_into_fringe.
2340 (init_fringe_once, init_fringe): New functions.
2341 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2342
82722af3
KS
2343 * Makefile.in (obj): Add fringe.o.
2344 (fringe.o): New dependencies.
2345
2346 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2347 bits allocated to hold a fringe number. Increase number of bits
2348 from 4 to 8 to allow user defined fringe bitmaps.
2349 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2350 left_user_fringe_face_id, right_user_fringe_bitmap,
2351 right_user_fringe_face_id.
2352 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2353 Move to new file fringe.c.
2354 (MAX_FRINGE_BITMAPS): Define here.
2355 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2356 and overlay_p. Change member which to int.
2357 (struct redisplay_interface): New members define_fringe_bitmap
2358 and destroy_fringe_bitmap.
2359 (valid_fringe_bitmap_id_p): Add prototype.
2360 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2361
2362 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2363 arrows.
2364 (update_frame): Do flush_display if force_flush_display_p to
2365 ensure display (specifically fringes) are updated in a timely
2366 manner when resizing the frame by dragging the mouse.
2367 (update_window_line): Update row if overlay arrow changed.
2368 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2369 or overlay arrow changed.
2370
2371 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2372 syms_of_fringe, and init_fringe.
2373
2374 * frame.h (struct frame): New member force_flush_display_p.
2375
2376 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2377 Add prototypes.
2378
a3993cc8 2379 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2380 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2381 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2382 Use cursor color for displaying cursor in fringe.
82722af3
KS
2383 (x_redisplay_interface): Add null handlers for
2384 define_fringe_bitmap and destroy_fringe_bitmap functions.
2385
2386 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2387 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2388 for displaying cursor in fringe.
2389 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2390 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2391 (w32_redisplay_interface): Add them to redisplay_interface.
2392 (w32_term_init): Call w32_init_fringe instead of explicitly
2393 defining fringe bitmaps in fringe_bmp array.
2394 (x_delete_display): Call w32_reset_fringes instead of explicitly
2395 destroying fringe bitmaps in fringe_bmp array.
2396
2397 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2398 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2399 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2400 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2401 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2402 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2403 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2404 Move fringe handling vars and code to new file fringe.c.
2405 (handle_display_prop): Handle left-fringe and right-fringe
2406 display properties; store user fringe bitmaps in iterator.
2407 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2408 (clear_garbaged_frames): Set force_flush_display_p if resized.
2409 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2410 (display_line): Handle cursor in fringe at eob.
2411 (display_line): Set row user fringe bitmaps from iterator.
2412
2413 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2414 Use cursor color for displaying cursor in fringe.
2415 (x_redisplay_interface): Add null handlers for
2416 define_fringe_bitmap and destroy_fringe_bitmap functions.
2417
030400eb
JD
24182004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2419
2420 * macfns.c (Fx_change_window_property): Make doc string and
2421 parameters same as for X version.
2422
2423 * w32fns.c (Fx_change_window_property): Ditto.
2424
3af55251
KS
24252004-02-07 Kim F. Storm <storm@cua.dk>
2426
ec110e9e
KS
2427 * xdisp.c (hscroll_window_tree): Position cursor near to right
2428 margin in hscrolled window when jumping to end of line (rather
2429 than centering cursor).
2430
3af55251
KS
2431 * process.c (wait_reading_process_input): Don't do adaptive read
2432 buffering if waiting for a specific process.
2433
b0c138ce
LT
24342004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2435
2436 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2437 (Fread_minibuffer, Feval_minibuffer)
2438 (Fread_string, Fread_no_blanks_input)
2439 (Fcompleting_read): Doc fixes.
2440 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2441 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2442 (read_minibuf): Fix initial comment.
2443 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2444 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2445 checking completion-regexp-list.
2446 (Fdisplay_completion_list): Make it handle arguments that are
2447 symbols. Doc fix.
2448
9676f5ad 24492004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2450
9676f5ad 2451 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2452
9676f5ad
JD
2453 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2454 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2455 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2456 format. Remove unused variable cons.
5b698285
JD
2457
2458 * xselect.c: Include stdio,h.
2459
fc1d15f6
KH
24602004-02-05 Kenichi Handa <handa@m17n.org>
2461
ebaff4af
KH
2462 * fns.c (Fset_char_table_range): Fix previous change.
2463
fc1d15f6
KH
2464 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2465
9676f5ad
JD
24662004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2467
2468 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2469
da75761f
SM
24702004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2471
2472 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2473 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2474
13c5d120
KH
24752004-02-04 Kenichi Handa <handa@m17n.org>
2476
2477 * fns.c (Fset_char_table_range): Handle charsets ascii,
2478 eight-bit-control, and eight-bit-graphic correctly.
2479
2883d842
JR
24802004-02-03 Jason Rumney <jasonr@gnu.org>
2481
2482 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2483
2484 * w32fns.c (x_to_w32_font): Likewise.
2485
69eff41f
JD
24862004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2487
2488 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2489 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2490
2491 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2492 ClientMessages.
2493
2494 * xselect.c: Include termhooks.h and X11/Xproto.h
2495 (x_check_property_data, x_fill_property_data)
2496 (x_property_data_to_lisp, mouse_position_for_drop)
2497 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2498 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2499 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2500
da75761f 2501 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2502 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2503 OUTER_P.
2504 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2505 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2506 if vector_ret_p is true.
2507 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2508
a6eeaa81 25092004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2510
2511 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2512 basename of FILE relative to it, not FILE itself.
2513
09721b31
KH
25142004-02-02 Kenichi Handa <handa@m17n.org>
2515
2516 * coding.c (coding_restore_composition): Check invalid
2517 composition data more rigidly.
2518
eb996101
LT
25192004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2520
2521 * fileio.c (Fread_file_name_internal): Correctly handle the case
2522 where insert-default-directory is nil.
2523 (Fread_file_name): Always return an empty string if the user exits
2524 with an empty minibuffer. Adapt the docstring accordingly.
2525 (syms_of_fileio): Adapt the docstring of insert-default-directory
2526 to the change in Fread_file_name.
2527
a6eeaa81 25282004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2529
2530 * alloca.c [!alloca]: Fix the prototype for xfree.
2531
13f52ed8
KH
25322004-01-29 Kenichi Handa <handa@m17n.org>
2533
2534 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2535 (string_byte_to_char): Likewise.
2536
d57625a0
JR
25372004-01-28 Peter Runestig <peter@runestig.com>
2538
2539 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2540
a64387ee 25412004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2542
2543 * unexmacosx.c (unexec_copy): Do not copy more than was
2544 requested to prevent overwriting during unexec.
2545
eb37b8fd
JD
25462004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2547
ce38070a
JD
2548 * process.c (sigchld_handler): Add comment about not calling malloc.
2549
eb37b8fd
JD
2550 * process.h: Add extern to synch_process_termsig.
2551
a64387ee 25522004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2553
da75761f
SM
2554 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2555 Move setting of scroll bars from make_mac_frame to
2556 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2557
d62a265d
RS
25582004-01-26 Richard M. Stallman <rms@gnu.org>
2559
2560 * search.c (Freplace_match): Handle nonexistent
2561 back-references properly.
2562
25632004-01-03 Richard M. Stallman <rms@gnu.org>
2564
2565 * window.c (decode_any_window): New function.
2566 (Fwindow_height, Fwindow_width, Fwindow_edges)
2567 (Fwindow_pixel_edges, Fwindow_inside_edges)
2568 (Fwindow_inside_pixel_edges): Use decode_any_window.
2569
ff236419
JD
25702004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2571
2572 * process.h: synch_process_termsig new variable.
2573
2574 * callproc.c: Define synch_process_termsig.
2575 (Fcall_process): Initiate synch_process_termsig to zero and
2576 check if non-zero and get signal name after subprocess has ended.
2577
2578 * process.c (sigchld_handler): Set synch_process_termsig
2579 if terminated by a signal. synch_process_death setting removed.
2580
2581 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2582
41b867ea
AS
25832004-01-26 Andreas Schwab <schwab@suse.de>
2584
2585 * print.c (print_preprocess): Declare size as EMACS_INT to not
2586 lose bits.
2587 (print_object): Likewise.
2588 * alloc.c (Fpurecopy): Likewise.
2589
a08084ff
LT
25902004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2591
2592 * window.c (Fwindow_minibuffer_p): Doc fix.
2593
b19ac475
JY
25942004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2595
2596 * editfns.c (Fformat): Make both passes accept the same set of flags.
2597
fe905025
KH
25982004-01-23 Kenichi Handa <handa@m17n.org>
2599
2600 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2601 one, set buffer to OBJECT temporarily.
2602
438fc6c0
SM
26032004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2604
455316e2
SM
2605 * keyboard.c (kbd_buffer_gcpro): Remove.
2606 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2607 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2608 Don't initialize and/or maintain the variable any more. It was made
2609 redundant by my commit of 2003-06-15.
2610
438fc6c0
SM
2611 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2612
5335a4ee
JD
26132004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2614
2615 * lisp.h: Add undef DECL_ALIGN.
2616
dcdaeebc
SM
26172004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2618
2619 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2620 Check interrupt_input_pending explicitly.
2621
2622 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2623
2624 * keyboard.c (handle_async_input): New fun,
2625 extracted from input_available_signal.
2626 (input_available_signal, reinvoke_input_signal): Use it.
2627
9076a823
SM
26282004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2629
d7107586
SM
2630 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2631
2632 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2633 manipulation macros for when tags are in the lower bits.
2634 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2635 (DECL_ALIGN): New macro.
2636 (DEFUN): Use it.
2637
2638 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2639
2640 * s/darwin.h (__attribute__): Remove outdated workaround.
2641
2642 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2643
2644 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2645 Don't check range of malloc address.
2646 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2647
9076a823
SM
2648 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2649
2650 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2651
ba029065
KH
26522004-01-19 Kenichi Handa <handa@m17n.org>
2653
2654 * fontset.c (fontset_font_pattern): Fix previous change.
2655
7af0e8d7
MB
26562004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2657
2658 * xdisp.c (Voverflow_newline_into_fringe)
2659 (move_it_in_display_line_to, redisplay_internal)
2660 (update_window_fringes, redisplay_window, display_line, window):
2661 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2662 that it compiles without a window-system.
2663 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2664
77a9cf69
KS
26652004-01-16 Kim F. Storm <storm@cua.dk>
2666
2667 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2668
a64387ee 2669 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
2670 buffer_local_flags for indicate_buffer_boundaries.
2671 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2672 default- variable for it.
2673
2674 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2675 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 2676 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
2677 overflowing newlines into right fringe.
2678 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2679 and indicate_bottom_line_p for buffer boundaries and scrolling.
2680 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2681 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2682 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2683 and HOLLOW_SQUARE_BITMAP.
2684 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2685 Add prototypes.
2686
2687 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2688 instead of related indicator fields.
2689 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2690 (direct_output_for_insert): Handle exact width lines like
2691 contined lines. Call update_window_fringes.
2692 (update_window): Call update_window_fringes.
2693 (scrolling_window): Don't skip desired rows with changed bitmaps.
2694 Check if fringe bitmaps changes when assigning scrolled rows.
2695
2696 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2697 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2698 (move_it_in_display_line_to): Overflow newline into fringe for
2699 rows that are exactly as wide as the window.
2700 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2701 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2702 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2703 (fringe_bitmaps): Add new bitmaps.
2704 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2705 Select proper bitmap for cursor in fringe when appropriate.
2706 Handle alignment of bitmap to top or bottom of row.
2707 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2708 done by update_window_fringes.
2709 (update_window_fringes, draw_window_fringes): New functions.
2710 (redisplay_internal): Call update_window_fringes in case only
2711 cursor row is updated.
2712 (redisplay_window): Call update_window_fringes.
2713 Explicitly call draw_window_fringes if redisplay was done using
2714 the current matrix or the overlay arrow is in the window.
2715 (try_window_reusing_current_matrix): Mark scrolled rows for
2716 fringe update (to update buffer-boundaries / scrolling icons).
2717 (find_last_unchanged_at_beg_row): Handle exact width lines line
2718 continued lines.
2719 (display_line): Overflow newline into fringe for rows that are
2720 exactly as wide as the window. Don't append space for newline
d7107586 2721 in this case.
77a9cf69
KS
2722 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2723 in fringe as if it had been overwritten.
2724 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 2725 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
2726 void-text-area-pointer as user options.
2727 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 2728
77a9cf69
KS
2729 * xterm.c (x_update_window_end): Call draw_window_fringes.
2730 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2731 in row instead of actually drawing fringe bitmaps.
2732 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2733 (x_draw_window_cursor): Draw cursor in fringe.
2734
2735 * w32term.c (x_update_window_end): Call draw_window_fringes.
2736 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2737 in row instead of actually drawing fringe bitmaps.
2738 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2739 (w32_draw_window_cursor): Draw cursor in fringe.
2740
2741 * macterm.c (x_update_window_end): Call draw_window_fringes.
2742 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2743 in row instead of actually drawing fringe bitmaps.
2744 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2745 (mac_draw_window_cursor): Draw cursor in fringe.
2746
a633a954
JD
27472004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2748
2749 * xterm.c (handle_one_xevent): Don't handle characters that are part
2750 of an old style (XLookupString) compose sequence.
2751
80460525
KH
27522004-01-15 Kenichi Handa <handa@m17n.org>
2753
2754 * search.c (Freplace_match): Use make_multibyte_string or
2755 make_unibyte_string according to the buffer multibyteness.
2756
7fc34f85
SM
27572004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2758
2759 * alloc.c (struct interval_block, struct string_block)
2760 (struct symbol_block, struct marker_block, live_string_p)
2761 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2762 Better preserve alignment for objects in blocks.
2763 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2764
2765 * lread.c (defvar_per_buffer): Remove dead declaration.
2766
2767 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2768 space size.
2769
66070bd1
JD
27702004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2771
2772 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2773 if a key press should pop down. Only pop down if a key is pressed
2774 outside the menu/dialog.
2775 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2776 popup_get_selection.
2777 (create_and_show_dialog): Pass 1 for down_on_keypress to
2778 popup_get_selection.
2779
de7515d6
JD
27802004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2781
2782 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2783 BLOCK/UNBLOCK_INPUT.
2784
160b1b50
JD
27852004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2786
2787 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2788 specified.
2789
3a9f36e6
KH
27902004-01-08 Kenichi Handa <handa@m17n.org>
2791
2792 * editfns.c (Fformat): Fix '&' to '&&'.
2793
3803eb32
AS
27942004-01-08 Andreas Schwab <schwab@suse.de>
2795
2796 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2797 size if PSEUDOVECTOR_FLAG is set.
2798
9da88f37
KH
27992004-01-07 Kenichi Handa <handa@m17n.org>
2800
74ac5074
KH
2801 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2802
9da88f37
KH
2803 * fontset.c (fontset_ref_via_base): Fix previous change.
2804
05faee07
KS
28052004-01-07 Kim F. Storm <storm@cua.dk>
2806
2807 * process.c (read_process_output): Only activate adaptive
2808 buffering if we read less than 256 bytes at a time.
2809
634910c8
KS
28102004-01-06 Kim F. Storm <storm@cua.dk>
2811
2812 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2813 object and image object. Return glyph width and height.
2814 (mode_line_string, marginal_area_string): Ditto.
2815
2816 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2817 (marginal_area_string): Fix prototypes.
2818
2819 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 2820 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
2821 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2822
2823 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2824 buffer_posn_from_coords, and marginal_area_string functions to
2825 include both string object and image object in the lispy position.
2826 Also add actual glyph width and height to position.
2827 (read_key_sequence): Use real buffer position from mouse
2828 event to find keymap property even when click is in marginal area.
2829
2830 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2831 mode_line_string and marginal_area_string functions to handle
2832 both string object and image object properties.
d7107586 2833
57951c2e
AS
28342004-01-06 Andreas Schwab <schwab@suse.de>
2835
2836 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2837 character.
2838
181e6a61
AS
28392004-01-02 Andreas Schwab <schwab@suse.de>
2840
d7107586
SM
2841 * macterm.c (emacs_options, x_initialized, same_x_server):
2842 Remove unused (and duplicated) definitions.
181e6a61 2843
31e0fbdd
KS
28442004-01-02 Kim F. Storm <storm@cua.dk>
2845
2846 * process.h (struct Lisp_Process): New members for adaptive read
2847 buffering: adaptive_read_buffering, read_output_delay, and
2848 read_output_skip.
2849
2850 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2851 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2852 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2853 (process_output_delay_count, process_output_skip): New vars.
2854 (Vprocess_adaptive_read_buffering): New variable.
2855 (make_process): Initialize adaptive read buffering members.
2856 (Fstart_process): Set adaptive_read_buffering member.
2857 (deactivate_process): Cleanup adaptive read buffering.
2858 (wait_reading_process_input): Temporarily omit delayed
2859 subprocesses from the set of file descriptors to read from;
2860 adjust the select timeout if we skipped any subprocesses.
2861 (read_process_output): Increase adaptive read buffering delay if
2862 we read less than a full buffer; reduce delay when we read a
2863 full buffer.
2864 (send_process): Simplify using local Lisp_Process var.
2865 Reset adaptive read buffering delay after write.
2866 (init_process): Initialize process_output_delay_count and
2867 process_output_skip.
2868 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2869
68c6a789
JR
28702004-01-01 Jason Rumney <jasonr@gnu.org>
2871
d7107586 2872 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 2873
3f70fe82
LT
28742003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2875
2876 * print.c (Ferror_message_string): Add hyperlink in the docstring
2877 to the definition of `signal' in the Elisp manual.
2878 * eval.c (Fsignal): Ditto.
2879
a64387ee 28802003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
2881
2882 * fns.c (internal_equal): Return t for two NaN arguments.
2883
7abd90ea
RS
28842003-12-29 Richard M. Stallman <rms@gnu.org>
2885
2886 * data.c (store_symval_forwarding): Handle setting
2887 default-fill-column, etc., by changing the value in
2888 buffers that use the default.
2889
2890 * minibuf.c (Fset_minibuffer_window): Doc fix.
2891
2892 * fileio.c (choose_write_coding_system): Ignore auto_saving
2893 if using the visited file for auto saves.
2894 (Fwrite_region): Don't update SAVE_MODIFF
2895 if auto-saving in visited file.
2896
3e7cfcdc
KH
28972003-12-29 Kenichi Handa <handa@m17n.org>
2898
2899 * dispextern.h (face_font_available_p): Extern it.
2900
2901 * fontset.c (Voverriding_fontspec_alist): New variable.
2902 (lookup_overriding_fontspec): New function.
d7107586 2903 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
2904 (fontset_font_pattern): Likewise.
2905 (regulalize_fontname): New function.
2906 (Fset_fontset_font): Call regulalize_fontname.
2907 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
2908 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2909 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
2910
2911 * xfaces.c (face_font_available_p): New function.
2912
7abd90ea
RS
29132003-12-28 Richard M. Stallman <rms@gnu.org>
2914
2915 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2916 or if its name is nil.
2917
2918 * buffer.c (Fkill_buffer): Don't delete auto-save file
2919 if it's the same as the visited file.
2920
de1d1a40
LT
29212003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2922
2923 * coding.c (Fcheck_coding_system): Doc fix.
2924
204fb75e
KS
29252003-12-28 Kim F. Storm <storm@cua.dk>
2926
2927 * Makefile.in (eval.o): Depend on dispextern.h.
2928
2929 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2930 image glyph using image's ascent.
2931 (mode_line_string): Return image glyph as object clicked on.
2932 Adjust y0 for image glyph using image's ascent.
2933
2934 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2935 (struct glyph): New members, ascent and descent. Used to save
2936 this glyph's ascent and descent, instead of having.
2937 (struct glyph): Declare member face_id using FACE_ID_BITS.
2938 (find_hot_spot): Add prototype.
2939
2940 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2941 (QCmap): Declare extern.
2942 (make_lispy_position): When position is inside image hot-spot,
2943 use hot-spot element's id as posn element.
2944
2945 * lisp.h (IMAGEP): New macro to test for image object type.
2946 (Qimage): Declare extern.
2947
2948 * macfns.c (Qimage): Remove extern (now in lisp.h).
2949 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2950
2951 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2952
2953 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2954 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2955
2956 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2957
2958 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2959
2960 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2961 pointer types.
2962 (Qrelative_width, Qalign_to): Remove unused variables.
2963 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2964 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2965 image maps.
d7107586 2966 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
2967 new dx and dy args.
2968 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2969 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2970 than row's ascent and height, to get sensible height on tall rows.
2971 (build_desired_tool_bar_string): Remove Qimage extern.
2972 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2973 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2974 image glyph is alone on the last line.
2975 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 2976 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 2977 (on_hot_spot_p): New function to check if position is inside an
d7107586 2978 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
2979 (find_hot_spot): New function to search for image hot-spot.
2980 (Flookup_image_map): New defun to search for image hot-spot.
2981 (define_frame_cursor1): New aux function to determine frame pointer.
2982 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2983 Handle `pointer' text property and :pointer image property to
2984 control frame pointer shape. Detect image hot-spots for pointer
2985 and help_echo properties. Use define_frame_cursor1.
2986 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 2987 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
2988 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2989
2990 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2991
2992 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2993 (Qimage): Remove extern (now in lisp.h).
2994 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2995
2996 * xmenu.c (show_help_event): Remove unused code.
2997
2998 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2999 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3000 row's ascent and descent, to get a sensible height on tall rows.
3001
fc052137
LT
30022003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3003
3004 * minibuf.c (Fcompleting_read): Undo previous change.
3005
a64387ee 30062003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3007
3008 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3009 Arguments GCPRO'ed in call to file name handler.
3010
56ffd194
TTN
30112003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3012
3013 * termcap.c (tgetst1): Scan for "%pN"; if all
3014 N are continuous in [1,9], remove all "%pN".
3015
5202d23d
JD
30162003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3017
f26fab36
JD
3018 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3019
5202d23d
JD
3020 * xfaces.c (lface_fully_specified_p): Take into account that
3021 MAC OS always have unspecified stipple.
3022
8babaa59
TTN
30232003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3024
3025 * tparam.c (tparam1): Add handling for `%pN', which
3026 means use param N for the next substitution.
3027
2d176448
TTN
30282003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3029
3030 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3031 In case `frame' is nil, consult the selected frame.
3032 (Fcolor_supported_p): Likewise.
3033
adb0708c
LT
30342003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3035
000eeb15
LT
3036 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3037 Doc fixes.
0dc72b11
LT
3038
3039 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3040 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3041 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3042 Doc fix.
3043 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3044 read_minibuf.
3045 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3046 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3047
2e4d132b
KH
30482003-12-03 Kenichi Handa <handa@m17n.org>
3049
3050 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3051 encoding sequence.
3052
3999c705
KH
30532003-12-01 Kenichi Handa <handa@m17n.org>
3054
3055 * composite.c (syms_of_composite): Don't make the compostion hash
3056 table week.
3057
d344ecbb
LT
30582003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3059
3060 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3061 * textprop.c (Fget_char_property_and_overlay): New function.
3062 (syms_of_textprop): Defsubr it.
3063
03d6484e
JD
30642003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3065
019b1f0e
JD
3066 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3067 to compile on terminal configuration.
3068
03d6484e
JD
3069 * fileio.c (Fread_file_name): Check use_file_dialog also before
3070 calling Fx_file_dialog.
3071
3072 * fns.c: use_file_dialog: New variable.
3073 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3074
442d3fd0
KS
30752003-11-29 Kim F. Storm <storm@cua.dk>
3076
3077 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3078 (syms_of_msdos): Don't intern and staticpro them.
3079
0f6a07a8
KS
30802003-11-27 Kim F. Storm <storm@cua.dk>
3081
3082 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3083 coordinates relative to glyph at posn. If glyph is an image,
3084 return that as object at posn. Callers changed.
3085 (mode_line_string, marginal_area_string): Calculate and return
3086 pixel coordinates relative to glyph. Callers changed.
3087
3088 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3089 (marginal_area_string): Fix prototypes.
3090 (window_box_left_offset, window_box_right_offset): Add prototypes.
3091
3092 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3093 Remove prototypes.
3094
3095 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3096
3097 * keyboard.c (make_lispy_position): Add x and y coordinates
3098 relative to the current glyph as 7th element of position.
3099 If glyph is an image, return it in the object element.
3100 (read_key_sequence): Skip checks for keymap property in cases
3101 where POSN_STRING is not a string (e.g. an image).
3102
3103 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3104 (Vshow_text_cursor_in_void): New variable.
3105 (glyph_to_pixel_coords): Don't use negative hpos.
3106 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3107 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3108 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3109 (calc_pixel_width_or_height): New aux function, implementing
3110 pixel based artihmetic for glyph widths and heights.
3111 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3112 :width, :height, :align-to, and :ascent, thus allowing these to
3113 be specified in pixels as well as multiples of characters.
3114 Don't produce stretch glyphs with zero width or height.
3115 (get_specified_cursor_type): Declare static.
3116 (get_window_cursor_type): Declare static. Add glyph arg to be
3117 able to know when cursor is on an image; always substitute
3118 hollow-box cursor for filled-box cursor on images, to avoid
3119 negative images and flicker when blinking the cursor.
3120 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3121 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3122 than vertical scroll-bar cursor in display margins.
3123 (note_mouse_highlight): Use non-text cursor rather than text
3124 cursor in fringes and over images in the text area.
3125 Use non-text cursor when mouse pointer is outside editable text,
3126 i.e. in the void after end-of-line or end-of-buffer; this was
3127 already done for W32, but is now standard for all systems --
3128 user can toggle show-text-cursor-in-void to get old behaviour.
3129 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3130 Vdisplay_pixels_per_inch.
3131
00498bfc
AS
31322003-11-25 Andreas Schwab <schwab@suse.de>
3133
3134 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3135 EMACS_INT to not lose bits.
3136 (Ffillarray): Don't set bits beyond the size of a bool vector.
3137
edaa824d
KS
31382003-11-25 Kim F. Storm <storm@cua.dk>
3139
3140 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3141 define this defun on systems that cannot use stderr as lvalue.
3142
74d6f539
GM
31432003-11-24 Gerd Moellmann <gerd@gnu.org>
3144
3145 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3146 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3147 ld's default is incompatible with unexec.
3148
6a1ff3ba
KS
31492003-11-23 Kim F. Storm <storm@cua.dk>
3150
63dc7c6b
KS
3151 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3152 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3153 (Fforce_window_update): New defun.
3154 (syms_of_window): Defsubr it.
3155 (Fset_window_margins, Fset_window_fringes): Doc fix.
3156
6a1ff3ba
KS
3157 * print.c (Fredirect_debugging_output): New defun.
3158 (syms_of_print): Defsubr it.
3159
aef109b7
LT
31602003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3161
3162 * fns.c (Fset_char_table_parent): Doc fix.
3163
6a1ff3ba 31642003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3165
3166 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3167 for glyph clicked on, rather than (unused) pixel positions.
3168 (mode_line_string, marginal_area_string): Change X and Y args to
3169 pointers for returning actual row/column for glyph clicked on.
3170 Simplify and optimize loops.
3171
aef109b7
LT
3172 * dispextern.h (mode_line_string, marginal_area_string):
3173 Update prototypes.
63ccbe21
KS
3174
3175 * keyboard.c (make_lispy_position): New function for generating
3176 mouse click positions from frame and pixel coordinates.
3177 Enhanced to return buffer position and actual row/column for
3178 events outside the text area using updated mode_line_string and
3179 marginal_area_string functions.
3180 Return left-fringe and right-fringe clicks as such, rather than
3181 clicks in text area.
3182 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3183 pixel_to_glyph_coords, as we never use the results.
3184 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3185 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3186 Eliminate unused code in WHEEL_EVENT handling.
3187 (make_lispy_movement): Use make_lispy_position.
3188
3189 * window.c (coordinates_in_window): Remove redundant tests.
3190 Fix returned X pixel value for left-margin.
3191
3192 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3193 mode_line_string and marginal_area_string parameters.
3194
a64387ee 31952003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3196
d7107586
SM
3197 * w32.c (struct the_group, getgrgid): Add.
3198 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3199
3dbf3426
LT
32002003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3201
3202 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3203
cae8ddbb 32042003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3205
d7107586
SM
3206 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3207 include in call to file name handler. Optionally translate numeric
3208 UID and GID to strings. Update docstring.
3209 (directory_files_internal): Add parameter ID-FORMAT.
3210 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3211 include in call to file name handler and call to
3212 directory_files_internal. Update Docstring.
3213 (Fdirectory_files): Add dummy parameter in call to
3214 directory_files_internal.
3215 * lisp.h (Qinteger): Add.
3216 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3217 (Ffile_attributes): Add parameter.
3218 * data.c (Qinteger): Export.
cae8ddbb 3219
2550b848
LT
32202003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3221
3dbf3426 3222 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3223
88380018
KS
32242003-11-19 Kim F. Storm <storm@cua.dk>
3225
3226 * xdisp.c (init_iterator): Initialize it->start to position
3227 before reseating (in case start position is invisible).
3228 (init_to_row_start): Set it->start to row-start.
3229 (redisplay_window): Accept optional_new_start if start position
3230 is invisible (in which case IT_CHARPOS overshoots PT).
3231 (display_line): Setup row->start from it->start (rather than
3232 it->current which is wrong if first char on line is invisible).
3233 When done, reseat it->start to it->current (= start of next row).
3234 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3235 is only partially visible.
3236
3237 * dispextern.h (struct it): New member start.
3238
854c1a59
SM
32392003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3240
455316e2
SM
3241 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3242 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3243 of block_index outside of the macro call.
3244 (Fgarbage_collect): Remove null code.
3245
3246 * m/amdx86-64.h: Don't redefine XPNTR.
3247
854c1a59
SM
3248 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3249 of VALMASK.
3250
3251 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3252 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3253 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3254
3255 * lisp.h (VALMASK): Only define for non-union type.
3256 (MARKBIT): Remove.
3257 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3258 (XTYPE): Define unconditionally.
3259 (XSETTYPE): Remove one more remnant.
3260 (EQ): Define differently for the union and non-union cases.
3261 (INTMASK): New bit mask.
3262 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3263 (GC_EQ): Delegate to EQ.
3264
3265 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3266
a0c6ef2d
JD
32672003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3268
3269 * xterm.c (x_window_to_scroll_bar): Move check of display to
3270 where window_id is compared.
3271
859492c4
KS
32722003-11-17 Kim F. Storm <storm@cua.dk>
3273
3274 * dispextern.h (struct it): New member first_vpos.
3275
3276 * xdisp.c (start_display): Set it->first_vpos.
3277 (try_window_id): Use first_vpos to start display in first _text_
3278 line if no reusable lines at start of window with header line.
3279
810f2256
JD
32802003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3281
7c402969 3282 * w32fns.c (XPutPixel):
854c1a59
SM
3283 * w32bdf.c (w32_init_bdf_font):
3284 * sunfns.c (sel_read):
3285 * process.c (Fmake_network_process):
3286 * frame.c (store_frame_param):
3287 * fontset.c (Fset_fontset_font):
3288 * emacs.c (shut_down_emacs):
a64387ee 3289 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3290
a32e9bfd
JD
3291 * config.in: Regenerate.
3292
810f2256
JD
3293 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3294 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3295 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3296 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3297 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3298
3299 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3300
3301 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3302 (XTmouse_position, handle_one_xevent): Pass Display* to
3303 x_window_to_scroll_bar.
3304 (x_window_to_scroll_bar): Take a Display* argument.
3305 Check that display for frame is equal to Display* argument.
854c1a59 3306 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3307 x_display_info_for_display instead. Use Display in xev instead
3308 of GDK_DISPLAY.
3309 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3310 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3311 (x_connection_closed): Call xg_display_close for GTK.
3312 (x_term_init): Call xg_display_open for additional displays.
3313 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3314 for GTK.
3315
3316 * xmenu.c (single_menu_item, mouse_position_for_popup)
3317 (x_activate_menubar): Formatting adjustments.
3318
3319 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3320 adjustments.
3321
3322 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3323 (xg_display_close, xg_create_default_cursor)
3324 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3325 handling.
854c1a59
SM
3326 (xg_left_ptr_cursor): Remove.
3327 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3328 cursor here.
3329 (xg_win_to_widget): Take Display* argument, call
3330 gdk_xid_table_lookup_for_display.
3331 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3332 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3333 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3334 in FRAME_X_DISPLAY_INFO.
3335 (xg_get_scroll_id_for_window): Take Display* argument.
3336 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3337 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3338
3339 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3340 Display* argument also. Declare xg_display_open,
3341 xg_display_close, xg_create_default_cursor.
3342
0b03cc78
JD
33432003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3344
3345 * xterm.c (x_detect_focus_change): Do not change focus frame for
3346 Enter/LeaveNotify if the current focus frame has explicit focus.
3347
77e688fa
KS
33482003-11-14 Kim F. Storm <storm@cua.dk>
3349
3350 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3351 is active and first glyph is only partially visible.
854c1a59 3352
dd429b03
KH
33532003-11-13 Kenichi Handa <handa@m17n.org>
3354
3355 * xdisp.c (select_frame_for_redisplay): New function.
3356 (redisplay_internal): Record also selected_frame for
3357 unwind_redisplay. Call select_frame_for_redisplay before
3358 redrawing each frame.
3359 (unwind_redisplay): Argument changed to a cons.
3360
6d9266f4
LT
33612003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3362
3363 * fns.c (Fstring_to_multibyte): Doc fix.
3364
80060eb3
KH
33652003-11-11 Kenichi Handa <handa@m17n.org>
3366
3367 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3368
74305183
JD
33692003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3370
3371 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3372 program specified positions.
3373
cfda993e
JD
33742003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3375
3376 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3377
df211069
KH
33782003-11-08 Kenichi Handa <handa@m17n.org>
3379
3380 * Makefile.in (lisp): Add kannada.el.
3381 (shortlisp): Likewise.
3382
4307d534
KH
33832003-11-07 Kenichi Handa <handa@m17n.org>
3384
854c1a59
SM
3385 * coding.c (coding_allocate_composition_data):
3386 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3387 (coding_restore_composition): Detect invalid composition data.
3388 Give Fstring and Fvector a Lispy integer, not C int.
3389
854c1a59
SM
33902003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3391
3392 * floatfns.c (Flogb): Don't use VALMASK.
3393
3394 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3395 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3396
3397 * lisp.h (XINT): Move the cast to clarify what is going on.
3398 (GCTYPEMASK, XSETTYPE): Remove.
3399 (XGCTYPE): Make it an alias of XTYPE.
3400
d04103a1
JD
34012003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3402
3403 * xterm.c (x_term_init): Fix formatting.
3404
da18b5ac
JD
34052003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3406
3407 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3408 and xg_did_tearoff.
3409
3410 * gtkutil.c: Remove variable xg_did_tearoff.
3411 (xg_have_tear_offs): New function.
3412 (tearoff_remove): Just decrease xg_detached_menus.
3413 (tearoff_activate): Increase xg_detached_menus and call
3414 tearoff_remove when tearoff is removed.
854c1a59 3415 (xg_keep_popup): Remove function.
da18b5ac
JD
3416 (create_menus): Give add_tearoff_p as argument to recursive
3417 call to create_menus.
3418 (xg_create_widget): Use variables instead of multiple
3419 strcmp. Tell create_menus to create tear off only for
3420 menu bar menus.
3421 (xg_update_menubar): Change title for a detached menu also.
3422 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3423 of deep_p.
3424 (xg_initialize): Initialize xg_detached_menus, remove
3425 initialization of xg_did_tearoff.
3426
3427 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3428 xg_have_tear_offs returns non-zero.
3429 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3430 call to xg_keep_popup.
3431
64d4923e
AC
34322003-11-01 Andrew Choi <akochoi@shaw.ca>
3433
3434 * macterm.c (XTread_socket): Handle menubar selection and grow
3435 window only for mouseDown events.
854c1a59 3436
6cc8bc07
JD
34372003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3438
3439 * xterm.c (x_term_init): For GTK part, increase x_initialized
3440 to check for more than one display. Use error instead of return 0.
3441
043131c4
AC
34422003-10-31 Andrew Choi <akochoi@shaw.ca>
3443
854c1a59 3444 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3445 (copy_dysymtab): Call it.
3446
bdda99a1
LT
34472003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3448
3449 * eval.c (Fdefvaralias): Doc fix.
3450
800f42ff 34512003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3452
3453 * data.c (Fsetplist): Doc fix.
3454
ef35b389
LK
34552003-10-14 Lute Kamstra <lute@gnu.org>
3456
3457 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3458
ef35b389 34592003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3460
07107abc
KS
3461 * window.c (Fset_window_margins): Simplify arg checking.
3462
f7005886
RS
34632003-10-13 Richard M. Stallman <rms@gnu.org>
3464
3465 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3466 (print_partial_compiled_pattern): Replace assert with a printout.
3467 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3468
3469 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3470
3471 * window.c (Fset_window_margins): Allow only integers as args.
3472 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3473 Doc fixes.
3474
9c0c2af5
LK
34752003-10-13 Lute Kamstra <lute@gnu.org>
3476
3477 * window.c (Fset_window_fringes): Elaborate docstring.
3478
3f080e4e
AC
34792003-10-12 Andrew Choi <akochoi@shaw.ca>
3480
854c1a59 3481 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3482
3f080e4e
AC
3483 * s/darwin.h (GC_MARK_STACK): Define.
3484
0aa513ed
JD
34852003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3486
3487 * window.c (shrink_windows): New function.
3488 (size_window): Call shrink_windows to calculate window sizes when
3489 shrinking frame with more than one window.
3490
6aa8858a
KS
34912003-10-12 Kim F. Storm <storm@cua.dk>
3492
3493 * xdisp.c (compute_fringe_widths): Doc fix.
3494
c2164d91
KH
34952003-10-08 Kenichi Handa <handa@m17n.org>
3496
854c1a59 3497 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3498
f82ac129
KH
34992003-10-07 Kenichi Handa <handa@m17n.org>
3500
3501 * coding.c (Qcoding_system_define_form): New variable.
3502 (syms_of_coding): Intern and staticpro it.
3503 (Fcheck_coding_system): Try to autoload the definition of
3504 CODING-SYSTEM.
3505
9296c947
LT
35062003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3507
3508 * fns.c (Frequire): Doc fix.
3509
c1f0671a
JD
35102003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3511
3d8c3826
JD
3512 * xfns.c (Fx_send_client_event): New function as a base for
3513 manipulating extended window manager hints.
6dc15d98 3514 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3515
068ae0fd
JD
3516 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3517 that function is removed.
3518
3519 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3520 x/y_pixels_outer_diff.
3521 (x_check_expected_move): Calculate move_offset_left/top.
3522
3523 * xterm.h (struct x_output): New members: move_offset_top/left.
3524
854c1a59 3525 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3526 call x_set_offset directly.
3527
3528 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3529
96f09305
JD
3530 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3531
3532 * xterm.c (x_delete_display): Free font names and font_encoder
3533 in dpyinfo->font_table.
3534
854c1a59
SM
3535 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3536 Move xfree of font names to x_delete_display.
96f09305 3537
c1f0671a
JD
3538 * xterm.h (struct x_display_info): New member, wm_type.
3539 (struct x_output): New members, expected_top/left and
3540 check_expected_move.
3541
3542 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3543 is received.
854c1a59
SM
3544 (handle_one_xevent): Rename x_check_expected_move from
3545 x_check_fullscreen_move.
c1f0671a
JD
3546 (x_set_offset): Only add WM decoration sizes to modified_top/left
3547 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3548 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3549 Removed fullscreen specific code. Use check_expected_move,
3550 expected_left/top instead. Also, set wm_type.
3551 (x_term_init): Initialize wm_type to unknown.
3552
3553 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3554 sizes to move_x/y.
3555
be2fdba9
KH
35562003-10-03 Kenichi Handa <handa@m17n.org>
3557
3558 * macterm.c (x_load_font): Clear all members of FONTP before start
3559 filling them.
3560
35612003-10-02 Kenichi Handa <handa@m17n.org>
3562
3563 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3564 before calling find_ccl_program_func. Call find_ccl_program_func
3565 only when fontp->font_encoder is not NULL.
3566
3567 * xterm.c (x_load_font): Clear all members of FONTP before start
3568 filling them.
3569
26a6e439
JPW
35702003-10-03 John Paul Wallington <jpw@gnu.org>
3571
3572 * keymap.c (map_keymap): Don't abort when binding is a vector.
3573
0d4c2dc2
JR
35742003-10-02 Jason Rumney <jasonr@gnu.org>
3575
854c1a59
SM
3576 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3577 Sync dependencies with Makefile.in.
a63cf46f
JR
3578 (alloca.o): Remove.
3579
0d4c2dc2
JR
3580 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3581 filling them.
3582
3583 * w32bdf.c (w32_load_bdf_font): Likewise.
3584
ab8f7d5c
RS
35852003-09-30 Richard M. Stallman <rms@gnu.org>
3586
3587 * term.c (set_tty_color_mode): Calculate current_mode_spec
3588 regardless of value of VAL.
3589
854c1a59 3590 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
3591 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3592 Handle over_used when splitting UNDER.
3593
a64387ee 35942003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
3595
3596 * regex.c (regex_compile): Free the stack when returning from function.
3597
3413f972
KH
35982003-09-28 Kenichi Handa <handa@m17n.org>
3599
3600 * fontset.c (Finternal_char_font): Change return value to
3601 cons (FONT-NAME . GLYPH-CODE).
3602
a6eeaa81 36032003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
3604
3605 * term.c (tty_setup_colors): Treat any negative argument as -1.
3606
f98ddc99
KH
36072003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3608
3609 * process.c (send_process): Delete unused temp_buf.
3610
66c8f1a8
DL
36112003-09-26 Dave Love <fx@gnu.org>
3612
3613 * xterm.c (x_bitmap_mask): Declare.
3614
ca716c26
DL
36152003-09-25 Dave Love <fx@gnu.org>
3616
3617 * Makefile.in (fns.o): Depend on md5.h.
3618
fbe57420
KS
36192003-09-25 Kim F. Storm <storm@cua.dk>
3620
3621 * window.c (set_window_buffer): Fix redisplay problems when
3622 switching between buffers with different display margin widths.
3623
ef6ae4ff
KS
36242003-09-23 Kim F. Storm <storm@cua.dk>
3625
3626 * process.c (set_socket_option): Fix :bindtodevice option.
3627 (Fset_network_process_option): Update process contact list when
3628 setting option succeeds.
3629 (Fmake_network_process): Doc fix.
3630
68e03c1c
DL
36312003-09-23 Dave Love <fx@gnu.org>
3632
7146d1c1 3633 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 3634
a6eeaa81 36352003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
3636
3637 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3638 color mode is an integer number (it could be -1).
3639
8fe7d8c8
RS
36402003-09-22 Richard M. Stallman <rms@gnu.org>
3641
3642 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3643 in the case where OVER is longer than UNDER.
3644
2f71b5ea
MY
36452003-09-22 Masatake YAMATO <jet@gyve.org>
3646
7146d1c1 3647 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 3648 `vertical_type'.
7146d1c1 3649
0c4da023
KS
36502003-09-21 Kim F. Storm <storm@cua.dk>
3651
3652 * frame.c (Vdefault_frame_scroll_bars): New variable.
3653 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3654 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3655 window-system default scroll bar position.
3656
b648413b
KS
3657 * window.c (Fwindow_scroll_bars): Doc fix.
3658
8f5b9e34
JD
36592003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3660
854c1a59 3661 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 3662
b0f23edf
RS
36632003-09-19 Richard M. Stallman <rms@gnu.org>
3664
3665 * atimer.h: Don't include lisp.h.
3666 (P_): Define it here (as well as elsewhere).
3667
3668 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3669 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3670
3671 * data.c (Fvariable_binding_locus): New function.
3672 (syms_of_data): defsubr it.
3673 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3674
e1283999
DL
36752003-09-18 Dave Love <fx@gnu.org>
3676
ad5f3636
DL
3677 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3678
e1283999
DL
3679 * process.c (Fnetwork_interface_info): Fix type error.
3680 (Fnetwork_interface_list): Doc fix.
3681 (read_process_output, read_process_output): Delete unused var.
3682
b8c7fd71
KS
36832003-09-17 Kim F. Storm <storm@cua.dk>
3684
3685 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3686 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3687 (Fnetwork_interface_info): Check that ifreq struct has required
3688 fields before accessing them; this requires that those fields are
3689 defined as macros, which may be too restrictive on some platforms,
3690 but it is better than failing on other platforms.
3691 (syms_of_process): Only defsubr above fns when included.
3692
11e0a411
DL
36932003-09-17 Dave Love <fx@gnu.org>
3694
3695 * unexalpha.c: Don't include varargs.h.
3696
e9c50801
KS
36972003-09-17 Kim F. Storm <storm@cua.dk>
3698
3699 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3700 for network process.
3701 (socket_options): Add `:' prefix to option names. Add optbit field.
3702 (set_socket_option): Remove no_error arg and special handling of s < 0.
3703 Return 1<<optbit for known option, 0 for unknown.
3704 Do not interpret 0 as false for boolean option (only nil).
3705 Pass failed option and value to report_file_error.
7146d1c1 3706 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
3707 (Fset_network_process_option): New function to set just one option.
3708 (Fmake_network_process): Allow :coding arg to be a cons.
3709 Allow :server arg to be an integer specifying backlog size.
3710 Remove :options arg, and allow options to be specified directly
3711 as :KEY, VALUE pairs. Parse these options before binding socket.
3712 As before, :reuseaddr t is default for a server process, but this
3713 can now be disabled by specifying :reuseaddr nil.
3714 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3715 (init_process): Availability of network options is now checked with
3716 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3717 setup features.
3718 (syms_of_process): Fix defsubr's for the replaced functions.
3719
a0fc3644
DL
37202003-09-16 Dave Love <fx@gnu.org>
3721
3722 * Makefile.in: Depend on coding.h.
3723
6df2a645
KS
37242003-09-14 Kim F. Storm <storm@cua.dk>
3725
3726 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3727 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3728 (syms_of_process): Defsubr them.
3729
3730 * config.in: Regenerate.
7146d1c1
SM
3731
37322003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3733
3734 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3735 * m/news-r6.h (XUNMARK): Remove.
3736 * m/mips.h (XUNMARK): Remove.
3737 * m/mips-siemens.h (XUNMARK): Remove.
3738 * m/iris4d.h (XUNMARK): Remove.
3739 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3740
0930c1a1
SM
37412003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3742
31003b9e
SM
3743 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3744 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3745 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3746 (XTYPE): Use unsigned right-shift.
3747 (XMARKBIT, XMARK, XUNMARK): Remove.
3748
0930c1a1
SM
3749 * alloc.c (init_intervals, init_symbol, init_marker):
3750 Don't preallocate anything.
3751 (Fgarbage_collect, mark_object): Ignore the markbit.
3752
3753 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3754
19bb0fcd 37552003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
3756
3757 * xdisp.c (pint2hrstr): New function.
3758 (decode_mode_spec): Add `%i' and `%I' specs.
3759 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3760 for `mode-line-format'.
3761
03bb6a06
AS
37622003-09-07 Andreas Schwab <schwab@suse.de>
3763
3764 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3765 avoid warning.
3766
a6eeaa81 37672003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 3768
0930c1a1 3769 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 3770
ed159bbf
KS
37712003-09-03 Kim F. Storm <storm@cua.dk>
3772
3773 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3774 change (superseded by 2002-08-30 change); the default blink-off
3775 cursor is now again "no cursor".
3776
fe64a394
JR
37772003-09-01 Jason Rumney <jasonr@gnu.org>
3778
3779 * makefile.w32-in (alloca.o): Remove.
3780 (coding.o): Depend on intervals.h
3781 (emacs.o, bytecode.o): Depend on window.h
3782
c0175e24
DL
37832003-09-01 Dave Love <fx@gnu.org>
3784
3785 * Makefile.in (alloca.o): Remove commands.
3786 (coding.o): Depend on intervals.h composite.h window.h.
3787 (emacs.o): Depend on window.h keyboard.h keymap.h.
3788 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3789 (bytecode.o): Depend on window.h.
3790
a24d4cb2
JR
37912003-08-31 Jason Rumney <jasonr@gnu.org>
3792
4bc2315e
JR
3793 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3794 returned even when font_type is unknown.
3795
a24d4cb2
JR
3796 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3797
9d35adc7
JD
37982003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3799
3800 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3801
3802 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3803 *_offset.
3804
3805 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3806 calculate pixel value.
3807
6f68b035
GM
38082003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3809
0930c1a1
SM
3810 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3811 Don't tell redisplay display is accurate when it's actually been
3812 paused for pending input.
6f68b035 3813
4828b4d7
RS
38142003-08-29 Richard M. Stallman <rms@gnu.org>
3815
3816 * dispnew.c (adjust_glyph_matrix): Call window_box
3817 whenever W is nonzero.
3818
3819 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3820 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 3821 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
3822 Use indirect_variable to trace thru variable aliases.
3823
3824 * config.in: Updated.
3825
3826 * callint.c (Fcall_interactively): Save and restore
3827 Vthis_command, Vthis_original_command, real_this_command,
3828 and current_kboard->Vlast_command.
3829
3830 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3831
e019878d
GM
38322003-08-29 Gerd Moellmann <gerd@gnu.org>
3833
3834 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3835
85478bc6
KH
38362003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3837
0930c1a1 3838 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
3839 (decode_coding_sjis_big5): Likewise.
3840
07ce82d3
JR
38412003-08-27 Jason Rumney <jasonr@gnu.org>
3842
d3703de3
JR
3843 * w32.c (sys_pipe): Protect against file descriptor overflow.
3844
ee4a01d1
JR
3845 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3846
07ce82d3
JR
3847 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3848
a64387ee 38492003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
3850
3851 * xfns.c (Vgtk_version_string): New variable.
3852 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3853
a6eeaa81 38542003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 3855
0930c1a1 3856 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 3857
5459e42a
EZ
3858 * Makefile.in (msdos.o): Depend on intervals.h.
3859
0930c1a1 3860 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 3861
231d6cfb
JD
38622003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3863
3864 * xterm.h (struct x_display_info): New fields: client_leader_window
3865 and Xatom_wm_client_leader.
3866
3867 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3868 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3869
3870 * xsmfns.c (create_client_leader_window): New function.
3871 (x_session_initialize): Call create_client_leader_window, take
3872 dpyinfo as argument.
3873
3874 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3875
3876 * Makefile.in (xsmfns.o): Add more depenedencies.
3877
afa88464
DL
38782003-08-21 Dave Love <fx@gnu.org>
3879
3880 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3881
f730033e
KH
38822003-08-21 Kenichi Handa <handa@m17n.org>
3883
3884 * term.c (term_init): Fix previous change; don't rely on the
3885 length of `buffer' if TERMINFO is defined.
3886
6dca786c
DL
38872003-08-20 Dave Love <fx@gnu.org>
3888
3889 * atimer.h: Include lisp.h.
3890
3891 * lisp.h (EMACS_LISP_H): New.
3892 (popup_activated_flag): Don't declare.
3893
3894 * alloca.c: Some merging with gnulib. Change logic and doc
3895 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3896 [DO_BLOCK_INPUT]: Don't include lisp.h.
3897 (xmalloc, xfree): Declare.
3898 (malloc): Don't declare.
3899
0930c1a1 3900 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
3901 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3902 atimer.h, blockinput.h.
3903
3904 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3905
3906 * alloca.s: Removed.
3907
3a06a6d9
RS
39082003-08-19 Gerd Moellmann <gerd@gnu.org>
3909
3910 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3911 use -lncurses.
3912
3913 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3914 FreeBSD returns something longer than 2044. Abort if the end of
3915 the buffer is overwritten.
3916
27eeee55
MB
39172003-08-19 Miles Bader <miles@gnu.org>
3918
3919 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3920
2f297815
GM
39212003-08-19 Gerd Moellmann <gerd@gnu.org>
3922
f4446bbf
GM
3923 * alloc.c (lisp_align_malloc): Check for memory full when
3924 allocating ablocks, which also avoids freeing a pointer into an
3925 ablocks structure.
3926
3927 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3928
0930c1a1 3929 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 3930
0e7d7aae
RS
39312003-08-16 Richard M. Stallman <rms@gnu.org>
3932
3933 * editfns.c (Fencode_time): Doc fix.
3934
39352003-08-16 David Ponce <david@dponce.com>
3936
3937 * fileio.c (Fwrite_region): Fix conditional expression to issue
3938 the right message.
3939
39402003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3941
3942 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 3943 Set default value to 1.
0e7d7aae 3944
5d551295
KH
39452003-08-15 Kenichi Handa <handa@m17n.org>
3946
3947 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3948 what autoscaled.
3949 (best_matching_font): Once we find a better scalable font, set
3950 non_scalable_has_exact_height_p to 1.
3951 (try_font_list): Call try_alternative_families to try any family
3952 with the given registry.
3953
1661e56b
AS
39542003-08-09 Andreas Schwab <schwab@suse.de>
3955
f29181dc
AS
3956 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3957
1661e56b
AS
3958 * print.c (print_string): Fix printing of multibyte string with
3959 nontrivial printcharfun.
3960
465aa50a
JD
39612003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3962
3963 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3964
3965 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3966
e430e5ba
KH
39672003-07-31 Kenichi Handa <handa@m17n.org>
3968
3969 * process.c (read_process_output): Return the actually read bytes
3970 instead of the result of decoding.
3971
97e7188e
KH
39722003-07-31 Kenichi Handa <handa@m17n.org>
3973
3974 * xterm.h (struct x_bitmap_record): New member have_mask.
3975
3976 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3977 to 0.
3978 (x_create_bitmap_from_file): Likewise.
3979 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3980 (x_destroy_all_bitmaps): Likewise.
3981 (x_create_bitmap_mask): Set have_mask member to 1.
3982
b53094d6
RS
39832003-07-30 Richard M. Stallman <rms@gnu.org>
3984
3985 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3986
631f2082
JD
39872003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3988
3989 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3990
c855f2ca
RS
39912003-07-29 Richard M. Stallman <rms@gnu.org>
3992
3993 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3994 Conditionalize XIM code on HAVE_XIM.
3995
3996 * fns.c (Fclear_string): New function.
3997 (syms_of_fns): defsubr it.
3998
17e6d491
KH
39992003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4000
0930c1a1 4001 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4002
29ea8ae9
SM
40032003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4004
4005 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4006
4007 * buffer.c (delete_all_overlays): New function.
4008 * buffer.h (delete_all_overlays): Declare.
4009 * coding.c (run_pre_post_conversion_on_str):
4010 * print.c (temp_output_buffer_setup):
4011 * fileio.c (Finsert_file_contents):
4012 * minibuf.c (get_minibuffer): Use it.
4013
1dd7ccf2
AC
40142003-07-22 Andrew Choi <akochoi@shaw.ca>
4015
4016 * unexmacosx.c (unexec_regions_sort_compare):
4017 (unexec_regions_merge): New functions. Sort and merge unexec
4018 regions before dumping them.
4019
f57bd967
DL
40202003-07-22 Dave Love <fx@gnu.org>
4021
4022 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4023
7cdee936
SM
40242003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4025
4026 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4027 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4028 MARKBIT as the gcmarkbit for strings.
4029
e50886d3
RS
40302003-07-21 Richard M. Stallman <rms@gnu.org>
4031
4032 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4033
29ea8ae9 4034 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4035 (syms_of_fns): Corresponding change.
4036
4037 * alloc.c (syms_of_alloc): Doc fixes.
4038
40392003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4040
4041 * s/netbsd.h: Use -Wl syntax.
4042
fdc39b59
RS
40432003-07-17 Richard M. Stallman <rms@gnu.org>
4044
4045 * xterm.c (xim_initialize): Redo 6/24 change.
4046
9c53385f
SM
40472003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4048
4049 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4050 (Fswitch_to_buffer): Don't signal an error when switching to the same
4051 buffer in a dedicated window.
4052
4053 * alloc.c: Use bitmaps for cons, as was done for floats.
4054 (init_float, init_cons): Let the normal code allocate the first block.
4055 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4056 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4057 New macros.
4058 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4059 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4060 (live_cons_p): Check the pointer is not past the `conses' array.
4061 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4062 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4063 (survives_gc_p): Use CONS_MARKED_P and simplify.
4064 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4065
dde13196
PE
40662003-07-13 Paul Eggert <eggert@twinsun.com>
4067
4068 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4069 puts it into BSS instead, at least on Solaris 8 and 9.
4070 This is a valid optimization, and it may occur on other platforms,
4071 so Emacs should not assume that initializing a static variable to
4072 zero puts it into data.
4073 * alloc.c (pure, staticvec):
4074 Initialize these arrays to nonzero, so that they're not
4075 put into BSS by that optimization.
4076
a801bc34
SM
40772003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4078
4079 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4080 (lisp_align_malloc): Use posix_memalign is available.
4081 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4082 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4083 for consistency. Update users.
4084
0c8b2afa
RS
40852003-07-13 Richard M. Stallman <rms@gnu.org>
4086
4087 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4088
668c2ab0
JB
40892003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4090
4091 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4092 and use the Gtk+ function gtk_window_icon_from_file if available.
4093
4094 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4095 handle mask of bitmaps.
4096 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4097 mask property.
4098 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4099
4100 * xterm.h (xg_set_icon): New function.
4101
800bebe3
RS
41022003-07-12 Paul Eggert <eggert@twinsun.com>
4103
4104 * unexelf.c (unexec): Consider a section to precede the .bss
4105 section if its addresses overlap that of .bss.
4106
69e38995
RS
41072003-07-12 Richard M. Stallman <rms@gnu.org>
4108
4109 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4110
4111 * config.in (HAVE_CRTIN): Add #undef.
4112 (INLINE): Really inline only if OPTIMIZE is defined.
4113
4114 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4115 END_FILES_1.
4116 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4117 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4118
4119 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4120 (TERMINFO): Define.
4121 (LIBS_TERMCAP): Define.
4122 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4123
4124 * xfns.c: Include libpng/png.h instead of png.h.
4125
f1d0c238
AS
41262003-07-11 Andreas Schwab <schwab@suse.de>
4127
4128 * buffer.c (modify_overlay): Update prototype.
4129 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4130 Likewise.
4131
5f6bf5fe
SM
41322003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4133
4134 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4135 (struct interval): Move to intervals.h.
4136 (struct Lisp_Marker): Use EMACS_INT for position info.
4137 (forward_point): Remove prototype of defunct function.
4138 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4139 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4140 (syms_of_textprop, set_text_properties): Remove prototypes that are
4141 already in intervals.h.
4142
4143 * intervals.h (struct interval): Move from lisp.h.
4144 Use EMACS_INT for position and size info.
4145
4146 * coding.c: Include intervals.h for Fset_text_properties.
4147
4148 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4149 position and length information.
4150
2765b457
SM
41512003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4152
4153 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4154 position and length information.
4155
2410d73a
SM
41562003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4157
4158 Change overlays_after and overlays_before so the overlays themselves
4159 are linked into lists, rather than using cons cells. After all each
4160 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4161 Lisp_Overlay for free and save up one cons cell per overlay (not
4162 to mention one indirection when traversing the list of overlay).
4163
4164 * lisp.h (struct Lisp_Overlay): New field `next'.
4165
4166 * buffer.h (struct buffer): Change overlays_before and overlays_after
4167 from Lisp lists of overlays to pointers to overlays.
4168
4169 * buffer.c (overlay_strings, recenter_overlay_lists):
4170 Fix typo in eassert in last commit.
4171 (unchain_overlay): New function.
4172 (add_overlay_mod_hooklist): Use AREF.
4173 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4174 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4175 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4176 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4177 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4178 Adjust to new type of overlays_(before|after).
4179
4180 * alloc.c (mark_object): Mark the new `next' field of overlays.
4181 (mark_buffer): Manually mark the overlays_(after|before) fields.
4182
4183 * coding.c (run_pre_post_conversion_on_str):
4184 * editfns.c (overlays_around):
4185 * xdisp.c (load_overlay_strings):
4186 * fileio.c (Finsert_file_contents):
4187 * indent.c (current_column):
4188 * insdel.c (signal_before_change, signal_after_change):
4189 * intervals.c (set_point_both):
4190 * print.c (temp_output_buffer_setup): Use new type for
4191 overlays_(before|after).
4192
04812929
SM
41932003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4194
4195 * buffer.c (report_overlay_modification): Don't run hooks while
4196 traversing the list of overlays.
4197
4198 * buffer.h (struct buffer): Use an int for overlay_center.
4199 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4200 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4201
4202 * buffer.c (reset_buffer, recenter_overlay_lists)
4203 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4204 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4205 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4206 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4207 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4208
4209 * xdisp.c (fast_find_position): Remove unused var.
4210
4211 * cmds.c (Qexpand_abbrev): New sym.
4212 (syms_of_cmds): Initialize it.
4213 (internal_self_insert): Use it to call expand-abbrev.
4214
2e7ecf15
KS
42152003-07-09 Kim F. Storm <storm@cua.dk>
4216
f9711de4 4217 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4218 was configured with --without-xim.
42f81f64 4219 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4220
c6de56a0
RS
42212003-07-07 Richard M. Stallman <rms@gnu.org>
4222
4223 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4224
4225 * alloc.c (Fgarbage_collect): Doc fix.
4226
b93fb365
KH
42272003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4228
4229 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4230
bfe1a3f7
SM
42312003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4232
04812929
SM
4233 * minibuf.c (read_minibuf): UNGCPRO before returning.
4234 (Ftry_completion, Fall_completions): Doc fix.
4235
bfe1a3f7
SM
4236 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4237 now that `floats' is not the last element of the struct any more.
4238
ee79d1aa
JR
42392003-07-06 Jason Rumney <jasonr@gnu.org>
4240
4241 * w32term.h (ClipboardSequence_Proc): New type.
4242
4243 * w32fns.c (clipboard_sequence_fn): New variable.
4244 (globals_of_w32fns): Initialize it.
4245
4246 * w32select.c (last_clipboard_sequence_number): New variable.
4247 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4248 number if possible.
4249
49723c04
SM
42502003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4251
4698665f
SM
4252 * m/amdx86-64.h (MARKBIT):
4253 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4254 MARKBIT and ARRAY_MARK_FLAG any more.
4255
4256 * m/hp800.h (XSETMARKBIT):
4257 * m/sr2k.h (XSETMARKBIT):
4258 * lisp.h (XSETMARKBIT): Remove unused macro.
4259
49723c04
SM
4260 * lisp.h (mark_object): Change prototype.
4261
4262 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4263 (last_marked): Change accordingly.
4264 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4265 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4266 (mark_buffer): Update calls to mark_object.
4267
4268 * bytecode.c (mark_byte_stack):
4269 * fns.c (sweep_weak_table):
4270 * keyboard.c (mark_kboards): Update calls to mark_object.
4271
1d660eca
JR
42722003-07-06 Jason Rumney <jasonr@gnu.org>
4273
4274 * alloc.c (struct ablock): Only include padding when there is some.
4275
618b5ae4
SM
42762003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4277
4278 * alloc.c (ALIGN): Add casts to simplify usage.
4279 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4280 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4281 (struct ablock, struct ablocks): New types.
4282 (free_ablock): New global var.
4283 (lisp_align_malloc, lisp_align_free): New functions.
4284 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4285 (struct float_block): Reorder and add gcmarkbits.
4286 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4287 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4288 (init_float, make_float): Use lisp_align_malloc.
4289 (free_float, live_float_p): Don't use `type' any more.
4290 (make_float): Use FLOAT_UNMARK to access to mark bit.
4291 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4292 Use FLOAT_MARKED_P to access the mark bit.
4293 (pure_alloc): Simplify use of ALIGN.
4294 (mark_object): Use FLOAT_MARK to access the mark bit.
4295 (gc_sweep): Use new macros to access the float's mark bit.
4296 (init_alloc_once): Init free_ablock.
4297
4298 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4299
3ef06d12
SM
43002003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4301
4302 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4303 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4304 (allocate_buffer): Move.
4305 (string_bytes): Don't mask markbit of `size_byte'.
4306 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4307 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4308 Use the `size' field of buffers (rather than the `name' field) for
4309 the mark bit, as is done for all other vectorlike objects.
4310 Use the new macros to access the mark bit of vectorlike objects.
4311
e81043aa
RS
43122003-06-26 Richard M. Stallman <rms@gnu.org>
4313
4314 * puresize.h (BASE_PURESIZE): Increment base size.
4315
4316 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4317
4318 * xterm.c (xim_initialize): Undo previous change.
4319
2d0834cc
SM
43202003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4321
4322 * alloc.c (survives_gc_p): Simplify.
4323
4324 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4325
4326 * window.c (Fset_window_dedicated_p): Simplify.
4327 (display_buffer_1): Don't raise the win from which minibuf was entered.
4328 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4329 (Fminibuffer_selected_window): Simplify.
4330
4331 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4332
4333 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4334 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4335
4336 * insdel.c (check_markers, adjust_markers_for_delete)
4337 (adjust_markers_for_insert, adjust_markers_for_replace)
4338 (prepare_to_modify_buffer, RESTORE_VALUE):
4339 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4340 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4341 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4342 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4343 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4344 * editfns.c (save_excursion_restore, transpose_markers):
4345 * window.c (delete_window):
4346 * xdisp.c (message_dolog): Update for new types.
4347
d54ae3d8
JD
43482003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4349
a5f696ac
JD
4350 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4351 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4352 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4353
4354 * frame.c (make_frame): Initialize default_face_done_p.
4355
4356 * frame.h (struct frame): Add default_face_done_p.
4357
d54ae3d8
JD
4358 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4359 will be defined.
4360
2336fe58
SM
43612003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4362
4363 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4364 Initialize the new field `gcmarkbit'.
4365 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4366 (mark_interval_tree): Don't mark the tree separately from the nodes.
4367 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4368 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4369 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4370
4371 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4372 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4373 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4374 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4375 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4376
bcea31c2
DL
43772003-06-24 Dave Love <fx@gnu.org>
4378
4379 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4380
4381 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4382 from gnulib.
4383
2601f59e
RS
43842003-06-21 Richard M. Stallman <rms@gnu.org>
4385
4386 * fileio.c (Fwrite_region): Alternate messages
4387 for append and partial write.
4388
4389 * keyboard.c (read_key_sequence): When converting upcase fn key to
4390 downcase, update fkey and keytran so `backspace' gets translated.
4391
4392 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4393
4394 * process.c (wait_reading_process_input): Don't signal SIGIO
4395 in batch mode.
4396
b5d2c621
KH
43972003-06-17 Kenichi Handa <handa@m17n.org>
4398
4399 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4400 composite.h.
4401
4402 * xselect.c: Don't include charset.h, coding.h, composite.h.
4403 (Qforeign_selection): New variable.
4404 (syms_of_xselect): Intern and static it.
4405 (selection_data_to_lisp_data): Return a unibyte string made from
4406 data with `foreign-selection' text property.
4407
6793bc63
SM
44082003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4409
4410 * termhooks.h (EVENT_INIT): New macro.
4411
4412 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4413
4414 * alloc.c (mark_kboards): Move to keyboard.c.
4415
4416 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4417 * xterm.c (x_dispatch_event):
4418 * xmenu.c (find_and_call_menu_selection):
4419 * xdisp.c (handle_tool_bar_click):
4420 * w32menu.c (menubar_selection_callback):
4421 * sysdep.c (kbd_input_ast, read_input_waiting):
4422 * msdos.c (dos_rawgetc):
4423 * macterm.c (mac_check_for_quit_char):
4424 * macmenu.c (menubar_selection_callback):
4425 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4426 data to kbd_buffer_store_event.
4427
b3ea810c
KS
44282003-06-15 Kim F. Storm <storm@cua.dk>
4429
4430 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4431 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4432
b8f75eda
KG
44332003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4434
4435 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4436
ba92ce48
KH
44372003-06-12 Kenichi Handa <handa@m17n.org>
4438
4439 * fileio.c (Fwrite_region): Save and restore restriction.
4440
b80263be
DL
44412003-06-12 Dave Love <fx@gnu.org>
4442
4443 * alloca.c (alloca): Declare arg as size_t.
4444
6793bc63
SM
4445 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4446 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4447
b23c0a83
DL
44482003-06-11 Dave Love <fx@gnu.org>
4449
4450 * search.c (shrink_regexp_cache): Use xrealloc.
4451 (syms_of_search): Use xmalloc.
4452
700e47c2
KS
44532003-06-10 Kim F. Storm <storm@cua.dk>
4454
4455 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4456 Adjust phys_cursor.x to be relative to window box, rather than
4457 text area before checking -- to ensure cursor is redrawn when
4458 exposing window.
4459 Note: This also fixes a similar (older) bug if display margins
4460 are present.
4461
f11aa0b2
KH
44622003-06-06 Kenichi Handa <handa@m17n.org>
4463
4464 * coding.c (encoding_buffer_size): If coding->type is
4465 coding_type_ccl, double magnification on CRLF encoding.
4466
3d143690
JR
44672003-06-06 Jason Rumney <jasonr@gnu.org>
4468
4469 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4470 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4471
4472 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4473 Mac too.
4474
f16205ca
DL
44752003-06-05 Dave Love <fx@gnu.org>
4476
b23c0a83
DL
4477 * strftime.c: Merge changes from gnulib.
4478
f16205ca
DL
4479 * mktime.c (__mktime_internal): Merge changes from gnulib
4480 involving year 69 and dst2.
4481
4482 Changes to merge with gnulib version and be consistent with the
4483 autoconf test:
4484
6793bc63
SM
4485 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4486 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4487 [HAVE_LOCALE_H]: Include locale.h.
4488 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4489
9b87a0bc
KS
44902003-06-05 Kim F. Storm <storm@cua.dk>
4491
4492 * window.c (coordinates_in_window): Convert X and Y to window
4493 relative coordinates inside mode-line and header-line parts.
4494 Convert X and Y to margin area relative coordinates inside left
4495 and right display margin parts.
4496
5a8a15ec
JR
44972003-06-05 Jason Rumney <jasonr@gnu.org>
4498
4499 * w32fns.c (add_system_logical_colors_to_map): New function.
4500 (Fx_open_connection): Use it.
4501
01ed8ff1
SM
45022003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4503
4504 * process.c (allocate_pty): Revert part of the previous patch.
4505 (Faccept_process_output): Simplify.
4506
b427b65d
JR
45072003-06-04 Jason Rumney <jasonr@gnu.org>
4508
4509 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4510
4511 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4512 (lispy_mouse_wheel_names): Remove.
4513 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4514 Always define drag_and_drop_syms.
4515
4516 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4517 WHEEL_EVENT events.
4518
914a8c47
SM
45192003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4520
01ed8ff1
SM
4521 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4522
914a8c47
SM
4523 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4524
adcb132c
JD
45252003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4526
4527 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4528 menu item label.
4529
be781fa7
RS
45302003-06-03 Richard M. Stallman <rms@gnu.org>
4531
4532 * window.c (Fwindow_edges): Doc fix.
4533 (Fwindow_pixel_edges, Fwindow_inside_edges)
4534 (Fwindow_inside_pixel_edges): New functions.
4535 (syms_of_window): defsubr them.
4536
4537 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4538 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4539
914a8c47
SM
45402003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4541
4542 * dispnew.c (Fsit_for): Don't lie about the number of args.
4543
5b07197a
DL
45442003-06-02 Dave Love <fx@gnu.org>
4545
4546 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4547 (syms_of_callproc) <process-environment>: Doc fix.
4548
4549 * doc.c: Use HAVE_FCNTL_H, not USG5.
4550
4551 * xfaces.c (font_rescale_ratio): Fix for K&R.
4552
4553 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4554
4555 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4556
4557 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4558
4559 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4560 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4561
d7107586 4562 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4563
4564 * xmenu.c (ENCODE_MENU_STRING): New.
4565 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4566 Use it.
4567
4568 * coding.h (ENCODE_UTF_8): New.
4569 (Qutf_8): Declare.
4570
4571 * coding.c (Qutf_8): New.
4572 (syms_of_coding): Intern it.
4573
4574 * fns.c: Doc fixes.
4575
7335b336
KH
45762003-06-02 Kenichi Handa <handa@m17n.org>
4577
4578 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4579
914a8c47
SM
45802003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4581
4582 * lread.c (openp): Make sure STR is a string.
4583
9862c135
JR
45842003-06-01 David Ponce <david@dponce.com>
4585
4586 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4587 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4588
4589 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4590 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4591 (discard_mouse_events): Discard WHEEL_EVENT events too.
4592 (lispy_wheel_names, wheel_syms): New.
4593 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4594 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4595 defined.
914a8c47 4596 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
4597
4598 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4599 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4600 WHEEL_EVENT events.
4601
f984e73e
JPW
46022003-05-31 John Paul Wallington <jpw@gnu.org>
4603
4604 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4605 timer are in lisp/emacs-lisp.
4606
1efcd78f
KH
46072003-05-31 Kenichi Handa <handa@m17n.org>
4608
458c8af4
KH
4609 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4610 region when a buffer is changed to unibyte.
4611
1efcd78f
KH
4612 * charset.h (VALID_LEADING_CODE_P): New macro.
4613 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4614
778e2804
KH
4615 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4616 is nonzero, accept multibyte form of eight-bit-control chars.
4617 (decode_composition_emacs_mule): Likewise.
4618 (decode_coding_emacs_mule): Likewise.
4619 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4620 multibyte form of eight-bit-control chars.
4621
4622 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4623 (Finsert_file_contents): If coding-system-for-read is bound to
4624 Qauto_save_coding, use the coding system emacs-mule with special
4625 setting for recovering a file.
4626 (choose_write_coding_system): On auto saving, use the coding
4627 system emacs-mule with special setting for auto saving.
4628 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4629
034060e4
KH
46302003-05-30 Kenichi Handa <handa@m17n.org>
4631
4632 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4633 properly before calling ccl_driver.
4634
778e2804 4635 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
4636
4637 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4638 nonzero.
4639 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4640 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4641
595f5aa5
GM
46422003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4643
4644 * xfaces.c (realize_default_face): Do not abort if lface is
4645 non-existent - reverts change from 2003-05-19.
4646
103e0180
KH
46472003-05-29 Kenichi Handa <handa@m17n.org>
4648
4649 * coding.c (decode_coding_iso2022): Pay attention to the byte
4650 sequence of CTEXT extended segment, and retain those bytes as is.
4651
46522003-05-28 Kenichi Handa <handa@m17n.org>
4653
4654 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4655 of CODING_REPLACEMENT_CHARACTER.
4656 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4657 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4658 check this flag on encoding.
4659 (encode_coding_sjis_big5): Check
4660 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4661 (Fset_terminal_coding_system_internal): Set
4662 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4663 instead of setting CODING_FLAG_ISO_SAFE flag in
4664 terminal_coding.flags.
4665
4666 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4667 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4668 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4669
ff6a3bfb 46702003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 4671
ff6a3bfb
RS
4672 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4673
4674 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 4675
1963c428
KS
46762003-05-28 Kim F. Storm <storm@cua.dk>
4677
4678 * xdisp.c (expose_window): Fix error in calculation of
4679 window relative coordinates of area to redisplay.
4680
2b5d4601
JR
46812003-05-27 Jason Rumney <jasonr@gnu.org>
4682
4683 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4684
1c64a4a2
JB
46852003-05-27 David Ponce <david@dponce.com>
4686
4687 Handle W32 mouse wheel events as mouse click events, like in X.
4688
4689 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4690 MOUSE_WHEEL_EVENT anymore.
4691
4692 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4693 Scrolling down/up the mouse wheel is respectively mapped to mouse
4694 button 4 and 5.
4695 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4696 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4697 WM_MOUSEWHEEL events.
4698
2d031b89
AS
46992003-05-27 Andreas Schwab <schwab@suse.de>
4700
20464fdf
AS
4701 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4702
2d031b89
AS
4703 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4704 partially visible line.
4705
4706 * alloc.c (Fgarbage_collect): Fix last change.
4707
97bc76d4
JPW
47082003-05-26 John Paul Wallington <jpw@gnu.org>
4709
4710 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4711
56613f06
SM
47122003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4713
4714 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4715 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4716
4717 * window.h (window_box_text_cols): Declare.
4718
4719 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4720 (x_draw_vertical_border): Remove unused var `f'.
4721
4722 * xfaces.c (build_scalable_font_name): Remove `unused var
4723 pixel_size' warning.
4724
4725 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4726
4727 * unexelf.c (unexec): Remove `unused var n' warning.
4728
4729 * strftime.c (my_strftime_localtime_r): Remove `defined but
4730 unused' warning.
4731
4732 * process.c (allocate_pty): Remove `unused var stb' and
4733 `cp might be used uninitialized' warnings.
4734
4735 * dispnew.c (mode_line_string): Remove unused var `f'.
4736
4737 * coding.c (find_safe_codings): Remove unused var `i'.
4738
4739 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4740
4741 * buffer.c (Fkill_buffer): Remove unused var `list'.
4742
4743 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4744
93421a1f
JD
47452003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4746
4747 * frame.c (make_frame): Condition want_fullscreen with
4748 HAVE_WINDOW_SYSTEM.
4749
c4b8aebc
JB
47502003-05-25 Juanma Barranquero <lektu@terra.es>
4751
4752 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4753 (Fwindow_scroll_bars): Fix typo in docstring.
4754
0416870b
KS
47552003-05-24 Kim F. Storm <storm@cua.dk>
4756
4757 The following changes serve several purposes:
4758
4759 1) Swap the position of fringes and display margins in windows, i.e.
4760 the fringes are now displayed between the margins and the text area
4761 (by default).
4762
4763 2) Allow fringe and scroll bar parameters to be set per-buffer and
4764 per-window (like display margins). Such settings are now stored
4765 in window configurations, preserved when frames are resized, and
9018a88e 4766 copied when windows are split vertically or horizontally.
0416870b
KS
4767 Several bugs related to display margins have been fixed.
4768
4769 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 4770
0416870b
KS
4771 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4772 rather than FRAME_WIDTH (FRAME_FONT (f)).
4773
4774 5) Introduce a consistent naming of variables, members and macros
4775 depending on whether their value is measured in pixels or in
4776 canonical columns/lines. Pixel dimensions are named *_width and
4777 *_height, while canonical columns/lines are named *_cols and
4778 *_lines. Pixel positions are named *_x and *_y, while column/line
4779 positions are named *_col and *_line.
4780
4781 6) Consolidate more of the X, W32, and MAC gui code by moving
4782 common data into struct frame, and generalize it for the non-gui
4783 case by using suitable defaults.
4784
4785 7) Cleanup and consolidate the macros controlling frame and window
4786 layout into frame.h and window.h, and generalize the use of the
4787 various window_box_* functions (enhanced to handle the new fringe
4788 position and the per-window fringe and scroll bar settings).
4789
4790 * frame.h (struct frame): Rename members height to text_lines,
4791 width to text_cols, window_height to total_lines, window_width to
4792 total_cols, new_height to new_text_lines, new_width to
4793 new_text_cols. All uses changed.
4794 (struct frame): New members which consolidate common members of
4795 x_output, w32_output, and mac_output structures: left_pos,
4796 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4797 win_gravity, size_hint_flags, border_width, internal_border_width,
4798 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4799 want_fullscreen. All uses changed.
4800 (struct frame): New member column_width contaning the canonical
4801 column width, analogue to line_height. All uses changed.
4802 (struct frame): Rename members scroll_bar_pixel_width to
4803 config_scroll_bar_width, and scroll_bar_cols to
4804 config_scroll_bar_cols. All uses changed.
4805 (struct frame): New member scroll_bar_actual_width which
4806 consolidates and renames the vertical_scroll_bar_extra member of
4807 x_output, w32_output, and mac_output structures. All uses changed.
4808 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4809 from x/w32/macterm.h files. All uses changed. Also change code
4810 which referred to f->output_data...->pixel_height.
4811 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 4812 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
4813 which referred to f->output_data...->pixel_width.
4814 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4815 Also change code which referred to f->height.
4816 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4817 Also change code which referred to f->width.
4818 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4819 to update new_text_lines and new_text_cols members directly.
4820 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4821 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4822 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4823 FRAME_SCROLL_BAR_COLS. All uses changed.
4824 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4825 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4826 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4827 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4828 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4829 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4830 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4831 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4832 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4833 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4834 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4835 return line_height member (it now has proper value also for
4836 non-window frames).
4837 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4838 return new column_width member (rather than the default font width).
4839 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4840 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4841 from x/w32/macterm.h files. Unconditionally return corresponding
4842 member of frame structure (they now have proper values also for
4843 non-window frames).
4844 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4845 Calculate return value from left and right widths.
4846 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4847 internal_border_width member (has proper value for non-window frame).
4848 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4849 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4850 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4851 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4852 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4853 consolidated from xterm.h, macterm.h, and w32term.h.
4854 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4855 consolidated from xterm.h, macterm.h, and w32term.h.
4856 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4857 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4858 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4859 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4860 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4861 consolidated from x/mac/w32term.h.
4862 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4863 consolidated from x/mac/w32term.h.
4864 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4865 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4866 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4867 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4868
4869 * window.h (struct window): Rename members left to left_col,
4870 top to top_line, height to total_lines, width to total_cols,
4871 left_margin_width to left_margin_cols, right_margin_width to
4872 right_margin_cols, orig_height to orig_total_lines, orig_top to
4873 orig_top_line. All uses changed.
4874 (struct window): New members left_fringe_width, right_fringe_width,
4875 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4876 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4877 New macros primarily used to simplify other macros.
4878 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4879 referred to XINT (w->width).
4880 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4881 referred to XINT (w->height).
4882 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4883 referred to XINT (w->width) * canon_x_unit.
4884 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4885 referred to XINT (w->height) * canon_y_unit.
4886 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4887 referred to XINT (w->left).
4888 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4889 all uses and code that referred to XINT (w->left) + XINT (w->width).
4890 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4891 referred to XINT (w->top).
4892 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4893 referred to XINT (w->top) + XINT (w->height).
4894 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4895 referred to XINT (w->left) * canon_x_unit.
4896 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4897 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4898 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4899 referred to XINT (w->top) * canon_y_unit.
4900 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4901 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4902 (WINDOW_LEFTMOST_P): New macro.
4903 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4904 All uses changed.
4905 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4906 All uses changed.
4907 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4908 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4909 Do not exclude left fringe width.
4910 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4911 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4912 Do not exclude fringe widths.
4913 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4914 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4915 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4916 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4917 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4918 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4919 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4920 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4921 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4922 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4923 New macros. Change code which referenced corresponding
4924 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4925 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4926 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4927 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4928 allow per-window scroll-bar settings.
4929 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4930 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4931 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4932 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4933 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4934 FRAME_SCROLL_BAR_WIDTH.
4935 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 4936 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
4937 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4938 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4939 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4940 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4941 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4942 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4943 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4944 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4945 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4946 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4947 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4948 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4949 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4950 (window_from_coordinates): Update prototype.
4951 (Fset_window_buffer): Update EXFUN.
4952 (set_window_buffer): Update prototype.
9018a88e 4953
0416870b 4954 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 4955 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
4956 changed.
4957 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4958 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4959 internal_border_width is now set to 0 for non-window frames.
4960 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4961 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4962 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4963 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4964 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4965 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4966 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4967 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4968 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 4969 Move to window.h and renamed [see window.h changes].
0416870b
KS
4970 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4971 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
4972 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4973 Use WINDOW_TOTAL_LINES.
0416870b
KS
4974 (frame_update_line_height): Remove prototype.
4975
4976 * buffer.h (struct buffer): Rename members measured in columns:
4977 left_margin_width to left_margin_cols, right_margin_width to
4978 right_margin_cols. All uses changed.
4979 New members left_fringe_width, right_fringe_width,
4980 fringes_outside_margins for per-buffer fringe settings.
4981 New members scroll_bar_width and vertical_scroll_bar_type for
4982 per-buffer scroll bar settings.
4983
4984 * buffer.c (init_buffer_once): Set buffer_defaults and
4985 buffer_local_flags for new buffer-local variables
4986 left_fringe_width, right_fringe_width, fringes_outside_margins,
4987 scroll_bar_width, and vertical_scroll_bar_type.
4988 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4989 default-* variables for them.
4990
4991 * dispnew.c: Make (many) trivial substitutions for renamed and
4992 new macros in dispextern.h, frame.h and window.h.
4993 (mode_line_string): No need to adjust width for mode lines, as it
4994 is already adjusted by the caller.
4995 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 4996
0416870b
KS
4997 * frame.c: Make (many) trivial substitutions for renamed and
4998 new macros in dispextern.h, frame.h and window.h.
4999 (make_frame): Initialize left_fringe_width, right_fringe_width,
5000 fringe_cols, scroll_bar_actual_width, border_width,
5001 internal_border_width, column_width, line_height, x_pixels_diff,
5002 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5003 members with values suitable for a non-window frames.
5004
5005 * gtkutil.c: Make (many) trivial substitutions for renamed and
5006 new macros in dispextern.h, frame.h and window.h.
9018a88e 5007
0416870b
KS
5008 * indent.c: Make (few) trivial substitutions for renamed and
5009 new macros in dispextern.h, frame.h and window.h.
5010
5011 * keyboard.c: Make (many) trivial substitutions for renamed and
5012 new macros in dispextern.h, frame.h and window.h.
5013 (make_lispy_event): Use window positions returned from
5014 window_from_coordinates when constructing the lisp event for
5015 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5016 (incorrect) values locally.
5017 (make_lispy_movement): Use window positions returned from
5018 window_from_coordinates when constructing the lisp event, rather
5019 than calculating (incorrect) values locally.
5020
5021 * scroll.c: Make (some) trivial substitutions for renamed and
5022 new macros in dispextern.h, frame.h and window.h.
5023
5024 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5025 scroll-bars.
5026
5027 * sysdep.c: Make (few) trivial substitutions for renamed and
5028 new macros in dispextern.h, frame.h and window.h.
5029
5030 * term.c: Make (some) trivial substitutions for renamed and
5031 new macros in dispextern.h, frame.h and window.h.
5032
5033 * widget.c: Make (few) trivial substitutions for renamed and
5034 new macros in dispextern.h, frame.h and window.h.
5035
5036 * window.c: Make (many) trivial substitutions for renamed and
5037 new macros in dispextern.h, frame.h and window.h.
5038 (make_window): Initialize new members
5039 left_margin_cols, right_margin_cols, left_fringe_width,
5040 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5041 and vertical_scroll_bar_type.
5042 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5043 and per-window fringes and scroll-bars.
0416870b 5044 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5045 frame's internal_border_width (the effect normally negible since
0416870b
KS
5046 the internal_border_width is typically 0 or 1 pixel, but very
5047 noticeable for an internal_border_width of e.g. 25 pixels).
5048 Upon successful return (other than ON_NOTHING), the coordinates
5049 are now always properly converted to window relative for the
5050 given display element.
5051 (window_from_coordinates): Add new parameters wx and wy to
5052 return the window relative x and y position in the returned
5053 window and part. A null arg means, don't return the position.
5054 All callers changed.
5055 (adjust_window_margins): New function which may reduce the width
5056 of the display margins if a window's text area is too small after
5057 resizing or splitting windows.
5058 (size_window): Fix bug that did not account for display margin
5059 widths when checking the minimum width of a window; use
5060 adjust_window_margins.
5061 (set_window_buffer): Call Fset_window_fringes and
5062 Fset_window_scroll_bars to setup per-window elements.
5063 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5064 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5065 (e.g. after splitting a window or resizing the frame).
5066 All callers changed.
0416870b
KS
5067 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5068 (Fsplit_window): Duplicate original window's display margin,
5069 fringe, and scroll-bar settings; then call Fset_window_buffer with
5070 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5071 window to only preserve the display margins in one of the windows.
c4b8aebc 5072 When splitting horizontally, call adjust_window_margins on both
0416870b 5073 windows to ensure that the text area of the new windows is non too
f9711de4 5074 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5075 width of the split window was less than the width of the display
5076 margins.
9018a88e
SM
5077 (window_box_text_cols): Renamed from window_internal_width.
5078 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5079 Fix bug that caused vertical separator to be subtracted also on
5080 window frames. Fix another bug that did not reduce the returned
5081 value by the columns used for display margins.
5082 (window_scroll_line_based): Fix bug related to scrolling too much
5083 when display margins are present (implicitly fixed by the fix to
5084 window_box_text_cols).
5085 (scroll_left, scroll_right): Fix bug related to scrolling too far
5086 by default when display margins are present (implicitly fixed by
5087 the fix to window_box_text_cols).
5088 (struct saved_window): Rename members left to left_col, top to
5089 top_line, width to total_cols, height to total_lines, orig_top to
5090 orig_top_line, orig_height to orig_total_lines. All uses changed.
5091 New members left_margin_cols, right_margin_cols,
5092 left_fringe_width, right_fringe_width, fringes_outside_margins,
5093 scroll_bar_width, and vertical_scroll_bar_type for saving
5094 per-window display elements.
5095 (Fset_window_configuration): Restore display margins, fringes,
5096 and scroll bar settings. This fixes a bug which caused display
5097 margins to be discarded when saving and restoring a window
5098 configuration.
5099 (save_window_save): Save display margins, fringes, and scroll bar
5100 settings. This fixes a bug which caused display margins to be
5101 discarded when saving and restoring a window configuration.
5102 (Fset_window_margins): Do nothing if display margins are not
5103 really changed. Otherwise, call adjust_window_margins to ensure
5104 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5105 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5106 the width of the window.
5107 (Fset_window_fringes): New defun to allow user to specifically set
5108 this window's fringe widths and position vs. display margins.
5109 (Fwindow_fringes): New defun to return window's actual fringe
5110 settings.
5111 (Fset_window_scroll_bars): New defun to allow user to specifically
5112 set this window's scroll bar width and position.
5113 (Fwindow_scroll_bars): New defun to return window's actual scroll
5114 bar settings.
5115 (compare_window_configurations): Also compare display margins,
5116 fringes, and scroll bar settings.
5117 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5118
5119 * xdisp.c: Make (many) trivial substitutions for renamed and
5120 new macros in dispextern.h, frame.h and window.h.
5121 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5122 and new fringe vs. display margin position. Note that returned
0416870b
KS
5123 value is no longer guaranteed to be a whole multiple of the frame
5124 column width, since per-window fringes may now be any width.
5125 (window_box_left_offset): New function like window_box_left, but
5126 value is relative to left border of window (rather than frame).
5127 (window_box_right_offset): New function like window_box_right,
5128 but value is relative to left border of window.
5129 (window_box_left): Adapt to per-window fringes and scroll bars,
5130 and new fringe vs. display margin position. Simplify by using
5131 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5132 (window_box): Allow null args for unnecessary return values;
5133 change/simplify relevant callers.
5134 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5135 and new fringe vs. display margin position.
5136 Use window_box_left_offset and window_box_right_offset
0416870b 5137 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5138 scroll bars, and new fringe vs. display margin position.
5139 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5140 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5141 fringe vs. display margin position.
5142 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5143 (redisplay_window): Adapt to per-window scroll bars.
5144 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5145 bars, and new fringe vs. display margin position.
5146 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5147 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5148 bars, and new fringe vs. display margin position. Fix bug which
5149 increased total width of full_width rows by width of scroll bars
5150 although window's total width already includes that.
5151 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5152 (expose_area): Simplify using window_box_left_offset.
5153 (x_draw_vertical_border): Handle per-window scroll bar settings,
5154 mixing windows with left, right and no scroll bars.
5155
5156 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5157 where it's used in x_list_fonts (for clarity).
5158 (frame_update_line_height): Remove unused function; functionality
5159 is now done directly when setting the default font in x_set_font.
5160
5161 * xfns.c: Make (many) trivial substitutions for renamed and
5162 new macros in dispextern.h, frame.h and window.h.
5163
5164 * xmenu.c: Make (some) trivial substitutions for renamed and
5165 new macros in dispextern.h, frame.h and window.h.
5166
5167 * xterm.h (struct x_output): Move members left_pos, top_pos,
5168 border_width, pixel_height, pixel_width, line_height,
5169 internal_border_width, vertical_scroll_bar_extra,
5170 left_fringe_width, right_fringe_width, fringe_cols,
5171 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5172 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5173 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5174 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5175 (PIXEL_WIDTH, PIXEL_HEIGHT)
5176 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5177 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5178 frame.h and renamed [see frame.h changes].
5179 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5180 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5181 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5182 and renamed [see frame.h changes].
9018a88e 5183
0416870b
KS
5184 * xterm.c: Make (several) trivial substitutions for renamed and
5185 new macros in dispextern.h, frame.h and window.h.
5186 (x_draw_glyph_string_box): Adapt to per-window fringes and
5187 scroll-bars.
5188 (scroll_run): Adapt to new fringe position.
5189 (glyph_rect): Use window coordinates returned from
5190 window_from_coordinates rather than frame_to_window_pixel_xy.
5191 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5192 scroll-bars.
5193 (handle_one_xevent): Simplify a USE_GTK conditional.
5194 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5195 (fringes are now inside margins, i.e. always in the clipping area).
5196 All callers changed.
5197 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5198 directly, then call compute_fringe_widths. Don't call
5199 frame_update_line_height.
5200
5201 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5202 border_width, pixel_height, pixel_width, line_height,
5203 internal_border_width, vertical_scroll_bar_extra,
5204 left_fringe_width, right_fringe_width, fringe_cols,
5205 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5206 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5207 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5208 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5209 (PIXEL_WIDTH, PIXEL_HEIGHT)
5210 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5211 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5212 frame.h and renamed [see frame.h changes].
5213 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5214 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5215 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5216 and renamed [see frame.h changes].
9018a88e 5217
0416870b
KS
5218 * w32term.c: Make (several) trivial substitutions for renamed and
5219 new macros in dispextern.h, frame.h and window.h.
5220 (x_draw_glyph_string_box): Adapt to per-window fringes and
5221 scroll-bars.
5222 (glyph_rect): Use window coordinates returned from
5223 window_from_coordinates rather than frame_to_window_pixel_xy.
5224 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5225 scroll-bars.
5226 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5227 (fringes are now inside margins, i.e. always in the clipping area).
5228 All callers changed.
5229 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5230 directly, then call compute_fringe_widths. Don't call
5231 frame_update_line_height.
5232
5233 * w32console.c: Make (few) trivial substitutions for renamed and
5234 new macros in dispextern.h, frame.h and window.h.
5235
5236 * w32fns.c: Make (many) trivial substitutions for renamed and
5237 new macros in dispextern.h, frame.h and window.h.
5238
5239 * w32menu.c: Make (few) trivial substitutions for renamed and
5240 new macros in dispextern.h, frame.h and window.h.
5241
5242 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5243 border_width, pixel_height, pixel_width, line_height,
5244 internal_border_width, vertical_scroll_bar_extra,
5245 left_fringe_width, right_fringe_width, fringe_cols,
5246 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5247 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5248 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5249 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5250 (PIXEL_WIDTH, PIXEL_HEIGHT)
5251 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5252 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5253 frame.h and renamed [see frame.h changes].
5254 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5255 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5256 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5257 and renamed [see frame.h changes].
9018a88e 5258
0416870b
KS
5259 * macterm.c: Make (several) trivial substitutions for renamed and
5260 new macros in dispextern.h, frame.h and window.h.
5261 (x_draw_glyph_string_box): Adapt to per-window fringes and
5262 scroll-bars.
5263 (glyph_rect): Use window coordinates returned from
5264 window_from_coordinates rather than frame_to_window_pixel_xy.
5265 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5266 scroll-bars.
5267 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5268 (fringes are now inside margins, i.e. always in the clipping area).
5269 All callers changed.
5270 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5271 directly, then call compute_fringe_widths. Don't call
5272 frame_update_line_height.
5273
5274 * macfns.c: Make (several) trivial substitutions for renamed and
5275 new macros in dispextern.h, frame.h and window.h.
9018a88e 5276 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5277
5278 * macmenu.c: Make (few) trivial substitutions for renamed and
5279 new macros in dispextern.h, frame.h and window.h.
5280
5281 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5282 and line_height, and use corresponding new members in struct
5283 frame. All uses changed.
5284 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5285 superseeded by corresponding macros in frame.h.
5286
5287 * msdos.c: Make (several) trivial substitutions for renamed and
5288 new macros in dispextern.h, frame.h and window.h.
5289 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5290 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5291 (internal_terminal_init): No need to initialize line_height here;
5292 it now defaults to 1.
5293
9018a88e
SM
52942003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5295
5296 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5297 dropping `down' events.
5298
016bd3c0
AS
52992003-05-24 Andreas Schwab <schwab@suse.de>
5300
5301 * coding.c (find_safe_codings): Fix last change.
5302
4dacadcc
TTN
53032003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5304
5305 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5306
319830ce
SM
53072003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5308
9018a88e
SM
5309 * xdisp.c (display_mode_element): Increase max depth.
5310 Simplify the error handling code. Use a different error string
5311 for the case where we hit the depth limit.
5312
319830ce
SM
5313 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5314
5315 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5316
53172003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5318
5319 * intervals.c (get_local_map): Don't get char-property of previous
5320 point any more: get_pos_property already does it and better.
5321
c67de8ba
DL
53222003-05-21 Dave Love <fx@gnu.org>
5323
5324 [Merged from unicode branch.]
5325
5326 * xfns.c (x_window, x_window): Use use_xim.
5327
5328 * xterm.c (use_xim): Initialize.
5329 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5330 (x_term_init): Maybe set use_xim.
5331
5332 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5333
edd3ff1d
JR
53342003-05-21 Jason Rumney <jasonr@gnu.org>
5335
5336 * unexw32.c (_start): Remove _fmode initialization.
5337
5338 * emacs.c (main) [WINDOWSNT]: Move it here.
5339
463f55ee
DL
53402003-05-20 Dave Love <fx@gnu.org>
5341
5342 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5343
af253914
RS
53442003-05-19 Richard M. Stallman <rms@gnu.org>
5345
5346 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5347 as value for QCfont attribute.
5348 (realize_default_face): lface should already exist; crash if not.
5349 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5350
5351 * frame.c (Fignore_event): Doc fix.
5352
1d211019
KH
53532003-05-19 Kenichi Handa <handa@m17n.org>
5354
5355 * coding.c (decode_coding_string): Handle post-read-conversion
5356 even if the coding doesn't require decoding.
5357
4dd68254
RS
53582003-05-18 Richard M. Stallman <rms@gnu.org>
5359
5360 * callproc.c (Fcall_process_region): Doc fix.
5361
14d87dc9
SM
53622003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5363
deca5d96
SM
5364 * lread.c (Fload): Print a message if package is obsolete.
5365
14d87dc9
SM
5366 * window.c (Fselect_window): Add optional `norecord' arg.
5367 (select_window_1): Fold into Fselect_window.
5368 (select_window_norecord): New function.
5369 (temp_output_buffer_show): Use it. Preserve current buffer.
5370
5371 * window.h (Fselect_window): Update declaration.
5372
5373 * window.c (delete_window, Fother_window, Fset_window_configuration):
5374 * minibuf.c (read_minibuf):
5375 * macterm.c (x_new_focus_frame):
5376 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5377 * callint.c (Fcall_interactively):
5378 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5379
5380 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5381
78f52183
DK
53822003-05-17 David Kastrup <dak@gnu.org>
5383
5384 * process.c (read_process_output): Back out change from 2003-03-09.
5385
14d87dc9
SM
53862003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5387
5388 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5389
5390 * textprop.c (text_property_stickiness): New arg `buffer'.
5391
5392 * intervals.h (text_property_stickiness): New arg `buffer'.
5393 (get_pos_property): Declare.
5394
5395 * intervals.c (get_local_map): Use get_pos_property, to obey
5396 stickiness and empty overlays.
5397 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5398 (merge_properties, intervals_equal, merge_properties_sticky):
5399 Use XCAR, XCDR.
5400 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5401
1fd1cc2f
RS
54022003-05-17 Richard M. Stallman <rms@gnu.org>
5403
4f9f637a
RS
5404 * minibuf.c (read_minibuf): If buffer is empty, record the default
5405 in the history.
5406 (Fminibuffer_complete_word): When deleting the overlap, take account
5407 of its real position.
5408
5409 * fns.c (map_char_table): Fix previous change.
5410
1fd1cc2f
RS
5411 * syntax.c (find_defun_start):
5412 When open_paren_in_column_0_is_defun_start,
5413 return beginning of buffer.
5414
5415 * lisp.h (map_char_table): Declare added arg.
5416
5417 * fns.c (map_char_table): New arg TABLE gets the master table.
5418 All calls changed.
5419 Process default and inheritance, resorting to Faref if necessary.
5420
5421 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5422 (Faccessible_keymaps): Pass new arg to map_char_table.
5423
5424 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5425
5426 * casetab.c (set_case_table): Pass new arg to map_char_table.
5427
5428 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5429
5430 * lisp.h (specbinding_func): New typedef.
5431 (struct specbinding): Use specbinding_func, to put the `volatile'
5432 in the right place.
5433
5434 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5435 to avoid GCC warning.
14d87dc9 5436
b4bd27c5
RS
54372003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5438
14d87dc9 5439 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5440
35fb885d
SM
54412003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5442
5443 * keyboard.c (apply_modifiers): Don't fill the other cache.
5444
9a274fbd
SM
54452003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5446
c55b5fad
SM
5447 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5448
9a274fbd
SM
5449 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5450 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5451 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5452 (Fset_window_configuration, Fcurrent_window_configuration)
5453 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5454 (Fpos_visible_in_window_p, mark_window_cursors_off)
5455 (window_internal_height, window_internal_width, Frecenter)
5456 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5457 (replace_buffer_in_all_windows, init_window_once, init_window)
5458 (syms_of_window, keys_of_window): Move from lisp.h.
5459 * lisp.h: Move window.c declarations to window.h.
5460
5461 * bytecode.c: Include window.h.
5462 * emacs.c: Include window.h.
5463
14d87dc9 5464 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5465 (keyremap): Add `parent' field.
5466 (keyremap_step): Use it. Remove `parent' argument.
5467 (read_key_sequence): Setup and use the new `parent' field.
5468
fd93e331
SM
54692003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5470
5471 * keyboard.c (adjust_point_for_property): Ensure termination.
5472
1c4001a1
SM
54732003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5474
5475 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5476 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5477 duplicated handling of function-key-map and key-translation-map
5478 in read_key_sequence.
5479 (read_key_sequence): Use them.
5480
5481 * keyboard.c (adjust_point_for_property): Try harder to move point
5482 to the non-sticky end of an invisible property.
5483
5484 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5485 property intangible as well.
5486
780379b1
AS
54872003-05-10 Andreas Schwab <schwab@suse.de>
5488
5489 * xmenu.c (single_menu_item): Change last parameter to void* to
5490 avoid warning.
5491
ca2de342
RS
54922003-05-09 Richard M. Stallman <rms@gnu.org>
5493
5494 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5495 Bind Qinhibit_modification_hooks to t so there will be no GC.
5496 Rename local `tem' to `save_deactivate_mark'.
5497
5498 * eval.c (specpdl_ptr): Declare volatile.
5499 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5500 before doing the work of unbinding it.
5501
5502 * lisp.h (struct specbinding): Declare elements volatile.
5503 (specpdl_ptr): Declare volatile.
5504
5505 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5506
5507 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5508 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5509
347003be
DL
55102003-05-08 Dave Love <fx@gnu.org>
5511
5512 * coding.c (Vlast_coding_system_used): Doc fix.
5513
5adcec23
JR
55142003-05-07 Jason Rumney <jasonr@gnu.org>
5515
5516 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5517 when system does not support them.
5518
5fe3b8a4
SM
55192003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5520
5521 * fileio.c (Qwrite_region_annotate_functions): New var.
5522 (build_annotations): Use it to process the global part of the hook.
5523 (syms_of_fileio): Init and staticpro it.
5524
5525 * keyboard.c (safe_run_hooks_error): Display a message instead of
5526 silently ignoring the error.
5527
55282003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5529
5530 * keyboard.c (input_available_signal): Mark static.
5531 (menu_bar_items): Use map_keymap.
5532 (menu_bar_one_keymap): Remove.
5533 (menu_bar_item): Adjust arglist (for use in map_keymap).
5534 Properly hide a second binding when not both are keymaps.
5535
5536 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5537 (single_keymap_panes): Use it and map_keymap.
5538 (single_menu_item): Use skp as well.
5539
5540 * keymap.h (map_keymap_function_t): New type.
5541 (map_keymap): Declare.
5542
5543 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5544 (map_keymap_call, Fmap_keymap): New functions.
5545 (syms_of_keymap): Defsubr map-keymap.
5546
4b1b4443
JD
55472003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5548
5549 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5550 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5551 ..._with_mnemonic functions for menu items.
5552
1f816871
KH
55532003-05-01 Kenichi Handa <handa@m17n.org>
5554
5555 * coding.c (coding_system_accept_latin_extra_p): Delete this
5556 function.
5557 (find_safe_codings): Pay attention to
5558 the property tranlsation-table-for-encode of each codings.
5559 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5560
5ed6ba5b
SM
55612003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5562
5563 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5564
32c06229
SM
55652003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5566
5567 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5568
5569 * lisp.h (CHECK): Wrap args in parenthesis.
5570 (specbind): Fix doc: symbol = Qnil is not supported any more.
5571
5572 * bytecode.c (Fbyte_code) <unwind-protect>:
5573 Use Fprogn rather than 0 and Qnil.
5574
5575 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5576 `double', and `triple' modifiers as well.
5577
ed3c3314
RS
55782003-04-30 Richard M. Stallman <rms@gnu.org>
5579
5580 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5581
5582 * alloc.c (abort_on_gc): New variable.
5583 (Fgarbage_collect): Abort if abort_on_gc is set.
5584
5585 * lisp.h (abort_on_gc): Add decl.
5586
5587 * eval.c (Fsignal): Clear abort_on_gc.
5588
5589 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 5590 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
5591
5592 * xdisp.c (move_it_vertically_backward): Do the final big else
5593 even if nlines is 0.
5594
5595 * xdisp.c (redisplay_internal): Finish the per-frame loop
5596 even if redisplay is suspended by input.
5597
0b325c12
AC
55982003-04-24 Andrew Choi <akochoi@shaw.ca>
5599
5600 * macterm.c (x_list_fonts): Return all fonts that match if
5601 maxnames = -1.
5602
4e837cd0
KH
56032003-04-25 Kenichi Handa <handa@m17n.org>
5604
5605 * syntax.c (skip_chars): Fix previous change.
5606
9af7511a
KH
56072003-04-24 Kenichi Handa <handa@m17n.org>
5608
5609 * syntax.c (skip_chars): Make the code faster by using the common
5610 technique of *p, *stop, and *endp.
5611
e3b2c21f
JD
56122003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5613
5614 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 5615 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
5616 being updated.
5617
32c06229
SM
56182003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5619
5620 * eval.c (Fapply): Undo last change and add a comment about why.
5621
c6464167
MB
56222003-04-18 Miles Bader <miles@gnu.org>
5623
5624 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5625 pickier PARSE_MULTIBYTE_SEQ.
5626
e509f168
SM
56272003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5628
5629 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5630 Use XCDR, XCAR, CONSP.
5631 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5632 (Fapply): Remove unnecessary GCPRO.
5633
5634 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5635
5636 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5637
5638 * buffer.h: Don't hardcode BEG==1.
5639
5640 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5641
5ceea398
RS
56422003-04-16 Richard M. Stallman <rms@gnu.org>
5643
5644 * xdisp.c (try_window, try_window_reusing_current_matrix):
5645 When at end of window, set window_end_pos to Z-ZV.
5646
5647 * buffer.c (Foverlay_recenter): Doc fix.
5648
e509f168
SM
56492003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5650
5651 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5652
d243e605
AC
56532003-04-14 Andrew Choi <akochoi@shaw.ca>
5654
5655 * macterm.c (mac_check_for_quit_char): Don't check more often than
5656 once a second.
5657
6901b111
SM
56582003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5659
5660 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5661 specially, so that they can't hide an implicit switch-frame event.
5662 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5663 (head_table): Use switch-frame as event_kind for select-window.
5664 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5665
5666 * editfns.c (Fformat): Lisp_Object/int mixup.
5667 (format2): Remove unused var numargs.
5668
e301806f 56692003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 5670
6901b111 5671 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
5672 (Qafter_insert_file_set_coding): New variable.
5673 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5674 for after-insert-file-adjust-coding-function.
5675 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5676 instead of Vafter_insert_file_adjust_coding_function.
5677
38914424
KH
56782003-04-11 Kenichi Handa <handa@m17n.org>
5679
5680 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5681
5682 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5683 string. Callers changed.
5684
56852003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 5686
6901b111 5687 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 5688 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
5689 (Finsert_file_contents):
5690 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
5691 decode-format.
5692
f979dc05
JD
56932003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5694
5695 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5696 get GtkAdjustment as widget now is a GtkRange.
5697
5698 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5699 GtkRange to avoid memory leak.
5700
f8c6b4c2 57012003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 5702
50ebc53d
KH
5703 * xfaces.c (Vface_font_rescale_alist): New variable.
5704 (struct font_name): New member rescale_ratio.
5705 (font_rescale_ratio): New function.
6901b111 5706 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
5707 (better_font_p): On comparing point sized, pay attention to
5708 recale_ratio member of fonts.
5709 (build_scalable_font_name): Reflect font->rescale_ratio in the
5710 font name.
6901b111 5711 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 5712
cb98871c
KH
5713 * lread.c (read1): Before calling index, check if the 2nd
5714 arguemnt is in ASCII range.
5715
4773b8ca
RS
57162003-04-08 Richard M. Stallman <rms@gnu.org>
5717
b0ada147
RS
5718 * fileio.c (Ffile_symlink_p): Doc fix.
5719
5720 * editfns.c (Fformat): Translate positions of text properties
5721 in the format string to apply them to the result.
5722
4773b8ca
RS
5723 * fileio.c (Finsert_file_contents): Doc fix.
5724 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5725
57262003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 5727
4773b8ca
RS
5728 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5729
e8f25745 57302003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 5731
e8f25745
ST
5732 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5733 that self-contained application finds libexec files.
5734
f8c6b4c2 57352003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 5736
6901b111
SM
5737 * coding.c (code_convert_region_unwind):
5738 Set Vlast_coding_system_used to the argument.
2310d84c
KH
5739 (code_convert_region): If post-read-conversion function changed
5740 the value of last-coding-sytem, keep the new value in
5741 coding->symbol so that it won't be overridden.
5742 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
5743 (coding_system_accept_latin_extra_p): New function.
5744 (find_safe_codings): Pay attention to characters registered in
5745 latin-extra-code-table.
2310d84c 5746
39c9a034
TTN
57472003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5748
5749 * Makefile.in (md5.o): Add missing dependency info.
5750
eb67c5d6
RS
57512003-04-06 Richard M. Stallman <rms@gnu.org>
5752
5753 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5754
5755 * marker.c (verify_bytepos): New function.
5756
5757 * intervals.c (set_intervals_multibyte_1): When becoming
5758 multibyte, adjust right and left child sizes to a whole set of
5759 characters. If an interval gets zero total-length, delete it.
5760 If an interval consists of just its children, delete one of them.
5761
5762 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5763 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 5764
eb67c5d6
RS
5765 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5766 All calls deleted.
5767 (lisp_malloc): Do the work here directly.
5768
b1f81fc5
JB
57692003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5770
5771 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5772 char tables.
5773
57742003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
5775
5776 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5777 destructively change "%S" to "%s".
5778
774666fb
MB
57792003-04-03 Miles Bader <miles@gnu.org>
5780
5781 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5782 always set.
5783
19c37f01
DL
57842003-04-01 Dave Love <fx@gnu.org>
5785
5786 * xfns.c (xpm_lookup_color): Grok "opaque".
5787
2f4b24c3
AC
57882003-03-31 Andrew Choi <akochoi@shaw.ca>
5789
5790 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5791 parent window ID.
5792
5793 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5794
5795 * macterm.h (struct mac_output): Define x_pixels_diff and
5796 y_pixels_diff.
b1f81fc5 5797
9443fcf6
JB
57982003-03-31 Juanma Barranquero <lektu@terra.es>
5799
5800 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5801 blockinput.h and files included from it.
5802
e072891b
KS
58032003-03-31 Kim F. Storm <storm@cua.dk>
5804
5805 The following changes consolidates the common code related to
5806 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5807 files into frame.c.
9443fcf6 5808
e072891b
KS
5809 * frame.c: Include blockinput.h.
5810 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5811 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5812 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5813 related vars here.
5814 (struct frame_parm_table, frame_parms): New table for describing
5815 frame parameters and their associated Q-variable.
5816 The order of the parameters corresponds to the sequence of the
5817 frame_parm_handlers table in redisplay_interface.
5818 (x_fullscreen_move, x_set_frame_parameters)
5819 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5820 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5821 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5822 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5823 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5824 Generic functions for processing of frame parameters.
5825 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5826 (display_x_get_resource, x_get_resource_string): Functions for
5827 generic access to X resources.
5828 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5829 (x_default_parameter, Fx_parse_geometry): Functions for generic
5830 access to frame parameters.
6901b111
SM
5831 (x_figure_window_size): Generic calculation of frame size.
5832 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
5833 (syms_of_frame): Intern and staticpro frame parameter variables.
5834 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5835 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 5836
e072891b
KS
5837 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5838 parameter related vars defined in frame.c.
5839 (EMACS_CLASS): Define here.
5840 (enum FULLSCREEN_*): Define here.
5841 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5842 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5843 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5844 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5845 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5846 (x_set_visibility, x_set_autoraise, x_set_autolower)
5847 (x_set_unsplittable, x_set_vertical_scroll_bars)
5848 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5849 (x_figure_window_size): Add prototypes.
5850
5851 * dispextern.h (frame_parm_handler): New typedef.
5852 (struct redisplay_interface): New member frame_parm_handlers.
5853 (enum resource_types): Move declaration here.
5854 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5855 (x_default_parameter): Add prototypes.
5856
5857 * window.c: Remove extern decl for frame parameter vars.
5858 (change_window_heights): New generic function;
5859 replaces x_change_window_heights. All users changed.
5860
5861 * window.h (change_window_heights): Add prototype.
5862
5863 * xfaces.c: Remove extern decl for frame parameter vars.
5864
5865 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5866 (struct w32_display_info): Fix type of xrdb member.
5867 (enum FULLSCREEN_*): Remove.
5868 Remove prototypes for generic functions (in frame.h).
5869
5870 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5871 parameters now defined in frame.h and frame.c.
f63fd14e 5872 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5873 (enum x_frame_parms): Remove (bogus, unused enum).
5874 (check_x_display_info): Make non-static (for frame.c).
5875 (struct x_frame_parm_table, x_frame_parms): Remove.
5876 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5877 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5878 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5879 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5880 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5881 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5882 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5883 Remove. Use generic functions instead.
5884 (enum resource_types): Remove.
5885 (x_set_scroll_bar_default_width): New global function (for frame.c).
5886 (Fx_create_frame): Depend on x_figure_window_size to add space for
5887 toolbar and setup size_hint_flags.
5888 (x_frame_parm_handlers): New table for redisplay_interface.
5889 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 5890
e072891b 5891 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 5892 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
5893 (x_redisplay_interface): Add x_frame_parm_handlers member.
5894
5895 * w32gui.h (XrmDatabase): New (dummy) typedef.
5896
5897 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5898 (struct w32_display_info): Fix type of xrdb member.
5899 (enum FULLSCREEN_*): Remove.
5900 (x_fullscreen_adjust): Remove prototype.
5901
5902 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5903 parameters now defined in frame.h and frame.c.
f63fd14e 5904 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5905 (enum x_frame_parms): Remove (bogus, unused enum).
5906 (check_x_display_info): Make non-static (for frame.c).
5907 (struct x_frame_parm_table, x_frame_parms): Remove.
5908 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5909 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5910 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5911 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5912 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5913 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5914 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5915 Remove. Use generic functions instead.
5916 (enum resource_types): Remove.
5917 (x_set_scroll_bar_default_width): New global function (for frame.c).
5918 (Fx_create_frame): Depend on x_figure_window_size to add space for
5919 toolbar and setup size_hint_flags.
5920 (w32_frame_parm_handlers): New table for redisplay_interface.
5921 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 5922
e072891b
KS
5923 * w32term.c: Remove unnecessary extern declarations.
5924 (x_fullscreen_adjust): Remove. Use generic instead.
5925 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5926
5927 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5928
5929 * macgui.h (XrmDatabase): New (dummy) typedef.
5930
5931 * macterm.h (EMACS_CLASS): Remove.
5932 (struct mac_display_info): Add xrdb member.
5933 (struct mac_output): Add want_fullscreen member.
5934
5935 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5936 parameters now defined in frame.h and frame.c.
f63fd14e 5937 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5938 (check_x_display_info): Make non-static (for frame.c).
5939 (struct x_frame_parm_table, x_frame_parms): Remove.
5940 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5941 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5942 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5943 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5944 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5945 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5946 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5947 Remove. Use generic functions instead.
5948 (enum resource_types): Remove.
5949 (x_set_scroll_bar_default_width): New global function (for frame.c).
5950 (mac_frame_parm_handlers): New table for redisplay_interface.
5951 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 5952
e072891b
KS
5953 * macterm.c: Remove unnecessary extern declarations.
5954 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5955
3e6a560b
KS
5956 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5957 included from it (atimer.h and systime.h).
5958
7b7b454e
AS
59592003-03-30 Andreas Schwab <schwab@suse.de>
5960
5961 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5962 parameters for shift_glyphs_for_insert.
5963
5964 * macterm.c (x_redisplay_interface): Add missing entry for
5965 draw_vertical_window_border.
5966
beb402de
KG
59672003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5968
5969 * fileio.c (Fexpand_file_name): In the no-handler case, after
5970 expanding, look again for a handler and invoke it. This is needed
5971 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5972 expansion produces "/user@host:/bar/../baz" which needs to be
5973 expanded again for the finame result "/user@host:/baz".
5974
b676f356
JD
59752003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5976
5977 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5978 of area to be redrawn for better performance.
5979
3c671a56
SM
59802003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5981
5982 * xterm.c (take_vertical_position_into_account): Remove.
5983 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5984 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5985 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5986 (x_set_toolkit_scroll_bar_thumb): Simplify.
5987 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5988 (XTread_socket): Remove unused var.
5989 (x_make_frame_invisible): Replace goto with else.
5990
5991 * xdisp.c (set_vertical_scroll_bar): New fun.
5992 (redisplay_window): Use it.
5993
84f2e615
RS
59942003-03-26 Richard M. Stallman <rms@gnu.org>
5995
5996 * xdisp.c (update_tool_bar): Recompute tool bar if
5997 update_mode_lines is set. Set w->update_mode_line
5998 only if the tool bar contents actually change.
5999 (update_menu_bar): Undo previous change.
6000
70b6104c
JD
60012003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6002
5fd6f727
JD
6003 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6004 (xg_frame_set_char_size): Calculate scroll bar width before frame
6005 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6006 (xg_separator_p): Check for all documented separator types.
6007 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6008 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6009
70b6104c
JD
6010 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6011 so tool bar gets updated.
6012
d9b36d19
SM
60132003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6014
6015 * data.c (store_symval_forwarding): Re-instate part of the code
6016 that was deleted with too much enthusiasm.
6017
60182003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6019
6020 * data.c (store_symval_forwarding): Delete special read-only
6021 hack for type == -1, since we now use ->constant instead.
6022 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6023
6024 * buffer.c (overlays_in): Declare static.
6025 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6026 `constant' field rather than the variable's `type' field.
6027
365fa1b3
AC
60282003-03-24 Andrew Choi <akochoi@shaw.ca>
6029
6030 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6031
6032 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6033
6034 * fns.c [MAC_OSX]: Do not redefine vector.
6035
6036 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6037
6038 * macgui.h: Remove definition of No_Cursor.
6039
d9b36d19 6040 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6041
6042 * xdisp.c: Define No_Cursor.
6043 (x_write_glyphs, notice_overwritten_cursor)
6044 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6045 (note_mouse_highlight): Remove Mac-specific code.
6046 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6047
c0bcce6f
JPW
60482003-03-24 John Paul Wallington <jpw@gnu.org>
6049
6050 * xdisp.c (redisplay_window): If mini window's buffer is not
6051 empty, then redisplay it like other windows.
6052
a526b96c
KS
60532003-03-23 Kim F. Storm <storm@cua.dk>
6054
6055 * w32term.c (w32_draw_window_cursor): Fix last change.
6056
37ab321e
KH
60572003-03-23 Kenichi Handa <handa@m17n.org>
6058
a526b96c
KS
6059 * alloc.c (make_string_from_bytes, make_specified_string):
6060 Add `const' for the arg CONTENTS.
37ab321e
KH
6061
6062 * lisp.h (make_string_from_bytes, make_specified_string):
6063 Prototypes adjusted.
6064
7863d625
JD
60652003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6066
a526b96c 6067 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6068
7863d625
JD
6069 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6070 (XG_SB_RANGE): New define.
6071
6072 * gtkutil.c (xg_fixed_handle_expose): New function.
6073 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6074 expose events.
6075 (xg_update_scrollbar_pos): Take two more arguments, left and width
6076 of scroll bar including borders.
6077 Clear left and right part outside scroll bar separately as some
6078 themes have bars that are not an even number of pixels.
d9b36d19 6079 Don't set reallocate_redraws, don't call
7863d625
JD
6080 gdk_window_process_all_updates.
6081 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6082 so no need to change it. Calculate size and value with XG_SB_RANGE.
6083
d9b36d19
SM
6084 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6085 Pass left and width of scroll bar including borders to
7863d625
JD
6086 xg_update_scrollbar_pos.
6087
af0ad939
TTN
60882003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6089
6090 * Makefile.in: Make sure space precedes end-of-line backslashes.
6091
b22139fd
KS
60922003-03-22 Kim F. Storm <storm@cua.dk>
6093
6094 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6095 Add generic versions here. Remove system specific versions
6096 defined elsewhere.
6097
6098 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6099 Add prototypes.
6100
6e6410cf
KS
6101 * xterm.h (STORE_NATIVE_RECT): New macro.
6102
5c9cc435
KS
61032003-03-21 Kim F. Storm <storm@cua.dk>
6104
00c64fab
SM
6105 * xdisp.c (get_glyph_string_clip_rect):
6106 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6107
6108 * dispextern.h (struct redisplay_interface): Add active_p
6109 argument to draw_window_cursor member. All uses changed.
6110
acd37560
KS
61112003-03-21 Kim F. Storm <storm@cua.dk>
6112
6113 The following changes consolidate code related to writing and
6114 inserting glyphs, exposing frame, the tool bar, the mouse face,
6115 the output cursor, and help echo from xterm.c, w32term.c and
6116 macterm.c into xdisp.c. It also generalizes the use of the
6117 window_part enum instead of using numeric values throughout.
af0ad939 6118
acd37560
KS
6119 * xdisp.c: Consolidate gui-independent code here.
6120 Include keymap.h.
6121 (Qhelp_echo): Import.
6122 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6123 (help_echo_string, help_echo_window, help_echo_object)
6124 (previous_help_echo_string, help_echo_pos): Declare here.
6125 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6126 (estimate_mode_line_height): Define here. Handle windowing
6127 systems directly (without using estimate_mode_line_height_hook).
6128 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6129 (update_window_cursor, update_cursor_in_window_tree)
6130 (fast_find_position, fast_find_string_pos)
6131 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6132 (expose_area, expose_line, expose_overlaps, expose_window)
6133 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6134 declared static as they are only used locally in xdisp.c.
6135 (draw_glyphs): Rename from x_draw_glyphs and make static.
6136 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6137 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6138 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6139 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6140 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6141 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6142 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6143 (note_mouse_highlight, x_clear_window_mouse_face)
6144 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6145 (x_intersect_rectangles): New generic functions for use by xdisp.c
6146 and GUI front-ends.
6147 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6148 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6149
6150 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6151 (NativeRectangle): Generic typedef for rectangle type.
6152 (enum window_part): Move here from window.c.
6153 (struct redisplay_interface): New members flush_display_optional,
6154 define_frame_cursor, clear_frame_area, draw_window_cursor,
6155 draw_vertical_window_border, shift_glyphs_for_insert.
6156 Rename member clear_mouse_face to clear_window_mouse_face.
6157 (estimate_mode_line_height_hook): Remove hook.
6158 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6159 (tool_bar_item_info): Remove prototype.
6160 (help_echo_string, help_echo_window, help_echo_object)
6161 (previous_help_echo_string, help_echo_pos)
6162 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6163 (x_stretch_cursor_p, output_cursor): Declare extern.
6164 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6165 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6166 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6167 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6168 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6169 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6170 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6171 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6172 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6173 Add prototypes.
6174 (mode_line_string, marginal_area_string): Fix prototypes.
6175
6176 * window.c (enum window_part): Move to dispextern.h.
6177 (coordinates_in_window): Use enum window_part member names
6178 instead of numbers to describe return value.
6179 (struct check_window_data): Change part member to window_part.
6180 (check_window_containing): Return window_part unaltered.
6181 (window_from_coordinates): Change part arg from int to enum
6182 window_part. Allow part arg to be null. All users changed.
6183
6184 * window.h (window_from_coordinates): Fix prototype.
6185
6186 * term.c (estimate_mode_line_height): Move to xdisp.c.
6187
6188 * keyboard.c (make_lispy_event): Use enum window_part.
6189
6190 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6191 window_part instead of int in arg list. Users changed.
6192
6193 * xterm.h (No_Cursor): Declare as None for X.
6194 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6195
acd37560
KS
6196 * xterm.c: Remove consolidated defines and code.
6197 (BETWEEN): Remove unused macro.
6198 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6199 (x_define_frame_cursor, x_clear_frame_area)
6200 (x_draw_window_cursor): New X-specific functions for RIF.
6201 (x_redisplay_interface): Add new members.
6202
6203 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6204
6205 * w32term.h (struct w32_output): Remove cross_cursor member.
6206
6207 * w32term.c: Remove consolidated defines and code.
6208 (BETWEEN): Remove unused macro.
6209 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6210 (w32_define_frame_cursor, w32_clear_frame_area)
6211 (w32_draw_window_cursor): New W32-specific functions for RIF.
6212 (w32_redisplay_interface): Add new members.
6213
a64387ee 6214 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6215 (XRectangle): Add X compatible rectangle type.
6216 (NativeRectangle): Declare as RECT for W32.
6217 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6218
6219 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6220
6221 * w32console.c: Remove consolidated defines and code.
af0ad939 6222
acd37560
KS
6223 * msdos.h (Display_Info): Add generic typedef.
6224
6225 * msdos.c: Remove consolidated defines and code.
6226 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6227
6228 * macterm.h (struct mac_output): Replace member cross_cursor by
6229 hand_cursor.
6230 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6231
6232 * macterm.c: Remove consolidated defines and code.
6233 (BETWEEN): Remove unused macro.
6234 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6235 (mac_define_frame_cursor, mac_clear_frame_area)
6236 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6237 (x_redisplay_interface): Add new members.
6238
6239 * macgui.h (No_Cursor): Define as 0 for Mac.
6240 (XRectangle): Add X compatible rectangle type.
6241 (NativeRectangle): Declare as Rect for Mac.
6242 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6243
204ccab1
KS
6244 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6245 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6246
9443fcf6 6247 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6248 included from it. Add dependency on keymap.h.
6249
6250 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6251
8ba01a70 62522003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6253
6254 * fileio.c (Fexpand_file_name): Fix previous change.
6255
8ba01a70 62562003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6257
6258 * fileio.c (Ffile_name_directory): Reconstruct file name by
6259 make_specified_string.
6260 (Ffile_name_nondirectory, Ffile_name_as_directory)
6261 (Fdirectory_file_name, Fexpand_file_name)
6262 (Fsubstitute_in_file_name): Likewise.
6263 (Fread_file_name): Compare decoded homedir with DIR and
6264 DEFAULT_FILENAME.
6265
6266 * alloc.c (make_specified_string): If NCHARS is negative, count
6267 the number of characters.
6268
19536747
JD
62692003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6270
de38ae5a
JD
6271 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6272 all widgets.
6273
19536747
JD
6274 * gtkutil.h: Removed xg_ignore_next_thumb.
6275
37ab321e 62762003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6277
6278 * coding.c (Vchar_coding_system_table): Remove this variable.
6279 (Vcoding_system_safe_chars): New variable.
6280 (intersection): Remove this function.
6281 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6282 all codings in SAFE_CODINGS.
00c64fab 6283 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6284 find_safe_codings. Get generic coding systems from
6285 Vcoding_system_safe_chars.
6286 (Fdefine_coding_system_internal): New function.
6287 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6288 Initialize and staticpro Vcoding_system_safe_chars.
6289
17097258
JD
62902003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6291
2a2071c3
JD
6292 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6293 equal old values before updating.
6294
17097258
JD
6295 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6296
6297 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6298
62992003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6300
6301 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6302 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6303 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6304 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6305 (xg_create_scroll_bar): Pass bar to button event callback.
6306 (xg_find_top_left_in_fixed): New function.
6307 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6308 whole scroll bar area. Get old position with
6309 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6310 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6311 dragging is in progress. Calculate whole as for Motif.
6312 Remove code that saved last values. Call gtk_range functions to
6313 set scroll bar sizes.
6314
6315 * gtkutil.h: Removed xg_ignore_next_thumb.
6316
8cb9dfbf
JB
63172003-03-17 Juanma Barranquero <lektu@terra.es>
6318
6319 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6320 and files included from it.
6321
00c64fab
SM
63222003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6323
6324 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6325 multiple occurrences of the same keymap under different prefixes.
6326 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6327
c45bb3b2
JR
63282003-03-16 Jason Rumney <jasonr@gnu.org>
6329
6330 * w32gui.h: Use HDC for Display.
6331
6332 * w32term.c (w32_encode_char): Prevent double-byte chars from
6333 crashing Emacs.
6334
6335 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6336 as binary.
6337
2a6d0874
JB
63382003-03-16 Juanma Barranquero <lektu@terra.es>
6339
6340 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6341
03eb5fab
KS
63422003-03-16 Kim F. Storm <storm@cua.dk>
6343
6344 The following changes consolidate some of the gui-independent
6345 parts of the processing and drawing of "glyph strings" from
6346 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6347
03eb5fab
KS
6348 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6349 21 bits (this reduces number of faces from 4M to 2M).
6350 Replace W32 specific w32_font_type member (2 bits) by generic
6351 font_type member (3 bits) for portability.
6352 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6353 (enum draw_glyphs_face): Define here.
6354 (struct glyph_string): Define here. Merge W32 and X versions.
6355 (struct redisplay_interface): New members per_char_metric,
6356 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6357 (VCENTER_BASELINE_OFFSET): Define here.
6358 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6359 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6360
6361 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6362 (dump_glyph_string): Moved here.
6363 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6364 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6365 (fill_composite_glyph_string, fill_glyph_string)
6366 (fill_image_glyph_string, fill_stretch_glyph_string)
6367 (left_overwritten, left_overwriting, right_overwritten)
6368 (right_overwriting, get_char_face_and_encoding)
6369 (set_glyph_string_background_width, compute_overhangs_and_x)
6370 (append_glyph, append_composite_glyph, produce_image_glyph)
6371 (take_vertical_position_into_account, append_stretch_glyph)
6372 (produce_stretch_glyph): New generic functions (based on X version).
6373 Call platform specific functions through rif.
6374 (INIT_GLYPH_STRING): New macro, hides W32 details.
6375 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6376 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6377 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6378 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6379 (notice_overwritten_cursor):
6380 Generic functions exported to platform modules. Users changed.
6381
6382 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6383 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6384 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6385 New macros for consolidated code.
2a6d0874 6386
03eb5fab
KS
6387 * xterm.c: Remove consolidated defines and code.
6388 (x_per_char_metric, x_encode_char)
6389 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6390 (x_redisplay_interface): Add new members.
6391
6392 * w32gui.h (Display): Add dummy typedef for consolidation.
6393 (XChar2b): Define alias for wchar_t for consolidation.
6394 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6395
6396 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6397 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6398 New macros for consolidation.
6399
fad49844 6400 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6401 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6402 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6403 (w32_per_char_metric): Change font_type arg to int for RIF.
6404 (w32_encode_char): Return int according to RIF requirements.
6405 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6406 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6407 x_get_glyph_overhangs.
6408 (w32_redisplay_interface): Add new members.
6409
6410 * macgui.h (XChar2b): Move typedef here for consolidation.
6411 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6412
6413 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6414 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6415 consolidation.
6416
6417 * macterm.c: Remove consolidated defines and code.
6418 (mac_per_char_metric): New function for RIF.
00c64fab 6419 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6420 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6421 (x_redisplay_interface): Add new members.
6422
00c64fab
SM
64232003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6424
6425 * keymap.c (Vmenu_events): New var.
6426 (syms_of_keymap): Initialize it.
6427 (where_is_internal): Check more carefully what is a menu event.
6428
225c7a07
RS
64292003-03-14 Richard M. Stallman <rms@gnu.org>
6430
6431 * lread.c (read1): After #!, exit loop on eof.
6432
cea9be54
JD
64332003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6434
9ea0e54d
JD
6435 * gtkutil.h: Add declaration for xg_frame_cleared.
6436
0cb35f4e
JD
6437 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6438
cea9be54
JD
6439 * gtkutil.c (struct xg_last_sb_pos): New structure.
6440 (handle_fixed_child): New function.
6441 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6442 and force a redraw on them.
6443 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6444 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6445 so we can avoid unneeded redraws.
6446 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6447 and force a redraw on the scroll bar.
6448 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6449 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6450 (xg_frame_cleared): New function.
cea9be54 6451
20b853f3
KH
64522003-03-13 Kenichi Handa <handa@m17n.org>
6453
6454 * coding.c (Fdetect_coding_region): Fix docstring.
6455 (Fdetect_coding_string): Fix docstring.
6456
7a555aff
AS
64572003-03-13 Andreas Schwab <schwab@suse.de>
6458
25cc0080
AS
6459 * gtkutil.c: Add prototype for create_menus.
6460
30225431
AS
6461 * data.c (long_to_cons): Fix type of top.
6462
6463 * xselect.c (selection_data_to_lisp_data): Use int instead of
6464 long for an integer of size 4.
6465
7a555aff 6466 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6467 (xg_tool_bar_help_callback): Likewise.
7a555aff 6468
a3e4741f
AS
64692003-03-12 Andreas Schwab <schwab@suse.de>
6470
6471 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6472
9668be7c
KS
64732003-03-12 Kim F. Storm <storm@cua.dk>
6474
03eb5fab 6475 The following changes consolidate the fringe handling from
9668be7c 6476 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6477
9668be7c
KS
6478 * xdisp.c: Consolidate fringe handling code here.
6479 (left_bits, right_bits, continued_bits, continuation_bits)
6480 (ov_bits, zv_bits): Define fringe bitmaps.
6481 (fringe_bitmaps): New array holding fringe bitmaps.
6482 (draw_fringe_bitmap): Draw a specific bitmap; call display
6483 specific drawing routine via rif->draw_fringe_bitmap.
6484 (draw_row_fringe_bitmaps): Generic replacement for
6485 x_draw_row_fringe_bitmaps; all callers changed.
6486 (compute_fringe_widths): Generic replacement for
6487 x_compute_fringe_widths; all callers changed.
6488
6489 * dispextern.h (enum fringe_bitmap_type): Define here.
6490 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6491 (fringe_bitmaps): Declare extern.
6492 (struct redisplay_interface): New member draw_fringe_bitmap.
6493 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6494
6495 * xterm.c: Remove generic fringe code.
6496 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6497 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6498
6499 * w32term.c: Remove generic fringe code.
6500 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6501 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6502
9668be7c
KS
6503 * macterm.c: Remove generic fringe code.
6504 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6505 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6506
00a88f32
SM
65072003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6508
6509 * print.c (Fprin1_to_string): Return unibyte string if possible.
6510
1d1de695
DK
65112003-03-09 David Kastrup <dak@gnu.org>
6512
6513 * process.c (read_process_output): We have allocated enough space
6514 for readmax and carryover, so actually use the alloted space.
6515
257f40f2
JD
65162003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6517
6518 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6519 toolkit scrollbar click.
6520
6521 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6522 for USE_GTK.
6523 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6524 also.
6525 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6526 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6527
257f40f2
JD
6528 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6529
6530 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6531 (xg_tool_bar_item_expose_callback): New function.
6532 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6533 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6534 on the tool bar widget.
6535 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6536 to expose on the tool bar item widgets.
6537
15213141
JD
65382003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6539
26b74a0b 6540 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6541 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6542 deleted from the image cache).
6543
15213141
JD
6544 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6545 the event isn't for a frame (i.e. for dialogs).
6546
20b853f3 65472003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6548
6549 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6550 composition components reaches the limit, terminate composing.
6551 (COMPOSITION_OK): New macro.
00a88f32 6552 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6553 composition is found.
6554 (coding_restore_composition): Adjust the number of composition
6555 components if it is not sane.
6556
c9029fe5
JB
65572003-03-06 Juanma Barranquero <lektu@terra.es>
6558
6559 * w32term.h (struct w32_display_info): Add xrdb member to support
6560 passing resources via -xrm on Windows.
6561
6562 * w32term.c (w32_make_rdb): New function.
6563 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6564 struct. Delete leftover code.
6565
6566 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6567 for resources passed on the command line.
6568
6569 * w32reg.c (w32_get_rdb_resource): New function.
6570 (x_get_string_resource): Use it, so resources passed with -xrm
6571 supercede the ones in the registry.
6572
9d00001f
JD
65732003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6574
6575 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6576 instead of x_top_window_to_frame.
6577
ca2417b9
JD
65782003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6579
6580 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6581 when restarting Emacs.
6582
5b20caf0
RS
65832003-03-03 Richard M. Stallman <rms@gnu.org>
6584
6585 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6586 to run kill-buffer-query-functions.
6587 (Qkill_buffer_query_functions): New var.
6588 (syms_of_buffer): Init and staticpro it.
6589
58e91b77
JD
65902003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6591
6592 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6593
932357b4
KS
65942003-02-25 Kim F. Storm <storm@cua.dk>
6595
6596 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6597 If centering point failed to make whole line visible and vscroll
6598 is non-zero, disable vscroll and try centering point again.
6599
6600 * lread.c (read1): Accept `single space' syntax like (? x).
6601
bb8db7e1
JD
66022003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6603
6604 * keyboard.c (cancel_hourglass_unwind): Surround with
6605 #ifdef HAVE_X_WINDOWS
6606
47d77aab
KH
66072003-02-25 Kenichi Handa <handa@m17n.org>
6608
6609 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6610 process only when "subprocesses" is defined.
6611
6a097c0c
SM
66122003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6613
6614 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6615
0b063c27
JB
66162003-02-24 Juanma Barranquero <lektu@terra.es>
6617
d1135afc
JB
6618 * callint.c (fix_command): Declare as static void and move before
6619 Fcall_interactively.
6620
0b063c27
JB
6621 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6622 (syms_of_xdisp): Don't initialize Qwhen.
6623
0af912f0
JD
66242003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6625
6626 * keyboard.c (cancel_hourglass_unwind): New function.
6627 (command_loop_1): Cancel hourglass with unwind-protect.
6628
120d0a23
RS
66292003-02-23 Richard M. Stallman <rms@gnu.org>
6630
6631 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6632 Detect (when ... (region-beginning)) etc.
6633 (Fcall_interactively): Call fix_command.
6634 (Qif, Qwhen): New variables.
6635 (syms_of_callint): Init and staticpro them.
0b063c27 6636
120d0a23
RS
6637 * regex.c (print_partial_compiled_pattern): Output to stderr.
6638
4ece81a6
KG
66392003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6640
6641 * dired.c (directory_files_internal): Don't expand directory.
6642 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6643 instead. From Lars Hansen <larsh@math.ku.dk>.
6644
e52bd6b7
SM
66452003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6646
6647 * fns.c (string_to_multibyte): Remove unused var i.
6648 (Flanginfo): Fix int/Lisp_Object mixup.
6649 (void_call2): New fun.
6650 (Fmap_char_table): Use it in place of call2.
6651
6652 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6653
6654 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6655
6656 * keymap.c (copy_keymap_1): Make it static.
6657
6658 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6659
c33ef7c4
JB
66602003-02-22 David Ponce <david@dponce.com>
6661
6662 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6663
16782258
JD
66642003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6665
6666 * process.h: Removed subtty field from struct Lisp_Process.
6667
6668 * process.c (create_process): Remove setting of subtty.
6669 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
6670 (Fprocess_running_child_p, process_send_signal):
6671 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
6672 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6673
3abeca61
KG
66742003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6675
6676 * keymap.c (Fdefine_key): Doc fix.
6677
92a8ce63
JB
66782003-02-21 Juanma Barranquero <lektu@terra.es>
6679
6680 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6681
6682 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6683 POLLING_PROBLEM_IN_SELECT.
6684
6685 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6686 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6687
6688 * s/hpux10-20.h: New file.
6689
e52bd6b7
SM
6690 * process.c (wait_reading_process_input):
6691 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 6692
20f1ef2e
KH
66932003-02-20 Kenichi Handa <handa@m17n.org>
6694
32d0a9dc
KH
6695 * fontset.c (check_fontset_name): If NAME is nil, return the
6696 default fontset.
6697 (override_font_info): New function.
e52bd6b7 6698 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
6699 (Ffontset_info): If FONTSET is not the default fontset, merge
6700 FONTSET onto the copy of the default fontset, and work on that
6701 copy. Document that NAME nil means the default fontset.
6702 (Ffontset_font): Document that NAME nil means the default fontset.
6703
20f1ef2e
KH
6704 * process.c (setup_process_coding_systems): If the process's
6705 in/out descriptor is -1, do nothing.
6706
77d1daf2
AS
67072003-02-19 Andreas Schwab <schwab@suse.de>
6708
e52bd6b7
SM
6709 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6710 Add prototypes.
77d1daf2 6711
f9a45bb3
KH
67122003-02-19 Kenichi Handa <handa@m17n.org>
6713
6714 * xfaces.c (try_alternative_families): Try all scalable fonts if
6715 Vscalable_fonts_allowed is not Qt.
6716
72ecb43c
JD
67172003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6718
6719 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6720
ee5be7c3
JD
67212003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6722
6723 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6724 names.
6725
6726 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 6727 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
6728 x_face_list_fonts.
6729 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6730 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6731
4cd519a7
KS
67322003-02-18 Kim F. Storm <storm@cua.dk>
6733
068f9882
KS
6734 * lread.c (read1): Fix last change.
6735 "`" is not always special. Allow "?" after a character constant.
4cd519a7 6736
7290a344
AC
67372003-02-18 Andrew Choi <akochoi@shaw.ca>
6738
6739 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6740
1f7fa69b
AS
67412003-02-18 Andreas Schwab <schwab@suse.de>
6742
6743 * window.c (window_scroll_pixel_based): Move outside a
6744 multi-glyph character before setting new window start.
6745
6746 * xdisp.c (in_display_vector_p): New function.
6747 * dispextern.h (in_display_vector_p): Declare.
6748
23e21195
KS
67492003-02-18 Kim F. Storm <storm@cua.dk>
6750
6751 * lread.c (read1): Fix and relax read syntax.
6752 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6753 Only recognize "," after dotted-pair dot if inside backquote.
6754 Never include "`" or "," (inside backquote) in a symbol.
6755 Allow dotted-pair dot after a character constant.
6756 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 6757
f098b121
JD
67582003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6759
6760 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6761 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6762 icons. Set name of tool bar to emacs-toolbar.
6763 (update_frame_tool_bar): Connect expose event to
6764 xg_tool_bar_expose_callback.
6765
63020c46
RS
67662003-02-17 Richard M. Stallman <rms@gnu.org>
6767
6768 * keyboard.c (this_command_key_count_reset): New variable.
6769 Initiatize to 0 where this_command_key_count is set.
6770 (read_char): Save and restore this_command_key_count_reset
6771 around input method code.
6772 (read_char): If this_command_key_count_reset, echo reread commands.
6773 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6774
fb4452cc
KH
67752003-02-17 Kenichi Handa <handa@m17n.org>
6776
6777 * fns.c (string_to_multibyte): Always return a multibyte string.
6778
bd11cc09
JR
67792003-02-16 Jason Rumney <jasonr@gnu.org>
6780
e52bd6b7
SM
6781 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6782 Negative max_fonts parameter means list all.
bd11cc09 6783
4cdf4bde
DL
67842003-02-14 Dave Love <fx@gnu.org>
6785
6786 * fns.c (Flanginfo): Doc fix.
6787
023b93f6
KS
67882003-02-13 Kim F. Storm <storm@cua.dk>
6789
37cd4238
KS
6790 * lread.c (read_escape): Interpret \s as a SPACE character, except
6791 for \s-X in a character constant which still is the super modifier.
6792 (read1): Signal an `invalid read syntax' error if a character
6793 constant is immediately followed by a digit or symbol character.
6794
140a6b7e
KS
6795 * search.c (Fmatch_data): Doc fix. Explicitly state that
6796 match-data is undefined if last search failed.
6797
023b93f6
KS
6798 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6799 All uses changed.
6800
7d5c86e5
JB
68012003-02-12 Juanma Barranquero <lektu@terra.es>
6802
6803 * eval.c (Fdefmacro): Fix typo.
6804
295fff2c
KS
68052003-02-12 Kim F. Storm <storm@cua.dk>
6806
6807 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6808 macro is a string, convert meta modifiers in string when copying
6809 the string into a vector.
6810
60f3202d
KS
68112003-02-11 Kim F. Storm <storm@cua.dk>
6812
6813 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6814
61cb0b53
KH
68152003-02-11 Kenichi Handa <handa@m17n.org>
6816
6817 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6818
7392e23c
KS
68192003-02-10 Kim F. Storm <storm@cua.dk>
6820
6821 * process.c: Doc fixes.
6822 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6823
ce4254bd
KH
68242003-02-10 Kenichi Handa <handa@m17n.org>
6825
9c7a329a
KH
6826 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6827
ce4254bd
KH
6828 * process.c (QCfilter_multibyte): New variable.
6829 (setup_process_coding_systems): New function.
e52bd6b7
SM
6830 (Fset_process_buffer, Fset_process_filter):
6831 Call setup_process_coding_systems.
ce4254bd
KH
6832 (Fstart_process): Initialize the member `filter_multibyte' of
6833 struct Lisp_Process.
6834 (create_process): Call setup_process_coding_systems.
6835 (Fmake_network_process): New keyward `:filter-multibyte'.
6836 Initialize the member `filter_multibyte' of struct Lisp_Process.
6837 Call setup_process_coding_systems.
6838 (server_accept_connection): Call setup_process_coding_systems.
6839 (read_process_output): If the process has a filter, decide the
6840 multibyteness of a string to given to the filter by
6841 `filter_multibyte' member of the process. If the process doesn't
6842 have a filter and the result of conversion is unibyte, use
6843 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6844 multibyte form.
6845 (Fset_process_coding_system): Call setup_process_coding_systems.
6846 (Fset_process_filter_multibyte): New function.
6847 (Fprocess_filter_multibyte_p): New function.
6848 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6849 Defsubr Sset_process_filter_multibyte and
6850 Sprocess_filter_multibyte_p.
6851
6852 * process.h (struct Lisp_Process): New member filter_multibyte.
6853
6854 * lisp.h (setup_process_coding_systems): Add prototype.
6855
6856 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6857 process, update coding systems for the process.
6858
b08d5f59
KH
68592003-02-09 Kenichi Handa <handa@m17n.org>
6860
6861 * fns.c (string_to_multibyte): New function.
6862 (Fstring_to_multibyte): New function.
6863 (syms_of_fns): Defsubr it.
6864
0dfd93c0
AS
68652003-02-08 Andreas Schwab <schwab@suse.de>
6866
6867 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6868 instead of the substitution.
6869
7b76ca1c
JD
68702003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6871
6872 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6873
6874 * xmenu.c (menu_position_func): Adjust menu popup position so that
6875 the menu is fully visible.
7b76ca1c 6876
2436a4e4
JD
68772003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6878
6879 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
6880 (x_make_frame_invisible, x_wm_set_icon_position):
6881 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
6882
6883 * xfns.c (x_set_name, x_set_title): Ditto.
6884
37d1e680
RS
68852003-02-04 Richard M. Stallman <rms@gnu.org>
6886
6887 * keyboard.c (echo_now): Update before_command_echo_length.
6888 (Freset_this_command_lengths): Reset this_command_key_count etc.
6889 immediately rather than arranging to do it later.
6890 (before_command_key_count_1, before_command_echo_length_1)
6891 (before_command_restore_flag): Vars deleted.
6892 (add_command_key): Don't handle before_command_restore_flag.
6893 (read_char, record_menu_key): Don't update before_command_key_count or
6894 before_command_echo_length.
6895 (read_char): Don't handle before_command_restore_flag.
6896
6897 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6898 in direct-output clauses if it wouldn't be called in the ordinary case.
6899
578846a3
KS
69002003-02-04 Kim F. Storm <storm@cua.dk>
6901
6902 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6903
49853a4d
JD
69042003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6905
6906 * gtkutil.c (remove_from_container): Copying list is not needed.
6907 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6908 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6909 on list returned from gtk_container_get_children to avoid memory leak.
6910
8b53dc06
JR
69112003-02-01 Jason Rumney <jasonr@gnu.org>
6912
5d54d177
JR
6913 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6914 local malloc.
6915 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6916 definitions in xpm.h.
6917 (init_xpm_functions): New function.
f63fd14e 6918 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
6919 (init_external_image_libraries): Try to load libXpm.dll.
6920
8b53dc06
JR
6921 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6922 timestamp.
6923
b222e415
DL
69242003-01-31 Dave Love <fx@gnu.org>
6925
6926 * syntax.c (Fskip_chars_forward)
6927 (open-paren-in-column-0-is-defun-start): Doc fix.
6928
c60ee5e7
JB
69292003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6930
6931 * fileio.c: Support // at start of name for Cygwin (just added proper
6932 preprocessor tests).
6933
6934 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6935
6936 * Makefile.in: Use @EXEEXT@ for Cygwin.
6937
6938 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6939
6940 * s/cygwin.h: Added for Cygwin port.
6941
53b37591
JB
69422003-01-31 Juanma Barranquero <lektu@terra.es>
6943
6944 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6945 when including gif_lib.h.
fe929957 6946 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
6947 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6948 Windows. Disable color table lookups. Call library functions
53b37591 6949 through pointers determined at runtime.
fe929957
JB
6950 (init_external_image_libraries): Try to load libungif.dll and
6951 libtiff.dll.
53b37591 6952
45415a8f
KH
69532003-01-31 Kenichi Handa <handa@m17n.org>
6954
6955 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 6956 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 6957
a97e4138
JD
69582003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6959
e52bd6b7 6960 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 6961
6eed9bed
DL
69622003-01-30 Dave Love <fx@gnu.org>
6963
6964 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6965 (Fgarbage_collect): Use them.
6966 (init_alloc, syms_of_alloc): Set them up.
6967
100dcd40
JB
69682003-01-30 Juanma Barranquero <lektu@terra.es>
6969
6970 * w32fns.c (init_external_image_libraries): Add missing operator.
6971
fbd852af
JR
69722003-01-29 Jason Rumney <jasonr@gnu.org>
6973
6974 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6975 an alternative name for jpeg.dll.
6976
8a2d8020
KH
69772003-01-29 Kenichi Handa <handa@m17n.org>
6978
6979 * xdisp.c (set_cursor_from_row): Pay attention to string display
6980 properties.
6981
058c18c7
AC
69822003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6983
6984 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6985 <escape>.
6986 (keycode_to_xkeysym_table): Reformat and add more comments.
6987 (XTread_socket): Drop special case for backspace.
6988
385f11cf
AC
69892003-01-28 Andrew Choi <akochoi@shaw.ca>
6990
6991 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6992 values in old-style RGB specs.
6993
c922a224
JB
69942003-01-27 Juanma Barranquero <lektu@terra.es>
6995
6996 * w32fns.c (init_external_image_libraries): Try alternate names for the
6997 jpeg dll.
6998
0a1d6de0
JD
69992003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7000
7001 * gtkutil.c (create_dialog, xg_separator_p)
7002 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7003 before calling strcmp or strlen.
7004
a97e4138 70052003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7006
7007 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7008 and handle image load failure.
7009
28908312
JR
70102003-01-26 Jason Rumney <jasonr@gnu.org>
7011
7012 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7013 New functions.
f63fd14e
JB
7014 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7015 Disable color table lookups. Call jpeg library functions
28908312
JR
7016 through pointers determined at runtime.
7017 (init_external_image_libraries): Try to load jpeg.dll.
7018
84e47416
RS
70192003-01-25 Richard M. Stallman <rms@gnu.org>
7020
7021 * lisp.h: Declare format2 instead of format1.
7022
7023 * fileio.c (barf_or_query_if_file_exists):
7024 Call format2 instead of format1.
7025
7026 * editfns.c (format2): New function, replaces format1
7027 but takes exactly two Lisp Objects as format args.
7028
7029 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7030
a97e4138 70312003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7032
7033 * xterm.h: Change to return value of x_dispatch_event to int.
7034
7035 * xterm.c (x_filter_event): New function.
7036 (event_handler_gdk, XTread_socket): Call x_filter_event.
7037 (x_dispatch_event): Change to return value of finish.
7038 (event_handler_gdk): Use return value from x_dispatch_event.
7039
7040 * xfns.c (x_window): Call create_frame_xic for GTK version to
7041 initialize input methods.
7042
7043 * gtkutil.h: Add (void) prototypes.
7044
7045 * gtkutil.c (create_menus): Remove code that puts the help menu to
7046 the right.
7047
54eefef1
JR
70482003-01-25 Jason Rumney <jasonr@gnu.org>
7049
7050 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7051 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7052 (png_load): Adjust colors for Windows. Use Windows
7053 bitmaps. Disable color table lookups.
c262430d
JR
7054 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7055 (init_png_functions): New function.
7056 (png_read_from_memory, png_load): Call png library functions
7057 through pointers determined at runtime.
7058 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7059 (init_external_image_libraries): New function.
7060 (init_xfns): Call it.
54eefef1 7061
1a9e275b
AS
70622003-01-24 Andreas Schwab <schwab@suse.de>
7063
7064 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7065
a97e4138 70662003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7067
7068 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7069 of static initializer.
7070
422eec7e
DL
70712003-01-24 Dave Love <fx@gnu.org>
7072
7073 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7074 architectures.
7075
7076 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7077 Use __alignof__.
7078
2a026b04
KH
70792003-01-24 Kenichi Handa <handa@m17n.org>
7080
7081 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7082 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7083 (command_loop_1): Call adjust_point_for_property with proper
7084 second arg.
7085
a18bb28d
JR
70862003-01-22 Jason Rumney <jasonr@gnu.org>
7087
7088 Sync changes with xterm.c and xfns.c.
7089
7090 * w32term.c (x_draw_glyph_string_foreground)
7091 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7092
7093 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7094 phys_cursor's hpos is overwritten. This is still not completely
7095 correct, as it doesn't really make sense to use hpos at all to
7096 get the cursor glyph (as that is relative to the width of the
7097 characters on the line, which may have changed during the update).
7098
7099 * w32term.c (notice_overwritten_cursor): Handle the special case
7100 of the cursor being in the first blank non-text line at the
7101 end of a window.
7102
7103 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7104 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7105 Compute from the x position returned by x_draw_glyphs.
7106
7107 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7108 except for NO_CURSOR and system caret, to make phys_cursor_width
7109 contain what its name suggests.
7110 (notice_overwritten_cursor): Consider the cursor image erased if
7111 the output area intersects the cursor image in y-direction.
7112
6a097c0c
SM
7113 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7114 note_mode_line_highlight and extend.
a18bb28d
JR
7115
7116 * w32term.c (last_window): New variable.
7117 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7118 (note_mouse_movement): Remove reimplemented code in #if 0.
7119
7120 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7121 not update_mode_lines, and always set it to 1.
7122
ac6e47ef
JR
71232003-01-21 Jason Rumney <jasonr@gnu.org>
7124
7125 * w32fns.c (IDC_HAND): Define it if system headers don't.
7126
71272003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7128
7129 * w32term.h (struct w32_output): New member hand_cursor.
7130 (WM_EMACS_SETCURSOR): New message definition.
7131
7132 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7133 function w32_define_cursor.
7134 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7135 position, change member name output_data.x to output_data.w32 and
7136 add function w32_define_cursor.
7137 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7138 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7139 (w32_initialize_display_info):
7140 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7141
7142 * w32fns.c (Vx_hand_shape): New variable.
7143 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7144 WM_EMACS_SETCURSOR.
7145 (x-create-frame): Setup Cursor types.
7146
ceb39a17
JB
71472003-01-21 David Ponce <david@dponce.com>
7148
ac6e47ef 7149 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7150 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7151 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7152 2002-09-30.)
ac6e47ef
JR
7153 (w32_draw_relief_rect): Declare all args.
7154 (w32_define_cursor): New.
7155
7156 * w32fns.c (w32_load_cursor): New function.
7157 (w32_init_class): Use it.
7158 (x_put_x_image): Declare all args.
7159
46cf0bed
JB
71602003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7161
7162 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7163
a97e4138 71642003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7165
7166 * gtkutil.c: Must include stdio.h before termhooks.h
7167
83fc9c63
DL
71682003-01-21 Dave Love <fx@gnu.org>
7169
7170 * alloc.c (Fgc_status): Print zombie list.
7171 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7172 Fix assignment of zombies.
7173 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7174 Don't take car of non-cons.
7175
7176 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7177
7178 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7179
fe04b8c8
JR
71802003-01-20 David Ponce <david@dponce.com>
7181
7182 * w32menu.c (digest_single_submenu): Declare all args.
7183
7184 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7185 changes in xmenu.c:
7186
7187 (parse_single_submenu): Use individual keymap's prompt
7188 string as pane name, if there is one.
7189 (set_frame_menubar): Save menu_items_n_panes from each call to
7190 parse_single_submenu and use it when calling digest_single_submenu.
7191
539e69a9
ST
71922003-01-20 Steven Tamm <steventamm@mac.com>
7193
7194 * macterm.c (XTread_socket): Checks for valid, visible window
7195 before sending a scroll-wheel event.
7196
675d000f
RS
71972003-01-20 Richard M. Stallman <rms@gnu.org>
7198
7199 * xdisp.c (redisplay_window): If mini window's buffer is not
7200 a minibuffer, then redisplay it like other windows.
7201
a97e4138 72022003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7203
7204 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7205 external tool bar before setting tool bar height.
7206
048addec
JD
72072003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7208
7209 * xterm.c (handle_one_xevent): Surround popup_activated
7210 with #ifdef:s for non-toolkit version.
7211
7212 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7213 (gtkutil.o): New file.
7214 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7215 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7216
7217 * gtkutil.c: New file for GTK version.
7218
7219 * gtkutil.h: New file for GTK version.
7220
7221 * xterm.h: Add xt_or_gtk_widget.
7222 Include gtk files for USE_GTK.
7223 (struct x_output): Add toolbar_height.
7224 (struct x_output): Add GTK widgets and Gdk size_hints.
7225 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7226 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7227 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7228
7229 * xterm.c: Include gtkutil.h for USE_GTK.
7230 Declare extern void free_frame_menubar for USE_GTK.
7231 (note_mouse_highlight): Check popup_activated for USE_GTK.
7232 (xt_action_hook): Don't compile if USE_GTK.
7233 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7234 (xg_scroll_callback): New function.
7235 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7236 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7237 for USE_GTK.
7238 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7239 xg_show_scroll_bar for USE_GTK.
7240 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7241 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7242 (event_handler_gdk): New function for USE_GTK.
7243 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7244 (handle_one_xevent): Make sure widget is mapped before
7245 calling x_real_positions for USE_GTK.
7246 (XTread_socket): Add GTK event loop for USE_GTK.
7247 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7248 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7249 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7250 (x_iconify_frame): Add code for USE_GTK.
7251 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7252 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7253 is in gtkutil.c.
7254 (x_term_init): Add initialization for GTK.
7255 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7256
7257 * xmenu.c: Include gtkutil.h for USE_GTK.
7258 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7259 (single_menu_item, single_menu_item, Fx_popup_dialog):
7260 Check for USE_GTK.
048addec
JD
7261 (popup_widget_loop): New function for USE_GTK.
7262 (x_activate_menubar): Add code for USE_GTK.
7263 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7264 (menu_highlight_callback, menubar_selection_callback):
7265 Add USE_GTK versions.
048addec
JD
7266 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7267 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7268 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7269 is in gtkutil.c.
7270 (popup_selection_callback): New version for USE_GTK.
7271 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7272 one USE_X_TOOLKIT version.
048addec
JD
7273 (xmenu_show): Call create_and_show_popup_menu.
7274 (dialog_selection_callback): New version for USE_GTK.
7275 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7276 one USE_X_TOOLKIT version.
048addec
JD
7277 (xdialog_show): Call create_and_show_dialog.
7278
7279 * xfns.c: Include gtkutil for USE_GTK.
7280 (x_window_to_frame, x_any_window_to_frame)
7281 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7282 (x_top_window_to_frame): Add code for USE_GTK.
7283 (x_set_background_color): Call xg_set_background_color for GTK.
7284 (x_set_menu_bar_lines): Check for USE_GTK.
7285 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7286 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7287 (x_window): Call xg_create_frame_widgets for USE_GTK.
7288 (Fx_create_frame): Check for USE_GTK
7289 (Fx_file_dialog): New implementation for USE_GTK.
7290
7291 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7292 (update_menu_bar): Add check for USE_GTK.
7293 (update_tool_bar): Add check for USE_GTK and external tool bar.
7294 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7295 (redisplay_internal): Add check for USE_GTK and popup_activated.
7296 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7297 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7298 (display_menu_bar): Add check for USE_GTK
7299
7300 * lisp.h: Declare Vx_resource_name extern.
7301
a64387ee 7302 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7303 for USE_GTK.
7304 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7305
7306 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7307 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7308 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7309
7310 * fileio.c (Fread_file_name): Add check for USE_GTK.
7311
6bdb309a
SM
7312 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7313 Add check for USE_GTK.
048addec
JD
7314
7315 * config.in: Added HAVE_GTK
7316
7317 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7318
73192003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7320
7321 * charset.h (Funibyte_char_to_multibyte): Export.
7322
73232003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7324
7325 * xmenu.c (mouse_position_for_popup): New function.
7326 (Fx_popup_menu): Call mouse_position_for_popup for X and
7327 mouse_position_hook for others.
7328
73292003-01-17 Kim F. Storm <storm@cua.dk>
7330
7331 * editfns.c (Finsert): Mention `string-make-multibyte' and
7332 `string-as-multibyte' in doc string.
7333
73342003-01-17 Kenichi Handa <handa@m17n.org>
7335
7336 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7337
048addec
JD
7338 * editfns.c (Fformat): Convert an unibyte char argument that is
7339 formatted by "%c" to multibyte if the total result must be a
7340 multibyte string.
cd7df9c0 7341
048addec 73422003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7343
048addec
JD
7344 * process.c (set-process-filter): Document unibyte/multibyte-ness
7345 of string argument.
56210ecd 7346
048addec 73472003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7348
048addec 7349 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7350
048addec
JD
7351 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7352 (re_search_2): Likewise.
6df8b9fe 7353
048addec 73542003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7355
048addec
JD
7356 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7357 buffer is unibyte.
292ddc31 7358
048addec 73592003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7360
048addec 7361 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7362
048addec
JD
7363 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7364 (Fprevious_char_property_change)
7365 (Fnext_single_char_property_change)
7366 (Fprevious_single_char_property_change, Fnext_property_change)
7367 (Fnext_single_property_change, Fprevious_property_change)
7368 (Fprevious_single_property_change, Fadd_text_properties)
7369 (Fput_text_property, Fset_text_properties)
7370 (Fremove_text_properties, Fremove_list_of_text_properties)
7371 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7372
048addec 73732003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7374
048addec
JD
7375 * process.h (struct Lisp_Process): New member plist replaces old
7376 member private_vars. All uses changed.
63e4e4c6 7377
048addec 7378 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7379 (QCplist): Rename from QCvars. Change all uses.
048addec 7380 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7381 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7382 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7383 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7384
048addec 73852003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7386
6bdb309a 7387 * m/delta.h: Remove (obsolete).
e833850f 7388
048addec 73892003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7390
048addec
JD
7391 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7392 behaviour in front of symlinks.
7393 (Fdelete_file): Raise an error on directories.
817cb127 7394
048addec 73952003-01-13 Dave Love <fx@gnu.org>
817cb127 7396
048addec 7397 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7398
048addec 73992003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7400
048addec
JD
7401 * minibuf.c (minibuffer_completion_contents):
7402 Error if point is inside prompt.
3e8cf2ea 7403
048addec
JD
7404 * keyboard.c (command_loop_1): Don't redisplay directly
7405 if there's a post-command-hook.
3e8cf2ea 7406
048addec
JD
7407 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7408 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7409
048addec 74102003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7411
048addec 7412 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7413
048addec
JD
7414 * process.c (QCvars): New variable.
7415 (syms_of_process): Intern and staticpro it.
7416 (Fset_process_contact): Removed function.
7417 (Fprocess_variable, Fset_process_variable): New functions.
7418 (syms_of_process): Defsubr them.
7419 (Fstart_process): Initialize private_vars plist to nil.
7420 (Fmake_network_process): New arg :vars to setup the private
7421 variables for new network process.
7422 (server_accept_connection): Copy server's private variables to
7423 client process.
2c10f029 7424
048addec
JD
7425 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7426 crashes). Code rewritten and simplified. Now directly aligns the
7427 pointer and recalculates pure_bytes_used, rather than aligning the
7428 size and adjusting the pointer.
b8a76c6c 7429
048addec 74302003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7431
048addec
JD
7432 * process.c (Fset_process_contact): New function.
7433 (syms_of_process): defsubr it.
7434 (make-network-process): Update doc.
3a8d0899 7435
048addec 74362003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7437
048addec
JD
7438 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7439 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7440
048addec 74412003-01-10 Dave Love <fx@gnu.org>
4abc7470 7442
048addec 7443 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7444
048addec 74452003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7446
048addec
JD
7447 * process.c (Fmake_network_process): Convert new port number
7448 to host byte order for `:service t' case. From Mario Lang.
bf338245 7449
048addec 74502003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7451
048addec
JD
7452 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7453 instead of XtAppProcessEvent.
bf338245 7454
048addec
JD
7455 * xterm.c (handle_one_xevent): New function.
7456 (x_dispatch_event): New function.
7457 (XTread_socket): Call handle_one_xevent.
bf338245 7458
048addec 7459 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7460
048addec
JD
7461 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7462 call XQueryPointer to get coordinates.
7463 (popup_get_selection): Do not set popup_activated_flag to zero,
7464 let popup_deactivate_callback do that. Needed for Motif.
7465 Call x_dispatch_event instead of XtDispatchEvent.
7466 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7467
048addec 74682003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7469
6bdb309a 7470 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7471 connection's local address in :local property of contact info.
7472 (Fmake_network_process): Record local network address for new
7473 client processes in :local property of contact info.
6bdb309a 7474 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7475
048addec 74762003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7477
048addec 7478 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7479
048addec 74802003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7481
048addec 7482 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7483
048addec
JD
7484 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7485 use the same test as for custom-variable-p.
8c6d74c6 7486
048addec 74872003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7488
048addec
JD
7489 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7490 Count LAST_LINE_MISFIT in scroll margin for end of window.
7491 Move label too_near_end before setting SCROLL_MARGIN_POS.
7492 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7493
048addec
JD
7494 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7495 scroll_conservatively case. If scrolling that much doesn't change
7496 STARTP, move it down one line.
e833850f 7497
048addec
JD
7498 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7499 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7500
048addec
JD
7501 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7502 selected frame.
8c6d74c6 7503
048addec
JD
7504 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7505 (syms_of_keymap): staticpro them.
7506 (Fapropos_internal): Initialize them and clear them out.
7507 Don't GCPRO them.
8c6d74c6 7508
048addec
JD
7509 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7510 Doc fixes.
8c6d74c6 7511
048addec
JD
7512 * lisp.h: New misc type Lisp_Save_Value.
7513 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7514 (XSAVE_VALUE): New macro.
7515 (struct Lisp_Save_Value): New data type.
7516 (union Lisp_Misc): Add u_save_value alternative.
7517 (make_save_value): Declared.
8c6d74c6 7518
048addec 7519 * alloc.c (make_save_value): New function.
8c6d74c6 7520
048addec
JD
7521 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7522 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7523
048addec 75242003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7525
048addec 7526 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7527
048addec
JD
7528 * keyboard.c (command_loop_1): Call adjust_point_for_property
7529 in direct action cases for Qforward_char and Qbackward_char.
7530 Set already_adjusted so it won't be done twice.
8c6d74c6 7531
048addec 75322002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7533
048addec
JD
7534 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7535 type definition of size_t.
8c609cff 7536
048addec 75372003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7538
048addec
JD
7539 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7540 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7541
048addec 75422002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7543
048addec
JD
7544 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7545 to default to t.
fa634a5e 7546
048addec 75472002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7548
048addec 7549 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7550
048addec 75512002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7552
048addec
JD
7553 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7554 allow building in a different directory than source. Uses some
7555 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7556
048addec 75572002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7558
048addec
JD
7559 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7560 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7561 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7562 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7563
048addec 75642002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7565
048addec
JD
7566 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7567 <scroll-down-aggressively>: Doc fix.
2155ecf3 7568
048addec
JD
7569 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7570 string as pane name, if there is one.
7571 (set_frame_menubar): Save menu_items_n_panes from each call to
7572 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 7573
048addec
JD
7574 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7575 Don't try to make last line fully visible if it is past end of window.
61f1d295 7576
048addec 75772002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 7578
048addec
JD
7579 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7580 (mac_menu_show): Add support for hierarchical popup menus.
7581 (add_menu_item): Remove indentation support.
7582 (fill_submenu, fill_menu): Create hierarchical menus
7583 instead of using indentation.
0b17a217 7584
048addec 75852002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 7586
048addec
JD
7587 * xdisp.c (try_cursor_movement): Don't call try_window here.
7588 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 7589
048addec 7590 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 7591
048addec 75922002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 7593
048addec
JD
7594 * macterm.c (XTread_socket): Call KeyTranslate for control and
7595 meta to deal correctly shifted non-alpha characters, like C-S-5
7596 being treated like C-%. Does not look for shift key to deal
7597 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 7598
048addec 75992002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 7600
048addec
JD
7601 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7602 If it is non-nil, run timers. Use an unwind-protect to requeue
7603 the events that were read ahead.
7604 (popup_get_selection_unwind): New subroutine.
7605 (popup_get_selection_queue): File-scope variable now holds that queue.
7606 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7607 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7608 Use an unwind-protect to pop down the dialog box.
7609 (xdialog_show_unwind): New subroutine implements that.
f02cac82 7610
048addec
JD
7611 * xdisp.c (row_containing_pos): Change exit test using last_y.
7612 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 7613
048addec
JD
7614 * lread.c (load_error_handler): New function.
7615 (Fload): Handle errors in Fsubstitute_in_file_name.
7616 Don't expect Fsignal to return.
f02cac82 7617
048addec
JD
7618 * eval.c: Errors and throws work right with interrupt blocking.
7619 (struct catchtag): New elt interrupt_input_blocked.
7620 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7621 (internal_catch, Fcondition_case, internal_condition_case)
7622 (internal_condition_case_1, internal_condition_case_2): Save it.
7623 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 7624
048addec 7625 * editfns.c (Fformat): Add parens.
f02cac82 7626
048addec
JD
7627 * dired.c (file_name_completion): Fix that change.
7628 Delete special quit-handling code; just use QUIT.
f02cac82 7629
048addec 76302002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 7631
048addec
JD
7632 * dired.c (file_name_completion): Close directory on error
7633 just as in directory_files_internal.
1a590729 7634
048addec 76352002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 7636
048addec
JD
7637 * window.c (Fset_window_configuration): Set old_point to correct
7638 value when new_current_buffer == current_buffer.
f02cac82 7639
048addec 76402002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 7641
048addec
JD
7642 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7643 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7644 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 7645
048addec
JD
7646 These changes were in part based upon suggestions made by Peter
7647 'Luna' Runestig [peter@runestig.com].
9785d95b 7648
048addec
JD
7649 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7650 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 7651 g_b_init_get_sid_identifier_authority ): Add several static
048addec 7652 global variables.
9785d95b 7653
048addec
JD
7654 * w32.c (globals_of_w32): New function. Used to initialize those
7655 global variables that must always be initialized on startup even
7656 when the global variable initialized is non zero. Its primary
7657 purpose at this time is to set the global variables
7658 g_b_init_is_windows_9x, g_b_init_open_process_token,
7659 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7660 g_b_init_get_sid_identifier_authority to 0 on startup.
7661 Called from main.
9785d95b 7662
048addec
JD
7663 * w32.c (is_windows_9x): Perform initialization only if
7664 g_b_init_is_windows_9x is equal to 0. On initialization set
7665 g_b_init_is_windows_9x equal to 1.
2308af15 7666
048addec
JD
7667 * w32.c (open_process_token): Perform initialization only if
7668 g_b_init_open_process_token is equal to 0. On initialization set
7669 g_b_init_open_process_token equal to 1.
2308af15 7670
048addec
JD
7671 * w32.c (get_token_information): Perform initialization only if
7672 g_b_init_get_token_information is equal to 0. On initialization
7673 set g_b_init_get_token_information equal to 1.
9785d95b 7674
048addec
JD
7675 * w32.c (lookup_account_sid): Perform initialization only if
7676 g_b_init_lookup_account_sid is equal to 0. On initialization
7677 set g_b_init_lookup_account_sid equal to 1.
9785d95b 7678
048addec
JD
7679 * w32.c (get_sid_identifier_authority): Perform initialization
7680 only if g_b_init_get_sid_identifier_authority is equal to 0.
7681 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 7682
f63fd14e 7683 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
7684 those global variables that must always be initialized on startup
7685 even when the global variable initialized is non zero.
7686 Its primary purpose at this time is to initialize the global variable
7687 track_mouse_event_fn.
9785d95b 7688
a64387ee 7689 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 7690 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 7691
048addec 7692 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 7693
f63fd14e 7694 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
7695 initialize those global variables that must always be initialized
7696 on startup even when the global variable initialized is non zero.
7697 Its primary purpose at this time is to initialize the global
7698 variables get_menu_item_info and set_menu_item_info.
9785d95b 7699
048addec
JD
7700 * w32menu.c (initialize_frame_menubar): Remove initialization of
7701 get_menu_item_info and set_menu_item_info.
9785d95b 7702
048addec 7703 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 7704
048addec
JD
7705 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7706 Declare them.
9785d95b 7707
048addec
JD
7708 * emacs.c (main): Call globals_of_w32 prior to calling
7709 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7710 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7711 is defined.
9785d95b 7712
048addec
JD
7713 * w32term.c (x_update_window_begin): Fix Windows API error
7714 detected by BoundsChecker. Test to determine if
7715 w32_system_caret_hwnd is NULL prior to attempting to use
7716 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 7717
048addec
JD
7718 * w32term.c (x_update_window_end): Fix Windows API error
7719 detected by BoundsChecker. Test to determine if
7720 w32_system_caret_hwnd is NULL prior to attempting to use
7721 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 7722
048addec 77232002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 7724
048addec
JD
7725 * coding.c (coding_system_require_warning): New variable.
7726 (syms_of_coding): DEFVAR it.
b6da19ef 7727
048addec 7728 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 7729
048addec
JD
7730 * fileio.c (choose_write_coding_system): Even if
7731 Vcoding_system_for_write is non-nil, if
7732 coding_system_require_warning is nonzero, call
7733 Vselect_safe_coding_system_function.
bfcf6dbe 7734
048addec 77352002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 7736
048addec
JD
7737 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7738 (lisp): Add font-core.
2c568af5 7739
048addec 77402002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 7741
048addec
JD
7742 * textprop.c (text_read_only): New arg `propval'.
7743 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7744 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 7745
048addec 77462002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 7747
048addec 7748 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 7749
048addec 77502002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 7751
048addec
JD
7752 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7753 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7754 Be more careful about when help_events are generated.
96720f09 7755
048addec 77562002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 7757
048addec
JD
7758 * macterm.c (mac_check_for_quit_char): Correctly set the
7759 modifiers of the event to 0.
7760 * mac.c (sys_select): Duplicate rfds before calling select to
7761 ensure that rfds survive the while loop.
e5ae1c49 7762
048addec 77632002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 7764
048addec
JD
7765 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7766 row_containing_pos returned NULL.
2eb46b2d 7767
048addec 77682002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 7769
6bdb309a 7770 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 7771 non-blocking.
6bdb309a 7772 (sys_select): Fix sys_select to not use a timeout larger than
048addec 7773 the one given.
b11f1d8a 7774
048addec 77752002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 7776
048addec 7777 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 7778
048addec 77792002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 7780
048addec
JD
7781 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7782 as the last thing.
a4ac5b17 7783
048addec 77842002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 7785
048addec 7786 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 7787
048addec 77882002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 7789
048addec
JD
7790 * editfns.c (Fformat): Handle precision in string conversion
7791 specifiers like libc functions do (ie, print at most that many
7792 characters).
85cce843 7793
048addec 77942002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 7795
048addec
JD
7796 * xdisp.c (row_containing_pos): Check more carefully
7797 whether charpos is really in the row before returning it.
0d4d26a7 7798
048addec 77992002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 7800
048addec 7801 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 7802
048addec
JD
7803 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7804 each stack frame. This may change as it could be time consuming.
0d4d26a7 7805
048addec
JD
7806 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7807 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 7808 (mac_initialize): Add code to check for pressing of quit_char
048addec 7809 in the OS event queue.
b11f1d8a 7810
048addec
JD
7811 * mac.c (sys_select): Call mac_check_for_quit_char every second
7812 while blocking on select.
0d4d26a7 7813
048addec
JD
7814 * mac.c (sys_read): Use sys_select to test for input first
7815 before calling read, to allow C-g to break.
9252f7bc 7816
048addec 78172002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 7818
048addec 7819 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 7820
048addec 7821 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 7822
048addec 7823 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 7824
048addec
JD
7825 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7826 autoload.
9252f7bc 7827
048addec 7828 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 7829
048addec 7830 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 7831
048addec 78322002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 7833
048addec 7834 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 7835
048addec 78362002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 7837
048addec 7838 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7839
048addec 7840 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7841
048addec 7842 * alloca.c: Don't use #error.
02d588e2 7843
048addec 78442002-12-03 Dave Love <fx@gnu.org>
02d588e2 7845
048addec
JD
7846 * buffer.c (Qucs_set_table_for_input): New.
7847 (Fget_buffer_create): Use it.
7848 (Qset_buffer_major_mode_hook): Deleted.
7849 (Fset_buffer_major_mode): Revert previous change.
7850 (init_buffer_once): Intern ucs-set-table-for-input.
7851 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7852 Add &Qucs_set_table_for_input.
451e2697 7853
048addec 78542002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 7855
048addec
JD
7856 * callint.c (Fcall_interactively): Use next_event only if less
7857 than key_count.
72742a99 7858
048addec 78592002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 7860
048addec
JD
7861 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7862 names to 255 characters.
72742a99 7863
048addec
JD
7864 * macterm.c (XTread_socket): If all frames have been collapsed,
7865 expand the first one before handling drag-and-drop events.
72742a99 7866
048addec
JD
7867 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7868 which is detected by autoconf.
40e6ff95 7869
048addec 78702002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 7871
048addec
JD
7872 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7873 offset in two hints table to allow prebinding to be redone and
7874 allow the executable to be stripped.
c02138c6 7875
048addec 78762002-11-29 Dave Love <fx@gnu.org>
c02138c6 7877
048addec
JD
7878 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7879 already provided.
0e47bbf7 7880
048addec 78812002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 7882
048addec
JD
7883 * xdisp.c (start_display): Check more intelligently for
7884 whether the line is continued.
7885 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 7886
048addec 78872002-11-28 Dave Love <fx@gnu.org>
44129dcb 7888
048addec
JD
7889 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7890 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 7891
048addec 78922002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 7893
048addec
JD
7894 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7895 more descriptive error output from lread.c:Fload upon most require
7896 cycles during boostrapping.
1637fd2c 7897
048addec 78982002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 7899
048addec
JD
7900 * fileio.c (Finsert_file_contents): Give a more appropriate error
7901 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 7902
048addec
JD
7903 * dired.c (Ffile_attributes): Don't return negative file sizes for
7904 files bigger than 2Gb when off_t is 32 bit.
540c2788 7905
048addec 79062002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 7907
048addec 7908 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 7909
048addec
JD
7910 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7911 Test GETPGRP_VOID instead.
7912 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 7913
048addec
JD
7914 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7915 Don't define.
7916 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 7917
048addec 7918 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 7919
048addec 79202002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 7921
048addec
JD
7922 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7923 supported.
4042a81a 7924
048addec 79252002-11-25 Dave Love <fx@gnu.org>
4042a81a 7926
048addec 7927 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 7928
048addec 7929 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 7930
048addec 79312002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 7932
048addec 7933 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 7934
048addec 79352002-11-24 Steven Tamm <steventamm@mac.com>
82122254 7936
048addec
JD
7937 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7938 determine the size of pointers alloced in unexed space instead
7939 of using possibly invalid emacs_zone pointers. This fixes the
7940 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 7941
048addec 79422002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 7943
048addec 7944 * search.c (Fstring_match): Doc fix.
c1ee53bc 7945
048addec
JD
7946 * callint.c (Fcall_interactively): If a command fails because
7947 `*' detects a read-only buffer, but RECORD_FLAG is set,
7948 record it anyway if the args don't actually do tty input.
5598c32e 7949
048addec 79502002-11-22 Dave Love <fx@gnu.org>
5598c32e 7951
048addec 7952 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 7953
048addec
JD
7954 * keyboard.c (interrupt_signal): Provide forward declaration.
7955 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 7956
048addec 7957 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 7958
048addec 79592002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 7960
048addec
JD
7961 * eval.c (interactive_p): Skip any number of bytecode
7962 and special form frames, in any order.
516eea8e 7963
048addec 79642002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 7965
048addec
JD
7966 * w32fns.c (convert_mono_to_color_image): New function.
7967 (xbm_load, xbm_load_image): Use it when foreground or background
7968 is explicitly set.
04dbfa08 7969
048addec 79702002-11-19 Dave Love <fx@gnu.org>
04dbfa08 7971
048addec 7972 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 7973
048addec 79742002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 7975
048addec
JD
7976 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7977 (XPutPixel): Swap blue and red.
7978 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7979 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7980 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7981 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 7982
048addec 79832002-11-18 Dave Love <fx@gnu.org>
d824beee 7984
048addec 7985 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 7986
048addec 7987 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 7988
048addec 7989 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 7990
048addec
JD
7991 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7992 malloc, realloc, calloc.
d824beee 7993
048addec
JD
7994 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7995 (bcmp): Don't define.
d824beee 7996
048addec 7997 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 7998
048addec 7999 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8000
048addec 8001 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8002
048addec 8003 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8004
048addec
JD
8005 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8006 Don't include alloca.h.
d824beee 8007
048addec 8008 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8009
048addec 8010 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8011
048addec 8012 * process.c (_GNU_SOURCE): Don't define.
1998560a 8013
048addec 8014 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8015
048addec 80162002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8017
048addec 8018 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8019
048addec 80202002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8021
048addec
JD
8022 * dispextern.h (struct face): Add `overstrike' field.
8023 * xterm.c (x_draw_glyph_string_foreground)
8024 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8025 * xfaces.c (load_face_font): Set `face->overstrike' based on
8026 result from choose_face_font.
8027 (best_matching_font, choose_face_font): Add `needs_overstrike'
8028 argument, and use it to return whether overstriking is desirable
8029 for this face/font combo.
8030 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8031
048addec 80322002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8033
048addec
JD
8034 This change is my fix for the following entry in etc/PROBLEMS:
8035 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8036 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8037
048addec
JD
8038 * w32.c: Added wrapper functions around the win32 API functions
8039 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8040 GetSidIdentifierAuthority. These wrapper functions serve two
8041 purposes:
8042 1. They ensure that the wrapped function can never be called
8043 when Emacs is running on an operating system on which they are
8044 not supported (Microsoft Windows 95 / 98 / ME).
8045 2. They call the wrapped functions via function pointers rather
8046 than calling them directly. This avoids taking advantage of the
8047 undocumented fact that although these functions are not supported
8048 in the 9x branch of Microsoft Windows, the functions do exist in
8049 the version of advapi32.dll that is found in the 9x branch of
8050 Microsoft Windows.
f60ae425 8051
6bdb309a 8052 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8053 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8054 and GetSidIdentifierAuthority with calls to the newly added
8055 wrapper functions.
f60ae425 8056
048addec
JD
8057 * w32.h: Added extern declarations for the following functions:
8058 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8059 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8060
6bdb309a 8061 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8062 function pointer track_mouse_event_fn in the handler for the
8063 WM_SETFOCUS message.
3582b6a3 8064
6bdb309a 8065 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8066 reinitialize the function pointers set_menu_item_info and
8067 get_menu_item_info.
f60ae425 8068
048addec 80692002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8070
048addec
JD
8071 * sound.c: Added a partial implementation of play-sound-internal
8072 for Microsoft Windows. Added various #ifdef / #else / #endif
8073 code blocks to separate the code that will compile under
8074 Microsoft Windows from the code that is specific to Gnu/Linux.
8075 Moved several blocks of code around to make this separation of code
8076 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8077
048addec 8078 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8079
048addec
JD
8080 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8081 added support for play-sound-internal under Windows would be
8082 included in the build of Emacs.
517f42a0 8083
048addec 80842002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8085
048addec 8086 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8087
048addec 8088 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8089
048addec 80902002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8091
048addec
JD
8092 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8093 (adjust_point_for_property): Move out of display and invisible even if
8094 we were already inside before (in case a property was added while
8095 we weren't looking). Be more careful when handling invisible props.
8096 Skip invisible text as if it really wasn't there at all.
aab83f91 8097
048addec 80982002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8099
048addec
JD
8100 * w32term.c (x_draw_image_foreground)
8101 (w32_draw_image_foreground_1): Use standard copy and invert
8102 operations to draw images.
aab83f91 8103
048addec
JD
8104 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8105 depth of 1.
8106 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8107 (XPutPixel): Don't invert bits here.
a4478a76 8108
048addec 81092002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8110
048addec
JD
8111 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8112 (w32_draw_image_foreground_1): Handle image masks.
8113 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8114
048addec
JD
8115 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8116 (x_from_xcolors): Adjust RGB values for W32.
8117 (image_background, image_background_transparent)
8118 (postprocess_image, x_to_xcolors, x_disable_image)
8119 (x_build_heuristic_mask): Adapt for W32 and enable.
8120 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8121 (xbm_load): Remove unused variable.
03670a65 8122
048addec 81232002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8124
048addec 8125 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8126
048addec 81272002-11-14 Dave Love <fx@gnu.org>
59daa29a 8128
048addec 8129 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8130
048addec
JD
8131 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8132 * xmenu.c (unuse_menu_items, digest_single_submenu):
8133 * xfns.c (x_put_x_image):
8134 * xdisp.c (message2_nolog, set_message):
8135 * undo.c (record_point):
8136 * terminfo.c (tparam):
8137 * syntax.c (scan_sexps_forward):
8138 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8139 * composite.c (update_compositions):
8140 * cm.c (calccost, cmgoto):
8141 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8142
048addec 8143 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8144
048addec
JD
8145 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8146 Don't declare.
59daa29a 8147
048addec 8148 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8149
048addec
JD
8150 * fns.c (Fcopy_sequence): Doc fix.
8151 (Fmap_char_table): Cast `call2'.
3947677c 8152
048addec
JD
81532002-11-14 Francesco Potorti` <pot@gnu.org>
8154
8155 * s/sol2-8.h: New file.
8156
81572002-11-14 Kim F. Storm <storm@cua.dk>
8158
8159 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8160 dependency on `risky-local-variable' and the :propertize form.
8161
81622002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8163
8164 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8165
8166 * syntax.c (scan_sexps_forward): Undo last patch.
8167 Use a more obvious fix: check eob before updating the syntax table.
8168
81692002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8170
8171 * syntax.c (scan_sexps_forward): Update syntax table before reading
8172 a char rather than after so we don't update the table past eob.
8173
81742002-11-09 Dave Love <fx@gnu.org>
8175
8176 * buffer.c (Fset_buffer_major_mode): Fix last change.
8177
8178 * regex.c (regexec): Fix pmatch declaration.
8179
8180 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8181
8182 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8183 to self-inserting characters.
8184 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8185
8186 * coding.c (Vtranslation_table_for_input): New.
8187 (syms_of_coding): DEFVAR it.
8188
81892002-11-08 Juanma Barranquero <lektu@terra.es>
8190
8191 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8192 window.
8193
81942002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8195
6bdb309a 8196 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8197 cp, and i.
8198
81992002-11-06 Dave Love <fx@gnu.org>
8200
8201 * buffer.c (Qset_buffer_major_mode_hook): New.
8202 (Fset_buffer_major_mode): Use it.
8203
82042002-11-06 Richard M. Stallman <rms@gnu.org>
8205
8206 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8207 and stop_polling.
8208
8209 * process.c (wait_reading_process_input):
8210 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8211 Avoid initialization for auto Lisp_Object var.
8212
8213 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8214
8215 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8216
82172002-11-05 Richard M. Stallman <rms@gnu.org>
8218
8219 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8220
8221 * callint.c (Fcall_interactively): New local filter_specs.
8222 (Fcall_interactively): Check for progn as well as let.
8223 Add a gcpro.
8224 (Qprogn): New variable.
8225 (syms_of_callint): Staticpro and init Qprogn.
8226
82272002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8228
8229 * lread.c (Feval_buffer): Doc fix.
8230
82312002-11-04 Dave Love <fx@gnu.org>
8232
8233 * keyboard.c (read_char): Always translate iff
8234 Vkeyboard_translate_table is a char table and c is valid.
8235
8236 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8237 and fix C types.
8238
82392002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8240
8241 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8242
8243 * editfns.c (get_pos_property): Don't hardcode Qfield.
8244
8245 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8246 overlays. Also handle `invisible' prop.
8247
82482002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8249
8250 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8251 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8252
82532002-11-01 Andreas Schwab <schwab@suse.de>
8254
8255 * editfns.c (Fmessage): Revert last change to properly handle %%.
8256
82572002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8258
8259 * xmenu.c (unuse_menu_items): New fun.
8260 (menu_items_inuse): New var.
8261 (syms_of_xmenu): Initialize it.
8262 (init_menu_items): Use it to detect re-entrance.
8263 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8264 (Fx_popup_menu): Remove spurious XSETFRAME.
8265
8266 * editfns.c (find_field): Make an exception for nil fields.
8267
82682002-11-01 Dave Love <fx@gnu.org>
8269
8270 * m/gec63.h: Deleted.
8271
82722002-10-31 Dave Love <fx@gnu.org>
8273
8274 * xterm.c (XTread_socket): Fix last change.
8275 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8276
82772002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8278
8279 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8280
82812002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8282
8283 * editfns.c (overlays_around, get_pos_property): New funs.
8284 (find_field): Use them.
8285 Also be careful not to modify POS before its last use.
8286 (Fmessage): Don't Fformat if there's nothing to format.
8287
82882002-10-30 Dave Love <fx@gnu.org>
8289
8290 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8291 [HAVE_PTY_H]; Include pty.h.
8292
8293 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8294
8295 * xterm.c (Qeql): Declare.
8296 (Vx_keysym_table): New.
8297 (syms_of_xterm): Initialize it.
8298 (XTread_socket): Use it. Deal with ASCII keysyms.
8299 (XSetIMValues) [HAVE_X11R6]: Prototype.
8300
8301 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8302 (lispy_kana_keys): Comment out.
8303 (make_lispy_event) [XK_kana_A]: Comment out.
8304 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8305 Fix sprintf call.
8306
8307 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8308 regexp.h change).
8309 (TERMINFO, LIBS_TERMCAP): Define.
8310
8311 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8312 (bcmp): Define conditional on HAVE_BCMP.
8313 (NO_SIOCTL_H): Don't define.
8314 (TIOCSIGSEND): Don't make conditional on IRIX6.
8315
8316 * s/sol2-5.h: Don't include strings.h.
8317 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8318
8319 * s/irix6-0.h (IRIX6): Don't define.
8320 (bcopy, bcmp, bzero): Don't undef.
8321
8322 * s/irix6-5.h: Don't include strings.h.
8323 (IRIX6): Don't define.
8324 (bcopy, bcmp, bzero): Don't undef.
8325
8326 * syntax.c (Fforward_comment): Doc fix.
8327
83282002-10-29 Kim F. Storm <storm@cua.dk>
8329
8330 * process.c (Fsignal_process): Allow PROCESS to be specified by
8331 name in addition to pid (as integer or string).
8332
83332002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8334
8335 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8336 environments.
8337
83382002-10-27 Kim F. Storm <storm@cua.dk>
8339
8340 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8341
8342 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8343
8344 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8345
8346 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8347
83482002-10-26 Richard M. Stallman <rms@gnu.org>
8349
8350 * editfns.c (Fformat): Detect invalid format letters for floats.
8351
83522002-10-25 Kenichi Handa <handa@m17n.org>
8353
8354 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8355 (x_set_title): Likewise.
8356
83572002-10-25 Juanma Barranquero <lektu@terra.es>
8358
8359 * macgui.h:
8360 * w32gui.h: Remove definition of XColor.
8361
8362 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8363
83642002-10-24 Kim F. Storm <storm@cua.dk>
8365
8366 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8367 Callers changed (supply dummy arg).
8368
8369 * lisp.h (get_window_cursor_type): Update prototype.
8370
8371 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8372 get_window_cursor_type to track system caret.
8373
83742002-10-24 Kim F. Storm <storm@cua.dk>
8375
8376 * process.c (Fformat_network_address): New function.
8377 (syms_of_process): Defsubr it.
8378 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8379 service/host is not set; before Emacs would crash in that case.
048addec
JD
8380 (Fmake_network_process): Don't use Ffind_operation_coding_system
8381 to setup coding system if host or service is not set.
8382
83832002-10-23 Juanma Barranquero <lektu@terra.es>
8384
8385 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8386
8387 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8388 COLORREF.
8389
8390 * macgui.h:
8391 * w32gui.h: Add definition of XColor.
8392
8393 * macfns.c:
8394 * w32fns.c:
8395 * xfaces.c: Remove definition of XColor.
8396
83972002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8398
8399 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8400
8401 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8402 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8403 window if it is dedicated.
8404 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8405 (Vspecial_display_function): Update docstring.
8406
8407 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8408 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8409 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8410
84112002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8412
8413 * casefiddle.c (casify_region): Don't treat a prefix char as part
8414 of a word when at the beginning.
8415
84162002-10-17 Juanma Barranquero <lektu@terra.es>
8417
8418 * lread.c (syms_of_lread): Fix typos.
8419
84202002-10-17 Dave Love <fx@gnu.org>
8421
8422 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8423
84242002-10-16 Richard M. Stallman <rms@gnu.org>
8425
8426 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8427
84282002-10-14 Juanma Barranquero <lektu@terra.es>
8429
8430 * w16select.c (syms_of_win16select): Fix docstring for
8431 `selection-coding-system'.
8432
8433 * w32select.c (syms_of_w32select): Likewise.
8434
84352002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8436
8437 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8438 a backslash-quoted char.
8439 (scan_lists, scan_sexps_forward): Pacify the compiler.
8440
84412002-10-13 Richard M. Stallman <rms@gnu.org>
8442
8443 * window.c (window_scroll): Set immediate_quit.
8444
8445 * print.c (print): When backquote form is the car of a list,
8446 output in old style. Use old_backquote_output to output all
8447 comma forms inside it in old style too.
8448
8449 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8450
84512002-10-11 Markus Rost <rost@math.ohio-state.edu>
8452
8453 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8454 batch mode).
8455
8456 * lread.c (Fload): Doc fix (load-suffixes).
8457
84582002-10-10 Steven Tamm <steventamm@mac.com>
8459
8460 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8461 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8462 Also switch the default to Qnil from Qt.
8463
84642002-10-08 Kenichi Handa <handa@m17n.org>
8465
8466 * coding.c (code_convert_region): When we need more GAP for
8467 conversion, pay attention to the case that coding->produced is not
8468 greater than coding->consumed.
8469
84702002-10-07 Richard M. Stallman <rms@gnu.org>
8471
8472 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8473
84742002-10-06 Andrew Choi <akochoi@shaw.ca>
8475
8476 * macmenu.c (mac_menu_show): Add j to count menu items; match
8477 menu_item_selection to it to find selected item.
8478
84792002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8480
8481 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8482 cases. The correct fix is to pass ReparentNotify to Xt.
8483 The shell widget interprets ConfigureNotify differently depending
8484 on if it has been reparented or not.
8485
84862002-10-05 Markus Rost <rost@math.ohio-state.edu>
8487
8488 * editfns.c (Fformat_time_string): Doc fix.
8489
84902002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8491
8492 * fns.c (Flength): Doc fix.
8493
84942002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8495
8496 * keyboard.c (keyremap): New struct.
8497 (read_key_sequence): Use it: globally replace keytran_foo with
8498 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8499 keytran_next and fkey_next to just `next'.
8500
85012002-10-04 Steven Tamm <steventamm@mac.com>
8502
8503 * macterm.c (keycode_to_xkeysym_table): Change return to be
8504 treated like an X keysym.
8505
85062002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8507
8508 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8509 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8510 This is to also handle x/y changes that occur because of a resize.
8511
85122002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8513
8514 * frame.c (Vdelete_frame_functions): New variable.
8515 (syms_of_frame): Initialize and defvar it.
8516 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8517 it when frame's `tooltip' parameter is non-nil.
8518
8519 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8520
8521 * w32fns.c (x_create_tip_frame): Likewise.
8522
8523 * macfns.c (x_create_tip_frame): Likewise.
8524
85252002-09-30 Kenichi Handa <handa@m17n.org>
8526
8527 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8528 -1 before calling ccl_driver.
8529
8530 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8531 Only when it is non-nil, handle composition sequence.
8532 (setup_coding_system) <0>: Don't force composition handling.
8533
8534 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8535
85362002-09-29 Richard M. Stallman <rms@gnu.org>
8537
8538 * search.c (Freplace_match): Adjust match data for the substitution
8539 just made in the buffer.
8540
8541 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8542 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8543
85442002-09-27 Richard M. Stallman <rms@gnu.org>
8545
8546 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8547 (read_char): Use them. Do all exits thru the end of the function.
8548
85492002-09-27 Kenichi Handa <handa@etl.go.jp>
8550
8551 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8552 is nil.
8553
85542002-09-26 Richard M. Stallman <rms@gnu.org>
8555
8556 * regex.h (__restrict_arr): Don't define if already defined.
8557
8558 * coding.c (run_pre_post_conversion_on_str):
8559 Save and restore Vdeactivate_mark.
8560
85612002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8562
8563 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8564
85652002-09-26 Kenichi Handa <handa@etl.go.jp>
8566
8567 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8568 nonzero, try face's family at first. Otherwise try FAMILY at first.
8569 (choose_face_font): If C is a single byte char or latin-1, call
8570 try_font_list with PREFER_FACE_FAMILY 1.
8571
85722002-09-21 Richard M. Stallman <rms@gnu.org>
8573
8574 * window.c (select_window_1): Don't select frame.
8575 Set frame's selected window only when frame itself is selected.
8576 (Fselect_window): Doc fix.
8577
85782002-09-18 Kim F. Storm <storm@cua.dk>
8579
8580 * process.c (make-network-process): Doc fix (there is no
8581 network-server-log-function hook).
8582
85832002-09-18 Richard M. Stallman <rms@gnu.org>
8584
8585 * print.c (print): Clear out the unused parts of Vprint_number_table.
8586 (syms_of_print): Doc fix for `print-number-table'.
8587
8588 * unexelf.c (unexec): Undo previous change.
8589
85902002-09-17 Andreas Schwab <schwab@suse.de>
8591
8592 * m/alpha.h [LINUX]: Don't define DATA_START.
8593
85942002-09-16 Dave Love <fx@gnu.org>
8595
8596 * unexelf.c (unexec): Deal with .got, reinstating change from
8597 25-08-1999.
8598
85992002-09-13 Richard M. Stallman <rms@gnu.org>
8600
8601 * s/sol2-6.h (UNEXEC): Comment out definition.
8602
8603 * unexsol.c (unexec): Don't downcase first letter of error msg.
8604
8605 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8606
86072002-09-12 Markus Rost <rost@math.ohio-state.edu>
8608
8609 * unexsol.c: Include buffer.h, charset.h, coding.h.
8610
86112002-09-11 Richard M. Stallman <rms@gnu.org>
8612
8613 * unexsol.c: Don't use report_file_error; do it by hand
8614 using dlerror.
8615
8616 * process.c (wait_reading_process_input, both versions):
8617 Before calling turn_on_atimers, call stop_polling.
8618
8619 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8620
8621 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8622 we go to too_near_end, call clear_glyph_matrix.
8623 (redisplay_window): After make_cursor_line_fully_visible,
8624 call clear_glyph_matrix and bypass `goto done'.
8625
8626 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8627 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8628
86292002-09-10 Richard M. Stallman <rms@gnu.org>
8630
8631 * fileio.c (Fdo_auto_save): Catch error making directory.
8632 Only call push_message if we need to.
8633 At the same time, make an unwind-protect to pop it.
8634 Rename local message_p to old_message_p.
8635 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8636 (do_auto_save_unwind): Don't call pop_message.
8637
8638 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8639
8640 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8641
8642 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8643
8644 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8645
86462002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8647
8648 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8649 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8650 (re_match_2_internal): Be more careful with infinite loops.
8651
86522002-09-10 Kim F. Storm <storm@cua.dk>
8653
8654 * macros.c (end_kbd_macro): New function.
8655 (Fend_kbd_macro): Use it.
8656
8657 * macros.h (end_kbd_macro): Declare extern.
8658
8659 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8660 end and save it instead of discarding it.
8661
86622002-09-09 Markus Rost <rost@math.ohio-state.edu>
8663
8664 * s/sol2-6.h: Fix typo. Add comment.
8665
86662002-09-09 Richard M. Stallman <rms@gnu.org>
8667
8668 * regex.c (regnum_t): Use signed int, not unsigned int.
8669
8670 * s/sol2-6.h: New file.
8671
8672 * s/sol2-5.h (UNEXEC): Definition deleted.
8673
86742002-09-08 Kim F. Storm <storm@cua.dk>
8675
8676 * macros.c (executing_macro_index): Change type to EMACS_INT.
8677 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8678
8679 * macros.h (executing_macro_index): Change type to EMACS_INT.
8680
86812002-09-06 Richard M. Stallman <rms@gnu.org>
8682
8683 * casetab.c (set_case_table): Make canon table point to eqv table.
8684
86852002-09-06 Juanma Barranquero <lektu@terra.es>
8686
8687 * coding.c (syms_of_coding): Fix spacing.
8688
8689 * composite.c (Fcompose_region_internal)
8690 (Fcompose_string_internal): Likewise.
8691
8692 * data.c (Flsh): Likewise.
8693
8694 * fontset.c (Fset_fontset_font): Likewise.
8695
8696 * macfns.c (Fx_server_max_request_size): Likewise.
8697
8698 * w16select.c (syms_of_win16select): Likewise.
8699
8700 * w32select.c (syms_of_w32select): Likewise.
8701
8702 * xselect.c (syms_of_xselect): Likewise.
8703
87042002-09-05 Richard M. Stallman <rms@gnu.org>
8705
8706 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8707 call EXTEND_RANGE_TABLE and return a proper value.
8708 (set_image_of_range): Don't call set_image_of_range_1
8709 if no TRANSLATE or if range includes all of Latin-1.
8710 Only call it for the Latin-1 part of the range.
8711 For other cases, make two separate ranges,
8712 one for the original specified characters and one for
8713 their case-conversions.
8714
87152002-09-04 Richard M. Stallman <rms@gnu.org>
8716
8717 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8718
8719 * window.c (displayed_window_lines): Correct for one-off bug
8720 in HEIGHT on non-window displays.
8721
8722 * regex.c (set_image_of_range_1): New function.
8723 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8724 Return a value to indicate running out of memory.
8725 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8726 (extend_range_table_work_area): New subroutine.
8727 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8728 Different calling conventions, and used from set_image_of_range{,_1}.
8729 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8730
87312002-09-04 Juanma Barranquero <lektu@terra.es>
8732
8733 * makefile.w32-in: All dependencies updated.
8734
87352002-09-01 Richard M. Stallman <rms@gnu.org>
8736
8737 * unexsol.c: New file.
8738
8739 * xfns.c (Qbox): Declare external, don't define.
8740
8741 * xdisp.c (redisplay_window) <force-start case>:
8742 If point is on semi-visible last line, reposition
8743 it at previous line.
8744
8745 * alloc.c (display_malloc_warning): Use display-warning.
8746 (malloc_warning_1): Function deleted.
8747
8748 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8749
8750 * lread.c (read1): Handle #! by skipping the line.
8751
87522002-08-31 Richard M. Stallman <rms@gnu.org>
8753
8754 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8755 Don't include LDFLAGS.
8756 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8757
87582002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8759
8760 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8761 member of x_display_info unless we compile for some window system.
8762
87632002-08-31 Kim F. Storm <storm@cua.dk>
8764
8765 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8766 (get_window_cursor_type): Don't use them.
8767 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8768
87692002-08-30 Kenichi Handa <handa@etl.go.jp>
8770
8771 * xdisp.c (get_next_display_element): Fix previous change.
8772
87732002-08-30 Andrew Choi <akochoi@shaw.ca>
8774
8775 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8776 (expose_window): Use it to fix the display of overlapping
8777 rows (merge code from xterm.c).
8778
8779 * macfns.c (Qbox): Add extern declaration.
8780
87812002-08-30 Juanma Barranquero <lektu@terra.es>
8782
8783 * w32fns.c (Qbox): Make extern.
8784 (syms_of_w32fns): Remove initialization of Qbox.
8785
87862002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8787
8788 * xfns.c (Fx_open_connection): Fix error message.
8789
87902002-08-30 Kim F. Storm <storm@cua.dk>
8791
8792 The following changes consolidates the handling of the cursor
8793 type in xdisp.c, moving duplicate code and functionality from
8794 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8795
8796 * frame.h (enum text_cursor_kinds): Consolidated here.
8797 Added DEFAULT_CURSOR value.
8798 (struct frame) <desired_cursor, cursor_width>
8799 <blink_off_cursor, blink_off_cursor_width>: New fields.
8800 Consolidated from output_x, output_w32 and output_mac structs.
8801 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8802 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8803
8804 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8805 Variables consolidated here.
8806 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8807 (Vcursor_in_non_selected_windows): Renamed from
8808 cursor_in_non_selected_windows and changed to Lisp_Object.
8809 (syms_of_xdisp): Define and staticpro new and moved variables.
8810 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8811 consolidated here. Recognize Qhollow setting.
8812 (set_frame_cursor_types): New function to set frame cursor types
8813 based on the frame parameters.
8814 (get_window_cursor_type): New function to calculate new cursor
8815 type and width for the specified window. Based on duplicated
8816 code consolidated here.
8817 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8818 check buffer-local alternate-cursor-type and blink-cursor-alist
8819 before using built-in blink off methods.
8820
8821 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8822
8823 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8824 (get_specified_cursor_type, get_window_cursor_type)
8825 (set_frame_cursor_types): Added prototypes.
8826
8827 * macfns.c (x_specified_cursor_type): Removed.
8828 (x_set_cursor_type): Use set_frame_cursor_types.
8829 (Qbar, Qbox): Removed.
8830 (syms_of_macfns): Don't intern or staticpro them.
8831
8832 * macterm.c (x_specified_cursor_type): Remove prototype.
8833 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8834 (x_display_and_set_cursor): Use get_window_cursor_type.
8835 Remove unused local variables cursor_non_selected, active_cursor.
8836 Redraw cursor if hbar cursor width changes.
8837 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8838
8839 * macterm.h (enum text_cursor_kinds): Removed.
8840 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8841 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8842 (FRAME_DESIRED_CURSOR): Macro removed.
8843
8844 * w32fns.c (Vblink_cursor_alist): Removed.
8845 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8846 (syms_of_w32fns): Don't intern, staticpro, or define them.
8847 (x_specified_cursor_type): Removed.
8848 (x_set_cursor_type): Use set_frame_cursor_types.
8849
8850 * w32term.c (x_specified_cursor_type): Remove prototype.
8851 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8852 (x_display_and_set_cursor): Use get_window_cursor_type.
8853 Remove unused local variables cursor_off_state.
8854 Redraw cursor if hbar cursor width changes.
8855 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8856
8857 * w32term.h (enum text_cursor_kinds): Removed.
8858 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8859 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8860 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8861 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8862 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8863 w32_highlight_frame.
8864
8865 * xfns.c (Vblink_cursor_alist): Removed.
8866 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8867 (syms_of_xfns): Don't intern, staticpro, or define them.
8868 (x_specified_cursor_type): Removed.
8869 (x_set_cursor_type): Use set_frame_cursor_types.
8870
8871 * xterm.c (x_specified_cursor_type): Remove prototype.
8872 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8873 (x_display_and_set_cursor): Use get_window_cursor_type.
8874 Remove unused local variables cursor_off_state.
8875 Redraw cursor if hbar cursor width changes.
8876
8877 * xterm.h (enum text_cursor_kinds): Removed.
8878 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8879 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8880 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8881 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8882 (x_specified_cursor_type): Remove prototype.
8883
88842002-08-28 Richard M. Stallman <rms@gnu.org>
8885
8886 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8887 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8888 (Vblink_cursor_alist): New variable.
8889 (syms_of_w32fns): Initialize and defvar it.
8890 (x_specified_cursor_type): Recognize Qbox for filled box.
8891 Exceptions are hollow boxes.
8892 (Qbox, Qhollow): New variables.
8893 (syms_of_w32fns): Initialize and staticpro them.
8894
8895 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8896 New macros.
8897 (struct w32_output): New fields blink_off_cursor,
8898 blink_off_cursor_width.
8899 (FRAME_CURSOR_WIDTH): New macro.
8900
8901 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8902 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8903
8904 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8905 for bar cursor.
8906
8907 * w32term.c (expose_overlaps): New function.
8908 (expose_window): Use it to fix the display of overlapping rows.
8909
89102002-08-28 Simon Josefsson <jas@extundo.com>
8911
8912 * xfns.c (Fx_open_connection): Improve help when X connection
8913 fails, xhost is insecure and xauth is better.
8914
89152002-08-28 Juanma Barranquero <lektu@terra.es>
8916
8917 * makefile.w32-in: Add missing dependencies on w32term.h and
8918 composite.h.
8919
8920 * emacs.c (USAGE1): Add missing newline.
8921
89222002-08-27 Andrew Choi <akochoi@shaw.ca>
8923
8924 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8925
89262002-08-27 Richard M. Stallman <rms@gnu.org>
8927
8928 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8929 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8930 (Vblink_cursor_alist): New variable.
8931 (syms_of_xfns): Initialize and defvar it.
8932 (x_specified_cursor_type): Recognize Qbox for filled box.
8933 Exceptions are hollow boxes.
8934 (Qbox, Qhollow): New variables.
8935 (syms_of_xfns): Initialize and staticpro them.
8936
8937 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8938 New macros.
8939 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8940
8941 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8942 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8943
8944 * emacs.c (main): Handle --script.
8945 (USAGE1): Mention --script.
8946 (standard_args): Define sort order for --script.
8947
89482002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8949
8950 * xdisp.c (redisplay_updating_p): Variable removed.
8951 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8952 New variables.
8953 (init_iterator): Don't free realized faces if
8954 inhibit_free_realized_faces is set.
8955 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8956 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8957 initialize Qinhibit_free_realized_faces.
8958
8959 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8960 when iterator is adding glyphs to a glyph matrix.
8961
89622002-08-27 Kenichi Handa <handa@etl.go.jp>
8963
8964 * xdisp.c (get_next_display_element): In unibyte case, don't use
8965 octal form for such eight-bit characters that can be converted to
8966 multibyte char.
8967
89682002-08-26 Kim F. Storm <storm@cua.dk>
8969
8970 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8971 and background colors. From Joe Buehler (tiny change).
8972
89732002-08-26 Miles Bader <miles@gnu.org>
8974
8975 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8976
89772002-08-25 Andrew Choi <akochoi@shaw.ca>
8978
8979 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8980 defined instead of MAC_OSX.
8981
8982 * s/darwin.h (select): Define select to sys_select only if
8983 HAVE_CARBON is defined.
8984 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8985 (DONT_REOPEN_PTY): #def it.
8986
8987 * macterm.c (XTread_socket): Remove code to call
8988 SendEventToEventTarget for keys with command modifiers when
8989 mac_command_key_is_meta is nil.
8990
89912002-08-24 Andreas Schwab <schwab@suse.de>
8992
8993 * eval.c (Fdefvar): Fix last change.
8994
89952002-08-23 Richard M. Stallman <rms@gnu.org>
8996
8997 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8998 Record variables in load history as (defvar . VAR).
8999 (Fdefvar): Don't record in load history if no initial value.
9000 (Qdefvar): New variable.
9001 (syms_of_eval): Init and staticpro it.
9002
9003 * lread.c (syms_of_lread): Doc fix.
9004 (build_load_history): Use Fmember to see if a definition
9005 is already in the Vload_history element.
9006
9007 * process.c (Fstart_process): Remove /: from program name.
9008
9009 * emacs.c (decode_env_path): Don't add /: if file name handler
9010 has a `safe-magic' property.
9011
9012 * callproc.c (Fcall_process): Remove /: from program name.
9013
90142002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9015
9016 * regex.c (PATFETCH): Remove the translating fetch.
9017 (PATFETCH_RAW): Rename to PATFETCH.
9018 (set_image_of_range): New fun.
9019 (SET_RANGE_TABLE_WORK_AREA): Use it.
9020 (regex_compile): Don't translate the pattern chars so eagerly.
9021 Only do it when inserting an `exactn' bytecode or when handling
9022 a char-range.
9023 (mutually_exclusive_p): Avoid empty statement.
9024
90252002-08-22 Kim F. Storm <storm@cua.dk>
9026
9027 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9028 end up on a partially visible line; this reverts a specific part
9029 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9030 display error which has been reported several times now.
9031 However it introduces the problem that changes was supposed to fix.
9032 See my comments in the source if you want to debug this further.
9033
90342002-08-20 Kenichi Handa <handa@etl.go.jp>
9035
9036 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9037
90382002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9039
9040 * msdos.c (croak): Add `void' to definition.
9041
c1380aa6 9042 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9043 Don't define them, they are defined in msdos.c.
9044
9045 * mem-limits.h [MSDOS]: Declare etext.
9046
9047 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9048 `const' since CORRECT_DIR_SEPS modifies its target.
9049
90502002-08-19 Kim F. Storm <storm@cua.dk>
9051
2fb0ce67 9052 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9053 KEEP-RECORD to avoid clearing lossage when we just want to clear
9054 the current key sequence (kmacro needs this).
9055
90562002-08-19 Kenichi Handa <handa@localhost>
9057
9058 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9059
9060 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9061 cons, return Qnil.
9062
90632002-08-17 Richard M. Stallman <rms@gnu.org>
9064
9065 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9066
9067 * sysdep.c [!VMS]: Include sys/files.h.
9068
9069 * editfns.c (save_restriction_restore): Defend from unchained marker.
9070
9071 * buffer.c (overlays_at): Handle extending vec uniformly.
9072 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9073
90742002-08-15 Andrew Choi <akochoi@shaw.ca>
9075
9076 * mac.c (init_mac_osx_environment): New function.
9077
9078 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9079
90802002-08-14 Kim F. Storm <storm@cua.dk>
9081
9082 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9083 executing macro before appending to it (when used from Lisp).
9084 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9085 which is called prior to each iteration of macro (for kmacro.el).
9086 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9087
9088 * lisp.h (Fexecute_kbd_macro): Update prototype.
9089
9090 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9091
90922002-08-14 Kenichi Handa <handa@etl.go.jp>
9093
9094 * xselect.c (QUTF8_STRING): New variable.
9095 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9096 (x_atom_to_symbol): Likewise.
9097 (x_get_local_selection): New argument local_request. If it is
9098 nonzero, call handler_fn with the second arg nil.
9099 (x_handle_selection_request): Call x_get_local_selection with
9100 local_request 0.
9101 (lisp_data_to_selection_data): Don't encode the string here.
9102 (Fx_get_selection_internal): Call x_get_local_selection with
9103 local_request 1.
9104 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9105
9106 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9107
9108 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9109
91102002-08-13 Richard M. Stallman <rms@gnu.org>
9111
9112 * minibuf.c (Fminibufferp): New function.
9113 (syms_of_minibuf): Defsubr it.
9114 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9115
91162002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9117
9118 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9119
91202002-08-12 Richard M. Stallman <rms@gnu.org>
9121
9122 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9123 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9124 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9125 already.
9126
9127 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9128
91292002-08-11 Andrew Choi <akochoi@shaw.ca>
9130
9131 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9132 (Vmac_pass_command_to_system): New variable.
9133 (Vmac_pass_control_to_system): New variable.
9134 (do_mouse_moved): Check wp with is_emacs_window.
9135 (XTread_socket): Check window_ptr with is_emacs_window.
9136 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9137 events back to Mac Toolbox for processing, depending on values of
9138 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9139 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9140 Vmac_pass_control_to_system.
9141
91422002-08-10 Kenichi Handa <handa@etl.go.jp>
9143
9144 * coding.c (unencodable_char_position): New function.
9145 (Funencodable_char_position): New function.
9146 (syms_of_coding): Defsubr Funencodable_char_position.
9147
91482002-08-10 Andrew Choi <akochoi@shaw.ca>
9149
9150 * mac.c (sys_select) [MAC_OSX]: New function.
9151
9152 * macterm.c (MakeMeTheFrontProcess): New function.
9153 (mac_initialize): Call MakeMeTheFrontProcess.
9154
9155 * s/darwin.h: Define select to sys_select.
9156
91572002-08-09 Richard M. Stallman <rms@gnu.org>
9158
9159 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9160
91612002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9162
9163 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9164 end of the buffer.
9165
91662002-08-08 Ken Raeburn <raeburn@mit.edu>
9167
9168 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9169
9170 * puresize.h (BASE_PURESIZE): Increase to 910000.
9171
91722002-08-08 Kenichi Handa <handa@etl.go.jp>
9173
9174 * coding.c (Ffind_operation_coding_system): For write-region, if
9175 VISIT is a filename, make it the target.
9176
91772002-08-07 Richard M. Stallman <rms@gnu.org>
9178
9179 * alloc.c (mark_object): Detect long lists for debugging.
9180 (mark_object_loop_halt): New variable.
9181
9182 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9183
9184 * data.c (Fmake_variable_frame_local): Doc fix.
9185
91862002-08-01 David Ponce <david@dponce.com>
9187
9188 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9189 (malloc_widget_value, free_widget_value)
9190 (w32_free_submenu_strings): Use them.
9191
9192 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9193 (push_menu_pane, push_menu_item, single_keymap_panes)
9194 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9195 (single_submenu, set_frame_menubar)
9196 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9197
9198 (Fx_popup_menu): Don't show pop up menu until preceding one is
9199 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9200
9201 * w32menu.c: Changes adapted from xmenu.c
9202 (set_frame_menubar): First parse all submenus,
9203 then make widget_value trees from them.
9204 Don't allocate any widget_value objects
9205 until we are done with the parsing.
9206 (parse_single_submenu): New function.
9207 (digest_single_submenu): New function.
9208 (single_submenu): Function deleted, replaced by those two.
9209
92102002-08-04 Andrew Choi <akochoi@shaw.ca>
9211
9212 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9213 returns a valid window pointer before proceeding for keyDown and
9214 autoKey events.
9215
92162002-08-03 Andrew Choi <akochoi@shaw.ca>
9217
9218 * macterm.c (USE_CARBON_EVENTS): New macro.
9219 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9220 (x_iconify_frame): Call CollapseWindow.
9221 (Vmac_reverse_ctrl_meta): New variable.
9222 (Vmac_wheel_button_is_mouse_2): New variable.
9223 (init_mac_drag_n_drop): New function.
9224 (mac_do_receive_drag): New function.
9225 (mac_handle_service_event): New function.
9226 (init_service_handler): New function.
9227 (mac_to_emacs_modifiers): New function.
9228 (mac_event_to_emacs_modifiers): New function.
9229 (mac_get_mouse_btn): New function.
9230 (mac_convert_event_ref): New function.
9231 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9232 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9233 mac_get_mouse_btn.
9234 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9235
9236 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9237 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9238 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9239 TOOL_BAR_EVENT for MAC_OS as well.
9240 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9241 as for WINDOWS_NT.
9242 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9243
9244 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9245
92462002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9247
9248 * xdisp.c (forward_to_next_line_start): Fix a condition that
9249 lead to a newline being skipped.
9250
92512002-08-02 Andrew Choi <akochoi@shaw.ca>
9252
9253 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9254
92552002-08-01 Richard M. Stallman <rms@gnu.org>
9256
9257 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9258
92592002-07-31 Andrew Choi <akochoi@shaw.ca>
9260
9261 * macfns.c: #undef init_process before #define-ing it.
9262
9263 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9264 HAVE_CARBON is defined.
9265
92662002-07-31 Richard M. Stallman <rms@gnu.org>
9267
9268 * xmenu.c (set_frame_menubar): First parse all submenus,
9269 then make widget_value trees from them.
9270 Don't allocate any widget_value objects
9271 until we are done with the parsing.
9272 (parse_single_submenu): New function.
9273 (digest_single_submenu): New function.
9274 (single_submenu): Function deleted, replaced by those two.
9275
92762002-07-30 Juanma Barranquero <lektu@terra.es>
9277
9278 * w32proc.c (syms_of_ntproc): Fix docstring of
9279 `w32-get-true-file-attributes'.
9280
92812002-07-28 Richard M. Stallman <rms@gnu.org>
9282
9283 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9284 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9285
9286 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9287
9288 * keyboard.c (make_lispy_event):
9289 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9290 Explicitly clear up_modifier in event->modifiers.
9291
92922002-07-27 Richard M. Stallman <rms@gnu.org>
9293
9294 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9295
9296 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9297 for bar cursor.
9298
92992002-07-26 Kenichi Handa <handa@etl.go.jp>
9300
9301 * coding.c (detect_coding_iso2022): While checking a byte sequence
9302 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9303 it in the normal loop.
9304
93052002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9306
9307 * xterm.c (expose_overlaps): New function.
9308 (expose_window): Use it to fix the display of overlapping rows.
9309
9310 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9311
93122002-07-23 Ken Raeburn <raeburn@gnu.org>
9313
9314 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9315 since it only depends on XUINT.
9316
9317 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9318 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9319 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9320 Macros deleted.
3947677c 9321
77d1daf2
AS
9322 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9323 its value over other approaches.
9324 * sysdep.c (start_of_data): Don't define the function if a macro
9325 form has been defined.
8a8e19a3 9326
048addec
JD
93272002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9328
9329 * xdisp.c (redisplay_updating_p): New variable.
9330 (init_iterator): Don't free realized faces when
9331 redisplay_updating_p is set.
9332 (redisplay_internal): Set redisplay_updating_p while updating
9333 the display.
9334
93352002-07-23 Richard M. Stallman <rms@gnu.org>
9336
9337 * editfns.c (Fmessage): Treat "" like nil.
9338
93392002-07-23 Kenichi Handa <handa@etl.go.jp>
9340
9341 * xdisp.c (face_before_or_after_it_pos):
9342 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9343
93442002-07-22 Juanma Barranquero <lektu@terra.es>
9345
9346 * callproc.c (init_callproc) [DOS_NT]:
9347 Initialize Vshared_game_score_directory to nil.
9348 (syms_of_callproc) [DOS_NT]: Likewise.
9349
93502002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9351
9352 * xdisp.c (display_line): Replace an abort with xassert.
9353
93542002-07-21 Richard M. Stallman <rms@gnu.org>
9355
9356 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9357 and END_UNCHANGED when setting buffer_unchanged_p.
9358 Use current_matrix_up_to_date_p to decide whether to use
9359 try_cursor_movement.
9360
9361 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9362
9363 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9364
9365 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9366 Set to nil if dir does not exist.
9367 (syms_of_callproc): Init unconditionally and simply.
9368
9369 * buffer.c (Fbuffer_list): Doc fix.
9370
93712002-07-21 Ken Raeburn <raeburn@gnu.org>
9372
9373 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9374
9375 * buffer.c (mmap_realloc): When shrinking, make sure number of
9376 pages to unmap is rounded towards zero.
9377
9378 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9379 (XSETINT): Deleted.
9380
9381 * m/att3b.h (XINT): Don't define.
9382 (VALBITS, VALMASK, XTYPE): Deleted.
9383 (DATA_SEG_BITS): Define.
9384 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9385 ARRAY_MARK_FLAG): Deleted.
9386 (DATA_SEG_BITS): Define.
9387 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9388 (DATA_SEG_BITS): Define.
9389
93902002-07-20 Richard M. Stallman <rms@gnu.org>
9391
9392 * print.c (print_error_message): New args CONTEXT and CALLER.
9393 Calls changed.
9394
9395 * lisp.h (print_error_message): Declare new args.
9396
9397 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9398 and CONTEXT to print_error_message, don't print them here.
9399 For a Quit, don't use Vsignaling_function.
9400 Call message_log_maybe_newline.
9401
9402 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9403
94042002-07-20 Kim F. Storm <storm@cua.dk>
9405
9406 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9407
94082002-07-19 Ken Raeburn <raeburn@gnu.org>
9409
9410 * bytecode.c (struct byte_stack): Pointers into byte string now
9411 point to const.
9412 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9413 const.
9414 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9415 * coding.c (encode_eol, detect_coding, detect_eol):
9416 (decode_coding, encode_coding, detect_coding_system):
9417 Source strings now treated as const.
9418 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9419 modify Lisp string contents.
9420 * coding.h (decode_coding, encode_coding, detect_coding,
9421 detect_eol): Declarations updated.
9422 * composite.c (compose_chars_in_text): Treat Lisp string contents
9423 as const.
9424 * dispnew.c (safe_bcopy): Source pointer now points to const.
9425 * lisp.h (STRING_COPYIN): New macro.
9426 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9427 (internal_with_output_to_temp_buffer): Declarations updated.
9428 * print.c (temp_output_buffer_setup):
9429 (internal_with_output_to_temp_buffer): Buffer name argument is now
9430 pointer to const.
9431 * sound.c (struct sound_device): Function pointer field "write"
9432 buffer argument now points to const.
9433 (vox_write): Buffer argument points to const.
9434 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9435 contents as const.
9436 * sysdep.c (emacs_write): Buffer pointer now const.
9437 * term.c (encode_terminal_code): Buffer pointer now const.
9438 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9439 (x_face_list_fonts, x_update_menu_appearance):
9440 (hash_string_case_insensitive): Treat Lisp string contents as const.
9441
94422002-07-19 Juanma Barranquero <lektu@terra.es>
9443
048addec
JD
9444 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9445
9446 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9447 (Ffile_name_as_directory): Fix argument name in docstring.
9448 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9449
94502002-07-18 Richard M. Stallman <rms@gnu.org>
9451
9452 * data.c (Fdefalias): Doc fix.
9453
94542002-07-17 Dave Love <fx@gnu.org>
9455
9456 * intervals.h (text_property_stickiness): Use P_.
9457
9458 * ccl.c: Remove `emacs' conditionals.
9459 (ccl_backtrace_table): Fix size spec.
9460 (ccl_driver): Fix type errors.
9461
94622002-07-16 Ken Raeburn <raeburn@gnu.org>
9463
9464 * alloc.c (xstrdup, make_string, make_unibyte_string)
9465 (make_multibyte_string, build_string): String pointer args now
9466 point to const.
9467 * charset.c (find_charset_in_text, c_string_width):
9468 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9469 * fileio.c (report_file_error):
9470 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9471 (count_combining_before, count_combining_after, insert_1_both):
9472 (insert, insert_and_inherit, insert_string):
9473 (insert_before_markers, insert_before_markers_and_inherit):
9474 * lread.c (intern, oblookup, hash_string):
9475 * minibuf.c (temp_echo_area_glyphs):
9476 * search.c (fast_c_string_match_ignore_case):
9477 * sysdep.c (emacs_open, set_file_times):
9478 * xfaces.c (xstricmp):
9479 * xdisp.c (store_frame_title, string_char_and_length):
9480 (message_dolog, message2, message2_nolog, set_message): Likewise.
9481 (set_message_1): Cast message string argument to const pointer.
9482 * editfns.c (general_insert_function): Insertion function now
9483 takes pointer to const for input data.
9484 * charset.h (find_charset_in_text, c_string_width):
9485 (parse_str_as_multibyte): Declarations updated.
9486 * dispextern.h (xstricmp): Declaration updated.
9487 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9488 (count_size_as_multibyte, count_combining_before):
9489 (count_combining_after, insert_1, insert_1_both, message_dolog):
9490 (insert, insert_and_inherit, insert_before_markers)
9491 (insert_before_markers_and_inherit, set_message, message2):
9492 (message2_dolog, build_string, make_string, make_unibyte_string):
9493 (make_multibyte_string, intern, oblookup, report_file_error):
9494 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9495 (emacs_open, xstrdup): Declarations updated.
9496 * systime.h (set_file_times): Declaration updated.
9497
9498 * charset.c (find_charset_in_text, lisp_string_width): Use const
9499 for pointer to lisp string data.
9500 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9501 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9502 * coding.c (Ffind_coding_systems_region_interval):
9503 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9504 (Fmake_directory_internal, Fdelete_directory):
9505 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9506 * fontset.c (font_family_registry, fs_query_fontset):
9507 (list_fontsets):
9508 * frame.c (Fframe_parameter):
9509 * keyboard.c (cmd_error_internal):
9510 * keymap.c (Fdescribe_buffer_bindings):
9511 * lread.c (complete_filename_p, openp):
9512 * minibuf.c (Fminibuffer_complete_word):
9513 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9514 (face_before_or_after_it_pos, next_element_from_string):
9515 (get_overlay_arrow_glyph_row, display_mode_element):
9516 (decode_mode_spec_coding):
9517 * xterm.c (same_x_server): Likewise.
9518
9519 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9520 settings of non-existent fields.
9521
9522 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9523 copy a lisp value.
9524
9525 * lread.c (Fintern_soft): Use string macros instead of
9526 Lisp_String fields.
9527 * keyboard.c (echo_char, parse_modifiers_uncached):
9528 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9529 * textprop.c (validate_interval_range, interval_of): Likewise.
9530
9531 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9532
9533 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9534 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9535 XSTRING()->size_byte.
9536
9537 * lisp.h (SDATA, SREF): Produce rvalue.
9538 (SSET): New macro.
9539 * alloc.c (make_event_array): Use SSET for storing into a string.
9540 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9541 a string.
9542 * casefiddle.c (casify_object): Use SSET.
9543 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9544 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9545 address of string contents.
9546 * data.c (Faref): Use SDATA.
9547 (Faset): Use SDATA, SSET.
9548 * dired.c (directory_files_internal): Use SSET.
9549 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9550 (Fread_file_name): Use SREF, SSET.
9551 * fns.c (concat): Use SSET.
9552 (concat, Fdelete): Use SDATA.
9553 * insdel.c (insert_from_string_1): Use SDATA.
9554 * keyboard.c (Fevent_convert_list): Use SREF.
9555 * lread.c (Fload): Use SDATA, SSET.
9556 * macfns.c (validate_x_resource_name): Use SSET.
9557 * process.c (status_message): Use SSET.
9558 * search.c (wordify): Use SDATA.
9559 (Freplace_match): Use SREF.
9560 * w32fns.c (validate_x_resource_name): Use SSET.
9561 * xfns.c (validate_x_resource_name): Use SSET.
9562 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9563
95642002-07-16 Richard M. Stallman <rms@gnu.org>
9565
9566 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9567
9568 * xdisp.c (reconsider_clip_changes):
9569 Don't test prevent_redisplay_optimizations_p.
9570 (redisplay_internal): Test prevent_redisplay_optimizations_p
9571 along with clip_changed in some cases.
9572 (try_window_id): Likewise.
9573 (redisplay_window): New local var buffer_unchanged_p.
9574
9575 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9576
9577 * process.c (create_process): Test USG_SUBTTY_WORKS.
9578 (process_send_signal): Clean up handling of GID.
9579 Detect errors in ioctls meant to set GID.
9580
9581 * window.c (temp_output_buffer_show):
9582 Don't set prevent_redisplay_optimizations_p.
9583
95842002-07-15 Juanma Barranquero <lektu@terra.es>
9585
9586 * eval.c (Fdefvaralias): Add docstring argument.
9587
95882002-07-15 Ken Raeburn <raeburn@gnu.org>
9589
9590 * lisp.h (STRING_INTERVALS): Produce rvalue.
9591 (STRING_SET_INTERVALS): New macro.
9592 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9593 * fns.c (Fstring_as_multibyte): Likewise.
9594 * intervals.c (balance_possible_root_interval, delete_interval)
9595 (create_root_interval, copy_intervals_to_string): Likewise.
9596 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9597 instead of 0.
9598
95992002-07-14 Ken Raeburn <raeburn@gnu.org>
9600
9601 * lisp.h (STRING_SET_CHARS): New macro.
9602 (SCHARS, SBYTES): Produce rvalues.
9603 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9604 * fns.c (concat): Likewise.
9605 * lread.c (read_vector): Likewise.
9606
9607 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9608 (STRING_SET_UNIBYTE): New macro.
9609 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9610 length of -1) changed to use STRING_SET_UNIBYTE.
9611 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9612 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9613 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9614 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9615 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9616 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9617 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9618 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9619 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9620 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9621 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9622 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9623 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9624 unchanged for now.
9625
96262002-07-13 Kim F. Storm <storm@cua.dk>
9627
9628 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9629
96302002-07-12 Richard M. Stallman <rms@gnu.org>
9631
9632 * fileio.c (Fwrite_region): Doc fix.
9633
9634 * print.c (print_error_message): Don't handle Vsignaling_function here.
9635
9636 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9637 (command_loop_1): Avoid certain actions after memory-full error.
9638
9639 * eval.c (Fsignal): Don't call cancel_hourglass.
9640 For a memory-full error, don't call Vsignal_hook_function
9641 and don't set Vsignaling_function.
9642
9643 * process.c (process_send_signal): Add abort call.
9644
96452002-07-11 Markus Rost <rost@math.ohio-state.edu>
9646
9647 * keymap.c (Fkey_binding): Fix typo.
9648
96492002-07-11 Richard M. Stallman <rms@gnu.org>
9650
9651 * alloc.c (Vmemory_full): New variable.
9652 (Vmemory_signal_data): Renamed from memory_signal_data.
9653 Uses changed.
9654 (syms_of_alloc): Defvar them.
9655 (memory_full, buffer_memory_full): Set Vmemory_full.
9656
9657 * lisp.h (Vmemory_full): Add declaration.
9658 (current_column, indented_beyond_p): Change declaration.
9659
9660 * indent.c (last_known_column): Declare as double, not float.
9661 (current_column, current_column_1, string_display_width)
9662 (position_indentation): Return `double'.
9663 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9664
9665 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9666 (back_to_previous_visible_line_start)
9667 (reseat_at_next_visible_line_start, next_element_from_buffer):
9668 Use `double', not `float', when calling indented_beyond_p.
9669
9670 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9671
9672 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9673
96742002-07-11 Juanma Barranquero <lektu@terra.es>
9675
9676 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
9677 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9678 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9679 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9680 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9681 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
9682
96832002-07-10 Juanma Barranquero <lektu@terra.es>
9684
d814862a
JB
9685 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9686 All callers changed.
048addec
JD
9687
96882002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9689
9690 * data.c (Fdefalias): Add an optional `docstring' argument.
9691 (set_internal, Fsetq_default): Use XCAR/XCDR.
9692
9693 * composite.c (HASH_VALUE, HASH_KEY):
9694 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9695
96962002-07-09 Kenichi Handa <handa@etl.go.jp>
9697
9698 * callproc.c (Fcall_process): Fix previous change.
9699
97002002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9701
9702 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9703 Add support for hash-tables.
9704 (Ftry_completion): Return t even if the string appears multiple times.
9705
9706 * fns.c (Fnconc): Use XCDR.
9707 (Fprovide): Use CONSP and XCDR.
9708 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9709 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9710 (Fmake_hash_table): Accept `:size nil'.
9711 (Fmakehash): Delete: moved to subr.el.
9712 (syms_of_fns): Don't defsubr makehash.
9713
9714 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9715 (HASH_TABLE_SIZE): Move from fns.c.
9716
97172002-07-07 Richard M. Stallman <rms@gnu.org>
9718
9719 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9720 Instead just return 0 when there is something to be done.
9721 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9722 retry scrolling as if cursor were off the bottom.
9723 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9724 return CURSOR_MOVEMENT_MUST_SCROLL.
9725 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9726 go to try_to_scroll.
9727
9728 * buffer.c (Fbuffer_local_value): Store current value into its binding
9729 so we get the up-to-date value for the binding that is loaded.
9730
9731 * eval.c (Fdefmacro): Doc fix.
9732
97332002-07-05 Dave Love <fx@gnu.org>
9734
9735 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9736 correctly.
9737
9738 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9739 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9740 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9741 CCL_LookupCharConstTbl.
9742 (syms_of_ccl): Defvar translation-hash-table-vector.
9743
97442002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9745
9746 * xdisp.c: Remove unused variable `face'.
9747
97482002-07-04 Juanma Barranquero <lektu@terra.es>
9749
9750 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9751 obsolescence information.
9752
97532002-07-03 Andrew Choi <akochoi@shaw.ca>
9754
9755 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9756 pattern. Search cache first.
9757 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9758 for Japanese font.
9759 (XLoadQueryFont): Use it.
9760
97612002-07-02 Richard M. Stallman <rms@gnu.org>
9762
9763 * keymap.c (Fdefine_key): Doc fix.
9764
9765 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9766
97672002-07-02 Juanma Barranquero <lektu@terra.es>
9768
9769 * keymap.c (syms_of_keymap): Fix typo.
9770
97712002-07-01 Andrew Choi <akochoi@shaw.ca>
9772
9773 * s/darwin.h: Define POSIX_SIGNALS.
9774
9775 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9776 and FSRefMakePath to convert FSSpec returned with Apple Event to
9777 Posix pathname.
9778 (mac_initialize) [TARGET_API_MAC_CARBON]:
9779 Call init_required_apple_events and disable the `Quit' menu item
9780 provided automatically by the Carbon Toolbox.
9781
97822002-07-01 Dave Love <fx@gnu.org>
9783
9784 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9785 for K&R.
9786
9787 * xterm.c: Fix prototype for K&R.
9788
9789 * term.c (costs_set): Declare static, non-initialized for pcc.
9790
97912002-07-01 Richard M. Stallman <rms@gnu.org>
9792
9793 * keyboard.c (timer_last_idleness_start_time): New variable.
9794 (timer_start_idle): Set that.
9795 (read_key_sequence): Use that to reset timer_idleness_start_time
9796 to previous value.
9797
9798 * window.c (Frecenter): With arg, set optional_new_start.
9799
9800 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9801
9802 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9803 buffer for completion.
9804
98052002-06-29 Ken Raeburn <raeburn@gnu.org>
9806
9807 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9808
98092002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9810
9811 * keyboard.c (readable_filtered_events): New function that filters
9812 FOCUS_IN_EVENT depending on parameter.
9813 (readable_events): Calls readable_filtered_events, not filtering
9814 FOCUS_IN_EVENT.
9815 (get_filtered_input_pending): New function, filtering parameter passed
9816 to readable_filtered_events.
9817 (get_input_pending): Calls get_filtered_input_pending, not filtering
9818 FOCUS_IN_EVENT.
9819 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9820 FOCUS_IN_EVENT.
9821
9822 * xterm.h (struct x_output): Add focus_state.
9823
9824 * xterm.c (x_focus_changed): New function.
9825 (x_detect_focus_change): New function.
9826 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9827 EnterNotify and LeaveNotify to track X focus changes.
9828
98292002-06-28 Andreas Schwab <schwab@suse.de>
9830
9831 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9832
98332002-06-27 Kim F. Storm <storm@cua.dk>
9834
9835 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9836 (mode_line_string_face_prop): New variables.
9837 (store_mode_line_string): New function.
9838 (display_mode_element): Use store_mode_line_string to
9839 add mode-line string elements to mode_line_string_list
9840 when mode_line_string_list is non-nil.
9841 (Fformat_mode_line): Now returns propertized string by
9842 default. New arg NO-PROPS to ignore properties.
9843 (decode_mode_spec): Only add two dashes for %- in propertized
9844 mode-line string.
9845 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9846
98472002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9848
9849 * minibuf.c (minibuffer_completion_contents): Add return type.
9850
98512002-06-27 Juanma Barranquero <lektu@terra.es>
9852
9853 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9854
98552002-06-26 Juanma Barranquero <lektu@terra.es>
9856
9857 * fileio.c (read_file_name_cleanup): Add missing return.
9858
98592002-06-26 Richard M. Stallman <rms@gnu.org>
9860
9861 * window.c (Frecenter): Don't set force_start flag.
9862
9863 * minibuf.c (do_completion, Fminibuffer_complete_word)
9864 (Fminibuffer_completion_help): Complete just the text before point.
9865 (minibuffer_completion_contents): New function.
9866
9867 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9868
9869 * frame.c (frames_bury_buffer): Function deleted.
9870
98712002-06-25 Miles Bader <miles@gnu.org>
9872
9873 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9874 the end of callint_message, allow for a terminating '\0'.
9875
98762002-06-24 Juanma Barranquero <lektu@terra.es>
9877
9878 * w32select.c: Include composite.h
9879
9880 * w16select.c: Likewise.
9881
98822002-06-24 Kenichi Handa <handa@etl.go.jp>
9883
9884 * callproc.c (Fcall_process): If code detection is necessary,
9885 call detect_coding directly here.
9886
9887 * coding.c (detect_eol): Preserve coding->cmp_data.
9888
9889 * w16select.c (Fw16_get_clipboard_data):
9890 * w32fns.c (w32_to_x_font):
9891 * w32select.c (Fw32_get_clipboard_data):
9892 * xselect.c (selection_data_to_lisp_data):
9893 * xterm.c (XTread_socket): Disable composition handling.
9894
98952002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9896
9897 * print.c (temp_output_buffer_setup): Kill all local variables.
9898
98992002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9900
9901 * lread.c (Fread): Remove redundant and imprecise declaration.
9902
9903 * xfns.c (check_x_display_info): Use check_x_frame.
9904
9905 * .gdbinit (xprintsym): Use the new `xname' field.
9906 (xsymbol): Use it.
9907
99082002-06-22 Jason Rumney <jasonr@gnu.org>
9909
9910 * w32fns.c (file_dialog_callback): New function.
9911 (Fx_file_dialog): Allow selecting directories as well as files.
9912
99132002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9914
9915 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 9916 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
9917
99182002-06-17 Andrew Choi <akochoi@shaw.ca>
9919
9920 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9921 black and white before scrolling. Restore frame background and
9922 foreground color after scrolling.
9923 (do_window_update): Call XClearWindow before calling expose_frame.
9924 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9925 FRAME_FOREGROUND_PIXEL of frame.
9926
9927 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9928 test Mac command key as <ALT> key.
9929
99302002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9931
9932 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9933
9934 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9935 Lookup keys in function-key-map immediately so that key-translation-map
9936 can be applied earlier.
9937 Remove function_key_possible and key_translation_possible, replaced
9938 by checking `keytran_start < t'.
9939
9940 * .gdbinit (xsymbol): Use the new `xname' field.
9941
99422002-06-17 Andrew Choi <akochoi@shaw.ca>
9943
9944 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9945 test Mac command key as <ALT> key.
9946
9947 * mac.c (do_applescript): Call initialize_applescript if necessary
9948 when first called. Dispose of result_desc only when there is no error.
9949 (Fdo_applescript): Use %d format specifier instead of %ld.
9950
99512002-06-16 Andrew Choi <akochoi@shaw.ca>
9952
9953 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9954 of FrontWindow for cases keyDown and autoKey.
9955
9956 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9957 Vdefault_fontset to Monaco with mac-roman coding.
9958
9959 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9960 init_process before and after inclusion of Carbon/Carbon.h, resp.
9961
9962 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9963 cursor_gc.
9964 (add_font_name_table_entry): New function.
9965 (init_font_name_table): Use add_font_name_table_entry; add italic,
9966 bold, and bold-italic entries for truetype fonts.
9967
9968 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9969 for Mac too.
9970 (try_font_list) [MAC_OS]: If no font matches given registry, try
9971 fonts with any registry matching face_family.
9972 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9973
9974 * s/darwin.h: If autoconf detects the Ncurses library, define
9975 LIBS_TERMCAP to -lncurses to use it.
9976
99772002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9978
9979 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9980
99812002-06-15 Richard M. Stallman <rms@gnu.org>
9982
9983 * window.c (Fset_window_configuration): Explicitly preserve
9984 the point value that new_current_buffer had at the start.
9985
99862002-06-14 Juanma Barranquero <lektu@terra.es>
9987
9988 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9989 Fix typos.
9990
99912002-06-14 Kim F. Storm <storm@cua.dk>
9992
9993 * insdel.c (insert_1_both, insert_from_string_1)
9994 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9995 insert happened in the end_unchanged region. Otherwise, the
9996 redisplay may be confused and duplicate the last line in the
9997 buffer [seen after save-buffer when require-final-newline==t].
9998
99992002-06-13 Jason Rumney <jasonr@gnu.org>
10000
10001 * w32.c (init_environment): Remove EMACSLOCKDIR.
10002 (stat): Swap _S_IFDIR and _S_IFREG.
10003
100042002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10005
10006 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10007 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10008 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10009 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10010 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10011 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10012 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10013 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10014 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10015 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10016 SELECTION_REQUEST_EVENT, selection_clear_event to
10017 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10018 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10019 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10020 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10021 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10022 no_event to NO_EVENT.
10023
100242002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10025
10026 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10027
100282002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10029
10030 * intervals.c (textget): Don't forget to `return'.
10031 (lookup_char_property): Use XCAR/XCDR.
10032
100332002-06-12 Juanma Barranquero <lektu@terra.es>
10034
10035 * xdisp.c (Fformat_mode_line): Fix typo.
10036
100372002-06-12 Kim F. Storm <storm@cua.dk>
10038
10039 * xdisp.c (Fformat_mode_line): New function.
10040 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10041 (store_frame_title_char, store_frame_title): Use unconditionally.
10042 (init_xdisp): Defsubr Fformat_mode_line.
10043 Initialize frame_title_buf etc. unconditionally.
10044
100452002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10046
10047 * keyboard.c (read_key_sequence):
10048 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10049 things through those maps after downcasing events.
10050 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10051 applies after function-key-map.
10052 Make sure that keytran can be done in the middle in the sequence.
10053 Be careful not to throw away events past the one we downcase.
10054
10055 * lread.c (read_integer): Remove unused var `tem'.
10056 (read1): Fix int/Lisp_Object mixup.
10057
10058 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10059
100602002-06-11 Richard M. Stallman <rms@gnu.org>
10061
10062 * keyboard.c (readable_events): Ignore any number of
10063 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10064
100652002-06-09 Miles Bader <miles@gnu.org>
10066
10067 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10068 (parse_rgb_list, tty_lookup_color): New functions.
10069 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10070 (color_distance, Fcolor_distance): New functions.
10071 (TTY_SAME_COLOR_THRESHOLD): New macro.
10072 (Qtty_color_standard_values): New variable.
10073 (syms_of_xfaces): Initialize new vars & functions.
10074
100752002-06-08 Colin Walters <walters@verbum.org>
10076
10077 * textprop.c (Vchar_property_alias_alist): New variable.
10078 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10079
10080 * intervals.c (lookup_char_property): New function for looking up
10081 overlay and text properties, created from textget.
10082 (textget): Use it.
10083
10084 * intervals.h (lookup_char_property): Declare.
10085 (Vchar_property_alias_alist): Declare.
10086
10087 * buffer.c (Foverlay_get): Use lookup_char_property.
10088
100892002-06-07 Sam Steingold <sds@gnu.org>
10090
10091 * xselect.c (lisp_data_to_selection_data): Fix last change:
10092 *data_ret is not a Lisp string, while unibyte_string is.
10093
100942002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10095
10096 * xselect.c (lisp_data_to_selection_data): Fix last change:
10097 set size_ret.
10098
100992002-06-07 Andreas Schwab <schwab@suse.de>
10100
10101 * m/amdx86-64.h: New file.
10102
101032002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10104
10105 * fns.c (Fstring_make_unibyte): Doc fix.
10106
10107 * xselect.c (lisp_data_to_selection_data): If the requested type
10108 is STRING, call string_make_unibyte to encode the selected text
10109 as a string.
10110
10111 * window.c (Fset_window_hscroll): Doc fix.
10112
101132002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10114
10115 * fileio.c (choose_write_coding_system):
10116 Call select-safe-coding-system properly.
10117
101182002-06-03 Richard M. Stallman <rms@gnu.org>
10119
10120 * xdisp.c (message_with_string): Error if STRING is not a string.
10121
10122 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10123
10124 * fileio.c (choose_write_coding_system): Pass FILE arg to
10125 Vselect_safe_coding_system_function.
10126
101272002-06-03 Ken Raeburn <raeburn@gnu.org>
10128
10129 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10130
101312002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10132
10133 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10134 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10135 * keymap.c (describe_command): Likewise.
10136 * minibuf.c (read_minibuf): Likewise.
10137
10138 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10139 Cast `current_column' return value to int.
10140 (back_to_previous_visible_line_start)
10141 (reseat_at_next_visible_line_start, next_element_from_buffer):
10142 Cast `indented_beyond_p' 3rd arg to float.
10143
10144 * indent.c (last_known_column): Now a float.
10145 (current_column_1, position_indentation, current_column)
10146 (string_display_width): Return float.
10147 (Fcurrent_column): Cast `current_column' return value to int.
10148 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10149 (indented_beyond_p): Third arg now a float.
10150 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10151
10152 * lisp.h (current_column): Now returns float.
10153 (indented_beyond_p): 3rd arg now a float.
10154
101552002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10156
10157 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10158 is Qcompound_text_with_extensions.
10159
10160 * xselect.c (lisp_data_to_selection_data): Always set selection
10161 type as string if x_encode_text returns streingp non-NULL.
10162
10163 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10164
101652002-05-30 Richard M. Stallman <rms@gnu.org>
10166
10167 * window.c (Fset_window_configuration): Correct the handling
10168 of point in current buffer, to work with multiple windows.
10169
101702002-05-29 Colin Walters <walters@verbum.org>
10171
10172 * lread.c (Fread_from_string): Don't depend on order of evaluation
10173 for C function parameters.
10174
101752002-05-28 Richard M. Stallman <rms@gnu.org>
10176
10177 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10178 way for blinked-off state and for a nonselected window.
10179
10180 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10181 instead, see if the new start pos is at beginning of line.
10182
10183 * fileio.c (Fwrite_region): If START is a string, don't
10184 make any annotations.
10185
10186 * eval.c (syms_of_eval): Doc fix.
10187
101882002-05-28 Colin Walters <walters@debian.org>
10189
10190 * emacs.c (USAGE1): Add --no-splash.
10191 (standard_args): Ditto.
10192
101932002-05-28 Colin Walters <walters@gnu.org>
10194
10195 * lread.c (readchar_count): New variable.
10196 (readchar): Increment it.
10197 (unreadchar): Decrement it.
10198 (read_multibyte): Decrement it.
10199 (Vread_with_symbol_positions): New variable.
10200 (Vread_symbol_positions_list): New variable.
10201 (read_internal_start): New function, created from Fread and
10202 Fread_from_string. Handle Vread_symbol_positions_list and
10203 Vread_with_symbol_positions.
10204 (readevalloop, Fread, Fread_from_string): Use it.
10205 (read1): Use readchar_count to add symbol positions to
10206 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10207 (syms_of_lread): DEFVAR_LISP and initialize them.
10208
10209 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10210 (substitute_object_recurse, substitute_object_in_subtree)
10211 (substitute_in_interval): Prototype.
10212 (read_multibyte): Return c if it's less than zero.
10213
102142002-05-28 Kim F. Storm <storm@cua.dk>
10215
10216 * fileio.c (Fread_file_name_internal): Added brute-force
10217 speed up for using predicate file-directory-p.
10218
102192002-05-28 Kim F. Storm <storm@cua.dk>
10220
10221 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10222 New variables.
10223 (syms_of_fileio): DEFVAR_LISP them.
10224 (read_file_name_cleanup): New unwind function.
10225 (Fread_file_name_internal): Only return completions satifying
10226 Vread_file_name_predicate. Temporarily unwind protect and rebind
10227 default-directory while checking completions against the predicate.
10228 (Fread_file_name): Added PREDICATE argument. Specbind it to
10229 Vread_file_name_predicate during completion.
10230 Call Vread_file_name_function to read the file name if non-nil.
10231
10232 * lisp.h (Fread_file_name): Now has 6 args.
10233
10234 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10235 predicate for Fread_file_name when reading directory name.
10236 Supply Qnil for predicate in other calls to Fread_file_name.
10237
102382002-05-26 Miles Bader <miles@gnu.org>
10239
10240 * term.c (tty_capable_p): New function.
10241 * dispextern.h (tty_capable_p): New function declaration.
10242 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10243 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10244
102452002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10246
10247 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10248 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10249 (Vwrite_region_annotate_functions): Docstring fix.
10250
102512002-05-23 Kim F. Storm <storm@cua.dk>
10252
10253 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10254 phys_cursor's hpos is overwritten. This is still not completely
10255 correct, as it doesn't really make sense to use hpos at all to
10256 get the cursor glyph (as that is relative to the width of the
10257 characters on the line, which may have changed during the update).
10258
102592002-05-22 Jason Rumney <jasonr@gnu.org>
10260
10261 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10262 Lisp_Object.
10263 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10264 Use modified enumfont_t struct.
10265
10266 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10267
10268 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10269 Handle the `hbar' cursor type.
10270 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10271
10272 * w32fns.c (Qhbar): New variable.
10273 (x_specified_cursor_type): Use it.
10274
102752002-05-21 Ken Raeburn <raeburn@gnu.org>
10276
10277 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10278 now, when the address is needed.
10279
102802002-05-21 Colin Walters <walters@gnu.org>
10281
10282 * Makefile.in (shortlisp): Add font-core.el.
10283
102842002-05-20 Richard M. Stallman <rms@gnu.org>
10285
10286 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10287
10288 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10289 equivalent key bindings here.
10290
102912002-05-20 Ken Raeburn <raeburn@gnu.org>
10292
10293 Change symbol structure to contain a lisp object for the symbol
10294 name:
10295 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10296 object field named "xname".
10297 (SYMBOL_NAME): New macro.
10298 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10299 name field.
10300 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10301 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10302 instead of name field.
10303 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10304 SYMBOL_NAME instead of XSYMBOL and name field.
10305 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10306 instead of XSYMBOL and name field.
10307 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10308 and SYMBOL_NAME instead of XSYMBOL and name field.
10309 * coding.c (Fread_coding_system, code_convert_region1)
10310 (code_convert_string1, code_convert_string_norecord)
10311 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10312 XSYMBOL and name field.
10313 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10314 (Fmake_variable_buffer_local, Fmake_local_variable)
10315 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10316 of XSYMBOL and name field.
10317 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10318 XSYMBOL and name field.
10319 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10320 instead of XSYMBOL and name field.
10321 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10322 XSYMBOL and name field.
10323 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10324 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10325 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10326 instead of XSYMBOL and name field.
10327 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10328 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10329 (parse_solitary_modifier, Fexecute_extended_command):
10330 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10331 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10332 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10333 of XSYMBOL and name field.
10334 (describe_command, describe_translation): Use SYMBOL_NAME and
10335 assignment instead of XSYMBOL and name field and XSETSTRING.
10336 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10337 instead of XSYMBOL and name field.
10338 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10339 name field and XSETSTRING.
10340 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10341 of XSYMBOL and name field.
10342 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10343 assignment instead of XSYMBOL and name field and XSETSTRING.
10344 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10345 XSTRING instead of XSYMBOL and name field.
10346 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10347 and XSTRING instead of XSYMBOL and name field.
10348 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10349 and XSTRING instead of XSYMBOL and name field.
10350 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10351 XSTRING instead of XSYMBOL and name field.
10352 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10353 of XSYMBOL and name field.
10354 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10355 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10356
103572002-05-19 Ken Raeburn <raeburn@gnu.org>
10358
10359 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10360 and XCDR real rvalues in most configurations.
10361
10362 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10363 Don't take the address of the cdr part of a cons cell; instead, track
10364 the parent cell and call XSETCDR, or set the variable for the head
10365 of the list if we haven't started down the list yet.
10366
103672002-05-19 Richard M. Stallman <rms@gnu.org>
10368
10369 * doc.c (reread_doc_file): Don't ask for confirmation.
10370
103712002-05-18 Jason Rumney <jasonr@gnu.org>
10372
10373 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10374 (xbm_load_image): Use it.
10375 (xbm_load): Ditto.
10376 (xbm_read_bitmap_data): Reverted to xfns.c version.
10377 From David Ponce <david@dponce.com>.
10378
103792002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10380
10381 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10382 2.02 and later.
10383
103842002-05-16 Juanma Barranquero <lektu@terra.es>
10385
10386 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10387
103882002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10389
10390 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10391 meaningful test.
10392 (read_char_minibuf_menu_prompt): Fix typo.
10393
103942002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10395
10396 * eval.c (Fcommandp): Doc fix.
10397
103982002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10399
10400 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10401 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10402 (Fset_keymap_parent): Gcpro a bit more.
10403 (access_keymap): Gcpro around meta_map call and around the main loop.
10404 (get_keyelt): Gcpro when following indirect references.
10405 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10406 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10407 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10408 Remove useless ad-hoc remap code.
10409
104102002-05-13 Richard M. Stallman <rms@gnu.org>
10411
10412 * search.c (search_buffer): Give up boyer moore search if inverse
10413 translation change charset_base.
10414
104152002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10416
10417 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10418 characters is carried over from the previous block of text, adjust
10419 coding->produced to account for the extra character.
10420
104212002-05-11 Andreas Schwab <schwab@suse.de>
10422
10423 * coding.c (intersection): Keep the elements of the returned list
10424 in the same order as in the first list.
10425
104262002-05-11 Kim F. Storm <storm@cua.dk>
10427
10428 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10429 only update cmm_size if realloc actually succeeds.
10430 Testing with initial size of 2 elements revealed that using
10431 realloc on GNU/Linux would cause a random trap in xmalloc
10432 later on, so I rewrote the code to use malloc/bcopy/free instead
10433 of realloc.
10434
104352002-05-10 Jason Rumney <jasonr@gnu.org>
10436
10437 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10438
104392002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10440
10441 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10442 parens, to ensure correct evaluation order.
10443
104442002-05-10 Kim F. Storm <storm@cua.dk>
10445
10446 * keymap.c (Vemulation_mode_map_alists): New variable.
10447 (syms_of_keymap): DEFVAR_LISP it.
10448 (current_minor_maps): Process keymap alists in that list before
10449 minor-mode-overriding-map-alist and minor-mode-map-alist.
10450
104512002-05-09 Richard M. Stallman <rms@gnu.org>
10452
10453 * search.c (Freplace_match): Doc fix.
10454
104552002-05-09 Kim F. Storm <storm@cua.dk>
10456
10457 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10458 Enlarge cursor rectangle drawn around image with non-zero relief.
10459
10460 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10461 Enlarge cursor rectangle drawn around image with non-zero relief.
10462
10463 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10464 Enlarge cursor rectangle drawn around image with non-zero relief.
10465
104662002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10467
10468 * xselect.c (lisp_data_to_selection_data): Don't set selection
10469 type if comes from the Lisp object's car. If the selection
10470 contains a pure ASCII text, always return QSTRING as its type.
10471
104722002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10473
10474 * mac.c (mac-cut-function): Doc fix.
10475
104762002-05-05 Richard M. Stallman <rms@gnu.org>
10477
10478 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10479
104802002-05-04 Jason Rumney <jasonr@gnu.org>
10481
10482 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10483 for event-click-count.
10484
10485 * process.c (init_process): Only add server subfeature if we can
10486 use non-blocking I/O.
10487
104882002-05-04 Andrew Choi <akochoi@shaw.ca>
10489
10490 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10491 repeatedly.
10492
104932002-05-03 Jason Rumney <jasonr@gnu.org>
10494
10495 * process.c (Fmake_network_process): Only support server sockets
10496 when we can make them non-blocking.
10497
10498 * s/ms-w32.h (HAVE_SELECT): Define.
10499
10500 * w32.h (FILE_NDELAY): New flag.
10501
10502 * w32.c (sys_getpeername, fcntl): New functions.
10503 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10504
10505 * w32proc.c: include sys/file.h.
10506
105072002-05-03 Colin Walters <walters@verbum.org>
10508
10509 * callproc.c (Vgame_score_directory): Renamed to
10510 Vshared_game_score_directory.
10511
105122002-04-30 Richard M. Stallman <rms@gnu.org>
10513
10514 * s/gnu.h [emacs]: Include stdio.h.
10515 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10516
10517 * eval.c (do_autoload): Error if called while preparing to dump.
10518
10519 * fns.c (Frequire): Error if need to load while preparing to dump.
10520
105212002-04-28 Colin Walters <walters@verbum.org>
10522
10523 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10524 Default to "~/.emacs.d/games".
10525
105262002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10527
10528 * lread.c (openp): Change arg exec_only to predicate.
10529 (build_load_history): Use XCAR/XCDR.
10530 (Flocate_file_internal): New fun.
10531 (syms_of_lread): Defsubr it.
10532 (Fload): Update call to openp.
10533
10534 * lisp.h (openp): Update prototype.
10535
10536 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10537 * w32proc.c (sys_spawnve):
10538 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10539 * w32.c (check_windows_init_file):
10540 * sound.c (Fplay_sound_internal):
10541 * process.c (Fstart_process):
10542 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10543 * mac.c (run_mac_command):
10544 * emacs.c (init_cmdargs):
10545 * callproc.c (Fcall_process): Update call to openp.
10546
10547 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10548
10549 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10550
105512002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10552
10553 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10554 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10555
105562002-04-28 Richard M. Stallman <rms@gnu.org>
10557
10558 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10559
10560 * eval.c (Fcommandp): New arg for_call_interactively.
10561 * lisp.h (Fcommandp): Declare new arg.
10562
105632002-04-28 Jason Rumney <jasonr@gnu.org>
10564
10565 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10566
10567 * w32.c (stat, fstat): Use file index information to generate
10568 inodes for directories where available.
10569
105702002-04-26 Andrew Choi <akochoi@shaw.ca>
10571
10572 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10573 [HAVE_CARBON]: Include Mac object files.
10574
10575 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10576 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10577 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10578 MAC_OSX, and MAC_OS instead of macintosh.
10579
10580 * editfns.c [MAC_OS8]: Include stdio.h.
10581
10582 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10583
10584 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10585 Apple Monaco.
10586
10587 * process.c: Declare QCfamily and QCfilter as extern.
10588 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10589 calling select.
10590
10591 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10592
10593 * tparam.c [MAC_OSX]: Don't define BC and UP.
10594
10595 * config.in [HAVE_CARBON]: Add.
10596
10597 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10598 Move here from mac/src and mac/inc.
10599
10600 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10601
106022002-04-26 Gerd Moellmann <gerd@gnu.org>
10603
10604 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10605 Compute phys_cursor_width from the x position returned
10606 by x_draw_glyhs, which is cheaper.
10607 (x_display_and_set_cursor): Compute the buffer-local value
10608 of `cursor-in-non-selected-windows' only when needed.
10609
106102002-04-25 Gerd Moellmann <gerd@gnu.org>
10611
10612 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10613 cursor on a stretch glyph has a width that depends on
10614 x_stretch_cursor_p.
10615
106162002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10617
10618 * abbrev.c (abbrev-start-location): Doc fix.
10619
10620 * indent.c (Fvertical_motion): Fix last change.
10621
106222002-04-25 Gerd Moellmann <gerd@gnu.org>
10623
10624 * indent.c (Fvertical_motion): Move to the start of the line
10625 containing PT before moving up or down.
10626
106272002-04-24 Gerd Moellmann <gerd@gnu.org>
10628
10629 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10630 case of writing a whole row, more or less analogous to the case of
10631 writing only parts of a row.
10632
10633 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10634 0 for NO_CURSOR.
10635
10636 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10637
106382002-04-23 Colin Walters <walters@verbum.org>
10639
10640 * buffer.c (syms_of_buffer): Doc fix.
10641
106422002-04-23 Gerd Moellmann <gerd@gnu.org>
10643
10644 * xterm.c (notice_overwritten_cursor): Handle the special case
10645 of the cursor being in the first blank non-text line at the
10646 end of a window.
10647
10648 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10649 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10650 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10651 bar cursors only, to make phys_cursor_width contain what its name
10652 suggests.
10653 (notice_overwritten_cursor): Consider the cursor image erased if
10654 the output area intersects the cursor image in y-direction.
10655
106562002-04-23 Simon Marshall <simon@gnu.org>
10657
10658 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10659 to XC_hand2.
10660
106612002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10662
10663 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10664
106652002-04-22 Kim F. Storm <storm@cua.dk>
10666
10667 * textprop.c (remove_properties): Fixed trap for malformed plist.
10668
106692002-04-22 Richard M. Stallman <rms@gnu.org>
10670
10671 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10672
10673 * window.c (make_window): Initialize height_fixed_p,
10674 last_cursor_off_p, and p->cursor_off_p slots.
10675
106762002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10677
10678 * fns.c (use-dialog-box): Doc fix.
10679
106802002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10681
10682 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10683 variables `row', `i' and `area'.
10684 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10685 toolkit library.
10686
106872002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10688
10689 * xfaces.c (clear_font_table): Don't free the default font of
10690 a frame even if it's on another display.
10691 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10692 that could be Qt.
10693
106942002-04-19 Juanma Barranquero <lektu@terra.es>
10695
10696 * indent.c (Fmove_to_column): Remove unused local variable
10697 `next_boundary_byte'.
10698 (current_column_1): Likewise.
10699
107002002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10701
10702 * msdos.c (Qhbar): New variable.
10703 (syms_of_msdos): Intern and staticpro it.
10704 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10705 cursor type.
10706
107072002-04-19 Dave Lambert <dlambert@acm.org>
10708
10709 Theses change implement an underscore-like (`hbar') cursor.
10710
10711 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10712
10713 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10714 Handle the `hbar' cursor type.
10715 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10716
10717 * xfns.c (Qhbar): New variable.
10718 (syms_of_xfns): Intern and staticpro it.
10719 (x_specified_cursor_type): Handle `hbar' cursor.
10720
10721 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10722 not defined.
10723
107242002-04-18 Richard M. Stallman <rms@gnu.org>
10725
10726 * textprop.c (remove_properties): New arg LIST allows scanning
10727 either a list or a plist.
10728 (interval_has_some_properties_list): New function, like
10729 interval_has_some_properties using list instead of plist.
10730 All callers changed.
10731 (Fremove_list_of_text_properties): New function.
10732 (syms_of_textprop): Defsubr it.
10733
107342002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10735
10736 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10737
107382002-04-17 Juanma Barranquero <lektu@terra.es>
10739
10740 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10741
107422002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10743
10744 * window.c (coordinates_in_window): Don't report on margin area
10745 if its width is zero.
10746
107472002-04-16 Jason Rumney <jasonr@gnu.org>
10748
10749 * w32fns.c (Fx_file_dialog): Decode file name before using.
10750
10751 * w32term.c (construct_drag_n_drop): Likewise.
10752
107532002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10754
10755 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10756 store load-history in pure space.
10757
10758 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10759
107602002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10761
10762 * xterm.c (Qlatin_1, Qutf_8): New vars.
10763 (syms_of_xterm): Initialize them.
10764 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10765 decoding the output of X*LookupString.
10766 Always use latin-1 to decode the output of XLookupString.
10767 Try Xutf8LookupString if XmbLookupString failed.
10768
10769 * region-cache.c (new_region_cache): Use BEG.
10770
107712002-04-16 Gerd Moellmann <gerd@gnu.org>
10772
10773 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10774 configuration files.
10775 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10776 returns 0.
10777
107782002-04-15 Andreas Schwab <schwab@suse.de>
10779
10780 * config.in: Regenerated using autoheader.
10781
10782 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10783 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10784 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10785 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10786 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10787 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10788 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10789 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10790 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10791 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10792 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10793 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10794 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10795 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10796 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10797 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10798 STACK_DIRECTION, now set by autoconf.
10799
108002002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10801
10802 * dispnew.c (marginal_area_string): Sort arguments.
10803
10804 * dispextern.h (marginal_area_string): Add prototype.
10805
108062002-04-13 Richard M. Stallman <rms@gnu.org>
10807
10808 * fileio.c (Finsert_file_contents):
10809 Don't call temp_output_buffer_setup--do just part, by hand.
10810
10811 * coding.c (run_pre_post_conversion_on_str):
10812 Don't call temp_output_buffer_setup--do just part, by hand.
10813
10814 * keyboard.c (command_loop_1): Don't call start_hourglass
10815 or cancel_hourglass when executing a macro.
10816
10817 * marker.c (count_markers): New function.
10818
10819 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10820 grow without limit. Move recently used elements to the front.
10821
108222002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10823
10824 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10825
108262002-04-12 Gerd Moellmann <gerd@gnu.org>
10827
10828 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10829 rows marginal areas.
10830 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10831 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10832
10833 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10834
108352002-04-12 Dave Love <fx@gnu.org>
10836
10837 * dispnew.c (marginal_area_string): New.
10838
10839 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10840 (Qleft_margin, Qright_margin): Declare.
10841 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10842
10843 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10844 note_mode_line_highlight and extended.
10845
10846 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10847 (make_lispy_event): Deal with mouse events in margins.
10848
108492002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10850
10851 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10852
10853 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10854 than deactivating the mark if tmm is set to `lambda'.
10855 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10856 Use a single event for HELP_EVENT.
10857 (Fexecute_extended_command): Save last_point_position.
10858
108592002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10860
10861 * lisp.h (Fpropertize): Add prototype.
10862
10863 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10864
108652002-04-10 Colin Walters <walters@verbum.org>
10866
10867 * config.in: Add HAVE_SHARED_GAME_DIR.
10868
10869 * callproc.c: (Vgame_score_directory): New variable.
10870 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10871
108722002-04-10 Richard M. Stallman <rms@gnu.org>
10873
10874 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10875
108762002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10877
10878 * minibuf.c (read_minibuf): Use empty_string.
10879 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10880 Short-circuit the search as soon as it "failed".
10881 (Fall_completions): Allow lambda forms and lists of strings for alist.
10882 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10883 when require_match is nil.
10884 (Ftest_completion): Rename from `test_completion' and export to elisp.
10885 Call the predicate also when alist is a list.
10886 Obey Vcompletion_regexp_list.
10887 (do_completion, Fminibuffer_complete_and_exit): Use it.
10888 (Fassoc_string): Rename from `assoc_for_completion'.
10889 Allow list of strings as well and export to elisp.
10890
108912002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10892
10893 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10894
108952002-04-08 Juanma Barranquero <lektu@terra.es>
10896
10897 * w32.c (sys_accept): Don't hide variable `s'.
10898
108992002-04-05 Gerd Moellmann <gerd@gnu.org>
10900
10901 * callint.c (Fcall_interactively): Use INTEGERP instead of
10902 NUMBERP for checking Vhistory_length.
10903
109042002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10905
10906 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10907 Doc fix to reflect it.
10908
109092002-04-04 Richard M. Stallman <rms@gnu.org>
10910
10911 * xdisp.c (display_mode_element): New arg RISKY.
10912 Disregard text props found or specified within a variable
10913 that isn't marked risky-local-variable.
10914 (Qrisky_local_variable): New variable.
10915 (syms_of_xdisp): Init and staticpro it.
10916
109172002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10918
10919 * undo.c (record_point): New fun.
10920 (record_delete, record_insert): Use it.
10921
109222002-04-03 Juanma Barranquero <lektu@terra.es>
10923
10924 * doc.c (Fdocumentation): Add missing parentheses.
10925 (Fdocumentation_property): Likewise.
10926
109272002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10928
10929 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10930 data is 0, just return nil.
10931
109322002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10933
10934 * msdos.c (syms_of_msdos): Fix last change with
10935 mouse_autoselect_window.
10936
109372002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10938
10939 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10940 mouse_autoselect_window.
10941
109422002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10943
10944 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10945 with system-specific keysyms. Use it also for unknown function keys.
10946
10947 * doc.c (reread_doc_file): Return whether reload was attempted.
10948 (Fdocumentation, Fdocumentation_property): Don't try to reload
10949 if the doc is 0 and only ask once.
10950
10951 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10952
109532002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10954
10955 * keyboard.c (read_char): If the event was Qselect_window,
10956 restore timer_idleness_start_time to its previous value.
10957
10958 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10959
109602002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10961
10962 * region-cache.c (new_region_cache): Use BEG.
10963
10964 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10965 Use BEG and BEG_BYTE.
10966
10967 * doc.c (get_doc_string): Return nil if the location is wrong.
10968 (reread_doc_file): New fun.
10969 (Fdocumentation, Fdocumentation_property):
10970 Call it if get_doc_string fails.
10971 (Fsnarf_documentation): Make it work for a dumped Emacs.
10972
10973 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10974 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10975
10976 * charset.c (Fstring): Allow 0 arguments.
10977
10978 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10979
10980 * process.c (DATAGRAM_CONN_P, list_processes_1)
10981 (Fprocess_datagram_address, Fset_process_datagram_address)
10982 (Fset_network_process_options, server_accept_connection):
10983 Fix some int/Lisp_Object confusions (thank you union types).
10984
109852002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10986
10987 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10988
10989 * w32term.c: Likewise.
10990 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10991
10992 * keyboard.c (Qselect_window): New symbol.
10993 (head_table): Use it.
10994 (keys_of_keyboard): Bound select-window event to handle-select-window.
10995 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10996
10997 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10998 (last_window): New variable.
10999 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11000 (note_mouse_movement): Remove reimplemented code in #if 0.
11001 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11002 Emacs windows.
11003
11004 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11005
110062002-03-31 Gerd Moellmann <gerd@gnu.org>
11007
11008 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11009 Callers changed.
11010
110112002-03-30 Richard M. Stallman <rms@gnu.org>
11012
11013 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11014 loop whenever it stops making progress.
11015
11016 * widget.c (set_frame_size): Don't call change_frame_size.
11017
110182002-03-30 Gerd Moellmann <gerd@gnu.org>
11019
11020 * dispnew.c (direct_output_for_insert):
11021 Call mark_window_display_accurate.
11022
110232002-03-29 Jason Rumney <jasonr@gnu.org>
11024
11025 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11026
110272002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11028
11029 * Makefile.in (lread.o): Depend on coding.h.
11030
11031 * lread.c (openp, Fload): Encode the file name before passing it
11032 to `stat', `access', and `emacs_open'.
11033 (openp): GCPRO the encoded file name. Don't recompute Lisp
11034 strings unnecessarily.
11035
110362002-03-29 Kim F. Storm <storm@cua.dk>
11037
11038 * fns.c (Flax_plist_put): Doc fix.
11039
110402002-03-28 Miles Bader <miles@gnu.org>
11041
11042 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11043
110442002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11045
11046 * process.c (set-network-process-options): Add usage.
11047 (make-network-process): Doc fix.
11048
110492002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11050
11051 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11052
110532002-03-26 Richard M. Stallman <rms@gnu.org>
11054
11055 * fns.c (Fsubstring_no_properties): New function.
11056 (Flax_plist_get, Flax_plist_put): New functions.
11057 (syms_of_fns): defsubr them.
11058
11059 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11060 don't test or alter w->update_mode_line.
11061
11062 * window.c (Fdisplay_buffer): Doc fix.
11063
110642002-03-24 Richard M. Stallman <rms@gnu.org>
11065
11066 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11067
110682002-03-24 Gerd Moellmann <gerd@gnu.org>
11069
11070 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11071 (Fdefmacro): Handle `(declare ...)'.
11072 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11073 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11074
110752002-03-24 Jason Rumney <jasonr@gnu.org>
11076
11077 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11078 (xbm_file_p): Add prototypes.
11079 (xbm_format, xbm_image_p): Sync with xfns.c.
11080 (reflect_byte): New function.
11081 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11082 (xbm_load_image): Create bitmaps with a depth of 1.
11083 (init_xfns): Enable XBM images.
11084
110852002-03-23 Jason Rumney <jasonr@gnu.org>
11086
11087 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11088 correctly. Do not pass up_modifier to keyboard buffer.
11089
11090 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11091
110922002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11093
11094 * Makefile.in (bootstrapclean): New target.
11095 (bootstrap-temacs, bootstrap-doc): Remove.
11096 (bootstrap-emacs): Use a bog-standard `temacs'.
11097 Don't bother to build a DOC file.
11098
11099 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11100
11101 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11102 in temacs even if !CANNOT_DUMP.
11103 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11104
11105 * alloc.c (check_pure_size): Only output a warning.
11106
111072002-03-22 Jason Rumney <jasonr@gnu.org>
11108
11109 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11110 supported.
11111
11112 * w32term.c (zv_bits): Declare as short, for word alignment.
11113 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11114 (syms_of_w32term): Define x-use-underline-position-properties.
11115
11116 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11117 (clear_image_cache): Block input, fix logic, clear matrices in
11118 all frames that share this cache.
11119
111202002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11121
11122 * emacs.c (main): Update the Copyright year in the blurb printed
11123 by "emacs --version".
11124
11125 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11126
11127 * xterm.c (XTread_socket): If XK_ISO_Lock and
11128 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11129 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11130
111312002-03-21 Kim F. Storm <storm@cua.dk>
11132
11133 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11134 menu-bar bindings in keymap and local-map properties _are_ used.
11135 But try keymap property first in accordance with 2002-01-03 patch.
11136 Added comment describing why this is not always reliable.
11137 (tool_bar_items): Ditto for tool-bar.
11138
111392002-03-21 Jason Rumney <jasonr@gnu.org>
11140
11141 * w32fns.c (x_clear_image_1): Disable color table code.
11142
111432002-03-21 Kim F. Storm <storm@cua.dk>
11144
11145 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11146 removed the wrong version of the DEFUN macro; fixed it.
11147
11148 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11149 Fmember rather than Fmemq).
11150 (Fprovide): Check that subfeatures is a list.
11151
11152 * process.c (QCfeature, QCdatagram): Removed variables.
11153 (QCtype, Qdatagram): New variables.
11154 (network_process_featurep): Removed function.
11155 (Fmake_network_process): Removed :feature check.
11156 Use :type 'datagram instead of :datagram t to create a datagram
11157 socket. This allows us to add other connection types (e.g. raw
11158 sockets) later in a consistent manner.
11159 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11160 supported subfeatures for feature make-network-process.
11161 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11162 Intern and staticpro QCtype and Qdatagram.
11163 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11164
11165 * xfns.c: (QCtype): Remove duplicate declaration and
11166 initialization (is now declared in process.c).
11167
11168 * w32fns.c: (QCtype): Remove duplicate declaration and
11169 initialization (is now declared in process.c).
11170
111712002-03-21 Richard M. Stallman <rms@gnu.org>
11172
11173 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11174 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11175 when jumping to `fail' to avoid undoing reg changes in the
11176 last iteration of the loop.
11177 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11178
11179 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11180 Depend on process.h.
11181
111822002-03-20 Jason Rumney <jasonr@gnu.org>
11183
11184 Most of the following changes are still conditional on HAVE_IMAGES
11185 which is not set by default on Windows.
11186
11187 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11188
11189 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11190 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11191 (four_corners_best, x_clear_image_1, x_clear_image)
11192 (x_alloc_image_color, postprocess_image)
11193 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11194 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11195 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11196
11197 * w32gui.h (struct XImage): Define.
11198
11199 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11200 extract mouse co-ordinates.
11201
112022002-03-20 Jason Rumney <jasonr@gnu.org>
11203
11204 * w32.c (init_winsock): Dynamically load new server and UDP
11205 socket functions.
11206 (socket_to_fd): New function.
11207 (sys_socket): Use it.
11208 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11209 (sys_recvfrom, sys_sendto): New wrapper functions.
11210
11211 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11212 and initialization.
11213
11214 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11215
112162002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11217
11218 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11219 Don't use "sun" as a variable, it's a predefined constant on Sun
11220 machines.
11221
112222002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11223
11224 * bytecode.c (Fbyte_code): Revert last change.
11225
112262002-03-19 Kim F. Storm <storm@cua.dk>
11227
11228 * makefile.w32-in (LIBS): Add $(WSOCK32).
11229 From David Ponce <dponce@voila.fr>.
11230
112312002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11232
11233 * process.c (wait_reading_process_input): Move variables `pname'
11234 and `pnamelen' down where they are used.
11235
11236 * bytecode.c (Fbyte_code): Discard unused computed value to
11237 prevent gcc warning.
11238
11239 * lisp.h (Fplist_member): Add prototype.
11240
112412002-03-18 Kim F. Storm <storm@cua.dk>
11242
11243 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11244 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11245
11246 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11247 Remove explicit GNU_LINUX settings for datagram support.
11248
112492002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11250
11251 * process.c (Fmake_network_process): Remove unused variable `sa'.
11252 Doc fix. Add usage:.
11253 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11254
112552002-03-17 Richard M. Stallman <rms@gnu.org>
11256
11257 * xdisp.c (cursor_type_changed): New variable.
11258 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11259 Clear it when clearing windows_or_buffers_changed.
11260 (try_cursor_movement, redisplay_window, try_window_id)
11261 (try_window_reusing_current_matrix): Test cursor_type_changed
11262 along with windows_or_buffers_changed.
11263
11264 * window.h (cursor_type_changed): New variable.
11265
11266 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11267 not update_mode_lines, and always set it to 1.
11268
11269 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11270 if no frames needed redrawing.
11271
112722002-03-17 Kim F. Storm <storm@cua.dk>
11273
11274 The following changes add support for network server processes,
11275 datagram connections, and local (unix) sockets.
11276
11277 * process.h (struct Lisp_Process): New member log.
11278 Doc fix: Member command used to indicate stopped network process.
11279 Doc fix: Member childp contains plist for network process.
11280 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11281
11282 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11283 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11284 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11285 New variables.
11286 (NETCONN1_P): New macro.
11287 (DATAGRAM_SOCKETS): New conditional symbol.
11288 (datagram_address): New array.
11289 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11290 (status_message): Use concat3.
11291 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11292 for a stopped network process.
11293 (Fset_process_buffer): Update contact plist for network process.
11294 (Fset_process_filter): Ditto. Don't enable input for stopped
11295 network processes. Server must listen, even if filter is t.
11296 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11297 New functions.
11298 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11299 (Fprocess_contact): Added KEY argument. Handle datagrams.
11300 (list_processes_1): Optionally show only processes with the query
11301 on exit flag set. Dynamically adjust column widths. Omit tty
11302 column if not needed. Report stopped network processes.
11303 Identify server and datagram network processes.
11304 (Flist_processes): New optional arg `query-only'.
11305 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11306 (conv_lisp_to_sockaddr, set_socket_options)
11307 (network_process_featurep, unwind_request_sigio): New helper functions.
11308 (Fprocess_datagram_address, Fset_process_datagram_address):
11309 (Fset_network_process_options): New lisp functions.
11310 (Fopen_network_stream): Removed. Now defined in simple.el.
11311 (Fmake_network_process): New lisp function. Code is based on previous
11312 Fopen_network_stream, but heavily reworked with new property list based
11313 argument list, support for datagrams, server processes, and local
11314 sockets in addition to old client-only functionality.
11315 (server_accept_connection): New function.
11316 (wait_reading_process_input): Use it to handle incoming connects.
11317 Do not enable input on a new connection if process is stopped.
f63fd14e 11318 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11319 (send_process): Handle datagram sockets.
11320 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11321 network process is indicated by setting command field to t .
11322 (Fprocess_send_eof): No-op if datagram connection.
11323 (Fstatus_notify): Don't read input for a stream server socket or a
11324 stopped network process.
11325 (init_process): Initialize datagram_address array.
11326 (syms_of_process): Intern and staticpro new variables, defsubr new
11327 functions.
11328
113292002-03-16 Jason Rumney <jasonr@gnu.org>
11330
11331 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11332 startup case.
11333
113342002-03-16 Richard M. Stallman <rms@gnu.org>
11335
11336 * xdisp.c (redisplay_internal, redisplay_windows):
11337 Use list_of_error to call internal_condition_case_1.
11338 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11339 so as to catch all errors with no possibility of debugger redisplay.
11340 (list_of_error): New variable.
11341 (syms_of_xdisp): Init and staticpro it.
11342
11343 * print.c (print_object): Delete `\ ' from printed rep of frame.
11344
113452002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11346
11347 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11348 until its implementation is fixed.
11349
113502002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11351
11352 * xfns.c (png_load): Remove unused variable `gamma_str'.
11353
113542002-03-14 Richard M. Stallman <rms@gnu.org>
11355
11356 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11357
113582002-03-14 Miles Bader <miles@gnu.org>
11359
11360 * intervals.c (adjust_for_invis_intang): New function.
11361 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11362 work for dealing with invisible+intangible regions. Do so before
11363 and after both forward and backward movements, to handle both
11364 front-sticky and rear-sticky cases.
11365 * textprop.c (text_property_stickiness): Function moved here from
11366 `editfns.c'.
11367 * intervals.h (text_property_stickiness): New declaration.
11368 * editfns.c (char_property_eq): Function removed.
11369 (text_property_stickiness): Function moved to `textprop.c'.
11370
113712002-03-13 Jason Rumney <jasonr@gnu.org>
11372
11373 * config.in: Add STRFTIME_NO_POSIX2.
11374
11375 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11376 and %OX when underlying strftime does not.
11377
113782002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11379
11380 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11381 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11382 line) to avoid annoying flicker.
11383 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11384 (XTread_socket): Mark it static.
11385
11386 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11387
113882002-03-13 Kim F. Storm <storm@cua.dk>
11389
11390 * puresize.h (BASE_PURESIZE): Increase to 775000.
11391
113922002-03-12 Juanma Barranquero <lektu@terra.es>
11393
11394 * editfns.c (syms_of_editfns): Fix typo.
11395
113962002-03-12 Gerd Moellmann <gerd@gnu.org>
11397
11398 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11399 Include termopt.h for interrupt_input.
11400
114012002-03-11 Andreas Schwab <schwab@suse.de>
11402
11403 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11404
114052002-03-11 Gerd Moellmann <gerd@gnu.org>
11406
11407 * xterm.c (note_mouse_movement): Put code for
11408 x_autoselect_window_p in #if 0.
11409
11410 * lread.c (Fload): Don't assume that message_with_string uses the
11411 string it is given like a C string.
11412
114132002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11414
11415 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11416
11417 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11418 x_session_have_connection.
11419 (x_initialize): Add call to x_session_initialize.
11420
11421 * termhooks.h (enum event_kind): Add save_session_event.
11422
11423 * keyboard.c: Add Emacs event save_session_event.
11424
11425 * emacs.c (main): Add call to syms_of_xsmfns.
11426
11427 * lisp.h: Declare syms_of_xsmfns as extern.
11428
11429 * config.in: Add HAVE_X_SM.
11430
11431 * Makefile.in (LIBXT): Add -lSM -lICE
11432 if HAVE_X_SM and not USE_X_TOOLKIT.
11433 (XOBJ): New file xsmfns.c added.
11434
11435 * xsmfns.c: New file for X session management.
11436
114372002-03-09 Jason Rumney <jasonr@gnu.org>
11438
11439 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11440 read-only when setting modified time.
11441
114422002-03-08 Gerd Moellmann <gerd@gnu.org>
11443
11444 * xdisp.c (move_it_vertically_backward): At the end of the function,
11445 when moving forward by lines, treat terminal frames specially.
11446
11447 * keyboard.c (echo_char): Make sure to add a separator between
11448 keys even if echo_dash hasn't been called.
11449
11450 * xdisp.c: Use new string macros.
11451 (update_echo_area): Pass number of bytes to message3 instead of
11452 number of chars.
11453 (set_message_1): Don't access a string's size_byte directly.
11454 (decode_mode_spec_coding): Use number of bytes of eoltype string
11455 instead number of chars.
11456
11457 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11458
114592002-03-08 Juanma Barranquero <lektu@terra.es>
11460
11461 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11462 24-bit.
11463
114642002-03-06 Jason Rumney <jasonr@gnu.org>
11465
11466 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11467
114682002-03-06 Gerd Moellmann <gerd@gnu.org>
11469
11470 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11471 (cancel_echoing, echo_length, echo_truncate): Changed to
11472 work with new kboard definition.
11473 (echo_now): Use message3_nolog instead of message2_nolog.
11474
11475 * alloc.c (mark_kboards): Mark echo_string.
11476
11477 * keyboard.h (ECHOBUFSIZE): Removed.
11478 (struct kboard): Member echoptr removed, member echobuf renamed
11479 to echo_string.
11480
11481 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11482 message3 instead of message2 to display the message using STRING's
11483 text properties.
11484
114852002-03-05 Andreas Schwab <schwab@suse.de>
11486
11487 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11488
114892002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11490
11491 * frame.c (default-frame-alist): Explain that setting it doesn't
11492 affect existing frames.
11493
114942002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11495
11496 * indent.c (skip_invisible): Fix my brain fart.
11497
11498 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11499
115002002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11501
11502 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11503 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11504 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11505 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11506 and variables to use EMACS_INT instead of just int.
11507
11508 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11509
115102002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11511
11512 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11513 environment, pass it down with corrected value.
11514
115152002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11516
11517 * lread.c (read_filtered_event): Do not call start_hourglass
11518 before returning.
11519
115202002-03-04 Juanma Barranquero <lektu@terra.es>
11521
11522 * w32term.c (x_display_and_set_cursor): Fix typo.
11523
115242002-03-03 Richard M. Stallman <rms@gnu.org>
11525
11526 * fileio.c (Fmake_temp_name): Doc fix.
11527
115282002-03-03 Gary Wong <gtw@gnu.org>
11529
11530 * termcap.c [!emacs]: Replace ospeed for building standalone
11531 libtermcap, for binary compatibility.
11532
11533 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11534
115352002-03-03 Richard M. Stallman <rms@gnu.org>
11536
11537 * xrdb.c (file_p): Rename arg `path' to `filename'.
11538
11539 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11540 only if it is an integer.
11541
11542 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11543 If png_get_sRGB gives an answer, call png_set_gamma
11544 using the default image gamma value.
11545
11546 * lread.c (read1): When reading from a file, default string to
11547 multibyte only if it has some multibyte characters.
11548
11549 * print.c (print_object): Output multibyte chars 128...255
11550 using \x even if ! print_escape_multibyte.
11551
11552 * xdisp.c (display_mode_element): Move the places where
11553 bytepos, charpos, this, and lisp_string are set.
11554 Use lisp_string to set bytepos.
11555
11556 * xdisp.c (redisplay_internal):
11557 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11558
11559 * xdisp.c (display_mode_element): Merge properties specified with
11560 :propertize onto those that come with the string.
11561
115622002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11563
11564 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11565 automatic-hscrolling. Users changed.
11566 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11567 Users changed.
11568 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11569
115702002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11571
11572 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11573
115742002-03-02 Kim F. Storm <storm@cua.dk>
11575
11576 * window.c (Fminibuffer_selected_window): New function.
11577 (syms_of_window): Defsubr it.
11578
115792002-03-01 Kim F. Storm <storm@cua.dk>
11580
11581 * window.h (struct window): New member phys_cursor_width.
11582
11583 * window.c (make_window, replace_window): Init phys_cursor_width.
11584
11585 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11586 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11587
11588 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11589 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11590
11591 * lisp.h (GCPRO6): New macro.
11592
11593 * process.c (Fopen_network_stream): Use GCPRO6.
11594
115952002-03-01 Kim F. Storm <storm@cua.dk>
11596
11597 * process.c (Qconnect, Qfailed): New variables.
11598 (syms_of_process): Intern and staticpro them.
11599 (Fprocess_status): Document connect and failed return values.
11600 [NON_BLOCKING_CONNECT]: New conditional.
11601 (connect_wait_mask, num_pending_connects): New variables.
11602 (status_message): Convert Qfailed status.
11603 (Fopen_network_stream): Added support for non-blocking connect.
11604 New optional args: filter, sentinel, non_blocking. Doc updated.
11605 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11606 (deactivate_process): Handle pending non-blocking connect.
11607 (wait_reading_process_input): Poll for status of non-blocking
11608 connects. Exec sentinel directly when connect succeeds.
11609 (status_notify): Don't read process output if not yet connected.
11610
116112002-02-28 Kim F. Storm <storm@cua.dk>
11612
11613 * window.c: (minibuf_selected_window): Renamed from
11614 Vminibuf_selected_window. Users changed.
11615 (syms_of_window): Staticpro it.
11616
116172002-02-26 Kim F. Storm <storm@cua.dk>
11618
11619 The following changes add a new Vminibuf_selected_window variable
11620 which is similar to Vminibuf_scroll_window, but which is only set
11621 on entry to the minibuffer (from a non-minibuffer window):
11622
11623 * window.c: (Vminibuf_selected_window): New variable.
11624 (struct save_window_data): New member minibuf_selected_window.
11625 (Fset_window_configuration): Restore Vminibuf_selected_window.
11626 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11627 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11628 (compare_window_configurations): Compare minibuf_selected_window.
11629
11630 * window.h: (Vminibuf_selected_window): Declare extern.
11631
11632 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11633 entry to minibuffer or on entry from a non-minibuffer window.
11634
11635 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11636 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11637
11638 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11639 instead of Vminibuf_scroll_window when deciding in which window
11640 the region should be highlighted. Consequently, the region remains
11641 highlighteded even when a completion buffer is also displayed.
11642
116432002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11644
11645 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11646
11647 * xselect.c (Qcompound_text_with_extensions): Renamed from
11648 Qcompound_text_no_extensions.
11649 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11650
116512002-02-26 Juanma Barranquero <lektu@terra.es>
11652
11653 * w32proc.c (syms_of_ntproc): Doc fix.
11654
116552002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11656
11657 * intervals.h: Include "dispextern.h" unconditionally.
11658
116592002-02-24 Jason Rumney <jasonr@gnu.org>
11660
11661 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11662 and disp-table.elc.
11663 (lisp): Add emacs-lisp/backquote.elc.
11664
116652002-02-24 Kim F. Storm <storm@cua.dk>
11666
11667 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11668 The validation of the event type was too strict as it didn't
11669 allow string events; buffer names are used in bindings for
11670 menu-bar-select-buffer (see `menu-bar-update-buffers').
11671
116722002-02-23 Kim F. Storm <storm@cua.dk>
11673
11674 The following changes rework my patch of 2002-02-06 which
11675 added command remapping by entering the commands directly into
11676 the keymaps. Now, command remapping uses an explicit `remap'
11677 prefix in the keymaps, i.e. [remap COMMAND].
11678
11679 * keymap.c (Qremap, remap_command_vector): New variables.
11680 (is_command_symbol): Removed function.
11681 (Fdefine_key): No longer accept a symbol for KEY.
11682 Added validation of [remap COMMAND] argument for KEY.
11683 The DEF is no longer required to be a symbol when remapping a command.
11684 (Fremap_command): New function to remap command through keymaps.
11685 (Flookup_key): Perform command remapping initiated by
11686 Fremap_command directly for speed.
11687 (Fkey_binding): Use Fremap_command for command remapping.
11688 (where_is_internal): Handle new command remapping representation.
11689 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11690 staticpro them. Defsubr Fremap_command.
11691
11692 * keymap.h (Fremap_command): Declare extern.
11693 (is_command_symbol): Remove extern.
11694
11695 * keyboard.c (command_loop_1): Use Fremap_command for command
11696 remapping; now try command remapping for all symbols.
11697
116982002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11699
11700 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11701
117022002-02-23 Jason Rumney <jasonr@gnu.org>
11703
11704 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11705 on the string before encoding it.
11706 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11707 after decoding it.
11708
11709 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11710
117112002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11712
11713 * w32term.c (enter_timestamp): Remove unused static variable to
11714 prevent warning.
11715
11716 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11717
117182002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11719
11720 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11721
11722 * xselect.c (selection_data_to_lisp_data): Fix last change.
11723
117242002-02-22 Jason Rumney <jasonr@gnu.org>
11725
11726 * w32term.h (struct w32_output): New member menu_command_in_progress.
11727
11728 * w32menu.c (menubar_selection_callback): Free the menu and
11729 clear the menu_command_in_progress flag.
11730
11731 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11732 (menu_free_timer): New variable.
11733 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11734 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11735 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11736 menu command is in progress.
11737 <WM_COMMAND>: Set the menu_command_in_progress flag.
11738 Kill any menu_free_timer that is running.
11739
11740 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11741 Call ExtTextOutA rather than ExtTextOut.
11742
117432002-02-22 Eli Zaretskii <eliz@gnu.org>
11744
11745 * puresize.h (BASE_PURESIZE): Increase to 755000.
11746
117472002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11748
11749 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11750 on the string before encoding it.
11751 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11752 after decoding it.
11753
117542002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11755
11756 Support for ICCCM Extended Segments in X selections:
11757
11758 * xselect.c <Qcompound_text_no_extensions>: New variable.
11759 (syms_of_xselect): Intern and staticpro it.
11760 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11761 selection text.
11762 (lisp_data_to_selection_data): If next-selection-coding-system is
11763 compound-text-no-extensions, set the type of selection to be
11764 compound-text.
11765
11766 * xterm.h (x_encode_text): Update prototype.
11767
11768 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11769 callers changed. If SELECTIONP is non-zero, run the
11770 pre-write-conversion function before encoding the selection text.
11771
117722002-02-21 Kim F. Storm <storm@cua.dk>
11773
11774 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11775
11776 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11777 Correct composing of language-change event.
11778
117792002-02-20 Kim F. Storm <storm@cua.dk>
11780
11781 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11782 bindings at PT when building menu (the menu is not updated often
11783 enough for this to work reliable).
11784 (tool_bar_items): Likewise.
11785 (current_active_maps): Removed unused (and buggy) function.
11786
117872002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11788
11789 * xfns.c (gif_load): Use correct width and height for GIF images.
11790
117912002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11792
11793 * floatfns.c (Fatan): Accept an optional second arg and call
11794 atan2 if passed 2 args.
11795
117962002-02-18 Jason Rumney <jasonr@gnu.org>
11797
11798 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11799
118002002-02-17 Jason Rumney <jasonr@gnu.org>
11801
11802 * w32term.c (x_autoselect_window_p): New variable.
11803 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11804 (note_mouse_movement): Use it.
11805
11806 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11807
11808 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11809
11810 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11811 New variables.
11812 (syms_of_w32fns): Intern and staticpro them.
11813 (x_frame_parms) <"fullscreen">: New parameter.
11814 (x_fullscreen_move, x_set_fullscreen): New functions.
11815 (x_set_frame_parameters): Support Qfullscreen.
11816 (x_real_positions): Save x/y_pixels_diff frame params.
11817 (x_figure_window_size): Support full-screen frames.
11818 (Fx_create_frame): Default the fullscreen parameter.
11819
11820 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11821 (x_fullscreen_adjust): New functions.
11822 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11823 fullscreen. Call x_check_fullscreen_move, and set the
11824 want_fullscreen member of output_data.w32
11825 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11826
11827 * w32term.h: New enum for FULLSCREEN_* constants.
11828 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11829 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11830 (x-fullscreen-adjust): New prototype.
11831
118322002-02-17 Kim F. Storm <storm@cua.dk>
11833
11834 * frame.c: (Vmouse_highlight): New variable.
11835 (syms_of_frame): DEFVAR_LISP it.
11836
11837 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 11838
048addec 11839 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 11840
048addec
JD
11841 * xterm.c (disable_mouse_highlight): Removed variable.
11842 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11843 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11844 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11845 and on after keyboard input.
11846 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 11847
048addec 11848 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 11849
048addec
JD
11850 * msdos.c (disable_mouse_highlight): Removed variable.
11851 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11852 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11853 (internal_terminal_init): Initialize mouse_face_hidden.
11854 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11855 and on after keyboard input.
4f1b1854 11856
048addec 11857 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 11858
048addec
JD
11859 * w32term.c (disable_mouse_highlight): Removed variable.
11860 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11861 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11862 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11863 and on after keyboard input.
11864 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 11865
048addec 118662002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 11867
048addec
JD
11868 * msdos.c (last_mouse_window): New variable.
11869 (dos_rawgetc): Fix last change--if the mouse is in the same window
11870 as recorded in last_mouse_window, don't select this window.
5cb6905d 11871
048addec 11872 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 11873
048addec
JD
11874 * msdos.c (x_autoselect_window_p): New variable.
11875 (syms_of_msdos): Defvar it.
11876 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11877 which the last mouse movement occured, unless it is already selected.
437dfb9f 11878
048addec
JD
11879 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11880 New variables.
11881 (syms_of_xdisp): DEVFAR them.
11882 (hscroll_window_tree): Use automatic_hscroll_margin and
11883 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 11884
048addec 118852002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 11886
048addec
JD
11887 * xterm.c (x-autoselect-window): New variable.
11888 (note_mouse_movement): Use it.
9f696a00 11889
048addec 11890 * keyboard.c: Do not include "systime.h" twice.
d57966d7 11891
048addec 118922002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 11893
048addec 11894 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 11895
048addec 11896 * alloc.c (NSTATICS): Increase to 1280.
74779f52 11897
048addec 118982002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 11899
048addec 11900 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 11901
048addec
JD
11902 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11903 (Vx_super_keysym): New variables.
11904 (syms_of_xterm): DEFVAR_LISP them.
11905 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11906 variables to determine which keys to use for the various modifiers.
a474d59c 11907
048addec 119082002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 11909
048addec
JD
11910 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11911 (mode_line_in_non_selected_windows): New variable.
11912 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 11913
048addec
JD
11914 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11915 Use mode_line_in_non_selected_windows.
11916 (mode_line_in_non_selected_windows): Declare extern.
11917 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 11918
048addec 119192002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 11920
048addec
JD
11921 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11922 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11923 (Fclear_this_command_keys): Doc fixes.
2d10309f 11924
048addec
JD
11925 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11926 (update_face_from_frame_parameter): Increment face_change_count
11927 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 11928
048addec
JD
11929 * xdisp.c (QCpropertize): New variable.
11930 (mode_line_proptrans_alist): New variable.
11931 (display_mode_element): New arg PROPS; all calls changed.
11932 Implement this, for strings.
11933 Handle literal output of strings by sharing the
11934 main-line code for strings, using local var `literal'.
11935 Handle :propertize feature.
11936 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11937 mode_line_proptrans_alist.
0b1e6b54 11938
048addec 119392002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 11940
048addec
JD
11941 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11942 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 11943
048addec
JD
11944 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11945 (CURRENT_MODE_LINE_FACE_ID): Use it.
11946 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 11947
048addec
JD
11948 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11949 to get mode line face.
e17144de 11950
048addec 119512002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11952
048addec
JD
11953 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11954 variables; cus-start.el doesn't need them anymore.
44368f8f 11955
048addec 119562002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 11957
048addec
JD
11958 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11959 reduction. This fixes a display problem where stray newlines were
11960 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 11961
048addec 119622002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11963
048addec 11964 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 11965
048addec 11966 * xdisp.c (display_mode_lines): Fix last change.
453c5510 11967
048addec 119682002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 11969
048addec
JD
11970 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11971 match each other.
11972 (w32_load_system_font): Prevent Cleartype fonts from loading.
11973 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 11974
048addec 119752002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 11976
048addec
JD
11977 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11978 (CURRENT_MODE_LINE_HEIGHT): Use it.
11979 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11980
048addec
JD
11981 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11982 (pos_visible_p, handle_face_prop): Likewise.
11983 (display_mode_lines): Likewise, but for the real selected window.
11984 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11985
048addec
JD
11986 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11987 in non-selected windows.
11988 (realize_basic_faces): Realize it.
11989 (syms_of_term): Intern and staticpro it.
308dd672 11990
048addec 119912002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 11992
048addec
JD
11993 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11994 Changed mail addresses to emacs-devel@gnu.org.
308dd672 11995
048addec 119962002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 11997
048addec
JD
11998 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11999 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12000
048addec 12001 * floatfns.c (Fround): Doc fix.
3c1e6b46 12002
048addec 120032002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12004
048addec 12005 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12006
048addec 120072002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12008
048addec 12009 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12010
048addec 120112002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12012
048addec
JD
12013 * keymap.c (where_is_internal): Only check whether definition is
12014 remapped if it fulfills is_command_symbol.
0065bb74 12015
048addec 120162002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12017
048addec 12018 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12019
048addec 12020 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12021
048addec 120222002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12023
048addec
JD
12024 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12025 defining command remapping. Doc updated.
12026 (Flookup_key): Remap command through keymap if KEY is a symbol.
12027 (is_command_symbol): New function.
12028 (Fkey_binding): Use it. New optional argument NO-REMAP.
12029 Doc updated. Callers changed. Perform command remapping via
12030 recursive call unless that arg is non-nil.
12031 (where_is_internal): New argument no_remap. Callers changed.
12032 Call recursively to find original key bindings for a remapped
12033 comand unless that arg is non-nil.
12034 (Fwhere_is_internal): New optional argument NO-REMAP.
12035 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12036
048addec
JD
12037 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12038 (is_command_symbol): Added prototype.
0d8466cc 12039
048addec
JD
12040 * keyboard.c (Vthis_original_command): New variable.
12041 (syms_of_keyboard): DEFVAR_LISP it.
12042 (command_loop_1): Set it, and perform command remapping.
15fff01d 12043
048addec 120442002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12045
048addec 12046 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12047
048addec 120482002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12049
048addec 12050 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12051
048addec 120522002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12053
048addec 12054 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12055
048addec 120562002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12057
048addec 12058 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12059
048addec 120602002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12061
048addec 12062 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12063
048addec
JD
12064 * lread.c (read1): Redesign strategy for force_multibyte and
12065 force_singlebyte. Now is_multibyte records whether read_buffer
12066 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12067
048addec 120682002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12069
048addec
JD
12070 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12071 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12072
048addec 120732002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12074
048addec
JD
12075 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12076 latter never being defined on GNU/Linux.
749f499f 12077
048addec 120782002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12079
048addec
JD
12080 * xfaces.c (realize_default_face): Don't set the weight and slant of
12081 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12082
048addec 120832002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12084
048addec
JD
12085 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12086 Call cancel_hourglass unconditionally.
d0fd26dd 12087
048addec
JD
12088 * eval.c (Fsignal): Remove duplicated declaration of
12089 the variable `display_hourglass_p'.
b4c45162 12090
048addec 120912002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12092
048addec 12093 * editfns.c (region_limit): Nicer error message.
c95eaa61 12094
048addec
JD
12095 * coding.c (decode_composition_emacs_mule):
12096 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12097
048addec
JD
12098 * callint.c (check_mark): New arg to specify clearer error message.
12099 Callers changed.
c95eaa61 12100
048addec 121012002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12102
048addec 12103 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12104
048addec 121052002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12106
048addec
JD
12107 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12108 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12109 Fix doc-strings.
c95eaa61 12110
048addec 121112002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12112
048addec 12113 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12114
048addec
JD
12115 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12116 and scroll_up_aggressively.
c95eaa61 12117
048addec 121182002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12119
048addec 12120 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12121
048addec 121222002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12123
048addec
JD
12124 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12125 (Fprevious_property_change, Fprevious_single_property_change):
12126 Stay within the narrowed-buffer boundaries.
e2c3786a 12127
048addec 121282002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12129
048addec
JD
12130 * term.c (Ftty_display_color_cells): New function.
12131 (syms_of_term): Defsubr it.
12132 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12133 argument name to DISPLAY. Doc fix.
bf794306 12134
048addec
JD
12135 * dispextern.h: Add prototype for set_tty_color_mode and
12136 tty_setup_colors.
bf794306 12137
048addec 121382002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12139
048addec
JD
12140 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12141 If region left to draw is not what was expected, mark the frame as
12142 garbaged.
62582985 12143
048addec
JD
12144 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12145 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12146
048addec 121472002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12148
048addec
JD
12149 * w32term.c (x_update_window_begin): Only hide caret if
12150 w32_use_visible_system_caret is set.
12151 (x_update_window_end): Only show caret if
12152 w32_use_visible_system_caret is set.
12153 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12154
048addec 12155 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12156
048addec 121572002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12158
048addec
JD
12159 * unexelf.c (unexec): Define n so as to cause compilation error
12160 for the code where people have often written n instead of nn.
1e9a6186 12161
048addec 12162 * .gdbinit (hookpost-run): Defined.
1e9a6186 12163
048addec 121642002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12165
048addec 12166 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12167
048addec 121682002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12169
048addec
JD
12170 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12171 if fullscreen is being set.
7c75be36 12172
048addec 121732002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12174
048addec
JD
12175 * minibuf.c (Fminibuffer_contents)
12176 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12177 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12178
048addec 121792002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12180
048addec 12181 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12182
048addec 121832002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12184
048addec
JD
12185 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12186 height before comparison.
12187 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12188
048addec 121892002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12190
048addec
JD
12191 * w32term.c (w32_system_caret_width): Remove.
12192 (w32_use_visible_system_caret): New user flag.
12193 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12194 Windows reports a screen reader running.
12195 (x_update_window_begin): Hide the system caret.
12196 (x_update_window_end): Show the system caret.
12197 (x_display_and_set_cursor): Don't draw a cursor when
12198 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12199
048addec
JD
12200 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12201 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12202 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12203 the user requests it. Use system default width when creating.
12204 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12205
048addec
JD
12206 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12207 New window messages.
905cc05a 12208
048addec 122092002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12210
048addec 12211 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12212
048addec 122132002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12214
048addec 12215 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12216
048addec 122172002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12218
048addec 12219 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12220
048addec 122212002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12222
048addec
JD
12223 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12224 that Windows returns. If a double check fails, try to guess how
12225 ExtTextOut is going to act.
4d0fa4f3 12226
048addec
JD
12227 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12228 in place of stricmp.
12229 (w32_list_synthesized_fonts): Removed.
12230 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12231 (struct enumfont_t): New element; list.
12232 (enum_font_cb2): List all style and charset variations of a font.
12233 (Fw32_select_font): New optional argument; include_proportional.
12234 Exclude vertical fonts. Exclude proportional fonts unless
12235 include_proportional is non-nil.
12236 (w32_enable_synthesized_fonts): Change to a boolean.
12237 (Fw32_send_sys_command): Doc fix.
493faf20 12238
048addec 122392002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12240
048addec
JD
12241 * dispnew.c (update_frame): Move the variable `tem' to the block
12242 where it is used.
4971e491 12243
048addec 122442002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12245
048addec
JD
12246 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12247 call to face-set-after-frame-default.
4971e491 12248
048addec 122492002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12250
048addec
JD
12251 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12252 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12253
048addec 122542002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12255
048addec
JD
12256 * window.c (enlarge_window): When exceeding size of parent,
12257 directly delete all the siblings instead of trying to resize it.
201c831a 12258
048addec 122592002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12260
048addec 12261 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12262
048addec 122632002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12264
048addec 12265 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12266
048addec 122672002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12268
048addec
JD
12269 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12270 is invisible. This can happen if cursor is on top line of a
12271 window, and we switch to a buffer with a header line.
d77fbc16 12272
048addec 12273 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12274
048addec 122752002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12276
048addec
JD
12277 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12278 `dont_resize' only when used.
61e3b944 12279
048addec 12280 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12281
048addec 122822002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12283
048addec
JD
12284 * xdisp.c (display_mode_element): When computing charpos, depend
12285 on multibyteness of elt, not the text in field.
8af01033 12286
048addec 122872002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12288
048addec
JD
12289 * buffer.c (Fkill_all_local_variables):
12290 Increment `update_mode_lines' only once.
7363986a 12291
048addec 122922002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12293
048addec
JD
12294 * lisp.h (adjust_after_replace_noundo)
12295 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12296
048addec 12297 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12298
048addec 122992002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12300
048addec
JD
12301 Support for the --color command-line argument and tty-color-mode
12302 frame parameter:
f1a85b89 12303
048addec
JD
12304 * term.c (tty_default_color_capabilities, tty_setup_colors)
12305 (set_tty_color_mode): New functions.
12306 (term_init): Call tty_default_color_capabilities.
12307 (Qtty_color_mode_alist): New variable.
12308 (syms_of_term): Intern and staticpro it.
f1a85b89 12309
048addec
JD
12310 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12311 frames.
12312 (do_switch_frame): For termcap frames, switch the tty
12313 color mode as specified by the frame's parameters.
12314 (Qtty_color_mode): New variable.
12315 (syms_of_frame): Intern and staticpro it.
3a62677f 12316
048addec
JD
12317 * emacs.c (USAGE2): Add the --color option.
12318 (standard_args): Ditto.
72244db2 12319
048addec
JD
123202002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12321
12322 * xterm.h (struct x_output): New members want_fullscreen,
12323 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12324 y_pixels_outer_diff.
12325 New enum for FULLSCREEN_* constants.
12326 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12327 is NULL.
12328 (x_fullscreen_adjust): Add prototype.
3a62677f 12329
048addec
JD
12330 * emacs.c (USAGE2): Add the new full-screen arguments.
12331 (standard_args): Ditto.
3a62677f 12332
048addec
JD
12333 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12334 New variables.
12335 (syms_of_xfns): Intern and staticpro them.
12336 (x_frame_parms) <"fullscreen">: New parameter.
12337 (x_fullscreen_move, x_set_fullscreen): New functions.
12338 (x_set_frame_parameters): Support for Qfullscreen.
12339 (x_real_positions): More accurate computation of the frame position.
12340 (x_figure_window_size): Support full-screen frames.
12341 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12342
048addec
JD
12343 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12344 (XTread_socket) <Expose>: Call x_check_fullscreen.
12345 <ConfigureNotify>: Don't resize to fullscreen.
12346 Call x_check_fullscreen_move, and set the want_fullscreen member of
12347 output_data.x.
3a62677f 12348
048addec 123492002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12350
048addec
JD
12351 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12352 for mice with more than 3 buttons.
b8523839 12353
048addec
JD
12354 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12355 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12356
048addec
JD
12357 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12358 (syms_of_w32fns): DEFVAR_BOOL it.
12359 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12360
048addec 123612002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12362
048addec 12363 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12364
048addec 123652002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12366
048addec 12367 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12368
048addec 123692002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12370
048addec
JD
12371 * .gdbinit (xbuffer): Remove address operator since data is now a
12372 pointer.
c93674bb 12373
048addec 123742002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12375
048addec 12376 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12377
048addec 12378 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12379
048addec 123802002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12381
048addec
JD
12382 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12383 when checking for multiple frames.
91175673 12384
048addec 123852002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12386
048addec
JD
12387 * window.c (delete_window): Rewrite the code for changing the
12388 selected window to handle the case where WINDOW is not a leaf.
91175673 12389
048addec 123902002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12391
048addec
JD
12392 * process.c (send_process): Set src_multibyte to 1 after the call
12393 top setup_coding_system, not before the call.
e0fead5d 12394
048addec 123952002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12396
048addec
JD
12397 * xmenu.c (set_frame_menubar, xmenu_show):
12398 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12399
048addec
JD
12400 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12401 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12402
048addec 124032002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12404
048addec 12405 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12406
048addec 12407 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12408
048addec 12409 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12410
048addec 124112002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12412
048addec
JD
12413 * insdel.c (make_gap_larger): Make sure buffer size does not
12414 overflow range of int.
62854fe2 12415
048addec 124162002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12417
048addec
JD
12418 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12419 OVERLAPS_P.
656f46bb 12420
048addec 12421 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12422
048addec
JD
12423 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12424 to the left or to the right of the pointer, put it against
12425 the left screen edge.
12426 (x_frame_parms): Add missing braces around initializer.
036e218d 12427
048addec
JD
12428 * w32term.c (x_setup_relief_colors): Don't compute an image's
12429 background color if it doesn't have a Pixmap.
12430 (notice_overwritten_cursor): Don't depend on
12431 output_cursor and updated_area. Compare pixel coordinates with
12432 window's cursor pixel coordinates.
12433 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12434 Call notice_overwritten_cursor with new arg list.
12435 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12436 unconditionally.
12437 (x_draw_image_relief): Use predefined macro instead of
12438 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12439
048addec 12440 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12441
048addec 124422002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12443
048addec 12444 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12445
048addec 124462002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12447
048addec
JD
12448 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12449 (Fkey_binding): Try the `keymap' property map first.
12450 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12451 minor mode bindings.
90647b07 12452
048addec 124532002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12454
048addec 12455 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12456
048addec 124572002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12458
048addec
JD
12459 * keyboard.c (read_key_sequence): Handle the keymap property
12460 before minor mode maps.
9fbc32aa 12461
048addec
JD
12462 * editfns.c (Fformat): Update thissize from field_width
12463 based on the actual width, in the string case.
036e218d 12464
048addec 124652002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12466
048addec
JD
12467 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12468 when used as truth value to prevent gcc warnings.
9fbc32aa 12469
048addec
JD
12470 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12471 * w32proc.c: Include <config.h>.
9fbc32aa 12472
048addec 124732002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12474
048addec
JD
12475 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12476 not EMACS_INT, to make them compatible with DEFVAR_INT.
12477 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12478
048addec 124792002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12480
048addec
JD
12481 * print.c (print_object): Test print_escape_nonascii only for
12482 unibyte strings.
12483 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12484 when outputting to a multibyte buffer.
9fbc32aa 12485
048addec 124862001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12487
048addec
JD
12488 * print.c (print_object): In multibyte string, use hex escapes.
12489 Use octal only for unibyte strings.
12490 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12491
048addec
JD
12492 * lread.c (read_escape): New arg BYTEREP for reporting whether
12493 escape forces unibyte or multibyte.
12494 (read1): When reading a string, take note of that info.
0142178a 12495
048addec 124962001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12497
048addec
JD
12498 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12499 comparison to test lisp value returned by Fget.
d4824a5d 12500
048addec 125012001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12502
048addec 12503 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12504
048addec 12505 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12506
048addec
JD
12507 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12508 Handle modifier bits. Correct typo in error message.
99e380ee 12509
048addec 125102001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12511
048addec
JD
12512 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12513 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12514 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12515 Update calls to Fdefine_abbrev.
12516 (write_abbrev): Update for changed data format.
12517 Don't list "system" abbrevs.
12518 (Fexpand_abbrev): Update use count with new data format.
12519 (describe_abbrev): Update for changed data format.
12520 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12521
048addec 12522 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12523
048addec 12524 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12525
048addec
JD
12526 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12527 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12528
048addec
JD
12529 * keymap.c (Flookup_key): Error message if key has wrong data type.
12530 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12531 (exclude_key): New variable.
59a86c99 12532
048addec 125332001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12534
048addec
JD
12535 * xterm.c (x_setup_relief_colors): Don't compute an image's
12536 background color if it doesn't have a Pixmap.
eb77a5f4 12537
048addec
JD
12538 * xterm.c (notice_overwritten_cursor): Don't depend on
12539 output_cursor and updated_area. Compare pixel coordinates with
12540 window's cursor pixel coordinates.
12541 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12542 Call notice_overwritten_cursor with new arg list.
12543 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12544 unconditionally.
eb77a5f4 12545
048addec
JD
12546 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12547 height of the cursor line to the amount to scroll.
eb77a5f4 12548
048addec 125492001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12550
048addec
JD
12551 * intervals.c (set_point_both): The position after an invisible,
12552 intangible character is not an acceptable stopping point.
bb313871 12553
048addec 125542001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12555
048addec
JD
12556 * window.c (enlarge_window): In new preserve_before code, convert
12557 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12558
048addec 125592001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12560
048addec 12561 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12562
048addec 125632001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12564
048addec
JD
12565 * keyboard.c (record_char): Ignore duplicate help-echo events only
12566 separated by mouse-movement. When tracking mouse, only record
12567 first and last mouse-movement event in same window.
12568 Don't record mouse-movement events in keyboard macros.
3ce081f5 12569
048addec 125702001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12571
048addec
JD
12572 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12573 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 12574
048addec
JD
12575 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12576 instead of Fstring_as_unibyte.
9fabb2f5 12577
048addec 125782001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 12579
048addec 12580 The following changes remove mocklisp support:
9fabb2f5 12581
048addec 12582 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 12583
048addec
JD
12584 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12585 `Qmocklisp' and `Qmocklisp_arguments'.
12586 Remove prototype of syms_of_mocklisp.
2fa0eedf 12587
048addec 12588 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 12589
048addec
JD
12590 * callint.c: Do not include mocklisp.h.
12591 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 12592
048addec
JD
12593 * eval.c: Remove variables `Qmocklisp_arguments',
12594 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12595 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12596 Do not test for mocklisp case.
12597 (Fwhile): Remove unused variable `tem'.
12598 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 12599
048addec 12600 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 12601
048addec 12602 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 12603
048addec 12604 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 12605
048addec 126062001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 12607
048addec
JD
12608 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12609 to the left or to the right of the pointer, put it against
12610 the left screen edge.
6108b49c 12611
048addec 126122001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 12613
048addec
JD
12614 * Makefile.in (distclean): Remove .gdbinit if we are building
12615 outside the source tree.
5eea19a4 12616
048addec 126172001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 12618
048addec 12619 * w32.c (emacs_root_dir): New function.
5eea19a4 12620
048addec 12621 * msdos.c (emacs_root_dir): New function.
5eea19a4 12622
048addec
JD
12623 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12624 of the current drive as the fallback for default_directory.
438e57dd 12625
048addec
JD
12626 * dired.c (file_name_completion): Run the elements of
12627 completion-ignored-extensions through ENCODE_FILE.
438e57dd 12628
048addec
JD
12629 * lisp.h (scmp): Remove prototype, since it's now a static
12630 function private to dired.c.
c88e5347 12631
048addec 126322001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 12633
048addec
JD
12634 * dired.c (scmp): Function moved from minibuf.c.
12635 Delete multibyte handling--used only on encoded strings.
59ce1461 12636
048addec 12637 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 12638
048addec 12639 * fns.c (merge): Add QUIT call.
59ce1461 12640
048addec 126412001-12-18 Dave Love <fx@gnu.org>
8727d588 12642
048addec
JD
12643 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12644 language/georgian.el.
8727d588 12645
048addec 126462001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 12647
048addec
JD
12648 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12649 lisp/Makefile.in:DONTCOMPILE.
cc63037e 12650
048addec 126512001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 12652
048addec
JD
12653 * xdisp.c (window_box_height): Do not return negative values.
12654 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 12655
048addec 12656 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 12657
048addec 12658 * term.c (keys): Likewise.
deece6f5 12659
048addec 12660 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 12661
048addec 126622001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 12663
048addec
JD
12664 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12665 patch (COMPOSING_P, not COMPOSING).
28ff4293 12666
048addec 126672001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 12668
048addec 12669 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 12670
048addec
JD
12671 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12672 before calling decode_coding.
9b46de40 12673
048addec 12674 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 12675
048addec
JD
12676 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12677 instead of only for COMPOSITION_DISABLED.
9b46de40 12678
048addec 126792001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 12680
048addec 12681 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 12682
048addec 12683 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 12684
048addec
JD
12685 * buffer.h (struct buffer): New field `display_error_modiff'.
12686 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 12687
048addec 12688 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 12689
048addec
JD
12690 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12691 Call redisplay_window, but not if display_error_modiff field says no.
12692 (redisplay_window_error): New function.
12693 (displayed_buffer): New variable.
12694 (redisplay_internal, redisplay_windows): Call the new functions
12695 instead of redisplay_window directly.
2cd23960 12696
048addec 126972001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 12698
048addec 12699 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 12700
048addec 127012001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 12702
048addec 12703 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 12704 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 12705 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 12706
048addec 127072001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 12708
048addec
JD
12709 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12710 parameter have a numeric value all the time.
f6fa0866 12711
048addec 12712 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 12713
048addec 127142001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 12715
048addec 12716 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 12717
048addec
JD
12718 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12719 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 12720
048addec 127212001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 12722
048addec
JD
12723 * xdisp.c (move_it_vertically_backward): Change heuristic
12724 for the case that we didn't move far enough initially.
91c153e2 12725
048addec
JD
12726 * window.c (Frecenter): Simplify computation in the case of window
12727 system frames and ARG < 0; use window_box_height.
65b7d3e7 12728
048addec 127292001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 12730
048addec
JD
12731 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12732 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 12733
048addec 127342001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 12735
048addec
JD
12736 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12737 arg is negative.
be676094 12738
048addec 127392001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 12740
048addec
JD
12741 * m/hp800.h: Split the __hpux conditional into the parts
12742 that are right for GNU/Linux too and the parts that are not.
12743 Use the former if GNU_LINUX.
12744 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 12745
048addec 12746 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 12747
048addec 127482001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 12749
048addec
JD
12750 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12751 `new style' [w/`doc:' keyword].
032a857d 12752
048addec 127532001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 12754
048addec
JD
12755 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12756 before using.
b6270150 12757
048addec 127582001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 12759
048addec
JD
12760 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12761 keyword].
98cbb9fa 12762
048addec 127632001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 12764
048addec 12765 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 12766
048addec 12767 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 12768
048addec 127692001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 12770
048addec
JD
12771 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12772 Add comment to explain where the struct came from.
12773 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12774 (add_menu_item): Process pop-up menus first to avoid memory leak.
12775 (add_menu_item, w32_menu_display_help): Use `help' field as
12776 Lisp_Object.
12777 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 12778
048addec 127792001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 12780
048addec 12781 * COPYING: Moved back.
fa336b91 12782
048addec
JD
12783 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12784 Add parentheses around && within ||.
077907d4 12785
048addec 12786 * indent.c (compute_motion): Likewise.
aa2af83a 12787
048addec 12788 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 12789
048addec
JD
12790 * coding.c (setup_coding_system, shrink_encoding_region)
12791 (Fdecode_sjis_char): Likewise.
60a653f1 12792
048addec 127932001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 12794
048addec
JD
12795 * xdisp.c (display_mode_element): Don't read past end of string if
12796 it ends with '%'.
60a653f1 12797
048addec
JD
12798 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12799 can hold.
60a653f1 12800
048addec
JD
12801 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12802 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12803 type changed to Lisp_Object.
12804 (syms_of_data): DEFVAR_LISP them.
60a653f1 12805
048addec 128062001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 12807
048addec
JD
12808 * callproc.c (init_callproc): Set Vdata_directory based on the source
12809 location whenever Emacs was run uninstalled.
60a653f1 12810
048addec 128112001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 12812
048addec
JD
12813 * config.in (HAVE_WORKING_VFORK): New #undefs.
12814 * process.c (create_process):
12815 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12816 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12817 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12818 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12819 * m/intel386.h (HAVE_VFORK): Likewise.
12820 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12821 * m/mips.h (HAVE_VFORK): Likewise.
12822 * s/freebsd.h (vfork): Remove #define.
12823 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12824 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 12825
048addec 128262001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 12827
048addec
JD
12828 * s/hpux10.h (random): Add undef.
12829 (HAVE_RANDOM): Define it just once.
60a653f1 12830
048addec 128312001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12832
048addec 12833 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 12834
048addec 128352001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12836
048addec
JD
12837 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12838 scroll bars of the frame before deleting the frame itself. If the
12839 frame has a widget, delete the frame with XtDestroyWidget, and do
12840 not call XDestroyWindow before that.
60a653f1 12841
048addec 128422001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 12843
048addec 12844 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12845
048addec 12846 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12847
048addec 128482001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 12849
048addec
JD
12850 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12851 excessively large.
60a653f1 12852
048addec
JD
12853 * insdel.c (make_gap_larger): New function.
12854 (make_gap_smaller): New function.
12855 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12856 Call make_gap_smaller if arg is negative.
60a653f1 12857
048addec 128582001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12859
048addec
JD
12860 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12861 Pass a dummy argument when calling interrupt_signal.
12862 (parse_menu_item): Mark disabled items before checking for empty def.
12863 (read_char_minibuf_menu_prompt): Make safety more visible.
12864 (read_key_sequence): Add a `first_unbound' variable.
12865 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12866 unbound prefix as soon as we can detect it.
60a653f1 12867
048addec
JD
12868 * doc.c (Fsnarf_documentation): Add prototype.
12869 (get_doc_string): Handle negative arguments.
12870 (Fdocumentation): Use AREF and ASIZE.
12871 Move the calls to get_doc_string to a single place.
12872 Don't confuse an interactive-spec for a docstring reference.
12873 (Fdocumentation_property): Take advantage of the fact that
12874 get_doc_string now ignores the sign of the docstring position.
60a653f1 12875
048addec 12876 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 12877
048addec 128782001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12879
a64387ee 12880 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 12881
048addec 128822001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12883
048addec
JD
12884 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12885 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 12886
048addec 128872001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 12888
048addec
JD
12889 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12890 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 12891
048addec 12892 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 12893
048addec 128942001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12895
048addec 12896 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 12897
048addec 128982001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 12899
048addec 12900 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 12901
048addec 129022001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 12903
f63fd14e 12904 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 12905
048addec
JD
12906 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12907 [!WM_MOUSELEAVE]: Define.
60a653f1 12908
048addec
JD
12909 * w32menu.c (current_popup_menu, get_menu_item_info):
12910 (set_menu_item_info): New vars.
12911 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12912 (w32_menu_show): Set current_popup_menu.
12913 (add_menu_item): Allocate new strings for owner-drawn menu items
12914 and help strings.
12915 Use owner-draw for disabled menu items again.
12916 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12917 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 12918
048addec
JD
12919 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12920 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12921 <WM_EXITMENULOOP>: Free menu strings.
12922 <WM_MOUSELEAVE>: Stop tracking mouse.
12923 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 12924
048addec
JD
12925 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12926 and mouse face.
60a653f1 12927
048addec 129282001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 12929
048addec
JD
12930 The following changes add left-fringe and right-fringe
12931 frame parameters to adjust fringe widths, or remove one or
12932 both fringes.
60a653f1 12933
048addec
JD
12934 * frame.h (struct frame): Remove trunc_area_pixel_width and
12935 trunc_area_cols fields.
12936 (Qleft_fringe, Qright_fringe): Declare.
12937 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 12938
048addec
JD
12939 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12940 (syms_of_frame): Initialize them.
60a653f1 12941
048addec
JD
12942 * window.c (coordinates_in_window): Handle separate left and right
12943 fringe widths.
60a653f1 12944
048addec
JD
12945 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12946 and fringe_cols fields.
12947 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12948 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12949 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12950 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12951 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12952 (x_compute_fringe_widths): Add prototype.
60a653f1 12953
048addec
JD
12954 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12955 fill fringe evenly with small dashes.
f63fd14e 12956 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
12957 clip the new ZV bitmap to avoid jitter between rows.
12958 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12959 background. Don't draw fringe bitmaps if fringe width is zero.
12960 (x_compute_fringe_widths): New function.
12961 (x_new_font, x_set_window_size_1): Use it.
60a653f1 12962
048addec
JD
12963 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12964 (x_set_frame_parameters): Process `font' parameter before other
12965 parameters as fringe widths depend on it.
12966 (x_set_fringe_width): New function.
12967 (x_figure_window_size): Use x_compute_fringe_widths.
12968 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12969 parameters.
60a653f1 12970
048addec
JD
12971 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12972 (EmacsFrameSetCharSize): Ditto.
60a653f1 12973
048addec
JD
12974 * w32term.h: Merged changes from xterm.h.
12975 * w32term.c: Merged changes from xterm.c.
12976 * w32fns.c: Merged changes from xfns.c.
60a653f1 12977
048addec 129782001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12979
048addec 12980 * COPYING: Removed.
60a653f1 12981
048addec 129822001-11-29 Dave Love <fx@gnu.org>
60a653f1 12983
048addec
JD
12984 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12985 extra extra slot.
12986 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 12987
048addec 129882001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12989
048addec
JD
12990 * fileio.c (file-name-coding-system)
12991 (default-file-name-coding-system): Doc fix (links to referenced
12992 variables added).
60a653f1 12993
048addec 129942001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12995
048addec
JD
12996 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12997 Add dummy uses of gcproN variables.
60a653f1 12998
048addec
JD
12999 * category.c (describe_category, describe_category_1)
13000 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13001 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13002
048addec 130032001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13004
048addec 13005 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13006
048addec
JD
13007 * Makefile.in (lispdir): New variable, referring to build dir.
13008 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13009
048addec 130102001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13011
048addec
JD
13012 * w32menu.c (w32_menu_display_help): Actually add the new argument
13013 OWNER.
60a653f1 13014
048addec 130152001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13016
048addec
JD
13017 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13018 menu items. From David Ponce <dponce@wanadoo.fr>.
13019 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13020 conditionally.
f63fd14e 13021 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13022 help event in the owner frame's keyboard buffer.
60a653f1 13023
048addec
JD
13024 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13025 (Fx_show_tip): Don't subtract last width from row width.
13026
13027 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13028 (w32_read_socket): Use EQ to compare frames.
60a653f1 13029
048addec 130302001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13031
048addec
JD
13032 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13033 OVERLAPS_P.
60a653f1 13034
048addec 130352001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13036
048addec
JD
13037 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13038 `gcpro3' and `gcpro4'.
60a653f1 13039
048addec 13040 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13041
048addec 130422001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13043
048addec 13044 * ccl.c: Use AREF and ASIZE.
60a653f1 13045
048addec 130462001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13047
048addec
JD
13048 * lisp.h (run_hook_list_with_args): Remove.
13049 (LIST_END_P): Fix call to wrong_type_argument.
13050 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13051
048addec 130522001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13053
048addec
JD
13054 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13055 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13056
048addec
JD
13057 * eval.c: Use AREF and ASIZE.
13058 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13059
048addec
JD
13060 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13061 which match the end of the file-name.
13062 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13063 is not a valid env var, but leave it as is instead.
60a653f1 13064
048addec
JD
13065 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13066 Make nil bindings in char-tables transparent.
13067 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13068
048addec 130692001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13070
048addec
JD
13071 * textprop.c (set_text_properties_1): Allow START, END in either order.
13072 Do nothing if range is empty.
60a653f1 13073
048addec 13074 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13075
048addec
JD
13076 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13077 (clean): Not here.
60a653f1 13078
048addec 130792001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13080
048addec
JD
13081 * textprop.c (set_text_properties_1): Clearly mark that the
13082 interval should not be empty.
60a653f1 13083
048addec
JD
13084 * intervals.c (graft_intervals_into_buffer):
13085 Don't call set_text_properties_1 on an empty interval.
60a653f1 13086
048addec 130872001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13088
048addec 13089 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13090
048addec
JD
13091 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13092 don't lose the data in it.
60a653f1 13093
048addec 130942001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13095
048addec 13096 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13097
c62aec78 13098 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13099
c62aec78 13100 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13101
048addec 131022001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13103
048addec 13104 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13105
048addec 131062001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13107
048addec
JD
13108 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13109 Niemitalo <kon@iki.fi>.
60a653f1 13110
048addec 131112001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13112
048addec 13113 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13114
048addec
JD
13115 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13116 (Fx_show_tip): Block input during frame creation.
13117 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13118
048addec 131192001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13120
048addec
JD
13121 * lread.c (Fload): Detect recursive load error for more than 3
13122 nestings of the same file.
13123 (Vrecursive_load_depth_limit): Variable deleted.
13124 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13125
048addec 131262001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13127
048addec
JD
13128 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13129 mouse position if either left or top is not specified.
60a653f1 13130
048addec
JD
13131 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13132 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13133 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13134 (my_create_tip_window): Assign tip_window.
13135 (x_create_tip_frame): Use same defaults as X.
13136 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13137 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13138
048addec
JD
13139 * w32term.c (x_after_update_window_line): Doc fix.
13140 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13141 frames.
13142 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13143
048addec
JD
13144 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13145 for all Windowed systems.
60a653f1 13146
048addec 131472001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13148
048addec
JD
13149 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13150 realized, use the initial screen colors to clear the screen.
60a653f1 13151
048addec 131522001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13153
048addec
JD
13154 * textprop.c (Fset_text_properties): Remove unused variables
13155 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13156
048addec
JD
13157 * search.c (Freplace_match): Remove unused variable `inslen'.
13158
13159 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13160
131612001-11-22 Jason Rumney <jasonr@gnu.org>
13162
13163 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13164 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13165 (my_create_tip_window): New function.
13166 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13167 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13168
131692001-11-20 Jason Rumney <jasonr@gnu.org>
13170
13171 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13172 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13173
13174 * w32fns.c (Vw32_system_coding_system): Remove.
13175 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13176
131772001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13178
13179 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13180 after build_annotations.
13181
13182 * syntax.c (describe_syntax): Add dummy arg.
13183 (describe_syntax_1): Update call to describe_vector.
13184
13185 * category.c (describe_category): Add dummy arg.
13186 (describe_category_1): Update call to describe_vector.
13187
13188 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13189 (describe_command, describe_translation): Add dummy second param.
13190 (describe_map): Call elt_describer with two arguments.
13191 (describe_vector_princ): Add `fun' parameter.
13192 Call it instead of the hardcoded `princ'.
13193 (describe_vector): Add arg `args'.
13194 Pass it as a new second argument to elt_describer.
60a653f1 13195
048addec 13196 * keymap.h (describe_vector): Update prototype.
60a653f1 13197
048addec
JD
13198 * frame.c: Don't include keymap.h any more.
13199 (keys_of_frame): Remove.
60a653f1 13200
048addec 13201 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13202
048addec 13203 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13204
048addec 132052001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13206
048addec
JD
13207 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13208 if defined, 0 otherwise.
13209 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13210 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13211
048addec 132122001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13213
048addec 13214 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13215
048addec 132162001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13217
048addec
JD
13218 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13219 (x_draw_bar_cursor): If the background color of the glyph under
13220 the cursor equals the frame's cursor color, use the glyph's
13221 foreground color for drawing the bar cursor.
13222 (x_after_update_window_line): Clear internal border in different
13223 circumstances.
13224 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13225 (w32_draw_relief_rect): Correct relief by 1 pixel.
13226 (x_set_glyph_string_background_width):
13227 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13228 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13229 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13230 if cursor_in_non_selected_windows is false.
13231 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13232 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13233 Notice if cursor gets overwritten.
13234 (notice_overwritten_cursor): Renamed from
13235 note_overwritten_text_cursor. Rewritten to take glyph widths
13236 into account, and to take X positions as parameters.
13237 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13238 around call to x_draw_glyphs.
13239 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13240 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13241 color to use for image glyph reliefs.
13242 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13243 (glyph_rect): Remove unused variable `area'.
60a653f1 13244
048addec
JD
13245 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13246 some items.
13247 (x_set_internal_border_width): Set frame garbaged when window
13248 doesn't exist yet.
13249 (Fx_create_frame): Accept zero tool_bar_button_relief.
13250 (x_clear_image_1, four_corners_best, image_background)
13251 (image_background_transparent): New functions.
13252 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13253 (gs_format): Add `:background' entry.
13254 (lookup_image): Set IMG's background color if specified.
13255 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13256 when appropriate.
13257 (x_clear_image_1): Reset `background_valid' and
13258 `background_transparent_valid' fields.
13259 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13260 calculating it here. Set IMG's background_transparent field.
13261 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13262 (enum png_keyword_index): Add PNG_BACKGROUND.
13263 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13264 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13265 (enum gif_keyword_index): Add GIF_BACKGROUND.
13266 (enum gs_keyword_index): Add GS_BACKGROUND.
13267 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13268 Pre-calculate image background color where necessary.
13269 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13270 Use display info's n_cbits entry for screen depth.
13271 (Fx_show_tip): Remove unused variables `buffer', `top',
13272 `left', `max_width' and `max_height'.
60a653f1 13273
048addec 13274 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13275
048addec 132762001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13277
048addec 13278 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13279
048addec 132802001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13281
048addec 13282 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13283
048addec 132842001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13285
048addec
JD
13286 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13287 (message_dolog_marker3): New static variables hold three markers.
13288 (syms_of_xdisp): Initialize and staticpro them.
13289 (message_dolog): Use message_dolog_marker1..3 instead of
13290 allocating markers each time. Unchain them when done.
60a653f1 13291
048addec 132922001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13293
048addec 13294 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13295
048addec 132962001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13297
048addec 13298 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13299
048addec 133002001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13301
048addec 13302 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13303
048addec 133042001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13305
048addec 13306 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13307
048addec 133082001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13309
048addec
JD
13310 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13311 with invalid position.
60a653f1 13312
048addec 133132001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13314
048addec 13315 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13316
048addec
JD
13317 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13318 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13319 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13320
048addec 13321 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13322
048addec 133232001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13324
048addec
JD
13325 * fileio.c (build_annotations): Split off the tail.
13326 (build_annotations_2): New fun. Extracted from build_annotations.
13327 (Fwrite_region): Split the call to build_annotations into two
13328 calls to build_annotations and build_annotations_2.
077907d4 13329
048addec 133302001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13331
048addec
JD
13332 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13333 clear_waiting_for_input with argument.
1756e2fb 13334
048addec 13335 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13336
048addec 13337 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13338
048addec 13339 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13340
048addec 13341 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13342
048addec 133432001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13344
048addec
JD
13345 * fileio.c (choose_write_coding_system): New fun, extracted
13346 from Fwrite_region.
13347 (Fwrite_region): Use it.
fa336b91 13348
048addec
JD
13349 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13350 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13351 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13352
048addec 133532001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13354
048addec 13355 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13356
048addec
JD
13357 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13358 Required for ISC 4.1.
fa336b91 13359
048addec 133602001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13361
048addec
JD
13362 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13363 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13364
048addec 133652001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13366
048addec
JD
13367 The following changes are made to clean up the various internal
13368 references to the fringes to actually use the term `fringe' for
13369 them. Previously, they were called `flags areas', `bitmap areas',
13370 `left/right side of windows', or implicitly as `flags' or
13371 `bitmaps':
fa336b91 13372
048addec 13373 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13374 Comments fixed. Use renamed symbols.
06e8f738 13375
f63fd14e 13376 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13377
048addec
JD
13378 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13379 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13380 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13381
048addec 13382 * msdos.c: Comment fix.
9ce647f4 13383
048addec 13384 * w32fns.c: Use renamed symbols.
9b784ab8 13385
f63fd14e 13386 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13387 (fringe_bitmap_type): Renamed from bitmap_type.
13388 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13389 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13390 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13391
f63fd14e 13392 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13393 (fringes_extra): Renamed from flags_areas_extra.
13394 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13395 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13396 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13397 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13398 (FRAME_X_LEFT_FRINGE_WIDTH):
13399 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13400 (FRAME_X_RIGHT_FRINGE_WIDTH):
13401 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13402
048addec 13403 * widget.c: Use renamed symbols.
9f7e52b4 13404
f63fd14e 13405 * window.c: Comment fixes. Use renamed symbols.
048addec 13406 (coordinates-in-window-p): Doc fix.
fa336b91 13407
f63fd14e 13408 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13409
048addec 13410 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13411
048addec 13412 * xfns.c: Use renamed symbols.
89512fcd 13413
f63fd14e 13414 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13415 (fringe_bitmap_type): Renamed from bitmap_type.
13416 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13417 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13418 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13419
f63fd14e 13420 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13421 (fringes_extra): Renamed from flags_areas_extra.
13422 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13423 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13424 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13425 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13426 (FRAME_X_LEFT_FRINGE_WIDTH):
13427 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13428 (FRAME_X_RIGHT_FRINGE_WIDTH):
13429 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13430
134312001-11-15 Jason Rumney <jasonr@gnu.org>
13432
13433 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13434 work for most menu items. From David Ponce
13435 <david.ponce@wanadoo.fr>.
13436
134372001-11-15 Gerd Moellmann <gerd@gnu.org>
13438
13439 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13440 Some x_set_* function expect to be called even if old and new
13441 value are equal.
13442
13443 * xdisp.c (build_desired_tool_bar_string): Accept zero
13444 tool_bar_button_relief.
13445
13446 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13447
13448 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13449
13450 * xterm.c (x_draw_bar_cursor): If the background color of the
13451 glyph under the cursor equals the frame's cursor color, use
13452 the glyph's foreground color for drawing the bar cursor.
13453
13454 * dispnew.c (direct_output_forward_char): Fix character/byte
13455 position comparison.
7d18891d 13456
048addec 134572001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13458
048addec
JD
13459 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13460 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13461 Update arguments to find_field.
13462 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13463 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13464 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13465 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13466
048addec 134672001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13468
048addec 13469 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13470
048addec
JD
13471 * dispextern.h (image_background, image_background_transparent):
13472 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13473
048addec 134742001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13475
048addec 13476 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13477
048addec 13478 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13479
048addec 13480 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13481
048addec 13482 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13483
048addec 13484 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13485
048addec 13486 * eval.c (syms_of_eval): Doc fix.
7d18891d 13487
048addec 13488 * coding.c (syms_of_coding): Doc fix.
7d18891d 13489
048addec 13490 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13491
048addec 13492 * dispnew.c (syms_of_display): Doc fix.
9474c847 13493
048addec 13494 * category.c (Fget_unused_category): Doc fix.
9474c847 13495
048addec 13496 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13497
048addec 134982001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13499
048addec 13500 * print.c (prin1, print): Doc fix.
e3059a5d 13501
048addec 135022001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13503
048addec
JD
13504 * fontset.h: Remove declarations of variables
13505 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13506
048addec
JD
13507 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13508 `Vclip_large_size_font'.
eae936e2 13509
048addec 135102001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13511
048addec 13512 * w32fns.c: Doc fix.
ddb67bdc 13513
048addec 135142001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13515
048addec 13516 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13517
048addec 13518 * fns.c: Doc fix.
6e1b91d7 13519
048addec 13520 * emacs.c: Doc fix.
1c1d3d69 13521
048addec 13522 * coding.c: Doc fix.
1c1d3d69 13523
048addec
JD
13524 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13525 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13526 `new style' [w/`doc:' keyword].
b6f4c7ba 13527
048addec 135282001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13529
048addec
JD
13530 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13531 LeaveNotify events. Only FocusIn and FocusOut do that now.
13532 (x_display_and_set_cursor): Do display hollow cursors in active
13533 minibuffer windows when they are not selected.
b6f4c7ba 13534
048addec 135352001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13536
048addec 13537 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13538 * w32term.c: Change doc-string comments to `new style'
13539 [w/`doc:' keyword]. Doc fixes.
a89f435d 13540
048addec
JD
13541 * w32fns.c: Don't define max.
13542 (Fx_open_connection): Only execute once.
a4cd0cd7 13543
048addec 135442001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13545
048addec
JD
13546 * ccl.c: Change macros to use do-while block instead of if-else.
13547 Use braces to follow GNU Coding Standards.
eafb659a 13548
048addec 135492001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13550
048addec 13551 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13552
048addec 13553 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13554
048addec
JD
13555 * insdel.c (replace_range): Use adjust_markers_for_replace
13556 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13557
048addec 13558 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13559
048addec
JD
13560 * textprop.c (set_text_properties_1): New subroutine
13561 broken out of set_text_properties.
13562 (set_text_properties): Use set_text_properties_1.
91823618 13563
048addec
JD
13564 * intervals.c (graft_intervals_into_buffer):
13565 Use set_text_properties_1 to clear out properties.
91823618 13566
048addec
JD
13567 * search.c (Freplace_match): Use replace_range to insert
13568 and delete. Don't request property inheritance from
13569 surrounding text.
86928dfb 13570
048addec 135712001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13572
048addec 13573 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 13574 vertical fonts. Allow them if face name is explicitly specified.
048addec 13575 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 13576
048addec 135772001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 13578
048addec
JD
13579 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13580 instead of malloc/free.
a78e0303 13581
048addec 135822001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 13583
048addec
JD
13584 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13585 Coding Standards.
13586 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 13587
048addec 13588 * buffer.c (Fbury_buffer): Likewise.
0c99b139 13589
048addec 13590 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 13591
048addec
JD
13592 * coding.c (encode_coding): Use precomputed value of `src'.
13593 (encode_coding): Remove unused variable `src_end'.
13594 (code_convert_region): Remove unused variables `count'.
830ddd77 13595
048addec 135962001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 13597
048addec
JD
13598 * w32term.c (x_display_and_set_cursor): Do not move system caret
13599 if cursor_glyph is NULL.
55c6d645 13600
048addec 136012001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 13602
048addec 13603 * keymap.c (access_keymap): Fix compilation error.
5de38842 13604
048addec 136052001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 13606
048addec 13607 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 13608
048addec 136092001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 13610
048addec
JD
13611 * intervals.c (graft_intervals_into_buffer):
13612 Remove #ifdef'd-out code.
13613 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 13614
048addec
JD
13615 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13616 code (eval-current-buffer).
13617 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 13618
048addec 136192001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 13620
048addec 13621 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 13622
048addec 136232001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 13624
048addec 13625 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 13626
048addec
JD
13627 * keyboard.c (make_lispy_event): Check integerness and fix
13628 Lisp_Object/int mixup.
17893c65 13629
048addec 136302001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 13631
048addec 13632 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 13633
048addec
JD
13634 * fontset.c (fontset_font_pattern): Remove unused variable
13635 `family_registry'.
d5360cc7 13636
048addec 13637 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 13638
048addec 136392001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 13640
048addec 13641 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 13642
048addec
JD
13643 * buffer.c (Fkill_buffer): Don't delete auto save file
13644 if buffer is modified.
d9d54213 13645
048addec 136462001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 13647
048addec
JD
13648 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13649 CHECK_NUMBER_CDR.
b116830b 13650
048addec 136512001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 13652
048addec 13653 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 13654
048addec 136552001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 13656
048addec 13657 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 13658
048addec 136592001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 13660
048addec 13661 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 13662
048addec 136632001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 13664
048addec
JD
13665 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13666 the program image directly.
982f6c7e 13667
048addec 136682001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 13669
048addec 13670 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 13671
048addec 136722001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 13673
048addec
JD
13674 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13675 and CHECK_BUFFER.
d31053f9 13676
048addec
JD
13677 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13678 (record_char): Likewise.
d31053f9 13679
048addec
JD
13680 * keyboard.c (make_lispy_event): Don't insist a drag event must
13681 move to a different buffer position. Instead, check for moving at
13682 least double_click_fuzz.
982f6c7e 13683
048addec 13684 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 13685
048addec 13686 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 13687
048addec
JD
13688 * indent.c (current_column_1, Fmove_to_column): Separate the code
13689 for display-table glyphs from the code for buffer text, to fix
13690 bugs in the former.
830047fd 13691
048addec 136922001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 13693
048addec
JD
13694 * buffer.c (Fbuffer_local_value): New function.
13695 (syms_of_buffer): Defsubr it.
2df5238c 13696
048addec
JD
13697 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13698 value of `cursor-in-non-selected-windows'.
4e397688 13699
048addec
JD
13700 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13701 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13702 (syms_of_xdisp): Initialize it.
48b0f3ae 13703
048addec 137042001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 13705
048addec 13706 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 13707
048addec
JD
13708 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13709 keyword].
3ecaf7e5 13710
048addec
JD
13711 * eval.c (top_level_value, top_level_set): Remove commented and
13712 #ifdef'd-out code.
13713 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 13714
048addec 137152001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 13716
048addec 13717 * xfns.c: Include unistd.h, if it exists.
8db2e33b 13718
048addec 13719 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 13720
048addec 13721 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 13722
048addec 137232001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 13724
048addec
JD
13725 * lisp.h (CHECK_STRING_CAR): New macro.
13726 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13727 treating XCAR and XCDR as lvalues.
13728 (openp): Use CHECK_STRING_CAR.
13729 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 13730
048addec 137312001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 13732
048addec
JD
13733 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13734 (SIGMASKTYPE): Define.
1b1acc13 13735
048addec 13736 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 13737
048addec 137382001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 13739
048addec
JD
13740 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13741 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13742 Fix typos in comments.
6cb16f95 13743
048addec
JD
13744 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13745 and #ifdef'd-out code.
13746 Fix and reindent comments.
6cb16f95 13747
048addec 13748 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 13749
048addec
JD
13750 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13751 argument `i' in macros.
6cb16f95 13752
048addec
JD
13753 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13754 `i' in macros.
7e9d3c2f 13755
048addec
JD
13756 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13757 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13758 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13759 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13760 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13761 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13762 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13763 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13764 in macros.
7e9d3c2f 13765
048addec
JD
13766 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13767 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13768 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13769 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13770 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13771 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13772 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13773 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13774 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13775 (remove unused second argument).
7e9d3c2f 13776
048addec 137772001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13778
048addec
JD
13779 * syntax.c (describe_syntax): New wrapper.
13780 (Finternal_describe_syntax_value): Rename from describe_syntax.
13781 Don't insert space at front and \n at the end.
13782 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 13783
048addec
JD
13784 * regex.c (re_wctype): Try to fix some warnings.
13785 (regcomp, regexec): Don't forget the __restrict.
9ba48103 13786
048addec 137872001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 13788
048addec 13789 * textprop.c (Fget_char_property): Doc fix.
9ba48103 13790
048addec 137912001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 13792
048addec 13793 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 13794
048addec 13795 * data.c (Fsetq_default): Ditto.
c22e59e1 13796
048addec 13797 * callint.c (Finteractive): Ditto.
9271ed2c 13798
048addec 137992001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13800
048addec
JD
13801 * macros.c: Don't include keymap.h any more.
13802
138032001-11-01 Richard M. Stallman <rms@gnu.org>
13804
13805 * data.c (Fmake_local_variable): Doc fix.
13806
13807 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13808 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 13809
048addec 13810 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
13811 bindings along with or instead of the buffer local map.
13812 Make the overriding maps override what they should.
13813
f00691a3 138142001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
13815
13816 * window.c (grow_mini_window): Fix typo in comment.
13817
27188d11
GM
138182001-11-01 Gerd Moellmann <gerd@gnu.org>
13819
7b49b9d2
GM
13820 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13821 (XTset_vertical_scroll_bar): Likewise.
13822
43f7c3ea
GM
13823 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13824 instead of IMAGE_BACKGROUND.
c22e59e1 13825
b350c2e5
GM
13826 * xfns.c (four_corners_best): Reindent.
13827
c22e59e1 13828 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
13829 Handle :box so that it is possible to specify sexprs.
13830
bf00d461
EZ
138312001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13832
13833 * s/hpux11.h: New file.
13834
f00691a3 138352001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 13836
2b209b97
PJ
13837 * emacs.c (USAGE1): Show command line option --no-window-system
13838 instead of --no-windows in usage.
13839 (standard_args): Rename --no-windows to --no-window-system.
13840 (bug_reporting_address): Follow Emacs coding conventions.
13841
9dbc9081
PJ
13842 * eval.c (Fcommandp): Doc fix.
13843 Change doc-string comments to `new style' [w/`doc:' keyword].
13844
4e10df59
PJ
13845 * frame.c (Fframe_live_p): Doc fix.
13846
13847 * buffer.c (selective-display-ellipses): Doc fix.
13848
dd387b25
GM
138492001-10-31 Gerd Moellmann <gerd@gnu.org>
13850
fe957e65
GM
13851 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13852
dd387b25
GM
13853 * xfaces.c (realize_x_face): If C is not a single-byte character,
13854 set the face's colors_copied_bitwise_p instead of the defaulted_p
13855 members which have a different meaning.
13856 (free_face_colors): Do nothing for a face whose colors have been
13857 copied bitwise.
13858
c22e59e1 13859 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 13860
f00691a3 138612001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 13862
687784e8
PJ
13863 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13864 [w/`doc:' keyword].
2e1280f8 13865
b9d9a9b9
GM
138662001-10-31 Gerd Moellmann <gerd@gnu.org>
13867
13868 * fns.c (require_unwind): Return Lisp_Object.
13869
f00691a3 138702001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 13871
fa1361cb
PJ
13872 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13873 (last-input-char): Revert doc-string to be the same as the
13874 doc-string of `last-input-event'.
13875
6c465a15 13876 * xdisp.c: Fix typos in comments.
48400103 13877
eafa3196
GM
138782001-10-31 Gerd Moellmann <gerd@gnu.org>
13879
13880 * window.c (grow_mini_window): Handle case that the root
13881 window is already smaller than the nominal mininum height.
13882
747d3f2a
SM
138832001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13884
bf9bb76f
SM
13885 * emacs.c (main): Don't call keys_of_macros any more.
13886
13887 * lisp.h (keys_of_macros): Remove.
13888
13889 * macros.c (keys_of_macros): Remove.
13890
747d3f2a
SM
13891 * xfaces.c (Fface_attribute_relative_p): Declare args.
13892
5e905a57
JR
138932001-10-30 Jason Rumney <jasonr@gnu.org>
13894
13895 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13896 (enum_font_cb2): Ignore fonts with vertical orientation.
13897
3a426197
RS
138982001-10-30 Richard M. Stallman <rms@gnu.org>
13899
13900 * keyboard.c (Finput_pending_p): Doc fix.
13901
a742d646
GM
139022001-10-30 Gerd Moellmann <gerd@gnu.org>
13903
259cf6bc
GM
13904 * xterm.c (x_after_update_window_line): Don't run the code
13905 clearing in borders for rows whose visible height is 0.
13906
3f99f948
GM
13907 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13908 resized_p flag is set. If not set, use the much less flickering
13909 method previously used.
13910
13911 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13912
13913 * frame.h (struct frame) <resized_p>: New member.
13914
b4a3be43
GM
13915 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13916 as large as the number of bytes to convert.
747d3f2a 13917
a742d646
GM
13918 * lread.c (to_multibyte): New function.
13919 (read1): Use it.
13920
cacbb9e9
EZ
139212001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13922
13923 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13924
99cb6b2f
GM
139252001-10-30 Gerd Moellmann <gerd@gnu.org>
13926
327f42ee 13927 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
13928 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13929 if the row's fill_line_p is set and drawing the last glyph with
13930 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 13931
99cb6b2f
GM
13932 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13933
8e8223e2
SM
139342001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13935
13936 * xmenu.c: Include coding.h and charset.h.
13937 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13938 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13939 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13940 Explicitly set wv->help. Use `TRUE' rather than `True'.
13941 (menu_help_callback): Use empty_string.
13942
13943 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13944 (Fx_popup_dialog): Explicitly init f.
13945 (w32_menu_display_help): Use empty_string.
13946
4d083a8f
RS
139472001-10-29 Richard M. Stallman <rms@gnu.org>
13948
b2304472
RS
13949 * fns.c (Frequire): Detect recursive try to require the same
13950 feature 3 or more levels deep, and get error.
13951 (require_unwind): New subroutine.
13952 (require_nesting_list): New variable.
13953 (syms_of_fns): Init and staticpro it.
13954
4d083a8f
RS
13955 * print.c (print_object): Clarify indication of insertion type.
13956
2fe41216
EZ
139572001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13958
90480000
EZ
13959 * coding.c (syms_of_coding): Document that locale-coding-system is
13960 used for decoding input on X.
13961
2fe41216
EZ
13962 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13963
f00691a3 139642001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
13965
13966 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13967 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13968
60ebcfe8
GM
139692001-10-29 Gerd Moellmann <gerd@gnu.org>
13970
9a7bdceb
GM
13971 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13972 use NO_CURSOR if cursor_in_non_selected_windows is false.
13973
3f08fcd2
GM
13974 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13975 the slant attribute if FRAME is t.
13976
0ccfdad2
GM
13977 * xfns.c (x_set_internal_border_width): Set frame garbaged
13978 when X window doesn't exist yet.
13979
ef253080
GM
13980 * xterm.c (x_after_update_window_line): Clear internal border
13981 in different circumstances.
b116830b 13982
60ebcfe8
GM
13983 * xterm.c (XTread_socket) <KeyPress>: Don't use
13984 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13985 <handa@etl.go.jp>.
13986
73d25f9c
EZ
139872001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13988
13989 * m/ibms390.h: New file. From Adam Thornton
13990 <athornton@sinenomine.net>.
13991
cac1daf0
GM
139922001-10-28 Gerd Moellmann <gerd@gnu.org>
13993
053b3256 13994 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 13995
cac1daf0
GM
13996 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13997 a loop counter.
13998
f00691a3 139992001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14000
f9711de4 14001 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14002
4707d2d0
PJ
14003 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14004 keyword].
14005 Fix typos in comments.
b116830b 14006
d883731c
PJ
14007 * emacs.c (bug_reporting_address): New function.
14008 Use it when displaying usage message.
14009
04012254
PJ
14010 * minibuf.c (read_minibuf): Remove unused external declaration of
14011 variable `Qread_only'.
14012
13b1a09c
PJ
14013 * keymap.c (access_keymap): Remove unused variable `charset'.
14014
5bbf4378
MB
140152001-10-28 Miles Bader <miles@gnu.org>
14016
14017 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14018 Remove #ifdef'd-out code.
14019 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14020 (syms_of_xfaces): Initialize them.
14021
1ce1e4ee
JR
140222001-10-27 Jason Rumney <jasonr@gnu.org>
14023
14024 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14025 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14026 position using the system caret.
14027
14028 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14029 (w32_system_caret_height, w32_system_caret_x)
14030 (w32_system_caret_y): New variables for tracking system caret.
14031 (w32_initialize): Initialize them.
c2d53558 14032 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14033
c2d53558
SM
14034 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14035 New messages types.
1ce1e4ee
JR
14036
14037 * w32term.c (note_mouse_highlight): Clear old help_echo.
14038
f00691a3 140392001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14040
bb4600a4
PJ
14041 * xterm.c: Fix typo in a comment.
14042
7db35a48
PJ
14043 * emacs.c: Fix typos in comments.
14044 Remove unnecessary spaces.
14045 Change doc-string comments to `new style' [w/`doc:' keyword].
14046 (USAGE2): Fix typos in usage string.
14047
a7248e4f
PJ
14048 * xterm.c: Fix typo in a comment.
14049
4e30ce42
PJ
14050 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14051 emacs.c.
14052
62725a92
GM
140532001-10-27 Gerd Moellmann <gerd@gnu.org>
14054
798dbe1f 14055 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14056 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14057 farther backward when target_y was not reached.
14058
62725a92
GM
14059 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14060 Display errno only if non-zero.
14061 (sound_warning): New function.
14062 (vox_configure): Don't treat failing to set sample rate as error.
14063 (various places): Improve error messages.
14064
d4e34d24
EZ
140652001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14066
944e6f60
EZ
14067 * fileio.c (Faccess_file): Run the argument filename through
14068 Fexpand_file_name, before using it.
14069
d4e34d24
EZ
14070 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14071 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14072
38d2af0c
GM
140732001-10-26 Gerd Moellmann <gerd@gnu.org>
14074
da80a8d5
GM
14075 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14076
38d2af0c
GM
14077 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14078 Fix clearing in the case of scroll bars on the right.
c2d53558 14079
45de4a6f 140802001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14081
14082 * w32gui.h (XImage): Add a dummy typedef.
14083
fbd5ceb2
GM
140842001-10-26 Gerd Moellmann <gerd@gnu.org>
14085
c2d53558 14086 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14087
b23236fb
EZ
140882001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14089
14090 * frame.c (Fframe_parameter): Fix last change.
14091
5d991fc4
EZ
14092 * fileio.c: Revert last change (which removed old commented-out
14093 version of expand-file-name). Add a comment that explains why
14094 this old version should not be removed.
14095
879eadc3
GM
140962001-10-25 Gerd Moellmann <gerd@gnu.org>
14097
75700ff2
GM
14098 * frame.c (Fframe_parameter): Fix a bug whereby some
14099 ``artificial'' frame parameters, like `minibuffer' were not
14100 obtained by calling Fframe_parameters.
14101
dfe92a6a
GM
14102 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14103 cursor differently.
14104
879eadc3
GM
14105 * xdisp.c (move_it_vertically_backward): Compute line height
14106 differently. Add heuristic to try to be more compatible to 20.x.
14107
e1010ebe
SM
141082001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14109
d73a471b
SM
14110 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14111
d6da5a06
GM
14112 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14113 boolean.
e1010ebe 14114
f66bd220
MB
141152001-10-25 Miles Bader <miles@gnu.org>
14116
14117 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14118 BG is a pointer to a structure, not a structure.
14119 (gif_format, png_format): Add missing commas.
14120
d436d538
RS
141212001-10-24 Richard M. Stallman <rms@gnu.org>
14122
14123 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14124 (syms_of_xfaces): Defsubr it.
d436d538 14125
f00691a3 141262001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14127
14128 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14129 variable `area'.
14130
f00691a3 141312001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14132
c2d53558 14133 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14134
e2a57b34
MB
141352001-10-25 Miles Bader <miles@gnu.org>
14136
14137 * dispextern.h (struct image): Add `background',
14138 `background_valid', and `background_transparent' fields.
14139 (image_background, image_background_transparent): New declarations.
14140 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14141 * xfns.c (image_background, image_background_transparent)
14142 (four_corners_best): New functions.
c2d53558 14143 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14144 (gs_format): Add `:background' entry.
14145 (lookup_image): Set IMG's background color if specified.
14146 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14147 when appropriate.
14148 (x_clear_image_1): Reset `background_valid' and
14149 `background_transparent_valid' fields.
14150 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14151 calculating it here. Set IMG's background_transparent field.
14152 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14153 (enum png_keyword_index): Add PNG_BACKGROUND.
14154 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14155 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14156 (enum gif_keyword_index): Add GIF_BACKGROUND.
14157 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14158 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14159 Pre-calculate image background color where necessary.
14160 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14161 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14162 color to use for image glyph reliefs.
14163
b547b6e8
GM
141642001-10-24 Gerd Moellmann <gerd@gnu.org>
14165
d9e3b8c6
GM
14166 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14167 in full-width rows.
c2d53558 14168
b547b6e8
GM
14169 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14170 Fix clearing of area not covered by scroll bar.
14171
f00691a3 141722001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14173
14174 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14175 and `real_start'.
c2d53558 14176 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14177 (glyph_rect): Remove unused variable `area'.
14178
76cb5e06
GM
141792001-10-24 Gerd Moellmann <gerd@gnu.org>
14180
bdbdebff 14181 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14182
14183 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14184 (row_containing_pos): Take additional argument DY.
14185 Treat rows ending in middle of char differently.
62e33982
GM
14186 (display_line): Handle tabs on window systems differently.
14187
14188 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14189 with additional argument.
14190
14191 * dispextern.h (row_containing_pos): Adjust prototype.
14192
76cb5e06
GM
14193 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14194 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14195 (try_window_id, try_window_reusing_current_matrix)
14196 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14197 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14198
f00691a3 141992001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14200
c9e60620
PJ
14201 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14202 gnuemacs).
14203 (HAVE_BOXES): Fix typo in comment.
14204 (push_menu_pane): Fix typo in comment.
14205
3b552d56
PJ
14206 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14207 of `Qwhen'.
14208 (single_display_prop_string_p): Remove unused local declarations
14209 of `Qwhen' and `Qmargin'.
14210 (string_buffer_position): Remove unused variable `around'.
14211 (store_frame_title): Remove unused variable `width'.
14212
15c565ac
PJ
14213 * window.c: Don't define max.
14214 (coordinates_in_window): Remove unused variable `uy'.
14215
a8818eb9
PJ
14216 * widget.c: Don't define max.
14217
996fee11
PJ
14218 * process.c: Don't define max.
14219 (create_process): Remove unused variable `buffer'.
14220
496e1a5b
GM
142212001-10-23 Gerd Moellmann <gerd@gnu.org>
14222
c2d53558 14223 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14224
5905ae8b
EZ
142252001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14226
14227 * xfaces.c (Finternal_set_lisp_face_attribute)
14228 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14229 frame is on a windowed display.
14230
24db49fb
GM
142312001-10-23 Gerd Moellmann <gerd@gnu.org>
14232
c2d53558
SM
14233 * dispnew.c (sync_window_with_frame_matrix_rows):
14234 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14235 of marginal areas.
14236
c2d53558 14237 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14238
f0487f05
EZ
142392001-10-23 Andreas Schwab <schwab@suse.de>
14240
14241 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14242 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14243
f0a48a01
GM
142442001-10-23 Gerd Moellmann <gerd@gnu.org>
14245
c2d53558 14246 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14247 REAL_END. Notice if cursor gets overwritten.
14248 (notice_overwritten_cursor): Take X positions as parameters.
14249 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14250 around call to x_draw_glyphs.
14251
f00691a3 142522001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14253
fc11dff0
PJ
14254 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14255 instead of C) and usage.
a50a10a0 14256
fc11dff0
PJ
14257 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14258 of C) and usage.
a50a10a0
PJ
14259
14260 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14261 `left', `max_width' and `max_height'.
14262
8738febd
GM
142632001-10-23 Gerd Moellmann <gerd@gnu.org>
14264
14265 * xdisp.c (display_line): For a tab continued to the next line,
14266 set row's ends_in_middle_of_char_p.
14267
653c329b
GM
142682001-10-22 Gerd Moellmann <gerd@gnu.org>
14269
14270 * xdisp.c (display_line): Fix computation of continuation lines
14271 width for TABs.
14272
f00691a3 142732001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14274
7ba51063
PJ
14275 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14276 `Qlaplace'.
14277
f958c5ac
PJ
14278 * fileio.c: Remove unused code.
14279
eb360291
MB
142802001-10-22 Miles Bader <miles@gnu.org>
14281
14282 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14283 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14284 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14285
98515cf0
JR
142862001-10-21 Jason Rumney <jasonr@gnu.org>
14287
14288 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14289
93026d88
EZ
142902001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14291
14292 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14293 (Finsert_string): Avoid the multi-line string literals warning.
14294
c9a95b79
MB
142952001-10-22 Miles Bader <miles@gnu.org>
14296
14297 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14298 (Fdocumentation): Don't use it.
14299 (syms_of_doc): Don't initialize it.
14300
14301 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14302 * print.c (Fwith_output_to_temp_buffer): Likewise.
14303 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14304 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14305 (Fsave_restriction): Likewise.
c2d53558
SM
14306 * eval.c (Frun_hooks, Frun_hook_with_args)
14307 (Frun_hook_with_args_until_failure)
14308 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14309 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14310 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14311 (Funwind_protect, Fcondition_case): Likewise.
14312 * coding.c (Ffind_operation_coding_system): Likewise.
14313 * keyboard.c (Ftrack_mouse): Likewise.
14314
a3b10252
MB
143152001-10-21 Miles Bader <miles@gnu.org>
14316
c2d53558 14317 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14318 (Fmake_hash_table): Add usage: string to doc string.
14319 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14320 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14321 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14322 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14323 (Fml_prefix_argument_loop): Likewise.
14324
f00691a3 143252001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14326
c2d53558 14327 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14328
c6f73eec
PJ
14329 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14330 style' [w/`doc:' keyword].
14331
14332 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14333 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14334 comments to `new style' [w/`doc:' keyword].
14335
3cf3436e
JR
143362001-10-21 Jason Rumney <jasonr@gnu.org>
14337
14338 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14339
c169b8f1
JR
14340 * w32term.c (remember_mouse_glyph): New function.
14341 (w32_mouse_position): Use it.
14342 (note_mouse_movement): If the mouse moved off the glyph, remember
14343 its new position.
c2d53558 14344
4fdd691b
JR
14345 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14346 (w32_display_info): Add mouse_face_overlay.
14347
c169b8f1
JR
14348 * w32term.c (notice_overwritten_cursor): Renamed from
14349 note_overwritten_text_cursor. Rewritten to take glyph widths into
14350 account.
14351 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14352 (fast_find_string_pos): New function.
14353 (fast_find_position): Return the correct vpos. Add parameter
14354 STOP. In the final row, stop before glyphs having STOP as object.
14355 Don't consider glyphs that are not from a buffer.
14356 (fast_find_position) [0]: Add a presumably more correct version
14357 for after 21.1.
14358 (expose_window_tree, expose_frame): Don't compute intersections here.
14359 (expose_window): Do it here instead.
14360 (expose_window_tree, expose_window, expose_line): Return 1 when
14361 overwriting mouse-face.
14362 (expose_window): If W is the window currently being updated, mark
14363 the frame garbaged.
14364 (expose_frame): If mouse-face was overwritten, redo it.
14365 (x_use_underline_position_properties): New variable.
14366 (syms_of_xterm): DEFVAR_BOOL it.
14367 (x_draw_glyph_string): Add comment to use it in future.
14368 (x_draw_glyph_string): Restore clipping after drawing box.
14369 Fix a computation of the underline position.
14370 (w32_get_glyph_string_clip_rect): Minor cleanup.
14371 (x_fill_stretch_glyph_string): Remove an assertion.
14372 (x_produce_glyphs): Don't convert multibyte characters
14373 to unibyte characters in unibyte buffers.
14374 (cursor_in_mouse_face_p): New function.
14375 (x_draw_stretch_glyph_string): Use it to choose a different GC
14376 when drawing a cursor within highlighted text. Don't draw
14377 background again if it has already been drawn.
14378 (x_draw_glyph_string_box): Don't draw a full-width
14379 box just because the glyph row's full_width_p flag is set.
14380 (x_draw_glyphs): Fix computation of rightmost x for
14381 full-width rows.
14382 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14383 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14384 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14385 (x_update_window_end): Handle overwritten mouse face
14386 also for tool bar windows.
14387 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14388 DRAW is DRAW_IMAGE_RAISED.
14389 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14390 actually redrawn. Make the function static.
14391 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14392 optimize away highlighting if we pass over that same overlay again.
14393 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14394 to detect a case where we have to highlight a different region
14395 despite not having left the currently highlighted region.
14396 Set mouse_face_overlay in the x_display_info. Avoid changing the
14397 mouse pointer shape when show_mouse_face has already done it, or
14398 there is no need. Handle mouse-face and help-echo in strings.
14399 (glyph_rect): New function.
14400 (w32_mouse_position): Use it to raise the threshold for mouse
14401 movement event generation.
14402 (w32_initialize_display_info): Initialize the x_display_info's
14403 mouse_face_overlay.
14404 (w32_set_vertical_scroll_bar): Don't clear a zero height
14405 or width area.
14406 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14407 a widget to zero height.
14408
3cf3436e 14409 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14410 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14411 equivalents in menu_items.
14412 (w32_menu_show): Don't overwrite an item's name with its key
14413 description in case the description is a multibyte string.
14414 (single_submenu): Some cleanup.
14415
14416 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14417 (postprocess_image): New function.
14418 (lookup_image): Call it for all image types except PostScript.
14419 (x_kill_gs_process): Call postprocess_image.
14420 (tiff_error_handler, tiff_warning_handler): New functions.
14421 (tiff_load): Install them as handlers.
14422 (x_kill_gs_process): Recognize if someone has cleared the image
14423 cache under us.
14424 (valid_image_p): Protect better against invalid image
14425 specifications. Previous code could signal an error.
14426 (Fx_hide_tip, Fshow_tip): Doc fix.
14427 (Fv_max_tooltip_size): New variable.
14428 (syns_of_xfns): DEFVAR_LISP it.
14429 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14430 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14431 window_width. Use a maximum tooltip size specified by
14432 Vx_max_tooltip_size, if that has valid contents.
14433 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14434 Make sure the tooltip is completely visible.
14435 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14436 (Fx_create_frame): Adjust the frame's height for presence
14437 of the tool bar before calling x_figure_window_size.
14438 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14439 when the window gets smaller.
14440 (x_set_foreground_color): Set frame's cursor_pixel.
14441 (x_set_foreground_color, x_set_background_color): Cleaned up.
14442 (x_set_font): Handle case of x_new_fontset returning the same name
14443 as before, although there was a change in fontsets.
14444
386ca361
MB
144452001-10-21 Miles Bader <miles@gnu.org>
14446
c2d53558 14447 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14448 (Flogxor): Add usage: string to doc string.
14449 * charset.c (Fstring): Likewise.
14450 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14451 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14452
f00691a3 144532001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14454
03be2694
PJ
14455 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14456
14457 * alloc.c: Reindent DEFUNs with doc: keywords.
14458
14459 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14460
14ff1ee0
PJ
14461 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14462 keyword].
14463
2f147815 14464See ChangeLog.9 for earlier changes.
6922b018
KH
14465
14466;; Local Variables:
49b3bd82 14467;; coding: iso-2022-7bit
6922b018 14468;; End:
2a34a036 14469
2f147815 14470 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14471 Copying and distribution of this file, with or without modification,
14472 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14473
14474;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4