(face_attr_equal_p): Declare parameters.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
3ebc0939
AS
12004-06-13 Andreas Schwab <schwab@suse.de>
2
3 * xfaces.c (face_attr_equal_p): Declare parameters.
4
6fb41b5b
KH
52004-06-13 Kenichi Handa <handa@m17n.org>
6
7 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
8
fc3095ce
EZ
92004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
10
11 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
12
66189a40
KH
132004-06-12 Kenichi Handa <handa@m17n.org>
14
15 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
16 ccl_prog_stack_struct and update it.
17 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
18 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
19 ccl->eof_ic on EOF.
20 (ccl_debug_hook): New function.
21 (struct ccl_prog_stack): New member eof_ic.
22 (ccl_driver): Handle EOF in subrountine call correctly.
23
242004-06-11 Kenichi Handa <handa@m17n.org>
25
26 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
27
1da71023
KS
282004-06-11 Kim F. Storm <storm@cua.dk>
29
30 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
31
e9efcef4
JB
322004-06-11 Juanma Barranquero <lektu@terra.es>
33
34 * keyboard.c (Fposn_at_point): Doc fix.
35
9b9ceb61
DK
362004-06-11 David Kastrup <dak@gnu.org>
37
38 * search.c (match_limit): Don't flag an error if match-data
39 exceeding the allocated search_regs.num_regs gets requested, just
40 return Qnil.
41
6e87ac8f
MB
422004-06-08 Miles Bader <miles@gnu.org>
43
44 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
45
0b0dea7b
JB
462004-06-07 Juanma Barranquero <lektu@terra.es>
47
48 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
49 (Fcurrent_time_string, Fcurrent_time_zone)
50 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
51
a0a23346
MB
522004-06-07 Miles Bader <miles@gnu.org>
53
08384afd 54 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
55 (push_named_merge_point): New function.
56 (merge_named_face): New function.
57 (merge_face_ref, face_at_buffer_position, face_at_string_position):
58 Use `merge_named_face'.
59 (merge_face_inheritance): Function removed.
60 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
61 Add new `err_msgs' and `named_merge_points' args. Return error
62 status. Only print error messages if ERR_MSGS is true. Don't try to
63 do :inherit attribute validation.
64 (merge_face_heights): Handle `unspecified' in both directions.
65 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
66 Call `merge_face_ref' instead of `merge_face_inheritance'.
67 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
68 (compute_char_face, face_at_buffer_position)
69 (face_at_string_position): Call `merge_face_ref' instead of
70 `merge_face_vector_with_property'.
71
12d5b185
KH
722004-06-07 Kenichi Handa <handa@m17n.org>
73
74 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
75 the necessary places.
76
2e2d7ee6
KS
772004-06-07 Kim F. Storm <storm@cua.dk>
78
79 * process.c (Fdelete_process): Undo 2004-05-28 change.
80 Instead, call status_notify also for network process.
81 (status_message): Use process instead of status as arg.
82 Give messages "deleted" or "connection broken by remote peer" for
83 an exited network process.
84 (status_notify): Change call to status_message.
85 (read_process_output): Increase readmax to 4096. Do not increase
86 buffer size for datagram channels (default is now large enough).
87
fcf0d299
ST
882004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
89
90 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
91 problem due to newly defined variable.
92
0722292b
MB
932004-06-06 Miles Bader <miles@gnu.org>
94
95 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
96 immediately if non-interactive or not initialized.
97
ddfb8369
RS
982004-06-05 Richard M. Stallman <rms@gnu.org>
99
100 * minibuf.c (Fcompleting_read): Doc fix.
101
57015754
AS
1022004-06-05 Andreas Schwab <schwab@suse.de>
103
104 * macfns.c (x_create_tip_frame): Fix declaration after statement.
105
23715ea6
JB
1062004-06-05 Juanma Barranquero <lektu@terra.es>
107
108 * keymap.c (Fdescribe_vector): Fix docstring.
109 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
110
8e330b22
MB
1112004-06-05 Miles Bader <miles@gnu.org>
112
113 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
114 attributes have different values than the default face.
115
9742a3a6
EZ
1162004-06-04 Eli Zaretskii <eliz@gnu.org>
117
118 * xfaces.c (x_supports_face_attributes_p): Make this function
119 conditional on HAVE_WINDOW_SYSTEM.
120 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
121 call x_supports_face_attributes_p if it was not compiled in.
122
9717e36c
MB
1232004-06-04 Miles Bader <miles@gnu.org>
124
125 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
126 from Ftty_supports_face_attributes_p.
127 (x_supports_face_attributes_p): New function.
128 (Ftty_supports_face_attributes_p): Function deleted.
129 (Fdisplay_supports_face_attributes_p): New function.
130 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 131 (face_attr_equal_p): New function.
9717e36c
MB
132 (lface_equal_p): Use it.
133
52deb19f
JB
1342004-06-03 Juanma Barranquero <lektu@terra.es>
135
136 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
137 (Vw32_color_map): Fix typo in docstring.
138 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
139 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
140 Make argument names match their use in docstring.
141
86d373e6
JB
1422004-06-02 Juanma Barranquero <lektu@terra.es>
143
144 Work around bugs/problems with MinGW builds of graphics libraries
145 called from MSVC builds of Emacs.
146
147 * image.c (lookup_image): Make pointer to img static.
148 (png_read_from_memory): Disable "global" optimization.
149
2fb0ce67
SM
1502004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
151
152 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
153
50bf7673
ST
1542004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
155
156 * macfns.c: Don't include ccl.h.
157 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
158 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
159 TextUtils.h.
160 (Fx_create_frame): Sync with xfns.c. Initialize cursor
161 descriptors.
50bf7673
ST
162 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
163 display height/width.
164 (compute_tip_xy, Vx_max_tooltip_size): Declare.
165 (unwind_create_tip_frame, compute_tip_xy): New functions.
166 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
167 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
168 and last_show_tip_args.
2fb0ce67 169
50bf7673
ST
170 * macgui.h [!MAC_OSX]: Include Gestalt.h.
171 (Cursor, No_Cursor): New defines.
86d373e6
JB
172 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
173 macro.
50bf7673
ST
174 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
175
176 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
177
178 * macterm.c: Don't include Gestalt.h.
179 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
180 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
181 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
182 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
183 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
184 (construct_mouse_click, XTmouse_position)
185 (x_scroll_bar_report_motion, x_calc_absolute_position)
186 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
187 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
188 (note_mouse_movement): Clear the mouse face and reset the pointer
189 shape when the pointer goes outside the frame without grabbing.
190 (mac_front_window): New function.
191 (mac_window_to_frame): New macro.
192 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
193 (do_window_activate, do_window_deactivate, do_app_resume)
194 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
195 (do_zoom_window, mac_do_receive_drag, XTread_socket)
196 (mac_check_for_quit_char): Use mac_front_window and/or
197 mac_window_to_frame.
198 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
199 scroll-bar click event.
200 (mac_define_frame_cursor): Change the pointer shape.
86d373e6
JB
201 (x_free_frame_resources): Reset tip_window to NULL when it is
202 disposed.
50bf7673 203 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
86d373e6
JB
204 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
205 arrow_cursor.
50bf7673
ST
206 (do_window_update): Don't do anything if the updated window is the
207 tooltip window.
208 (do_mouse_moved): Handle mouse movement events here (previously in
209 XTread_socket). Clear the mouse face if
210 dpyinfo->mouse_face_hidden is set.
211 (do_os_event, do_events): Remove (now in XTread_socket).
212 (XTread_socket): Immediately return if interrupt_input_blocked.
86d373e6
JB
213 Loop until all the events in the queue are processed. Rearrange
214 codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
215 contents of do_os_event and do_events. Remove mouse movement
216 handling (now in do_mouse_moved). Add the case where
217 Vmouse_highlight has an integer value.
218 (NewMacWindow): Remove.
219 (make_mac_frame): Do what NewMacWindow previously did. Don't do
220 excess initializations.
221 (make_mac_terminal_frame): Previous initializations in
222 make_mac_frame are moved here.
86d373e6
JB
223 (mac_initialize_display_info): Initialize
224 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
225
226 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
227 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
228
08fd1251
RS
2292004-05-29 Richard M. Stallman <rms@gnu.org>
230
231 * lisp.h (truncate_undo_list): Update decl.
232
233 * alloc.c (undo_outer_limit): New variable.
234 (syms_of_alloc): Defvar it.
235 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
236
237 * undo.c (truncate_undo_list): New arg LIMITSIZE.
238
239 * alloc.c (lisp_align_malloc): Check for base == 0
240 regardless of HAVE_POSIX_MEMALIGN.
241 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
242
227ef0ff
SM
2432004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
244
245 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
246 (marker_blocks_pending_free): Remove.
247 (Fgarbage_collect): Sweep after cleaning up undo-lists.
248 Mark the undo lists after claning them up.
249 Don't free block in marker_blocks_pending_free.
250 (mark_buffer): Don't mark undo_list.
251 (gc_sweep): Sweep hash-tables and strings first.
252 Do free marker blocks that are empty.
253
034a6113
SM
2542004-05-28 Jim Blandy <jimb@redhat.com>
255
256 * regex.c (print_partial_compiled_pattern): Add missing 'break'
257 after 'case wordend'. For symbeg and symend, print to stderr,
258 like the other cases.
259
33594a8d
NF
2602004-05-28 Noah Friedman <friedman@splode.com>
261
262 * process.c (Fdelete_process): Do not call remove_process.
263
ce50a847
SM
2642004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
265
266 * alloc.c (struct backtrace): Remove.
267 (Fgarbage_collect): Use the new mark_backtrace.
268
269 * eval.c (mark_backtrace): New function.
270
271 * minibuf.c (run_exit_minibuf_hook): New function.
272 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
273 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
274
1e8dae36
KS
2752004-05-27 Kim F. Storm <storm@cua.dk>
276
277 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
278 over display properties, e.g. images, that replace buffer text.
279
846faa3b
KS
2802004-05-25 Kim F. Storm <storm@cua.dk>
281
282 * alloc.c (marker_blocks_pending_free): New var.
283 (gc_sweep): Store free marker blocks on that list.
284 (Fgarbage_collect): Free them after undo-list cleanup.
285
286 * process.c (wait_reading_process_input): Check connect_wait_mask
287 before actually accepting connection in case it has already been
288 accepted due to recursion.
289
6239a668
KH
2902004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
291
ce50a847
SM
292 * coding.c (Fset_safe_terminal_coding_system_internal):
293 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 294
71d5a208
RS
2952004-05-22 Richard M. Stallman <rms@gnu.org>
296
297 * alloc.c (Fmake_string): Doc fix.
298
299 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
300 and the alist pairs too.
301
302 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
303
304 * emacs.c (main): Update copyright year.
305
306 * fileio.c (Fread_file_name): Expand DIR if not absolute.
307
308 * insdel.c (del_range_2, replace_range): Don't write an anchor
309 if the gap is empty.
310
311 * xdisp.c (try_scrolling): If scroll-up-aggressively or
312 scroll-down-aggressively is small but positive, put point
313 near the screen edge.
314
f63fd14e
JB
3152004-05-22 Juanma Barranquero <lektu@terra.es>
316
317 * keymap.c (Fdefine_key): Doc fix.
318
4d12067c
KS
3192004-05-22 Kim F. Storm <storm@cua.dk>
320
321 * alloc.c (struct backtrace): Add debug_on_exit member.
322 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
323 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
324 the removed cons cells.
325 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
326 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
327 any cons cells pointing to unallocated stings.
328 Do not lisp_free any marker blocks, as there may still be pointers
329 to them from buffer undo lists at this stage of GC.
330
331 * keyboard.c (struct backtrace): Add debug_on_exit member.
332 (Fcommand_execute): Clear it.
333
931285e2
LT
3342004-05-20 Luc Teirlinck <teirllm@auburn.edu>
335
336 * intervals.c (lookup_char_property): Do not prematurely return nil.
337
669fa600
SM
3382004-05-19 Jim Blandy <jimb@redhat.com>
339
340 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 341 beginning and end of symbols.
4d12067c 342
669fa600
SM
343 * regex.c (enum syntaxcode): Add Ssymbol.
344 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
345 (re_opcode_t): New opcodes `symbeg' and `symend'.
346 (print_partial_compiled_pattern): Print the new opcodes properly.
347 (regex_compile): Parse the new operators.
ce50a847 348 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
349 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
350 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
351 (re_match_2_internal): Match symbeg and symend.
352
353 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
354
0d8c2e5c
KS
3552004-05-19 Kim F. Storm <storm@cua.dk>
356
357 * .gdbinit (xsymbol): Fix last change.
358
669fa600
SM
3592004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
360
361 * .gdbinit (xprintstr): New fun.
362 (xstring, xprintsym): Use it.
363
364 * w32proc.c (create_child): Use INTMASK.
365
366 * alloc.c (Fgarbage_collect): Do all the marking before flushing
367 unmarked elements of the undo list.
368
9a6a4c40
DP
3692004-05-18 David Ponce <david@dponce.com>
370
371 * print.c (print): Reset print_depth before to call print_object.
372
f3c4ec74
JR
3732004-05-18 Jason Rumney <jasonr@gnu.org>
374
375 * w32console.c: Prefix RIF functions with w32con_ to avoid
376 namespace clash with functions in term.c and w32term.c.
377
378 * w32menu.c (add_menu_item, w32_menu_display_help)
379 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
380
0d8c2e5c 381 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 382
6be49c3a
EZ
3832004-05-18 Eli Zaretskii <eliz@gnu.org>
384
4d0b9a0a
EZ
385 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
386
6be49c3a
EZ
387 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
388 with make_number.
389 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
390 with XINT.
391
0bc90bba
KS
3922004-05-18 Kim F. Storm <storm@cua.dk>
393
89d19988
KS
394 * blockinput.h (INPUT_BLOCKED_P): New macros.
395
396 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
397 (Ftop_level): Unblock input if blocked.
398
0bc90bba
KS
399 * buffer.h (GET_OVERLAYS_AT): New macro.
400 * msdos.c (IT_note_mouse_highlight): Use it.
401 * textprop.c (get_char_property_and_overlay): Use it.
402 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
403 * xfaces.c (face_at_buffer_position): Use it.
404
405 * print.c (print_object): Increase buf size.
406
653bd0f6
JR
4072004-05-17 Jason Rumney <jasonr@gnu.org>
408
409 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
410 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
411 Lisp_Object using i member.
412 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
413 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
414 consistently.
415
416 * w32proc.c (create_child): Use make_number instead of masking pid.
417
418 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
419 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
420 Use EQ to compare Lisp_Objects.
421 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
422
423 * w32term.c (w32_num_mouse_buttons): Rename from
424 Vw32_num_mouse_buttons and make it an int.
425
426 * w32.c (init_environment): Use it.
427
428 * w32fns.c (w32_wnd_proc): Likewise.
429
430 * w32proc.c (w32_pipe_read_delay): Rename from
431 Vw32_pipe_read_delay and make it an int.
432
433 * w32.c (_sys_read_ahead): Use it.
434
435 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
436
437 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
438
439 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
440 (key_event): Don't mix Lisp_Object and int.
441
442 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
443
444 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
445 modifiers in language change event.
446
54b53ba7
KS
4472004-05-17 Kim F. Storm <storm@cua.dk>
448
449 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
450 Such objects may be freed markers which still exist on an undo list.
451
6e86a75d
JB
4522004-05-16 Juanma Barranquero <lektu@terra.es>
453
454 * data.c (Fset_default): Make argument names match their use in
455 docstring.
456
fc80da24
AS
4572004-05-15 Andreas Schwab <schwab@suse.de>
458
459 * emacs.c (gdb_array_mark_flag): Define.
460 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
461
c1380aa6
EZ
4622004-05-15 Eli Zaretskii <eliz@gnu.org>
463
464 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
465 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
466 defined for the MS-DOS build.
467
89458937
SM
4682004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
469
470 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
471
08020f9a
KH
4722004-05-14 Kenichi Handa <handa@m17n.org>
473
474 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
475
a433994a
ST
4762004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
477
478 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
479 section to frame.c section.
480 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 481 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 482
a433994a 483 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 484
a433994a 485 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 486
a433994a
ST
487 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
488 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
489 (XTread_socket): Fix int/Lisp_Object mixup.
490 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 491
a433994a
ST
492 * macterm.h (struct frame, struct face, struct image)
493 (display_x_get_resource, Fx_display_color_p)
89458937
SM
494 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
495 Add prototypes.
a433994a 496
b51a51b9
KS
4972004-05-14 Kim F. Storm <storm@cua.dk>
498
499 * process.c (wait_reading_process_input): Make reentrant.
500 Make Available and Connecting non-static. Save and restore value
501 of waiting_for_user_input_p.
502
2bde1dd8
KS
5032004-05-13 Kim F. Storm <storm@cua.dk>
504
505 * keyboard.c (mark_kboards): Don't mark x and y members
506 that are overloaded in selection request events.
507
a267ab4d
SM
5082004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
509
510 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
511
eb15ce9e
GM
5122004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
513
514 * window.c (Fdisplay_buffer, Fsplit_window)
515 (split-height-threshold): Doc fix.
516
7fc92635
JB
5172004-05-13 Juanma Barranquero <lektu@terra.es>
518
519 * xfaces.c (Ftty_supports_face_attributes_p)
520 (Finternal_copy_lisp_face): Fix typo in docstring.
521 (Finternal_get_lisp_face_attribute): Fix docstring.
522
1ec2a572
JD
5232004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
524
525 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
526
ae9292e0
ST
5272004-05-11 Steven Tamm <steventamm@mac.com>
528
529 * macfns.c (Fx_create_frame): Default to using tool-bar by
530 setting tool-bar-lines to 1 in default-frame-alist.
531
5322004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
533
534 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
535 (xpm_get_color_table_v, xpm_make_color_table_h)
536 (xpm_put_color_table_h, xpm_get_color_table_h)
537 (xpm_str_to_color_key, xpm_load_image, xpm_load)
538 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 539 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 540
fe97e8df
ST
5412004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
542
a267ab4d 543 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
544 instead of FRAME_X_P
545
b47e779e
KS
5462004-05-11 Kim F. Storm <storm@cua.dk>
547
548 * process.c (read_process_output): Grow decoding_buf when needed;
549 this could cause a crash in allocate_string and compact_small_strings.
550
cdc9b845
EZ
5512004-04-29 Jim Blandy <jimb@redhat.com>
552
553 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
554 against proper opcode.
555
aa7094ba
JB
5562004-05-10 Juanma Barranquero <lektu@terra.es>
557
558 * process.c (Fstart_process): Fix docstring.
559
560 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
561 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
562 (Fsplit_char, Fchar_charset): Make argument names match their use
563 in docstring.
564
e109331a
RS
5652004-05-10 Richard M. Stallman <rms@gnu.org>
566
567 * print.c (print_preprocess): Use being_printed, loop_count and
568 halftail to detect overdeep nesting and cyclic cdr chains.
569
9a28b921
AS
5702004-05-10 Andreas Schwab <schwab@suse.de>
571
572 * lisp.h: Declare Fmake_symbolic_link.
573
574 * fileio.c (Frename_file): Remove extra argument in call to
575 Fmake_symbolic_link.
576
e2c02c1a
KS
5772004-05-10 Kim F. Storm <storm@cua.dk>
578
579 * xdisp.c (calc_line_height_property): Use string position when
580 object is a string.
581
cfe9d13e
KH
5822004-05-10 Kenichi Handa <handa@m17n.org>
583
a57e8159
KH
584 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
585 inhibit-modification-hooks to t temporarily before calling
586 Ferase_buffer.
587
588 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
589 inhibit-modification-hooks to t temporarily before calling
590 Ferase_buffer.
591
592 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
593 inhibit-modification-hooks to t temporarily before calling
594 Ferase_buffer.
595
cfe9d13e
KH
596 * fns.c (count_combining): Delete it.
597 (concat): Don't check combining bytes.
598
ceb96489
JR
5992004-05-09 Jason Rumney <jasonr@gnu.org>
600
601 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
602 (globals_of_w32fns): Set it.
603
b1c661c7
JB
6042004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
605
606 * data.c (Fquo): Simplify.
607
28712a21
JB
6082004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
609
610 * data.c (Fquo): If any argument is float, do the computation in
611 floating point.
612
0f0af7a8
JB
6132004-05-08 Juanma Barranquero <lektu@terra.es>
614
88214ef6
JB
615 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
616 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
617 Fix spelling of Emacs on docstring.
618 (Fset_process_coding_system, Fprocess_coding_system)
619 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
620 Make argument names match their use in docstring.
621 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
622 Fix docstring.
623
0f0af7a8
JB
624 * editfns.c (Finsert_buffer_substring): Make argument names match their
625 use in docstring.
626
627 * syntax.c (Fmodify_syntax_entry): Fix docstring.
628
2a316a84
ST
6292004-05-07 Steven Tamm <steventamm@mac.com>
630
631 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
632 around call to ReceiveEvent to avoid certain crashes.
633
6342004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 635
2a316a84
ST
636 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
637 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
638 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
639 Save/restore the current graphics port and device handle when
640 drawing into an offscreen graphics world.
641
642 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
643 (gif_load): Likewise.
644
ab80314b
JB
6452004-05-07 Juanma Barranquero <lektu@terra.es>
646
647 * window.c (Fset_window_buffer): Fix docstring.
648
70646bb5
TTN
6492004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
650
651 * emacs.c (main) [VMS]: Fix var ref.
652
b03a4fdd
JB
6532004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
654
655 * data.c (Fsetq_default): Fix docstring.
656
279d3293
JR
6572004-05-06 Jason Rumney <jasonr@gnu.org>
658
659 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
660 to avoid name clash.
661
f72b5416
JD
6622004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
663
664 * fileio.c (barf_or_query_if_file_exists): Use lstat.
665 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 666 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 667
6ab66799
KS
6682004-05-04 Kim F. Storm <storm@cua.dk>
669
670 * xdisp.c (Qtotal): New var.
671 (syms_of_xdisp): Intern and staticpro it.
672 (calc_line_height_property): New arg total. Set it if
673 line-spacing property has format (total . VALUE).
674 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
675 Handle total line-spacing property.
676
ab2d724b
JD
6772004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
678
679 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
680 "under" scroll bar when size/position changes.
681
238add5e
JR
6822004-05-03 Jason Rumney <jasonr@gnu.org>
683
684 * makefile.nt: Remove.
685
1644f4e4
EZ
6862004-05-02 Eli Zaretskii <eliz@gnu.org>
687
a267ab4d
SM
688 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
689 Avoid compiler warnings.
05fdbeb8 690
1644f4e4
EZ
691 * Makefile.in (region-cache.o): Depend on config.h.
692
6cbc951e
SM
6932004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
694
695 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
696 with continuation lines, too.
697
2b98b088
TTN
6982004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
699
700 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
701
d9bf7950
SM
7022004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
703
704 * xdisp.c (calc_line_height_property): YAILOM (yet another
705 int/Lisp_Object mixup).
706
affa509c
EZ
7072004-05-01 Eli Zaretskii <eliz@gnu.org>
708
709 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
710 undo bad effect of pack(4) in some versions of system headers.
711
07c07cfe
JR
7122004-05-01 Jason Rumney <jasonr@gnu.org>
713
714 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
715
e71caa4e
KS
7162004-04-30 Kim F. Storm <storm@cua.dk>
717
718 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 719 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
720
721 * dispextern.h (struct it): Remove member use_default_face.
722 Add members override_ascent, override_descent, override_boff.
723
724 * xdisp.c (init_iterator): Handle line-spacing float value.
725 Initialize override_ascent member.
726 (append_space_for_newline): Reset override_ascent.
727 Remove use_default_face.
728 (calc_line_height_property): New function to calculate value of
729 line-height and line-spacing properties. Look at overlays, too.
730 Set override_ascent, override_descent, override_boff members when
731 using another face than the current face. Float values are now
732 relative to the frame default font, by default; accept a cons
733 of ratio and face name to specify value relative to a specific face.
734 (x_produce_glyphs): Use calc_line_height_property.
735 Use override_ascent etc. when set to handle different face heights.
736 A negative line-spacing property value is interpreted as a total
737 line height, rather than inter-line spacing.
738 (note_mouse_highlight): Allocate room for 40 overlays initially.
739
0fddae66
SM
7402004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
741
742 * data.c (Fsubr_name): New fun.
743 (syms_of_data): Defsubr it.
744
712d23dc
KS
7452004-04-29 Kim F. Storm <storm@cua.dk>
746
747 * xdisp.c (null_glyph_slice): New var.
748 (append_glyph, append_composite_glyph, append_stretch_glyph):
749 Use it to initialize glyph slice.
750
033ad8c6
SM
7512004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
752
753 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
754 (on_hot_spot_p): Make sure we always return a value.
755 (Flookup_image_map): Remove unused var ix and iy.
756 (note_mode_line_or_margin_highlight): Remove unused var `image'.
757
93397360
EZ
7582004-04-27 Eli Zaretskii <eliz@gnu.org>
759
760 * msdos.c (init_environment): If one of the TMP... environment
761 variables is set to a drive letter without a trailing slash,
762 append a slash.
763
0c54865e
EZ
7642004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
765
766 * editfns.c (lisp_time_argument): Provide externally.
767
768 * fileio.c (Fset_file_times): New function.
769 (syms_of_fileio): Intern and staticpro it.
770
d3b111bd
KS
7712004-04-27 Kim F. Storm <storm@cua.dk>
772
07dc1231
KS
773 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
774 header line strings.
775
360fe9d2
KS
776 * dispextern.h (struct it): New member use_default_face.
777
d3b111bd
KS
778 * xdisp.c (Qline_height): New variable.
779 (syms_of_xdisp): Intern and staticpro it.
780 (append_space_for_newline): Partially undo 2004-04-25 change;
781 add default_face_p arg, and restore callers.
782 Clear it->use_default_face after use.
783 (x_produce_glyphs): Set default font for ascii char if
784 it->use_default_font is set. Change line-spacing property to set
785 just extra line spacing. Handle new line-height property.
786
0448588b
AS
7872004-04-26 Andreas Schwab <schwab@suse.de>
788
789 * print.c (print_object): Print non-ascii characters in bool
790 vector representation as octal escapes.
791
792 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
793 * print.c (print_object): Use it instead of BITS_PER_CHAR for
794 bool vectors.
795 * lread.c (read1): Likewise.
796 * alloc.c (Fmake_bool_vector): Likewise.
797 * data.c (Faref, Faset): Likewise.
798 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
799 (mapcar1): Likewise.
d3b111bd 800
536d6baa
ST
8012004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
802
803 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
804
ae11577a
MB
8052004-04-26 Miles Bader <miles@gnu.org>
806
807 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
808
e198ba87
JB
8092004-04-26 Juanma Barranquero <lektu@terra.es>
810
811 * buffer.c (Fpop_to_buffer): Fix docstring.
812
f3d5f92d 8132004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 814
f3d5f92d
ST
815 * lread.c (init_lread): Don't display missing lisp directory
816 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 817 may be built without correct installation path.
f3d5f92d 818
03e35edc
KS
8192004-04-25 Kim F. Storm <storm@cua.dk>
820
9ff3aa31
KS
821 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
822
823 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
824
03e35edc
KS
825 * xdisp.c (append_space_for_newline): Rename from append_space.
826 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
827 (x_produce_glyphs): Handle line-spacing property on newline char.
828 If value is t, adjust ascent and descent to fit current row height.
829 If value is an integer or float, set extra_line_spacing to integer
830 value, or to float value x current line height.
831
f24814e0
KH
8322004-04-23 Kenichi Handa <handa@m17n.org>
833
834 * fontset.c (Finternal_char_font): If POSITION is nil, return
835 font for displaying CH with the default face.
836
d814862a
JB
8372004-04-23 Juanma Barranquero <lektu@terra.es>
838
839 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
840
063a45c5
SM
8412004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
842
843 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
844 Don't make assumptions about the relative place of i and val.
845 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
846
ae7ab2d3
KS
8472004-04-21 Kim F. Storm <storm@cua.dk>
848
849 * dispextern.h (struct glyph_slice): New struct.
850 (struct glyph): New member slice.
851 (GLYPH_SLICE_EQUAL_P): New macro.
852 (GLYPH_EQUAL_P): Use it.
853 (struct glyph_string): New member slice.
854 (struct it_slice): New struct.
855 (struct it): New member slice, add member to stack too.
856 New member constrain_row_ascent_descent_p.
857 (image_ascent): Add prototype.
858
859 * dispnew.c (buffer_posn_from_coords): Return full image width
860 and height even for image slices (posn is relative to full image).
861 (marginal_area_string): Adjust x0,y0 for image slice.
862
863 * image.c (image_ascent): Add slice arg; calculate ascent for
864 image slice (or full image).
865
866 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
867 (syms_of_keyboard): Defsubr them.
868
869 * lisp.h (pos_visible_p): Fix prototype.
870
c62aec78 871 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
872 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
873 (x_draw_image_foreground, x_draw_image_relief)
874 (x_draw_image_foreground_1, x_draw_image_glyph_string):
875 Draw sliced images.
876
877 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
878 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
879 (x_draw_image_foreground, x_draw_image_relief)
880 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
881 Draw sliced images.
882
883 * w32term.h (image_ascent): Remove prototype.
884
885 * window.c (Fpos_visible_in_window_p): Return pixel position if
886 PARTIALLY arg is non-nil. Simplify. Doc fix.
887 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
888 to return/set vscroll in pixels.
889
890 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
891
892 * xdisp.c (Qslice): New variable.
893 (syms_of_xdisp): Intern and staticpro it.
894 (pos_visible_p): Return pixel position in new x and y args.
895 (init_iterator): Reset it->slice info.
896 (handle_display_prop): Parse (slice ...) property.
897 (push_it, pop_it): Save/restore slice info.
898 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
899 force repositioning of tall row if window is vscrolled, as that
900 would reset vscroll.
901 (append_space): Set it->constrain_row_ascent_descent_p to avoid
902 increasing row height if row is non-empty.
903 (fill_image_glyph_string): Copy slice info.
904 (take_vertical_position_into_account): Simplify.
905 (produce_image_glyph): Handle iterator slice info, setup glyph
906 slice info. Do not force minimum line height.
907 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
908 do not increase height (ascent/descent) of non-empty row when
909 adding normal character glyph; instead reduce glyph ascent/descent
910 appropriately; if row is higher than current glyph, adjust glyph
911 descent/ascent to reposition glyph within the existing row.
912 Likewise, when char is newline, only set ascent/descent if row is
913 currently empty.
914 (note_mouse_highlight): Handle hotspots with sliced image.
915
916 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
917 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
918 (x_draw_image_foreground, x_draw_image_relief)
919 (x_draw_image_foreground_1, x_draw_image_glyph_string):
920 Draw sliced images.
921
922 * xterm.h (image_ascent): Remove prototype.
923
d58f8753
SM
9242004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
925
926 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
927
4ce2719d
JPW
9282004-04-20 John Paul Wallington <jpw@gnu.org>
929
930 * fns.c (Fassoc, Feql): Fix indentation.
931
d58f8753 932 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 933
95f8c3b9
JPW
9342004-04-19 John Paul Wallington <jpw@gnu.org>
935
936 * fns.c (Feql): New function.
d58f8753 937 (syms_of_fns): Defsubr it.
95f8c3b9 938
b7e85537
JR
9392004-04-18 Jason Rumney <jasonr@gnu.org>
940
941 * w32select.c (Fw32_set_clipboard_data): Get sequence number
942 after closing the clipboard.
943
5a72efd4
LT
9442004-04-16 Luc Teirlinck <teirllm@auburn.edu>
945
946 * buffer.c (Fbuffer_base_buffer): Doc fix.
947
20dc8583
KS
9482004-04-17 Kim F. Storm <storm@cua.dk>
949
60962ec4
KS
950 * keymap.c (Fkey_description): Add optional PREFIX arg.
951 Combine prefix with KEYS to make up the full key sequence to describe.
952 Correlate meta_prefix_char and following (simple) key to describe
953 as meta modifier. All callers changed.
954 (describe_map): Rename arg `keys' to `prefix'. Remove local
955 `elt_prefix' var. Use Fkey_description with prefix instead of
956 elt_prefix combined with Fsingle_key_description.
957 (describe_vector): Declare static. Replace arg `elt_prefix' with
958 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
959 if !KEYMAP_P. Use Fkey_description with prefix instead of
960 Fsingle_key_description.
961
962 * keymap.h (Fkey_description): Fix prototype.
963 (describe_vector): Remove prototype.
964
409368b9
KS
965 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
966
20dc8583
KS
967 * image.c (PNG_BG_COLOR_SHIFT): Remove.
968 (png_load): Fix calculation of transparent background color on X
969 and W32 platforms.
970
75c5501b
JB
9712004-04-16 Juanma Barranquero <lektu@terra.es>
972
973 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
974 not too large before computing how much to scroll.
975
da879ae8
SM
9762004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
977
978 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
979
d01ca4a8
LT
9802004-04-14 Luc Teirlinck <teirllm@auburn.edu>
981
982 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
983 Add hyperlink to Elisp manual to the docstring.
984
572943b3
SM
9852004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
986
987 * callint.c (fix_command): Use XDCR.
988
5e30a0fb
NR
9892004-04-14 Nick Roberts <nick@nick.uklinux.net>
990
991 * window.c (Fget_lru_window): Doc fix.
992
a27ddfaf
KS
9932004-04-14 Kim F. Storm <storm@cua.dk>
994
995 * editfns.c (Fformat): Fix allocation size of precision array.
996
997 * dispnew.c (update_window): Only set changed_p if
998 scrolling_window actually did scroll.
999 (scrolling_window): Only return 1 if we actually did scroll.
1000
1001 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1002 height to glyph height when cursor row is not fully visible.
1003 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1004 failure in case row is higher than window. Callers changed.
1005 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1006 Try to scroll partially visible, higher-than-window cursor row.
1007 (redisplay_window): Always try to scroll partially visible,
1008 higher-than-window cursor row - both initially and again with
1009 centering_position = 0.
1010 Clear desired matrix before retrying with centering_position = 0.
1011
da879ae8
SM
10122004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1013
1014 * syntax.c (scan_lists): Simplify backward string scan.
1015 Fix off-by-one boundary check for string and comment fences.
1016
5fc16e8e
SM
10172004-04-13 Joe Buehler <jbuehler@hekimian.com>
1018
1019 * sheap.c, unexcw.c: New files.
1020
c9aac8e6
LT
10212004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1022
1023 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1024 base buffer has been killed. Correct the error message if the
1025 base buffer does not exist.
1026
1e88a355
SM
10272004-04-12 Joe Buehler <jbuehler@hekimian.com>
1028
1029 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1030 Cygwin itself. Add support for Xaw3d scrollbars.
1031
1032 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1033
1034 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1035
1036 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1037 before Cygwin unexec.
1038
1039 * Makefile.in: Link changes for Cygwin unexec() support.
1040
8dbff9a0
AS
10412004-04-12 Andreas Schwab <schwab@suse.de>
1042
1043 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1044
54dffe35
LT
10452004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1046
1047 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1048 IGNORE argument equals NAME. Doc fix.
1049
99a72bdf
MY
10502004-04-11 Masatake YAMATO <jet@gyve.org>
1051
1e88a355 1052 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1053 empty if they are backwards.
1054
40899d7b
SM
10552004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1056
1057 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1058
f8f853de
SM
10592004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1060
1061 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1062
c953fe1b
KS
10632004-04-06 Kim F. Storm <storm@cua.dk>
1064
661e85c1
KS
1065 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1066 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1067
1068 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1069 clearing highlight.
1070
1071 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1072
1073 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1074 clearing highlight.
1075
c953fe1b
KS
1076 * indent.c (vmotion): Do not reserve one column for continuation
1077 marks on window frames.
1078
c1994268
EZ
10792004-04-04 Eli Zaretskii <eliz@gnu.org>
1080
1081 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1082 from GCC.
1083
9f691b0d
SM
10842004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1085
1086 * .gdbinit-union: Remove.
1087
1088 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1089 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1090 ($nonvalbits): Remove.
1091 ($valmask): Set it by calling xreload to avoid redundancy.
1092
1093 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1094 (gdb_emacs_intbits): Remove.
1095
7a8560d7
JD
10962004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1097
9f691b0d 1098 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1099
3c8111fc
KH
11002004-03-30 Kenichi Handa <handa@m17n.org>
1101
1102 * editfns.c (Fformat): Fix initialization of the array info.
1103
48a0bce4
KS
11042004-03-30 Kim F. Storm <storm@cua.dk>
1105
1106 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1107 (syms_of_xterm): DEFVAR_BOOL it.
1108 (ignore_next_mouse_click_timeout): New var.
1109 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1110 Use it to filter mouse clicks following focus event.
1111
1cd0066c
KS
11122004-03-29 David Ponce <david@dponce.com>
1113
1114 * callint.c (Fcall_interactively): Fix last change.
1115
adb3b353
SM
11162004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1117
1118 * eval.c (Fcommandp): Simplify.
1119
1120 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1121 Extend to handle all kinds of functions.
1122
1123 * lisp.h (Finteractive_form): Declare.
1124
1125 * callint.c (Fcall_interactively): Use it.
1126
6fc4c9c9
KS
11272004-03-26 Kim F. Storm <storm@cua.dk>
1128
1129 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1130 to catch errors in calc_pixel_width_or_height during redisplay.
1131
abdb9b83
MY
11322004-03-26 Masatake YAMATO <jet@gyve.org>
1133
b17856dd 1134 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1135
b17856dd 1136 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1137
b17856dd 1138 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1139
b17856dd 1140 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1141
e8a84b6c
JD
11422004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1143
b17856dd 1144 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1145
36a3fd05
RS
11462004-03-19 Richard M. Stallman <rms@gnu.org>
1147
1148 * s/sol2-6.h: Delete previous change.
1149
ab24c127
KS
11502004-03-19 Kim F. Storm <storm@cua.dk>
1151
1152 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1153 to_charpos corresponds to newline in right fringe. Use local
1154 BUFFER_POS_REACHED_P macro.
1155
992126de
JD
11562004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1157
1158 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1159 to compile on non-window system.
1160
45dbfc84
KS
11612004-03-19 Kim F. Storm <storm@cua.dk>
1162
1163 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1164
1165 * image.c (Qcenter): Move to xdisp.c.
1166
1167 * xdisp.c (Qcenter): Declare here.
adb3b353 1168 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1169 (handle_single_display_prop): Allow space display property on all
1170 platforms.
1171 (display_mode_line): Set mode_line_p before displaying line.
1172 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1173 handling. Remove complex cases for fringes and scroll-bars.
1174 Add left, right, and center alignment positions. Add text (area)
1175 width/height. Return width or height for image specs.
1176 (produce_stretch_glyph): Improve handling of :align-to. Is now
1177 relative to left of text area by default, but other base offsets
1178 can be specified -- also for text lines.
1179
1180 * term.c (produce_glyphs): Handle IT_STRETCH.
1181 (produce_stretch_glyph): New function to handle space width and
1182 align-to display properties on non-window systems.
1183
37264101
SM
11842004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1185
1186 * fileio.c (Fread_file_name): Set completion-ignore-case for
1187 case-insensitive systems.
1188
73bc43da
MY
11892004-03-14 Masatake YAMATO <jet@gyve.org>
1190
1191 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1192 when keymap and cursor are setup.
1193
9062aa89
ST
11942004-03-14 Steven Tamm <steventamm@mac.com>
1195
b17856dd 1196 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1197
e4b1b5ab
KS
11982004-03-14 Kim F. Storm <storm@cua.dk>
1199
1200 * dispextern.h (x_find_image_file): Add prototype.
1201
1202 * image.c (x_find_image_file): Make extern.
1203
1204 * xfns.c (x_find_image_file): Remove prototype.
1205
a6eeaa81 12062004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1207
37264101 1208 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1209
37264101 1210 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1211
e69cfac2
RS
12122004-03-12 Richard M. Stallman <rms@gnu.org>
1213
1214 * fns.c (internal_equal): New arg PROPS controls comparing
1215 text properties. All callers changed.
1216 (Fequal_including_properties): New function.
1217 (syms_of_fns): defsubr it.
1218
45034953
KS
12192004-03-12 Kim F. Storm <storm@cua.dk>
1220
1221 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1222
45034953
KS
1223 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1224 (image_background, image_background_transparent): Fix prototypes.
1225
37264101 1226 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1227
1228 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1229 (x_query_font, x_find_ccl_program, x_set_window_size)
1230 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1231 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1232 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1233
1234 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1235 (x_query_font, x_find_ccl_program, x_set_window_size)
1236 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1237 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1238 (mac_draw_line_to_pixmap): Add prototypes.
1239
12402004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1241
1242 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1243
a12d3d87
KS
12442004-03-11 Kim F. Storm <storm@cua.dk>
1245
d3ab1cf1
KS
1246 * dispextern.h: Move image related prototypes from xfns.c section
1247 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1248 HAVE_X_WINDOWS.
37264101 1249
37de9f51 1250 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1251 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1252 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1253 (GTK_OBJ) [USE_GTK]: New declaration.
1254 (obj): Add $(GTK_OBJ) to list.
1255
5243c06a 12562004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1257
5243c06a
ST
1258 * image.c [MAC_OSX]: Include sys/stat.h
1259
1260 * macfns.c (syms_of_macfns): Remove definitions of things now
1261 defined in image.c
1262
c0f97789
KS
12632004-03-11 Kim F. Storm <storm@cua.dk>
1264
1265 The following changes consolidates the identical/similar image
1266 support code previously found in xfns.c, w32fns.c, and macfns.c
1267 into a new file image.c.
1268
1269 * makefile.w32-in (OBJ1): Add image.o.
1270 ($(BLD)/image.$(O)): Add dependencies.
1271
1272 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1273 (image.o): Add dependencies.
37264101 1274
c0f97789
KS
1275 * image.c: New file with consolidated image support code.
1276 (COLOR_TABLE_SUPPORT): New define to control whether
1277 color table support is available (X only).
1278 (Bitmap_Record): Common name for x_bitmap_record,
1279 w32_bitmap_record, and mac_bitmap_record.
1280 (XImagePtr): Common name for pointer to XImage or equivalent.
1281 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1282 to XImagePtr on X+MAC, and to HDC on W32.
1283 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1284 (NO_PIXMAP): Common name for "None" or equivalent.
1285 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1286 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1287 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1288 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1289 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1290 (XDrawLine): Define on MAC for code sharing.
1291 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1292 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1293 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1294 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1295 (x_reference_bitmap, x_create_bitmap_from_data)
1296 (x_create_bitmap_from_file, x_destroy_bitmap)
1297 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1298 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1299 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1300 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1301 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1302 (define_image_type, lookup_image_type, valid_image_p)
1303 (image_error, enum image_value_type, struct image_keyword)
1304 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1305 (make_image, free_image, prepare_image_for_display, image_ascent)
1306 (four_corners_best, image_background, image_background_transparent)
1307 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1308 (make_image_cache, free_image_cache, clear_image_cache)
1309 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1310 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1311 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1312 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1313 (init_image_func_pointer, image_load_quartz2d)
1314 (struct ct_color, init_color_table, free_color_table)
1315 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1316 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1317 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1318 (x_disable_image, x_build_heuristic_mask)
1319 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1320 (TIFF support, GIF support, Ghostscript support): Consolidate image
1321 code from xfns.c, w32fns.c, and macfns.c.
1322 (syms_of_image): Consolidate image related symbol setup here.
1323 (init_image): Consolidate image related initializations here.
37264101 1324
c0f97789
KS
1325 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1326 and init_image. Remove call to init_xfns.
1327
37264101
SM
1328 * macterm.h (struct mac_bitmap_record): Add file member.
1329 Not currently used, but simplifies code sharing.
c0f97789
KS
1330
1331 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1332 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1333 (x_reference_bitmap, x_create_bitmap_from_data)
1334 (x_create_bitmap_from_file, x_destroy_bitmap)
1335 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1336 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1337 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1338 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1339 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1340 (define_image_type, lookup_image_type, valid_image_p)
1341 (image_error, enum image_value_type, struct image_keyword)
1342 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1343 (make_image, free_image, prepare_image_for_display, image_ascent)
1344 (four_corners_best, image_background, image_background_transparent)
1345 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1346 (make_image_cache, free_image_cache, clear_image_cache)
1347 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1348 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1349 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1350 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1351 (init_image_func_pointer, image_load_quartz2d)
1352 (struct ct_color, init_color_table, free_color_table)
1353 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1354 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1355 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1356 (x_disable_image, x_build_heuristic_mask)
1357 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1358 (TIFF support, GIF support, Ghostscript support): Merge with image
1359 code from xfns.c and macfns.c into image.c.
1360 (syms_of_xfns): Move image related symbols to image.c.
1361 (init_external_image_libraries, init_xfns): Remove; initialization
1362 moved to init_image in image.c.
1363
1364 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1365 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1366 (x_reference_bitmap, x_create_bitmap_from_data)
1367 (x_create_bitmap_from_file, x_destroy_bitmap)
1368 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1369 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1370 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1371 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1372 (define_image_type, lookup_image_type, valid_image_p)
1373 (image_error, enum image_value_type, struct image_keyword)
1374 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1375 (make_image, free_image, prepare_image_for_display, image_ascent)
1376 (four_corners_best, image_background, image_background_transparent)
1377 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1378 (make_image_cache, free_image_cache, clear_image_cache)
1379 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1380 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1381 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1382 (struct ct_color, init_color_table, free_color_table)
1383 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1384 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1385 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1386 (x_disable_image, x_build_heuristic_mask)
1387 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1388 (TIFF support, GIF support, Ghostscript support): Merge with image
1389 code from xfns.c and macfns.c into image.c.
1390 (syms_of_xfns): Move image related symbols to image.c.
1391 (init_external_image_libraries, init_xfns): Remove; initialization
1392 moved to init_image in image.c.
1393
1394 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1395 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1396 (x_reference_bitmap, x_create_bitmap_from_data)
1397 (x_create_bitmap_from_file, x_destroy_bitmap)
1398 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1399 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1400 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1401 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1402 (define_image_type, lookup_image_type, valid_image_p)
1403 (image_error, enum image_value_type, struct image_keyword)
1404 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1405 (make_image, free_image, prepare_image_for_display, image_ascent)
1406 (four_corners_best, image_background, image_background_transparent)
1407 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1408 (make_image_cache, free_image_cache, clear_image_cache)
1409 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1410 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1411 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1412 (struct ct_color, init_color_table, free_color_table)
1413 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1414 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1415 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1416 (x_disable_image, x_build_heuristic_mask)
1417 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1418 (TIFF support, GIF support, Ghostscript support): Merge with
1419 w32fns.c and macfns.c image code into image.c.
1420 (syms_of_xfns): Move image related symbols to image.c.
1421 (init_xfns): Remove; initialization moved to init_image in image.c.
1422
1423 * lisp.h (syms_of_image, init_image): Add protoypes.
1424 (init_xfns): Remove prototype.
1425
1426 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1427 (x_reference_bitmap, x_create_bitmap_from_data)
1428 (x_create_bitmap_from_file, x_destroy_bitmap)
1429 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1430 (gamma_correct) [MAC_OS]: Add prototype.
1431
1432 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1433 (x_reference_bitmap, x_create_bitmap_from_data)
1434 (x_create_bitmap_from_file, x_destroy_bitmap)
1435 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1436
6eced09c
KH
14372004-03-09 Kenichi Handa <handa@etlken2>
1438
1439 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1440 correctly.
1441
9a7e95f3
RS
14422004-03-04 Richard M. Stallman <rms@gnu.org>
1443
04a6e76b
RS
1444 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1445
9a7e95f3
RS
1446 * window.c (Fdisplay_buffer): Doc fix.
1447
1448 * buffer.c (Fpop_to_buffer): Doc fix.
1449
6c2488df
KS
14502004-03-03 Kim F. Storm <storm@cua.dk>
1451
1452 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1453
d8d95bc7
SM
14542004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1455
1456 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1457
357589bf
RS
14582004-03-02 Richard M. Stallman <rms@gnu.org>
1459
1460 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1461
409949b5
KH
14622004-03-02 Kenichi Handa <handa@m17n.org>
1463
1464 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1465
d24bc50f
KS
14662004-03-02 Kim F. Storm <storm@cua.dk>
1467
1468 * window.h (struct window): New member overlay_arrow_bitmap.
1469
1470 * window.c (make_window): Initialize overlay_arrow_bitmap.
1471
1472 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1473 implement and integrate multiple overlay arrows with redisplay.
1474 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1475 (last_arrow_position, last_arrow_string): Replace by properties.
1476 (Qlast_arrow_position, Qlast_arrow_string)
1477 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1478 (syms_of_xdisp): Intern and staticpro them.
1479 (overlay_arrow_string_or_property, update_overlay_arrows)
1480 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1481 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1482 (redisplay_internal): Use them instead of directly accessing
1483 Voverlay_arrow_position etc. for multiple overlay arrows.
1484 (mark_window_display_accurate): Use update_overlay_arrows.
1485 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1486 (try_window_id): Use overlay_arrows_changed_p.
1487 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1488 (display_line): Use overlay_arrow_at_row to check multiple
1489 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 1490 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
1491 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1492 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1493
1494 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1495 (update_window_fringes): Remove unused code.
1496
c1464661
JR
14972004-03-01 Jason Rumney <jasonr@gnu.org>
1498
1499 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1500
a64387ee
JB
15012004-03-01 Juanma Barranquero <lektu@terra.es>
1502
1503 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1504
1505 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1506
334faa08
JD
15072004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1508
1509 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1510 how many colors can be displayed.
1511
bb62616f
KH
15122004-03-01 Kenichi Handa <handa@m17n.org>
1513
1514 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1515 correctly.
1516
0fd16104
KS
15172004-02-28 Kim F. Storm <storm@cua.dk>
1518
1519 * dispnew.c (update_window): Update header line also if there are
1520 no other changes in window (move code after set_cursor label).
1521
1522 * lisp.h (mark_window_display_accurate): Remove prototype.
1523
1524 * window.c (window_loop, Fforce_window_update): Force mode line
1525 updates by setting prevent_redisplay_optimizations_p and
1526 update_mode_lines.
1527
b59dd9c8
JD
15282004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1529
d8d95bc7 1530 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
1531
1532 * xterm.c (x_calc_absolute_position): Call x_real_positions
1533 to get WM window sizes and use those to calculate position.
d8d95bc7 1534 (x_set_offset): Remove code commented out.
b59dd9c8 1535
a874691c
MB
15362004-02-28 Miles Bader <miles@gnu.org>
1537
1538 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1539
3e0c6482
KS
15402004-02-28 Kim F. Storm <storm@cua.dk>
1541
1542 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1543 an event into kbd fifo, but with special handling of quit event;
1544 a quit event is saved for later, and further events are discarded
1545 until the saved quit event has been processed.
1546 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1547 (gen_help_event): Store help event in kbd fifo.
1548 (NREAD_INPUT_EVENTS): Remove.
1549 (read_avail_input): Adapt to new read_socket_hook interface.
1550 Remove allocation and initialization of local input_event buffer,
1551 as read_socket_hook stores events directly in fifo. Allocate and
1552 initialize local hold_quit event to handle postponed quit event
1553 (and store it if set by kbd_buffer_store_event_hold).
1554
1555 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1556 (gen_help_event): Fix prototype.
1557
a64387ee 1558 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 1559 numcharsp args. Add hold_quit arg.
f63fd14e 1560 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1561 directly in fifo using kbd_buffer_store_event_hold.
1562
1563 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1564 (read_input_waiting): Adapt to new read_socket_hook interface.
1565 Remove allocation and initialization of local input_event buffer,
1566 as read_socket_hook stores events directly in fifo. Allocate and
1567 initialize local hold_quit event to handle postponed quit event
1568 (and store it if set by kbd_buffer_store_event_hold).
1569
a64387ee 1570 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
1571
1572 * termhooks.h (read_socket_hook): Fix prototype.
1573
1574 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1575 numcharsp args. Add hold_quit arg.
f63fd14e 1576 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1577 directly in fifo using kbd_buffer_store_event_hold.
1578
1579 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1580
1581 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
1582 Add hold_quit arg. Rework to use just one, local, inev
1583 input_event. Store inev directly in fifo using
3e0c6482
KS
1584 kbd_buffer_store_event_hold. Update count in one place.
1585 Postpone call to gen_help_event until inev is stored; use new
1586 local do_help for this.
1587 Remove local emacs_event in handing of ButtonPress event; just use
1588 inev instead (so no reason to copy it later).
1589
1590 * xsmfns.c (x_session_check_input): Remove numchars arg.
1591
d8d95bc7
SM
1592 * xterm.c (x_focus_changed, x_detect_focus_change):
1593 Remove numchars arg. Always store event into bufp arg.
1594 Return nothing. Callers changed accordingly.
3e0c6482
KS
1595 (glyph_rect): Simplify.
1596 (STORE_KEYSYM_FOR_DEBUG): New macro.
1597 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1598 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1599 (current_hold_quit) [USE_GTK]: Add.
1600 (event_handler_gdk): Adapt to new handle_one_xevent.
1601 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
1602 Add hold_quit arg. Rework to use just one, local, inev
1603 input_event. Store inev directly in fifo using
3e0c6482
KS
1604 kbd_buffer_store_event_hold. Update count in one place.
1605 Postpone call to gen_help_event until inev is stored; use new
1606 local do_help for this.
1607 Simplify handling of keysyms (consolidate common code). Fix bug
1608 where count was updated with nchars instead of nbytes.
1609 Remove local emacs_event in handing of ButtonPress event; just use
1610 inev instead (so no reason to copy it later).
1611 Remove `out' label. Rename label `ret' to `done'; add various
1612 `goto done' to clarify code flow in deeply nested blocks.
1613 (x_dispatch_event): Simplify as handle_one_xevent now calls
1614 kbd_buffer_store_event itself.
f63fd14e 1615 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
1616 arg. Call handle_one_xevent with new arglist. Store event from
1617 x_session_check_input in fifo.
1618 [USE_GTK]: Setup current_hold_quit.
1619 Decrement handling_signal before unblocking input.
1620 (x_initialize) [USE_GTK]: Initialize current_count.
1621
1622 * xterm.h (x_session_check_input): Fix prototype.
1623
e3564461 16242004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 1625
d8d95bc7 1626 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 1627
e3564461
ST
1628 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1629 macgui.h).
a64387ee 1630
e3564461 1631 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 1632
e3564461
ST
1633 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1634 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1635 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1636 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1637 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1638 (Bitmap): Remove typedef.
1639 (Pixmap): Change int to GWorldPtr.
1640
d8d95bc7 1641 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 1642
d8d95bc7
SM
1643 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1644 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1645 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
1646 long representation.
1647 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1648 colors used for masks.
1649 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 1650
e3564461
ST
1651 * macfns.c: Include sys/types.h and sys/stat.h.
1652 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1653 Include QuickTime/QuickTime.h.
1654 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1655 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1656 functions defined in macterm.c.
1657 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1658 (ZPixmap): New #define for compatibility with xfns.c.
1659 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1660 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
1661 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1662 New functions.
e3564461 1663 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
1664 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1665 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
1666 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1667 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1668 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1669 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1670 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1671 long mixup.
1672 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1673 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1674 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1675 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1676 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1677 (x_alloc_image_color, clear_image_cache, lookup_image)
1678 (x_find_image_file, xbm_read_bitmap_file_data)
1679 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1680 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1681 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1682 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1683 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 1684 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
1685 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1686 #if 0.
1687 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1688 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
1689 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1690 New functions (from xfns.c).
e3564461
ST
1691 (Fx_create_frame): Record unwind_create_frame.
1692 (Fxw_display_color_p): Use dpyinfo->color_p.
1693 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1694 dpyinfo->n_cbits.
1695 (Fx_display_color_cells): Use dpyinfo->n_planes;
1696 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1697 (Qheuristic, cross_disabled_images, emboss_matrix)
1698 (laplace_matrix): New variables (from xfns.c).
1699 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1700 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1701 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
1702 (image_background_transparent): New function (from xfns.c).
1703 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1704 (image_load_quicktime): Add declaration.
1705 [MAC_OSX] (image_load_quartz2d): Likewise.
1706 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1707 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 1708 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
1709 (xbm_load_image_from_file, x_laplace_read_row)
1710 (x_laplace_write_row, pbm_read_file): Remove functions.
1711 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1712 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1713 (colors_in_color_table): Sync with xfns.c (although not used).
1714 (lookup_rgb_color): Don't lookup color table. Just do gamma
1715 correction.
1716 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
1717 (x_disable_image): New function (from xfns.c).
1718 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1719 (x_build_heuristic_mask): Sync with xfns.c.
1720 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1721 (HAVE_PBM): Remove #ifdef.
1722 (pbm_load): Sync with xfns.c. Set img->width and img->height
1723 before IMAGE_BACKGROUND.
d8d95bc7 1724 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
1725 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1726 Don't enclose with #if HAVE_PNG.
1727 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
1728 symbol _CGImageCreateWithPNGDataProvider is defined.
1729 Otherwise use image_load_quicktime.
e3564461 1730 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
1731 [HAVE_PNG] (png_load): Sync with xfns.c.
1732 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1733 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1734 HAVE_JPEG.
1735 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1736 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1737 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1738 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1739 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1740 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1741 HAVE_TIFF.
1742 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1743 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1744 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
1745 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1746 New functions (from xfns.c).
e3564461 1747 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 1748 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
1749 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1750 Don't enclose with #if HAVE_GIF.
1751 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1752 animated gif. Otherwise use image_load_quicktime.
1753 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1754 gif_DrawText to avoid conflict with QuickdrawText.h.
1755 [HAVE_GIF] (gif_load): Sync with xfns.c.
1756 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1757 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1758 Ghostscript is not supported yet).
1759 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1760 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1761 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1762 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1763 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1764 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
1765 HAVE_PNG. Call EnterMovies to support animated gifs.
1766 Call init_image_func_pointer to bind a symbol
e3564461 1767 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 1768
d8d95bc7 1769 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
1770 (x_draw_bar_cursor): Sync declaration with xterm.c.
1771 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1772 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1773 graphics).
1774 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1775 (mac_draw_line_to_pixmap, XCreatePixmap)
1776 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
1777 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1778 New functions.
1779 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1780 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1781 Cast bits to char *.
e3564461
ST
1782 (reflect_byte): New function (from w32fns.c).
1783 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1784 due to byte alignment.
d8d95bc7
SM
1785 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1786 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
1787 (XSetForeground): Remove static (now used in macfns.c).
1788 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1789 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1790 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1791 (x_draw_glyph_string_box, x_draw_image_foreground)
1792 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1793 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1794 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1795 Sync with xterm.c.
1796 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1797 than the xterm.c version when a strictly horizontal or vertical
1798 line is drawn.
1799 (XTset_terminal_window): Add static.
1800 (x_make_frame_visible): Add UNBLOCK_INPUT.
1801 (x_free_frame_resources): New funcion (from xterm.c).
1802 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1803 occurs in tool bar area.
d8d95bc7
SM
1804 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1805 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
1806 Initialize image cache.
1807 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1808 Enclose unused functions with #if 0.
1809 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1810 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 1811 from a mac font name to an XLFD font name according to its script code.
e3564461 1812 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 1813 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
1814 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1815 whose name starts with `.'.
1816 (init_font_name_table): Use decode_mac_font_name. Add both
1817 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1818 of a font is smJapanese.
1819 (mac_do_list_fonts): New function to list fonts that match a given
1820 pattern.
1821 (x_list_fonts, XLoadQueryFont): Use it.
1822 (XLoadQueryFont): Set rbearing field for each variable width
1823 character to avoid needless redraw.
1824 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1825
446f5f3d
KS
18262004-02-26 Kim F. Storm <storm@cua.dk>
1827
af617d0f
KS
1828 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1829 as read_socket_hook handler on X aborts if buffer is too small
1830 and W32 handler doesn't always check buffer limit.
1831
446f5f3d
KS
1832 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1833 right-fringe similar to a display margin image. Specifically,
1834 the characters having the fringe prop are no longer shown, and
1835 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1836 do this. Set fringe bitmap face_id in it->face_id.
1837 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1838 still realize it->face (i.e. the fringe bitmap face).
1839
7d8a0b55
MB
18402004-02-25 Miles Bader <miles@gnu.org>
1841
1842 * xdisp.c (check_it): Check string/string_pos consistency.
1843 (init_iterator): Initialize string-related fields properly.
1844
18452004-02-11 Miles Bader <miles@gnu.org>
1846
1847 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1848
18492004-02-10 Miles Bader <miles@gnu.org>
1850
1851 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1852 BLOCK_INPUT can be nested, so it doesn't make much sense.
1853
a64387ee 18542004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
1855
1856 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1857 (xbm_read_bitmap_data): Use unsigned char for image data.
1858
92f5fba2
LT
18592004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1860
1861 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1862
8565fb3d
JR
18632004-02-22 Jason Rumney <jasonr@gnu.org>
1864
1865 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1866 correctly over other bitmaps.
1867
a6eeaa81 18682004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
1869
1870 * emacs.c (USAGE1): Split into two halves.
1871 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
1872 (USAGE3): Rename from USAGE2.
1873 (USAGE4): Rename from USAGE3.
f8125c39 1874
4effffca
EZ
18752004-02-21 Juri Linkov <juri@jurta.org>
1876
1877 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
1878 Fix --multibyte. Move --help, --version to USAGE2. Add alias
1879 --file. Fix -f, -l. Sort options. Untabify.
1880 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
1881
923c1e6f
LT
18822004-02-19 Luc Teirlinck <teirllm@auburn.edu>
1883
1884 * category.c (Fdefine_category, Fcategory_docstring)
1885 (Fget_unused_category, Fset_category_table)
1886 (Fcategory_set_mnemonics): Doc fixes.
1887
b0e225fd
KS
18882004-02-20 Kim F. Storm <storm@cua.dk>
1889
1890 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
1891 The following changes are relative to the 2004-01-21 revision.
1892 (NREAD_INPUT_EVENTS): Define as max number of input events to read
1893 in one call to read_socket_hook. Value is 8.
1894 (read_avail_input): Separate and rework handling of read_socket_hook
1895 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
1896 in read_socket_hook case, and repeat if full buffer is read.
1897 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
1898 In non-read_socket_hook case, just use a single input_event, and
1899 call kbd_buffer_store_event on the fly for each character.
1900
b15aa9f9
SM
19012004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
1902
1903 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
1904 Remove unused `gu' alternative.
1905
83c9aa95
AS
19062004-02-19 Andreas Schwab <schwab@suse.de>
1907
1908 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
1909 warning.
1910
cc808173
KS
19112004-02-18 Kim F. Storm <storm@cua.dk>
1912
1913 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
1914 Fix last change.
1915
ab90a54d
KS
19162004-02-17 Kim F. Storm <storm@cua.dk>
1917
b26f249f
KS
1918 * xdisp.c (fast_find_position): Fix return value of new version;
1919 it was inverted compared to the 21.1 version.
1920 (get_window_cursor_type): Don't look at glyph if NULL.
1921 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 1922
ab90a54d
KS
1923 * keyboard.c: Rework previous change; it didn't consider that the
1924 buf array was allocated on the stack.
1925 (prev_read): Remove variable.
1926 (read_avail_input_buf): New static event buffer array.
b9568dfc 1927 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 1928 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
1929 Use in_read_avail_input to handle re-entrance; when re-entered,
1930 fully initialize and use tmp_buf array instead of read_avail_input_buf.
1931 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
1932 is always cleared on entry. To ensure that, we clear (just) the
1933 entries that were used before we return.
1934 (init_keyboard): Initialize read_avail_input_buf here.
1935
4e039f3f
EZ
19362004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
1937
1938 * cmds.c (Fend_of_line): Doc fix.
1939
7b5368c1
EZ
19402004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
1941
1942 * keyboard.c (prev_read): New static variable.
1943 (read_avail_input): Use it to zero out only those slots in buf[]
1944 that were used last time we were called.
1945
a6eeaa81 19462004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
1947
1948 * Makefile.in (obj): Move fringe.o from here...
1949 (XOBJ, MAC_OBJ): ...to here.
1950
159c348e
SE
19512004-02-16 Stephen Eglen <stephen@gnu.org>
1952
1953 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
1954
d2f14999
SM
19552004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
1956
b15aa9f9
SM
1957 * data.c (Fbyteorder):
1958 * fringe.c (Fdefine_fringe_bitmap):
1959 * xdisp.c (handle_single_display_prop):
d2f14999
SM
1960 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
1961
8d50508a
JR
19622004-02-16 Jason Rumney <jasonr@gnu.org>
1963
1964 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
1965
dd4497dc
ST
19662004-02-15 Steven Tamm <steventamm@mac.com>
1967
1968 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
1969 controlling emulation of a three button mouse with option and
1970 command keys.
1971 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 1972 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 1973
c9159cb3
KS
19742004-02-15 Kim F. Storm <storm@cua.dk>
1975
2cc52658
KS
1976 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
1977
c9159cb3
KS
1978 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
1979 Perform byte-swapping.
1980
12fde2dc
KS
19812004-02-14 Kim F. Storm <storm@cua.dk>
1982
1983 * dispextern.h (struct draw_fringe_bitmap_params): Change member
1984 bits from char to short to facilitate wider bitmaps.
1985 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
1986 member.
1987
1988 * fringe.c (struct fringe_bitmap): Change member bits from char to
1989 short to facilitate 16 bits wide bitmaps. Modify all standard
1990 bitmaps accordingly.
1991 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
1992 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
1993 (draw_fringe_bitmap): Ditto.
1994 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
1995 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
1996 handle up to 16 bits wide bitmaps.
1997 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 1998 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
1999
2000 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2001 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2002 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2003
2004 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2005 so it is no longer necessary to expand them here.
2006
2007 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2008
9d7271e8
KS
20092004-02-12 Kim F. Storm <storm@cua.dk>
2010
2011 * window.c (Fwindow_fringes): Doc fix.
2012
706c1e4f
JD
20132004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2014
2015 * xselect.c (x_get_foreign_selection): Add new optional parameter
2016 time_stamp.
2017 (Fx_get_selection_internal): Ditto, pass time_stamp to
2018 x_get_foreign_selection.
2019
2020 * data.c (Fbyteorder): New function.
2021
c2d12b5d
JD
20222004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2023
2024 * atimer.c: Move include stdio.h to same place as in other files.
2025
2026 * region-cache.c: Ditto.
2027
2028 * sysdep.c: Ditto.
2029
2030 * xfaces.c: Ditto.
2031
4c1947b9
SS
20322004-02-09 Sam Steingold <sds@gnu.org>
2033
89458937 2034 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2035
82722af3
KS
20362004-02-09 Kim F. Storm <storm@cua.dk>
2037
2038 * fringe.c: New file. Move original fringe related declarations
2039 and code from dispextern.h and xdisp.c here.
2040 Rework code to support user defined fringe bitmaps, redefining
2041 standard bitmaps, ability to overlay user defined bitmap with
2042 overlay arrow bitmap, and add faces to bitmaps.
2043 (Voverflow_newline_into_fringe): Declare here.
2044 (enum fringe_bitmap_align): New enum.
2045 (..._bits): All bitmaps are now defined without bitswapping; that
2046 is now done in init_fringe_once (if necessary).
2047 (standard_bitmaps): New array with specifications for the
2048 standard fringe bitmaps.
2049 (fringe_faces): New array.
2050 (valid_fringe_bitmap_id_p): New function.
2051 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2052 (draw_fringe_bitmap): New function which draws fringe bitmap,
2053 possibly overlaying bitmap with cursor in right fringe or the
2054 overlay arrow in the left fringe.
2055 (update_window_fringes): Do not handle overlay arrow here.
2056 Compare and copy fringe bitmap faces.
2057 (init_fringe_bitmap): New function.
2058 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2059 define and destroy user defined fringe bitmaps.
2060 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2061 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2062 (syms_of_fringe): New function. Defsubr new DEFUNs.
2063 DEFVAR_LISP Voverflow_newline_into_fringe.
2064 (init_fringe_once, init_fringe): New functions.
2065 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2066
82722af3
KS
2067 * Makefile.in (obj): Add fringe.o.
2068 (fringe.o): New dependencies.
2069
2070 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2071 bits allocated to hold a fringe number. Increase number of bits
2072 from 4 to 8 to allow user defined fringe bitmaps.
2073 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2074 left_user_fringe_face_id, right_user_fringe_bitmap,
2075 right_user_fringe_face_id.
2076 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2077 Move to new file fringe.c.
2078 (MAX_FRINGE_BITMAPS): Define here.
2079 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2080 and overlay_p. Change member which to int.
2081 (struct redisplay_interface): New members define_fringe_bitmap
2082 and destroy_fringe_bitmap.
2083 (valid_fringe_bitmap_id_p): Add prototype.
2084 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2085
2086 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2087 arrows.
2088 (update_frame): Do flush_display if force_flush_display_p to
2089 ensure display (specifically fringes) are updated in a timely
2090 manner when resizing the frame by dragging the mouse.
2091 (update_window_line): Update row if overlay arrow changed.
2092 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2093 or overlay arrow changed.
2094
2095 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2096 syms_of_fringe, and init_fringe.
2097
2098 * frame.h (struct frame): New member force_flush_display_p.
2099
2100 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2101 Add prototypes.
2102
a3993cc8 2103 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2104 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2105 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2106 Use cursor color for displaying cursor in fringe.
82722af3
KS
2107 (x_redisplay_interface): Add null handlers for
2108 define_fringe_bitmap and destroy_fringe_bitmap functions.
2109
2110 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2111 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2112 for displaying cursor in fringe.
2113 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2114 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2115 (w32_redisplay_interface): Add them to redisplay_interface.
2116 (w32_term_init): Call w32_init_fringe instead of explicitly
2117 defining fringe bitmaps in fringe_bmp array.
2118 (x_delete_display): Call w32_reset_fringes instead of explicitly
2119 destroying fringe bitmaps in fringe_bmp array.
2120
2121 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2122 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2123 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2124 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2125 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2126 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2127 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2128 Move fringe handling vars and code to new file fringe.c.
2129 (handle_display_prop): Handle left-fringe and right-fringe
2130 display properties; store user fringe bitmaps in iterator.
2131 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2132 (clear_garbaged_frames): Set force_flush_display_p if resized.
2133 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2134 (display_line): Handle cursor in fringe at eob.
2135 (display_line): Set row user fringe bitmaps from iterator.
2136
2137 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2138 Use cursor color for displaying cursor in fringe.
2139 (x_redisplay_interface): Add null handlers for
2140 define_fringe_bitmap and destroy_fringe_bitmap functions.
2141
030400eb
JD
21422004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2143
2144 * macfns.c (Fx_change_window_property): Make doc string and
2145 parameters same as for X version.
2146
2147 * w32fns.c (Fx_change_window_property): Ditto.
2148
3af55251
KS
21492004-02-07 Kim F. Storm <storm@cua.dk>
2150
ec110e9e
KS
2151 * xdisp.c (hscroll_window_tree): Position cursor near to right
2152 margin in hscrolled window when jumping to end of line (rather
2153 than centering cursor).
2154
3af55251
KS
2155 * process.c (wait_reading_process_input): Don't do adaptive read
2156 buffering if waiting for a specific process.
2157
b0c138ce
LT
21582004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2159
2160 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2161 (Fread_minibuffer, Feval_minibuffer)
2162 (Fread_string, Fread_no_blanks_input)
2163 (Fcompleting_read): Doc fixes.
2164 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2165 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2166 (read_minibuf): Fix initial comment.
2167 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2168 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2169 checking completion-regexp-list.
2170 (Fdisplay_completion_list): Make it handle arguments that are
2171 symbols. Doc fix.
2172
9676f5ad 21732004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2174
9676f5ad 2175 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2176
9676f5ad
JD
2177 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2178 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2179 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2180 format. Remove unused variable cons.
5b698285
JD
2181
2182 * xselect.c: Include stdio,h.
2183
fc1d15f6
KH
21842004-02-05 Kenichi Handa <handa@m17n.org>
2185
ebaff4af
KH
2186 * fns.c (Fset_char_table_range): Fix previous change.
2187
fc1d15f6
KH
2188 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2189
9676f5ad
JD
21902004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2191
2192 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2193
da75761f
SM
21942004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2195
2196 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2197 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2198
13c5d120
KH
21992004-02-04 Kenichi Handa <handa@m17n.org>
2200
2201 * fns.c (Fset_char_table_range): Handle charsets ascii,
2202 eight-bit-control, and eight-bit-graphic correctly.
2203
2883d842
JR
22042004-02-03 Jason Rumney <jasonr@gnu.org>
2205
2206 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2207
2208 * w32fns.c (x_to_w32_font): Likewise.
2209
69eff41f
JD
22102004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2211
2212 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2213 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2214
2215 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2216 ClientMessages.
2217
2218 * xselect.c: Include termhooks.h and X11/Xproto.h
2219 (x_check_property_data, x_fill_property_data)
2220 (x_property_data_to_lisp, mouse_position_for_drop)
2221 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2222 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2223 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2224
da75761f 2225 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2226 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2227 OUTER_P.
2228 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2229 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2230 if vector_ret_p is true.
2231 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2232
a6eeaa81 22332004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2234
2235 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2236 basename of FILE relative to it, not FILE itself.
2237
09721b31
KH
22382004-02-02 Kenichi Handa <handa@m17n.org>
2239
2240 * coding.c (coding_restore_composition): Check invalid
2241 composition data more rigidly.
2242
eb996101
LT
22432004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2244
2245 * fileio.c (Fread_file_name_internal): Correctly handle the case
2246 where insert-default-directory is nil.
2247 (Fread_file_name): Always return an empty string if the user exits
2248 with an empty minibuffer. Adapt the docstring accordingly.
2249 (syms_of_fileio): Adapt the docstring of insert-default-directory
2250 to the change in Fread_file_name.
2251
a6eeaa81 22522004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2253
2254 * alloca.c [!alloca]: Fix the prototype for xfree.
2255
13f52ed8
KH
22562004-01-29 Kenichi Handa <handa@m17n.org>
2257
2258 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2259 (string_byte_to_char): Likewise.
2260
d57625a0
JR
22612004-01-28 Peter Runestig <peter@runestig.com>
2262
2263 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2264
a64387ee 22652004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2266
2267 * unexmacosx.c (unexec_copy): Do not copy more than was
2268 requested to prevent overwriting during unexec.
2269
eb37b8fd
JD
22702004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2271
ce38070a
JD
2272 * process.c (sigchld_handler): Add comment about not calling malloc.
2273
eb37b8fd
JD
2274 * process.h: Add extern to synch_process_termsig.
2275
a64387ee 22762004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2277
da75761f
SM
2278 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2279 Move setting of scroll bars from make_mac_frame to
2280 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2281
d62a265d
RS
22822004-01-26 Richard M. Stallman <rms@gnu.org>
2283
2284 * search.c (Freplace_match): Handle nonexistent
2285 back-references properly.
2286
22872004-01-03 Richard M. Stallman <rms@gnu.org>
2288
2289 * window.c (decode_any_window): New function.
2290 (Fwindow_height, Fwindow_width, Fwindow_edges)
2291 (Fwindow_pixel_edges, Fwindow_inside_edges)
2292 (Fwindow_inside_pixel_edges): Use decode_any_window.
2293
ff236419
JD
22942004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2295
2296 * process.h: synch_process_termsig new variable.
2297
2298 * callproc.c: Define synch_process_termsig.
2299 (Fcall_process): Initiate synch_process_termsig to zero and
2300 check if non-zero and get signal name after subprocess has ended.
2301
2302 * process.c (sigchld_handler): Set synch_process_termsig
2303 if terminated by a signal. synch_process_death setting removed.
2304
2305 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2306
41b867ea
AS
23072004-01-26 Andreas Schwab <schwab@suse.de>
2308
2309 * print.c (print_preprocess): Declare size as EMACS_INT to not
2310 lose bits.
2311 (print_object): Likewise.
2312 * alloc.c (Fpurecopy): Likewise.
2313
a08084ff
LT
23142004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2315
2316 * window.c (Fwindow_minibuffer_p): Doc fix.
2317
b19ac475
JY
23182004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2319
2320 * editfns.c (Fformat): Make both passes accept the same set of flags.
2321
fe905025
KH
23222004-01-23 Kenichi Handa <handa@m17n.org>
2323
2324 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2325 one, set buffer to OBJECT temporarily.
2326
438fc6c0
SM
23272004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2328
455316e2
SM
2329 * keyboard.c (kbd_buffer_gcpro): Remove.
2330 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2331 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2332 Don't initialize and/or maintain the variable any more. It was made
2333 redundant by my commit of 2003-06-15.
2334
438fc6c0
SM
2335 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2336
5335a4ee
JD
23372004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2338
2339 * lisp.h: Add undef DECL_ALIGN.
2340
dcdaeebc
SM
23412004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2342
2343 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2344 Check interrupt_input_pending explicitly.
2345
2346 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2347
2348 * keyboard.c (handle_async_input): New fun,
2349 extracted from input_available_signal.
2350 (input_available_signal, reinvoke_input_signal): Use it.
2351
9076a823
SM
23522004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2353
d7107586
SM
2354 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2355
2356 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2357 manipulation macros for when tags are in the lower bits.
2358 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2359 (DECL_ALIGN): New macro.
2360 (DEFUN): Use it.
2361
2362 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2363
2364 * s/darwin.h (__attribute__): Remove outdated workaround.
2365
2366 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2367
2368 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2369 Don't check range of malloc address.
2370 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2371
9076a823
SM
2372 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2373
2374 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2375
ba029065
KH
23762004-01-19 Kenichi Handa <handa@m17n.org>
2377
2378 * fontset.c (fontset_font_pattern): Fix previous change.
2379
7af0e8d7
MB
23802004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2381
2382 * xdisp.c (Voverflow_newline_into_fringe)
2383 (move_it_in_display_line_to, redisplay_internal)
2384 (update_window_fringes, redisplay_window, display_line, window):
2385 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2386 that it compiles without a window-system.
2387 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2388
77a9cf69
KS
23892004-01-16 Kim F. Storm <storm@cua.dk>
2390
2391 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2392
a64387ee 2393 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
2394 buffer_local_flags for indicate_buffer_boundaries.
2395 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2396 default- variable for it.
2397
2398 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2399 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 2400 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
2401 overflowing newlines into right fringe.
2402 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2403 and indicate_bottom_line_p for buffer boundaries and scrolling.
2404 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2405 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2406 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2407 and HOLLOW_SQUARE_BITMAP.
2408 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2409 Add prototypes.
2410
2411 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2412 instead of related indicator fields.
2413 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2414 (direct_output_for_insert): Handle exact width lines like
2415 contined lines. Call update_window_fringes.
2416 (update_window): Call update_window_fringes.
2417 (scrolling_window): Don't skip desired rows with changed bitmaps.
2418 Check if fringe bitmaps changes when assigning scrolled rows.
2419
2420 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2421 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2422 (move_it_in_display_line_to): Overflow newline into fringe for
2423 rows that are exactly as wide as the window.
2424 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2425 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2426 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2427 (fringe_bitmaps): Add new bitmaps.
2428 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2429 Select proper bitmap for cursor in fringe when appropriate.
2430 Handle alignment of bitmap to top or bottom of row.
2431 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2432 done by update_window_fringes.
2433 (update_window_fringes, draw_window_fringes): New functions.
2434 (redisplay_internal): Call update_window_fringes in case only
2435 cursor row is updated.
2436 (redisplay_window): Call update_window_fringes.
2437 Explicitly call draw_window_fringes if redisplay was done using
2438 the current matrix or the overlay arrow is in the window.
2439 (try_window_reusing_current_matrix): Mark scrolled rows for
2440 fringe update (to update buffer-boundaries / scrolling icons).
2441 (find_last_unchanged_at_beg_row): Handle exact width lines line
2442 continued lines.
2443 (display_line): Overflow newline into fringe for rows that are
2444 exactly as wide as the window. Don't append space for newline
d7107586 2445 in this case.
77a9cf69
KS
2446 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2447 in fringe as if it had been overwritten.
2448 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 2449 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
2450 void-text-area-pointer as user options.
2451 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 2452
77a9cf69
KS
2453 * xterm.c (x_update_window_end): Call draw_window_fringes.
2454 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2455 in row instead of actually drawing fringe bitmaps.
2456 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2457 (x_draw_window_cursor): Draw cursor in fringe.
2458
2459 * w32term.c (x_update_window_end): Call draw_window_fringes.
2460 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2461 in row instead of actually drawing fringe bitmaps.
2462 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2463 (w32_draw_window_cursor): Draw cursor in fringe.
2464
2465 * macterm.c (x_update_window_end): Call draw_window_fringes.
2466 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2467 in row instead of actually drawing fringe bitmaps.
2468 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2469 (mac_draw_window_cursor): Draw cursor in fringe.
2470
a633a954
JD
24712004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2472
2473 * xterm.c (handle_one_xevent): Don't handle characters that are part
2474 of an old style (XLookupString) compose sequence.
2475
80460525
KH
24762004-01-15 Kenichi Handa <handa@m17n.org>
2477
2478 * search.c (Freplace_match): Use make_multibyte_string or
2479 make_unibyte_string according to the buffer multibyteness.
2480
7fc34f85
SM
24812004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2482
2483 * alloc.c (struct interval_block, struct string_block)
2484 (struct symbol_block, struct marker_block, live_string_p)
2485 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2486 Better preserve alignment for objects in blocks.
2487 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2488
2489 * lread.c (defvar_per_buffer): Remove dead declaration.
2490
2491 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2492 space size.
2493
66070bd1
JD
24942004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2495
2496 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2497 if a key press should pop down. Only pop down if a key is pressed
2498 outside the menu/dialog.
2499 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2500 popup_get_selection.
2501 (create_and_show_dialog): Pass 1 for down_on_keypress to
2502 popup_get_selection.
2503
de7515d6
JD
25042004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2505
2506 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2507 BLOCK/UNBLOCK_INPUT.
2508
160b1b50
JD
25092004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2510
2511 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2512 specified.
2513
3a9f36e6
KH
25142004-01-08 Kenichi Handa <handa@m17n.org>
2515
2516 * editfns.c (Fformat): Fix '&' to '&&'.
2517
3803eb32
AS
25182004-01-08 Andreas Schwab <schwab@suse.de>
2519
2520 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2521 size if PSEUDOVECTOR_FLAG is set.
2522
9da88f37
KH
25232004-01-07 Kenichi Handa <handa@m17n.org>
2524
74ac5074
KH
2525 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2526
9da88f37
KH
2527 * fontset.c (fontset_ref_via_base): Fix previous change.
2528
05faee07
KS
25292004-01-07 Kim F. Storm <storm@cua.dk>
2530
2531 * process.c (read_process_output): Only activate adaptive
2532 buffering if we read less than 256 bytes at a time.
2533
634910c8
KS
25342004-01-06 Kim F. Storm <storm@cua.dk>
2535
2536 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2537 object and image object. Return glyph width and height.
2538 (mode_line_string, marginal_area_string): Ditto.
2539
2540 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2541 (marginal_area_string): Fix prototypes.
2542
2543 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 2544 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
2545 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2546
2547 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2548 buffer_posn_from_coords, and marginal_area_string functions to
2549 include both string object and image object in the lispy position.
2550 Also add actual glyph width and height to position.
2551 (read_key_sequence): Use real buffer position from mouse
2552 event to find keymap property even when click is in marginal area.
2553
2554 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2555 mode_line_string and marginal_area_string functions to handle
2556 both string object and image object properties.
d7107586 2557
57951c2e
AS
25582004-01-06 Andreas Schwab <schwab@suse.de>
2559
2560 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2561 character.
2562
181e6a61
AS
25632004-01-02 Andreas Schwab <schwab@suse.de>
2564
d7107586
SM
2565 * macterm.c (emacs_options, x_initialized, same_x_server):
2566 Remove unused (and duplicated) definitions.
181e6a61 2567
31e0fbdd
KS
25682004-01-02 Kim F. Storm <storm@cua.dk>
2569
2570 * process.h (struct Lisp_Process): New members for adaptive read
2571 buffering: adaptive_read_buffering, read_output_delay, and
2572 read_output_skip.
2573
2574 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2575 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2576 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2577 (process_output_delay_count, process_output_skip): New vars.
2578 (Vprocess_adaptive_read_buffering): New variable.
2579 (make_process): Initialize adaptive read buffering members.
2580 (Fstart_process): Set adaptive_read_buffering member.
2581 (deactivate_process): Cleanup adaptive read buffering.
2582 (wait_reading_process_input): Temporarily omit delayed
2583 subprocesses from the set of file descriptors to read from;
2584 adjust the select timeout if we skipped any subprocesses.
2585 (read_process_output): Increase adaptive read buffering delay if
2586 we read less than a full buffer; reduce delay when we read a
2587 full buffer.
2588 (send_process): Simplify using local Lisp_Process var.
2589 Reset adaptive read buffering delay after write.
2590 (init_process): Initialize process_output_delay_count and
2591 process_output_skip.
2592 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2593
68c6a789
JR
25942004-01-01 Jason Rumney <jasonr@gnu.org>
2595
d7107586 2596 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 2597
3f70fe82
LT
25982003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2599
2600 * print.c (Ferror_message_string): Add hyperlink in the docstring
2601 to the definition of `signal' in the Elisp manual.
2602 * eval.c (Fsignal): Ditto.
2603
a64387ee 26042003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
2605
2606 * fns.c (internal_equal): Return t for two NaN arguments.
2607
7abd90ea
RS
26082003-12-29 Richard M. Stallman <rms@gnu.org>
2609
2610 * data.c (store_symval_forwarding): Handle setting
2611 default-fill-column, etc., by changing the value in
2612 buffers that use the default.
2613
2614 * minibuf.c (Fset_minibuffer_window): Doc fix.
2615
2616 * fileio.c (choose_write_coding_system): Ignore auto_saving
2617 if using the visited file for auto saves.
2618 (Fwrite_region): Don't update SAVE_MODIFF
2619 if auto-saving in visited file.
2620
3e7cfcdc
KH
26212003-12-29 Kenichi Handa <handa@m17n.org>
2622
2623 * dispextern.h (face_font_available_p): Extern it.
2624
2625 * fontset.c (Voverriding_fontspec_alist): New variable.
2626 (lookup_overriding_fontspec): New function.
d7107586 2627 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
2628 (fontset_font_pattern): Likewise.
2629 (regulalize_fontname): New function.
2630 (Fset_fontset_font): Call regulalize_fontname.
2631 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
2632 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2633 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
2634
2635 * xfaces.c (face_font_available_p): New function.
2636
7abd90ea
RS
26372003-12-28 Richard M. Stallman <rms@gnu.org>
2638
2639 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2640 or if its name is nil.
2641
2642 * buffer.c (Fkill_buffer): Don't delete auto-save file
2643 if it's the same as the visited file.
2644
de1d1a40
LT
26452003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2646
2647 * coding.c (Fcheck_coding_system): Doc fix.
2648
204fb75e
KS
26492003-12-28 Kim F. Storm <storm@cua.dk>
2650
2651 * Makefile.in (eval.o): Depend on dispextern.h.
2652
2653 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2654 image glyph using image's ascent.
2655 (mode_line_string): Return image glyph as object clicked on.
2656 Adjust y0 for image glyph using image's ascent.
2657
2658 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2659 (struct glyph): New members, ascent and descent. Used to save
2660 this glyph's ascent and descent, instead of having.
2661 (struct glyph): Declare member face_id using FACE_ID_BITS.
2662 (find_hot_spot): Add prototype.
2663
2664 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2665 (QCmap): Declare extern.
2666 (make_lispy_position): When position is inside image hot-spot,
2667 use hot-spot element's id as posn element.
2668
2669 * lisp.h (IMAGEP): New macro to test for image object type.
2670 (Qimage): Declare extern.
2671
2672 * macfns.c (Qimage): Remove extern (now in lisp.h).
2673 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2674
2675 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2676
2677 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2678 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2679
2680 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2681
2682 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2683
2684 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2685 pointer types.
2686 (Qrelative_width, Qalign_to): Remove unused variables.
2687 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2688 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2689 image maps.
d7107586 2690 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
2691 new dx and dy args.
2692 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2693 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2694 than row's ascent and height, to get sensible height on tall rows.
2695 (build_desired_tool_bar_string): Remove Qimage extern.
2696 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2697 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2698 image glyph is alone on the last line.
2699 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 2700 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 2701 (on_hot_spot_p): New function to check if position is inside an
d7107586 2702 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
2703 (find_hot_spot): New function to search for image hot-spot.
2704 (Flookup_image_map): New defun to search for image hot-spot.
2705 (define_frame_cursor1): New aux function to determine frame pointer.
2706 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2707 Handle `pointer' text property and :pointer image property to
2708 control frame pointer shape. Detect image hot-spots for pointer
2709 and help_echo properties. Use define_frame_cursor1.
2710 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 2711 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
2712 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2713
2714 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2715
2716 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2717 (Qimage): Remove extern (now in lisp.h).
2718 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2719
2720 * xmenu.c (show_help_event): Remove unused code.
2721
2722 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2723 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2724 row's ascent and descent, to get a sensible height on tall rows.
2725
fc052137
LT
27262003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2727
2728 * minibuf.c (Fcompleting_read): Undo previous change.
2729
a64387ee 27302003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
2731
2732 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2733 Arguments GCPRO'ed in call to file name handler.
2734
56ffd194
TTN
27352003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2736
2737 * termcap.c (tgetst1): Scan for "%pN"; if all
2738 N are continuous in [1,9], remove all "%pN".
2739
5202d23d
JD
27402003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2741
f26fab36
JD
2742 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2743
5202d23d
JD
2744 * xfaces.c (lface_fully_specified_p): Take into account that
2745 MAC OS always have unspecified stipple.
2746
8babaa59
TTN
27472003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2748
2749 * tparam.c (tparam1): Add handling for `%pN', which
2750 means use param N for the next substitution.
2751
2d176448
TTN
27522003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2753
2754 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2755 In case `frame' is nil, consult the selected frame.
2756 (Fcolor_supported_p): Likewise.
2757
adb0708c
LT
27582003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2759
000eeb15
LT
2760 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2761 Doc fixes.
0dc72b11
LT
2762
2763 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2764 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
2765 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2766 Doc fix.
2767 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2768 read_minibuf.
2769 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 2770 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 2771
2e4d132b
KH
27722003-12-03 Kenichi Handa <handa@m17n.org>
2773
2774 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2775 encoding sequence.
2776
3999c705
KH
27772003-12-01 Kenichi Handa <handa@m17n.org>
2778
2779 * composite.c (syms_of_composite): Don't make the compostion hash
2780 table week.
2781
d344ecbb
LT
27822003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2783
2784 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2785 * textprop.c (Fget_char_property_and_overlay): New function.
2786 (syms_of_textprop): Defsubr it.
2787
03d6484e
JD
27882003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2789
019b1f0e
JD
2790 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2791 to compile on terminal configuration.
2792
03d6484e
JD
2793 * fileio.c (Fread_file_name): Check use_file_dialog also before
2794 calling Fx_file_dialog.
2795
2796 * fns.c: use_file_dialog: New variable.
2797 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2798
442d3fd0
KS
27992003-11-29 Kim F. Storm <storm@cua.dk>
2800
2801 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2802 (syms_of_msdos): Don't intern and staticpro them.
2803
0f6a07a8
KS
28042003-11-27 Kim F. Storm <storm@cua.dk>
2805
2806 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2807 coordinates relative to glyph at posn. If glyph is an image,
2808 return that as object at posn. Callers changed.
2809 (mode_line_string, marginal_area_string): Calculate and return
2810 pixel coordinates relative to glyph. Callers changed.
2811
2812 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2813 (marginal_area_string): Fix prototypes.
2814 (window_box_left_offset, window_box_right_offset): Add prototypes.
2815
2816 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2817 Remove prototypes.
2818
2819 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2820
2821 * keyboard.c (make_lispy_position): Add x and y coordinates
2822 relative to the current glyph as 7th element of position.
2823 If glyph is an image, return it in the object element.
2824 (read_key_sequence): Skip checks for keymap property in cases
2825 where POSN_STRING is not a string (e.g. an image).
2826
2827 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2828 (Vshow_text_cursor_in_void): New variable.
2829 (glyph_to_pixel_coords): Don't use negative hpos.
2830 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2831 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 2832 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
2833 (calc_pixel_width_or_height): New aux function, implementing
2834 pixel based artihmetic for glyph widths and heights.
2835 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2836 :width, :height, :align-to, and :ascent, thus allowing these to
2837 be specified in pixels as well as multiples of characters.
2838 Don't produce stretch glyphs with zero width or height.
2839 (get_specified_cursor_type): Declare static.
2840 (get_window_cursor_type): Declare static. Add glyph arg to be
2841 able to know when cursor is on an image; always substitute
2842 hollow-box cursor for filled-box cursor on images, to avoid
2843 negative images and flicker when blinking the cursor.
2844 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2845 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2846 than vertical scroll-bar cursor in display margins.
2847 (note_mouse_highlight): Use non-text cursor rather than text
2848 cursor in fringes and over images in the text area.
2849 Use non-text cursor when mouse pointer is outside editable text,
2850 i.e. in the void after end-of-line or end-of-buffer; this was
2851 already done for W32, but is now standard for all systems --
2852 user can toggle show-text-cursor-in-void to get old behaviour.
2853 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2854 Vdisplay_pixels_per_inch.
2855
00498bfc
AS
28562003-11-25 Andreas Schwab <schwab@suse.de>
2857
2858 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2859 EMACS_INT to not lose bits.
2860 (Ffillarray): Don't set bits beyond the size of a bool vector.
2861
edaa824d
KS
28622003-11-25 Kim F. Storm <storm@cua.dk>
2863
2864 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2865 define this defun on systems that cannot use stderr as lvalue.
2866
74d6f539
GM
28672003-11-24 Gerd Moellmann <gerd@gnu.org>
2868
2869 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2870 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2871 ld's default is incompatible with unexec.
2872
6a1ff3ba
KS
28732003-11-23 Kim F. Storm <storm@cua.dk>
2874
63dc7c6b
KS
2875 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
2876 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
2877 (Fforce_window_update): New defun.
2878 (syms_of_window): Defsubr it.
2879 (Fset_window_margins, Fset_window_fringes): Doc fix.
2880
6a1ff3ba
KS
2881 * print.c (Fredirect_debugging_output): New defun.
2882 (syms_of_print): Defsubr it.
2883
aef109b7
LT
28842003-11-22 Luc Teirlinck <teirllm@auburn.edu>
2885
2886 * fns.c (Fset_char_table_parent): Doc fix.
2887
6a1ff3ba 28882003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
2889
2890 * dispnew.c (buffer_posn_from_coords): Return actual row/column
2891 for glyph clicked on, rather than (unused) pixel positions.
2892 (mode_line_string, marginal_area_string): Change X and Y args to
2893 pointers for returning actual row/column for glyph clicked on.
2894 Simplify and optimize loops.
2895
aef109b7
LT
2896 * dispextern.h (mode_line_string, marginal_area_string):
2897 Update prototypes.
63ccbe21
KS
2898
2899 * keyboard.c (make_lispy_position): New function for generating
2900 mouse click positions from frame and pixel coordinates.
2901 Enhanced to return buffer position and actual row/column for
2902 events outside the text area using updated mode_line_string and
2903 marginal_area_string functions.
2904 Return left-fringe and right-fringe clicks as such, rather than
2905 clicks in text area.
2906 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
2907 pixel_to_glyph_coords, as we never use the results.
2908 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
2909 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
2910 Eliminate unused code in WHEEL_EVENT handling.
2911 (make_lispy_movement): Use make_lispy_position.
2912
2913 * window.c (coordinates_in_window): Remove redundant tests.
2914 Fix returned X pixel value for left-margin.
2915
2916 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
2917 mode_line_string and marginal_area_string parameters.
2918
a64387ee 29192003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 2920
d7107586
SM
2921 * w32.c (struct the_group, getgrgid): Add.
2922 * mac.c (struct my_group, getgrgid): Add.
aef109b7 2923
3dbf3426
LT
29242003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2925
2926 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
2927
cae8ddbb 29282003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 2929
d7107586
SM
2930 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
2931 include in call to file name handler. Optionally translate numeric
2932 UID and GID to strings. Update docstring.
2933 (directory_files_internal): Add parameter ID-FORMAT.
2934 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
2935 include in call to file name handler and call to
2936 directory_files_internal. Update Docstring.
2937 (Fdirectory_files): Add dummy parameter in call to
2938 directory_files_internal.
2939 * lisp.h (Qinteger): Add.
2940 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
2941 (Ffile_attributes): Add parameter.
2942 * data.c (Qinteger): Export.
cae8ddbb 2943
2550b848
LT
29442003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2945
3dbf3426 2946 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 2947
88380018
KS
29482003-11-19 Kim F. Storm <storm@cua.dk>
2949
2950 * xdisp.c (init_iterator): Initialize it->start to position
2951 before reseating (in case start position is invisible).
2952 (init_to_row_start): Set it->start to row-start.
2953 (redisplay_window): Accept optional_new_start if start position
2954 is invisible (in which case IT_CHARPOS overshoots PT).
2955 (display_line): Setup row->start from it->start (rather than
2956 it->current which is wrong if first char on line is invisible).
2957 When done, reseat it->start to it->current (= start of next row).
2958 (expose_area): Fix exposure of text area when first char (e.g. TAB)
2959 is only partially visible.
2960
2961 * dispextern.h (struct it): New member start.
2962
854c1a59
SM
29632003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2964
455316e2
SM
2965 * alloc.c (make_float, Fcons): Clear the markbit at init time.
2966 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
2967 of block_index outside of the macro call.
2968 (Fgarbage_collect): Remove null code.
2969
2970 * m/amdx86-64.h: Don't redefine XPNTR.
2971
854c1a59
SM
2972 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
2973 of VALMASK.
2974
2975 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
2976 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
2977 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
2978
2979 * lisp.h (VALMASK): Only define for non-union type.
2980 (MARKBIT): Remove.
2981 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
2982 (XTYPE): Define unconditionally.
2983 (XSETTYPE): Remove one more remnant.
2984 (EQ): Define differently for the union and non-union cases.
2985 (INTMASK): New bit mask.
2986 (struct Lisp_Marker): Move down to prepare for upcoming patch.
2987 (GC_EQ): Delegate to EQ.
2988
2989 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
2990
a0c6ef2d
JD
29912003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2992
2993 * xterm.c (x_window_to_scroll_bar): Move check of display to
2994 where window_id is compared.
2995
859492c4
KS
29962003-11-17 Kim F. Storm <storm@cua.dk>
2997
2998 * dispextern.h (struct it): New member first_vpos.
2999
3000 * xdisp.c (start_display): Set it->first_vpos.
3001 (try_window_id): Use first_vpos to start display in first _text_
3002 line if no reusable lines at start of window with header line.
3003
810f2256
JD
30042003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3005
7c402969 3006 * w32fns.c (XPutPixel):
854c1a59
SM
3007 * w32bdf.c (w32_init_bdf_font):
3008 * sunfns.c (sel_read):
3009 * process.c (Fmake_network_process):
3010 * frame.c (store_frame_param):
3011 * fontset.c (Fset_fontset_font):
3012 * emacs.c (shut_down_emacs):
a64387ee 3013 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3014
a32e9bfd
JD
3015 * config.in: Regenerate.
3016
810f2256
JD
3017 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3018 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3019 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3020 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3021 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3022
3023 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3024
3025 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3026 (XTmouse_position, handle_one_xevent): Pass Display* to
3027 x_window_to_scroll_bar.
3028 (x_window_to_scroll_bar): Take a Display* argument.
3029 Check that display for frame is equal to Display* argument.
854c1a59 3030 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3031 x_display_info_for_display instead. Use Display in xev instead
3032 of GDK_DISPLAY.
3033 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3034 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3035 (x_connection_closed): Call xg_display_close for GTK.
3036 (x_term_init): Call xg_display_open for additional displays.
3037 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3038 for GTK.
3039
3040 * xmenu.c (single_menu_item, mouse_position_for_popup)
3041 (x_activate_menubar): Formatting adjustments.
3042
3043 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3044 adjustments.
3045
3046 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3047 (xg_display_close, xg_create_default_cursor)
3048 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3049 handling.
854c1a59
SM
3050 (xg_left_ptr_cursor): Remove.
3051 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3052 cursor here.
3053 (xg_win_to_widget): Take Display* argument, call
3054 gdk_xid_table_lookup_for_display.
3055 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3056 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3057 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3058 in FRAME_X_DISPLAY_INFO.
3059 (xg_get_scroll_id_for_window): Take Display* argument.
3060 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3061 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3062
3063 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3064 Display* argument also. Declare xg_display_open,
3065 xg_display_close, xg_create_default_cursor.
3066
0b03cc78
JD
30672003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3068
3069 * xterm.c (x_detect_focus_change): Do not change focus frame for
3070 Enter/LeaveNotify if the current focus frame has explicit focus.
3071
77e688fa
KS
30722003-11-14 Kim F. Storm <storm@cua.dk>
3073
3074 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3075 is active and first glyph is only partially visible.
854c1a59 3076
dd429b03
KH
30772003-11-13 Kenichi Handa <handa@m17n.org>
3078
3079 * xdisp.c (select_frame_for_redisplay): New function.
3080 (redisplay_internal): Record also selected_frame for
3081 unwind_redisplay. Call select_frame_for_redisplay before
3082 redrawing each frame.
3083 (unwind_redisplay): Argument changed to a cons.
3084
6d9266f4
LT
30852003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3086
3087 * fns.c (Fstring_to_multibyte): Doc fix.
3088
80060eb3
KH
30892003-11-11 Kenichi Handa <handa@m17n.org>
3090
3091 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3092
74305183
JD
30932003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3094
3095 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3096 program specified positions.
3097
cfda993e
JD
30982003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3099
3100 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3101
df211069
KH
31022003-11-08 Kenichi Handa <handa@m17n.org>
3103
3104 * Makefile.in (lisp): Add kannada.el.
3105 (shortlisp): Likewise.
3106
4307d534
KH
31072003-11-07 Kenichi Handa <handa@m17n.org>
3108
854c1a59
SM
3109 * coding.c (coding_allocate_composition_data):
3110 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3111 (coding_restore_composition): Detect invalid composition data.
3112 Give Fstring and Fvector a Lispy integer, not C int.
3113
854c1a59
SM
31142003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3115
3116 * floatfns.c (Flogb): Don't use VALMASK.
3117
3118 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3119 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3120
3121 * lisp.h (XINT): Move the cast to clarify what is going on.
3122 (GCTYPEMASK, XSETTYPE): Remove.
3123 (XGCTYPE): Make it an alias of XTYPE.
3124
d04103a1
JD
31252003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3126
3127 * xterm.c (x_term_init): Fix formatting.
3128
da18b5ac
JD
31292003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3130
3131 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3132 and xg_did_tearoff.
3133
3134 * gtkutil.c: Remove variable xg_did_tearoff.
3135 (xg_have_tear_offs): New function.
3136 (tearoff_remove): Just decrease xg_detached_menus.
3137 (tearoff_activate): Increase xg_detached_menus and call
3138 tearoff_remove when tearoff is removed.
854c1a59 3139 (xg_keep_popup): Remove function.
da18b5ac
JD
3140 (create_menus): Give add_tearoff_p as argument to recursive
3141 call to create_menus.
3142 (xg_create_widget): Use variables instead of multiple
3143 strcmp. Tell create_menus to create tear off only for
3144 menu bar menus.
3145 (xg_update_menubar): Change title for a detached menu also.
3146 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3147 of deep_p.
3148 (xg_initialize): Initialize xg_detached_menus, remove
3149 initialization of xg_did_tearoff.
3150
3151 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3152 xg_have_tear_offs returns non-zero.
3153 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3154 call to xg_keep_popup.
3155
64d4923e
AC
31562003-11-01 Andrew Choi <akochoi@shaw.ca>
3157
3158 * macterm.c (XTread_socket): Handle menubar selection and grow
3159 window only for mouseDown events.
854c1a59 3160
6cc8bc07
JD
31612003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3162
3163 * xterm.c (x_term_init): For GTK part, increase x_initialized
3164 to check for more than one display. Use error instead of return 0.
3165
043131c4
AC
31662003-10-31 Andrew Choi <akochoi@shaw.ca>
3167
854c1a59 3168 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3169 (copy_dysymtab): Call it.
3170
bdda99a1
LT
31712003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3172
3173 * eval.c (Fdefvaralias): Doc fix.
3174
800f42ff 31752003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3176
3177 * data.c (Fsetplist): Doc fix.
3178
ef35b389
LK
31792003-10-14 Lute Kamstra <lute@gnu.org>
3180
3181 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3182
ef35b389 31832003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3184
07107abc
KS
3185 * window.c (Fset_window_margins): Simplify arg checking.
3186
f7005886
RS
31872003-10-13 Richard M. Stallman <rms@gnu.org>
3188
3189 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3190 (print_partial_compiled_pattern): Replace assert with a printout.
3191 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3192
3193 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3194
3195 * window.c (Fset_window_margins): Allow only integers as args.
3196 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3197 Doc fixes.
3198
9c0c2af5
LK
31992003-10-13 Lute Kamstra <lute@gnu.org>
3200
3201 * window.c (Fset_window_fringes): Elaborate docstring.
3202
3f080e4e
AC
32032003-10-12 Andrew Choi <akochoi@shaw.ca>
3204
854c1a59 3205 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3206
3f080e4e
AC
3207 * s/darwin.h (GC_MARK_STACK): Define.
3208
0aa513ed
JD
32092003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3210
3211 * window.c (shrink_windows): New function.
3212 (size_window): Call shrink_windows to calculate window sizes when
3213 shrinking frame with more than one window.
3214
6aa8858a
KS
32152003-10-12 Kim F. Storm <storm@cua.dk>
3216
3217 * xdisp.c (compute_fringe_widths): Doc fix.
3218
c2164d91
KH
32192003-10-08 Kenichi Handa <handa@m17n.org>
3220
854c1a59 3221 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3222
f82ac129
KH
32232003-10-07 Kenichi Handa <handa@m17n.org>
3224
3225 * coding.c (Qcoding_system_define_form): New variable.
3226 (syms_of_coding): Intern and staticpro it.
3227 (Fcheck_coding_system): Try to autoload the definition of
3228 CODING-SYSTEM.
3229
9296c947
LT
32302003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3231
3232 * fns.c (Frequire): Doc fix.
3233
c1f0671a
JD
32342003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3235
3d8c3826
JD
3236 * xfns.c (Fx_send_client_event): New function as a base for
3237 manipulating extended window manager hints.
6dc15d98 3238 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3239
068ae0fd
JD
3240 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3241 that function is removed.
3242
3243 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3244 x/y_pixels_outer_diff.
3245 (x_check_expected_move): Calculate move_offset_left/top.
3246
3247 * xterm.h (struct x_output): New members: move_offset_top/left.
3248
854c1a59 3249 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3250 call x_set_offset directly.
3251
3252 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3253
96f09305
JD
3254 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3255
3256 * xterm.c (x_delete_display): Free font names and font_encoder
3257 in dpyinfo->font_table.
3258
854c1a59
SM
3259 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3260 Move xfree of font names to x_delete_display.
96f09305 3261
c1f0671a
JD
3262 * xterm.h (struct x_display_info): New member, wm_type.
3263 (struct x_output): New members, expected_top/left and
3264 check_expected_move.
3265
3266 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3267 is received.
854c1a59
SM
3268 (handle_one_xevent): Rename x_check_expected_move from
3269 x_check_fullscreen_move.
c1f0671a
JD
3270 (x_set_offset): Only add WM decoration sizes to modified_top/left
3271 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3272 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3273 Removed fullscreen specific code. Use check_expected_move,
3274 expected_left/top instead. Also, set wm_type.
3275 (x_term_init): Initialize wm_type to unknown.
3276
3277 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3278 sizes to move_x/y.
3279
be2fdba9
KH
32802003-10-03 Kenichi Handa <handa@m17n.org>
3281
3282 * macterm.c (x_load_font): Clear all members of FONTP before start
3283 filling them.
3284
32852003-10-02 Kenichi Handa <handa@m17n.org>
3286
3287 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3288 before calling find_ccl_program_func. Call find_ccl_program_func
3289 only when fontp->font_encoder is not NULL.
3290
3291 * xterm.c (x_load_font): Clear all members of FONTP before start
3292 filling them.
3293
26a6e439
JPW
32942003-10-03 John Paul Wallington <jpw@gnu.org>
3295
3296 * keymap.c (map_keymap): Don't abort when binding is a vector.
3297
0d4c2dc2
JR
32982003-10-02 Jason Rumney <jasonr@gnu.org>
3299
854c1a59
SM
3300 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3301 Sync dependencies with Makefile.in.
a63cf46f
JR
3302 (alloca.o): Remove.
3303
0d4c2dc2
JR
3304 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3305 filling them.
3306
3307 * w32bdf.c (w32_load_bdf_font): Likewise.
3308
ab8f7d5c
RS
33092003-09-30 Richard M. Stallman <rms@gnu.org>
3310
3311 * term.c (set_tty_color_mode): Calculate current_mode_spec
3312 regardless of value of VAL.
3313
854c1a59 3314 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
3315 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3316 Handle over_used when splitting UNDER.
3317
a64387ee 33182003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
3319
3320 * regex.c (regex_compile): Free the stack when returning from function.
3321
3413f972
KH
33222003-09-28 Kenichi Handa <handa@m17n.org>
3323
3324 * fontset.c (Finternal_char_font): Change return value to
3325 cons (FONT-NAME . GLYPH-CODE).
3326
a6eeaa81 33272003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
3328
3329 * term.c (tty_setup_colors): Treat any negative argument as -1.
3330
f98ddc99
KH
33312003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3332
3333 * process.c (send_process): Delete unused temp_buf.
3334
66c8f1a8
DL
33352003-09-26 Dave Love <fx@gnu.org>
3336
3337 * xterm.c (x_bitmap_mask): Declare.
3338
ca716c26
DL
33392003-09-25 Dave Love <fx@gnu.org>
3340
3341 * Makefile.in (fns.o): Depend on md5.h.
3342
fbe57420
KS
33432003-09-25 Kim F. Storm <storm@cua.dk>
3344
3345 * window.c (set_window_buffer): Fix redisplay problems when
3346 switching between buffers with different display margin widths.
3347
ef6ae4ff
KS
33482003-09-23 Kim F. Storm <storm@cua.dk>
3349
3350 * process.c (set_socket_option): Fix :bindtodevice option.
3351 (Fset_network_process_option): Update process contact list when
3352 setting option succeeds.
3353 (Fmake_network_process): Doc fix.
3354
68e03c1c
DL
33552003-09-23 Dave Love <fx@gnu.org>
3356
7146d1c1 3357 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 3358
a6eeaa81 33592003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
3360
3361 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3362 color mode is an integer number (it could be -1).
3363
8fe7d8c8
RS
33642003-09-22 Richard M. Stallman <rms@gnu.org>
3365
3366 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3367 in the case where OVER is longer than UNDER.
3368
2f71b5ea
MY
33692003-09-22 Masatake YAMATO <jet@gyve.org>
3370
7146d1c1 3371 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 3372 `vertical_type'.
7146d1c1 3373
0c4da023
KS
33742003-09-21 Kim F. Storm <storm@cua.dk>
3375
3376 * frame.c (Vdefault_frame_scroll_bars): New variable.
3377 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3378 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3379 window-system default scroll bar position.
3380
b648413b
KS
3381 * window.c (Fwindow_scroll_bars): Doc fix.
3382
8f5b9e34
JD
33832003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3384
854c1a59 3385 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 3386
b0f23edf
RS
33872003-09-19 Richard M. Stallman <rms@gnu.org>
3388
3389 * atimer.h: Don't include lisp.h.
3390 (P_): Define it here (as well as elsewhere).
3391
3392 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3393 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3394
3395 * data.c (Fvariable_binding_locus): New function.
3396 (syms_of_data): defsubr it.
3397 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3398
e1283999
DL
33992003-09-18 Dave Love <fx@gnu.org>
3400
ad5f3636
DL
3401 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3402
e1283999
DL
3403 * process.c (Fnetwork_interface_info): Fix type error.
3404 (Fnetwork_interface_list): Doc fix.
3405 (read_process_output, read_process_output): Delete unused var.
3406
b8c7fd71
KS
34072003-09-17 Kim F. Storm <storm@cua.dk>
3408
3409 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3410 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3411 (Fnetwork_interface_info): Check that ifreq struct has required
3412 fields before accessing them; this requires that those fields are
3413 defined as macros, which may be too restrictive on some platforms,
3414 but it is better than failing on other platforms.
3415 (syms_of_process): Only defsubr above fns when included.
3416
11e0a411
DL
34172003-09-17 Dave Love <fx@gnu.org>
3418
3419 * unexalpha.c: Don't include varargs.h.
3420
e9c50801
KS
34212003-09-17 Kim F. Storm <storm@cua.dk>
3422
3423 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3424 for network process.
3425 (socket_options): Add `:' prefix to option names. Add optbit field.
3426 (set_socket_option): Remove no_error arg and special handling of s < 0.
3427 Return 1<<optbit for known option, 0 for unknown.
3428 Do not interpret 0 as false for boolean option (only nil).
3429 Pass failed option and value to report_file_error.
7146d1c1 3430 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
3431 (Fset_network_process_option): New function to set just one option.
3432 (Fmake_network_process): Allow :coding arg to be a cons.
3433 Allow :server arg to be an integer specifying backlog size.
3434 Remove :options arg, and allow options to be specified directly
3435 as :KEY, VALUE pairs. Parse these options before binding socket.
3436 As before, :reuseaddr t is default for a server process, but this
3437 can now be disabled by specifying :reuseaddr nil.
3438 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3439 (init_process): Availability of network options is now checked with
3440 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3441 setup features.
3442 (syms_of_process): Fix defsubr's for the replaced functions.
3443
a0fc3644
DL
34442003-09-16 Dave Love <fx@gnu.org>
3445
3446 * Makefile.in: Depend on coding.h.
3447
6df2a645
KS
34482003-09-14 Kim F. Storm <storm@cua.dk>
3449
3450 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3451 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3452 (syms_of_process): Defsubr them.
3453
3454 * config.in: Regenerate.
7146d1c1
SM
3455
34562003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3457
3458 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3459 * m/news-r6.h (XUNMARK): Remove.
3460 * m/mips.h (XUNMARK): Remove.
3461 * m/mips-siemens.h (XUNMARK): Remove.
3462 * m/iris4d.h (XUNMARK): Remove.
3463 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3464
0930c1a1
SM
34652003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3466
31003b9e
SM
3467 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3468 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3469 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3470 (XTYPE): Use unsigned right-shift.
3471 (XMARKBIT, XMARK, XUNMARK): Remove.
3472
0930c1a1
SM
3473 * alloc.c (init_intervals, init_symbol, init_marker):
3474 Don't preallocate anything.
3475 (Fgarbage_collect, mark_object): Ignore the markbit.
3476
3477 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3478
19bb0fcd 34792003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
3480
3481 * xdisp.c (pint2hrstr): New function.
3482 (decode_mode_spec): Add `%i' and `%I' specs.
3483 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3484 for `mode-line-format'.
3485
03bb6a06
AS
34862003-09-07 Andreas Schwab <schwab@suse.de>
3487
3488 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3489 avoid warning.
3490
a6eeaa81 34912003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 3492
0930c1a1 3493 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 3494
ed159bbf
KS
34952003-09-03 Kim F. Storm <storm@cua.dk>
3496
3497 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3498 change (superseded by 2002-08-30 change); the default blink-off
3499 cursor is now again "no cursor".
3500
fe64a394
JR
35012003-09-01 Jason Rumney <jasonr@gnu.org>
3502
3503 * makefile.w32-in (alloca.o): Remove.
3504 (coding.o): Depend on intervals.h
3505 (emacs.o, bytecode.o): Depend on window.h
3506
c0175e24
DL
35072003-09-01 Dave Love <fx@gnu.org>
3508
3509 * Makefile.in (alloca.o): Remove commands.
3510 (coding.o): Depend on intervals.h composite.h window.h.
3511 (emacs.o): Depend on window.h keyboard.h keymap.h.
3512 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3513 (bytecode.o): Depend on window.h.
3514
a24d4cb2
JR
35152003-08-31 Jason Rumney <jasonr@gnu.org>
3516
4bc2315e
JR
3517 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3518 returned even when font_type is unknown.
3519
a24d4cb2
JR
3520 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3521
9d35adc7
JD
35222003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3523
3524 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3525
3526 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3527 *_offset.
3528
3529 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3530 calculate pixel value.
3531
6f68b035
GM
35322003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3533
0930c1a1
SM
3534 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3535 Don't tell redisplay display is accurate when it's actually been
3536 paused for pending input.
6f68b035 3537
4828b4d7
RS
35382003-08-29 Richard M. Stallman <rms@gnu.org>
3539
3540 * dispnew.c (adjust_glyph_matrix): Call window_box
3541 whenever W is nonzero.
3542
3543 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3544 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 3545 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
3546 Use indirect_variable to trace thru variable aliases.
3547
3548 * config.in: Updated.
3549
3550 * callint.c (Fcall_interactively): Save and restore
3551 Vthis_command, Vthis_original_command, real_this_command,
3552 and current_kboard->Vlast_command.
3553
3554 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3555
e019878d
GM
35562003-08-29 Gerd Moellmann <gerd@gnu.org>
3557
3558 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3559
85478bc6
KH
35602003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3561
0930c1a1 3562 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
3563 (decode_coding_sjis_big5): Likewise.
3564
07ce82d3
JR
35652003-08-27 Jason Rumney <jasonr@gnu.org>
3566
d3703de3
JR
3567 * w32.c (sys_pipe): Protect against file descriptor overflow.
3568
ee4a01d1
JR
3569 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3570
07ce82d3
JR
3571 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3572
a64387ee 35732003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
3574
3575 * xfns.c (Vgtk_version_string): New variable.
3576 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3577
a6eeaa81 35782003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 3579
0930c1a1 3580 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 3581
5459e42a
EZ
3582 * Makefile.in (msdos.o): Depend on intervals.h.
3583
0930c1a1 3584 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 3585
231d6cfb
JD
35862003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3587
3588 * xterm.h (struct x_display_info): New fields: client_leader_window
3589 and Xatom_wm_client_leader.
3590
3591 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3592 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3593
3594 * xsmfns.c (create_client_leader_window): New function.
3595 (x_session_initialize): Call create_client_leader_window, take
3596 dpyinfo as argument.
3597
3598 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3599
3600 * Makefile.in (xsmfns.o): Add more depenedencies.
3601
afa88464
DL
36022003-08-21 Dave Love <fx@gnu.org>
3603
3604 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3605
f730033e
KH
36062003-08-21 Kenichi Handa <handa@m17n.org>
3607
3608 * term.c (term_init): Fix previous change; don't rely on the
3609 length of `buffer' if TERMINFO is defined.
3610
6dca786c
DL
36112003-08-20 Dave Love <fx@gnu.org>
3612
3613 * atimer.h: Include lisp.h.
3614
3615 * lisp.h (EMACS_LISP_H): New.
3616 (popup_activated_flag): Don't declare.
3617
3618 * alloca.c: Some merging with gnulib. Change logic and doc
3619 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3620 [DO_BLOCK_INPUT]: Don't include lisp.h.
3621 (xmalloc, xfree): Declare.
3622 (malloc): Don't declare.
3623
0930c1a1 3624 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
3625 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3626 atimer.h, blockinput.h.
3627
3628 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3629
3630 * alloca.s: Removed.
3631
3a06a6d9
RS
36322003-08-19 Gerd Moellmann <gerd@gnu.org>
3633
3634 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3635 use -lncurses.
3636
3637 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3638 FreeBSD returns something longer than 2044. Abort if the end of
3639 the buffer is overwritten.
3640
27eeee55
MB
36412003-08-19 Miles Bader <miles@gnu.org>
3642
3643 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3644
2f297815
GM
36452003-08-19 Gerd Moellmann <gerd@gnu.org>
3646
f4446bbf
GM
3647 * alloc.c (lisp_align_malloc): Check for memory full when
3648 allocating ablocks, which also avoids freeing a pointer into an
3649 ablocks structure.
3650
3651 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3652
0930c1a1 3653 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 3654
0e7d7aae
RS
36552003-08-16 Richard M. Stallman <rms@gnu.org>
3656
3657 * editfns.c (Fencode_time): Doc fix.
3658
36592003-08-16 David Ponce <david@dponce.com>
3660
3661 * fileio.c (Fwrite_region): Fix conditional expression to issue
3662 the right message.
3663
36642003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3665
3666 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 3667 Set default value to 1.
0e7d7aae 3668
5d551295
KH
36692003-08-15 Kenichi Handa <handa@m17n.org>
3670
3671 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3672 what autoscaled.
3673 (best_matching_font): Once we find a better scalable font, set
3674 non_scalable_has_exact_height_p to 1.
3675 (try_font_list): Call try_alternative_families to try any family
3676 with the given registry.
3677
1661e56b
AS
36782003-08-09 Andreas Schwab <schwab@suse.de>
3679
f29181dc
AS
3680 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3681
1661e56b
AS
3682 * print.c (print_string): Fix printing of multibyte string with
3683 nontrivial printcharfun.
3684
465aa50a
JD
36852003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3686
3687 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3688
3689 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3690
e430e5ba
KH
36912003-07-31 Kenichi Handa <handa@m17n.org>
3692
3693 * process.c (read_process_output): Return the actually read bytes
3694 instead of the result of decoding.
3695
97e7188e
KH
36962003-07-31 Kenichi Handa <handa@m17n.org>
3697
3698 * xterm.h (struct x_bitmap_record): New member have_mask.
3699
3700 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3701 to 0.
3702 (x_create_bitmap_from_file): Likewise.
3703 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3704 (x_destroy_all_bitmaps): Likewise.
3705 (x_create_bitmap_mask): Set have_mask member to 1.
3706
b53094d6
RS
37072003-07-30 Richard M. Stallman <rms@gnu.org>
3708
3709 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3710
631f2082
JD
37112003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3712
3713 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3714
c855f2ca
RS
37152003-07-29 Richard M. Stallman <rms@gnu.org>
3716
3717 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3718 Conditionalize XIM code on HAVE_XIM.
3719
3720 * fns.c (Fclear_string): New function.
3721 (syms_of_fns): defsubr it.
3722
17e6d491
KH
37232003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3724
0930c1a1 3725 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 3726
29ea8ae9
SM
37272003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3728
3729 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3730
3731 * buffer.c (delete_all_overlays): New function.
3732 * buffer.h (delete_all_overlays): Declare.
3733 * coding.c (run_pre_post_conversion_on_str):
3734 * print.c (temp_output_buffer_setup):
3735 * fileio.c (Finsert_file_contents):
3736 * minibuf.c (get_minibuffer): Use it.
3737
1dd7ccf2
AC
37382003-07-22 Andrew Choi <akochoi@shaw.ca>
3739
3740 * unexmacosx.c (unexec_regions_sort_compare):
3741 (unexec_regions_merge): New functions. Sort and merge unexec
3742 regions before dumping them.
3743
f57bd967
DL
37442003-07-22 Dave Love <fx@gnu.org>
3745
3746 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3747
7cdee936
SM
37482003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3749
3750 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3751 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3752 MARKBIT as the gcmarkbit for strings.
3753
e50886d3
RS
37542003-07-21 Richard M. Stallman <rms@gnu.org>
3755
3756 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3757
29ea8ae9 3758 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
3759 (syms_of_fns): Corresponding change.
3760
3761 * alloc.c (syms_of_alloc): Doc fixes.
3762
37632003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3764
3765 * s/netbsd.h: Use -Wl syntax.
3766
fdc39b59
RS
37672003-07-17 Richard M. Stallman <rms@gnu.org>
3768
3769 * xterm.c (xim_initialize): Redo 6/24 change.
3770
9c53385f
SM
37712003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3772
3773 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3774 (Fswitch_to_buffer): Don't signal an error when switching to the same
3775 buffer in a dedicated window.
3776
3777 * alloc.c: Use bitmaps for cons, as was done for floats.
3778 (init_float, init_cons): Let the normal code allocate the first block.
3779 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3780 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3781 New macros.
3782 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3783 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3784 (live_cons_p): Check the pointer is not past the `conses' array.
3785 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3786 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3787 (survives_gc_p): Use CONS_MARKED_P and simplify.
3788 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3789
dde13196
PE
37902003-07-13 Paul Eggert <eggert@twinsun.com>
3791
3792 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3793 puts it into BSS instead, at least on Solaris 8 and 9.
3794 This is a valid optimization, and it may occur on other platforms,
3795 so Emacs should not assume that initializing a static variable to
3796 zero puts it into data.
3797 * alloc.c (pure, staticvec):
3798 Initialize these arrays to nonzero, so that they're not
3799 put into BSS by that optimization.
3800
a801bc34
SM
38012003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3802
3803 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3804 (lisp_align_malloc): Use posix_memalign is available.
3805 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3806 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3807 for consistency. Update users.
3808
0c8b2afa
RS
38092003-07-13 Richard M. Stallman <rms@gnu.org>
3810
3811 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3812
668c2ab0
JB
38132003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3814
3815 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3816 and use the Gtk+ function gtk_window_icon_from_file if available.
3817
3818 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3819 handle mask of bitmaps.
3820 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3821 mask property.
3822 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3823
3824 * xterm.h (xg_set_icon): New function.
3825
800bebe3
RS
38262003-07-12 Paul Eggert <eggert@twinsun.com>
3827
3828 * unexelf.c (unexec): Consider a section to precede the .bss
3829 section if its addresses overlap that of .bss.
3830
69e38995
RS
38312003-07-12 Richard M. Stallman <rms@gnu.org>
3832
3833 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3834
3835 * config.in (HAVE_CRTIN): Add #undef.
3836 (INLINE): Really inline only if OPTIMIZE is defined.
3837
3838 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3839 END_FILES_1.
3840 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 3841 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
3842
3843 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
3844 (TERMINFO): Define.
3845 (LIBS_TERMCAP): Define.
3846 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
3847
3848 * xfns.c: Include libpng/png.h instead of png.h.
3849
f1d0c238
AS
38502003-07-11 Andreas Schwab <schwab@suse.de>
3851
3852 * buffer.c (modify_overlay): Update prototype.
3853 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3854 Likewise.
3855
5f6bf5fe
SM
38562003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3857
3858 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3859 (struct interval): Move to intervals.h.
3860 (struct Lisp_Marker): Use EMACS_INT for position info.
3861 (forward_point): Remove prototype of defunct function.
3862 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3863 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3864 (syms_of_textprop, set_text_properties): Remove prototypes that are
3865 already in intervals.h.
3866
3867 * intervals.h (struct interval): Move from lisp.h.
3868 Use EMACS_INT for position and size info.
3869
3870 * coding.c: Include intervals.h for Fset_text_properties.
3871
3872 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3873 position and length information.
3874
2765b457
SM
38752003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3876
3877 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3878 position and length information.
3879
2410d73a
SM
38802003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3881
3882 Change overlays_after and overlays_before so the overlays themselves
3883 are linked into lists, rather than using cons cells. After all each
3884 Lisp_Misc already occupies 5 words, so we can add a `next' field to
3885 Lisp_Overlay for free and save up one cons cell per overlay (not
3886 to mention one indirection when traversing the list of overlay).
3887
3888 * lisp.h (struct Lisp_Overlay): New field `next'.
3889
3890 * buffer.h (struct buffer): Change overlays_before and overlays_after
3891 from Lisp lists of overlays to pointers to overlays.
3892
3893 * buffer.c (overlay_strings, recenter_overlay_lists):
3894 Fix typo in eassert in last commit.
3895 (unchain_overlay): New function.
3896 (add_overlay_mod_hooklist): Use AREF.
3897 (copy_overlays, reset_buffer, overlays_at, overlays_in)
3898 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
3899 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
3900 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
3901 (report_overlay_modification, evaporate_overlays, init_buffer_once):
3902 Adjust to new type of overlays_(before|after).
3903
3904 * alloc.c (mark_object): Mark the new `next' field of overlays.
3905 (mark_buffer): Manually mark the overlays_(after|before) fields.
3906
3907 * coding.c (run_pre_post_conversion_on_str):
3908 * editfns.c (overlays_around):
3909 * xdisp.c (load_overlay_strings):
3910 * fileio.c (Finsert_file_contents):
3911 * indent.c (current_column):
3912 * insdel.c (signal_before_change, signal_after_change):
3913 * intervals.c (set_point_both):
3914 * print.c (temp_output_buffer_setup): Use new type for
3915 overlays_(before|after).
3916
04812929
SM
39172003-07-08 Stefan Monnier <monnier@cs.yale.edu>
3918
3919 * buffer.c (report_overlay_modification): Don't run hooks while
3920 traversing the list of overlays.
3921
3922 * buffer.h (struct buffer): Use an int for overlay_center.
3923 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3924 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3925
3926 * buffer.c (reset_buffer, recenter_overlay_lists)
3927 (adjust_overlays_for_insert, adjust_overlays_for_delete)
3928 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
3929 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
3930 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3931 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3932
3933 * xdisp.c (fast_find_position): Remove unused var.
3934
3935 * cmds.c (Qexpand_abbrev): New sym.
3936 (syms_of_cmds): Initialize it.
3937 (internal_self_insert): Use it to call expand-abbrev.
3938
2e7ecf15
KS
39392003-07-09 Kim F. Storm <storm@cua.dk>
3940
f9711de4 3941 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 3942 was configured with --without-xim.
42f81f64 3943 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 3944
c6de56a0
RS
39452003-07-07 Richard M. Stallman <rms@gnu.org>
3946
3947 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
3948
3949 * alloc.c (Fgarbage_collect): Doc fix.
3950
b93fb365
KH
39512003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
3952
3953 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
3954
bfe1a3f7
SM
39552003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3956
04812929
SM
3957 * minibuf.c (read_minibuf): UNGCPRO before returning.
3958 (Ftry_completion, Fall_completions): Doc fix.
3959
bfe1a3f7
SM
3960 * alloc.c (live_float_p): Check that p is not past the `floats' array,
3961 now that `floats' is not the last element of the struct any more.
3962
ee79d1aa
JR
39632003-07-06 Jason Rumney <jasonr@gnu.org>
3964
3965 * w32term.h (ClipboardSequence_Proc): New type.
3966
3967 * w32fns.c (clipboard_sequence_fn): New variable.
3968 (globals_of_w32fns): Initialize it.
3969
3970 * w32select.c (last_clipboard_sequence_number): New variable.
3971 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
3972 number if possible.
3973
49723c04
SM
39742003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3975
4698665f
SM
3976 * m/amdx86-64.h (MARKBIT):
3977 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
3978 MARKBIT and ARRAY_MARK_FLAG any more.
3979
3980 * m/hp800.h (XSETMARKBIT):
3981 * m/sr2k.h (XSETMARKBIT):
3982 * lisp.h (XSETMARKBIT): Remove unused macro.
3983
49723c04
SM
3984 * lisp.h (mark_object): Change prototype.
3985
3986 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
3987 (last_marked): Change accordingly.
3988 (mark_interval, mark_maybe_object, mark_maybe_pointer)
3989 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
3990 (mark_buffer): Update calls to mark_object.
3991
3992 * bytecode.c (mark_byte_stack):
3993 * fns.c (sweep_weak_table):
3994 * keyboard.c (mark_kboards): Update calls to mark_object.
3995
1d660eca
JR
39962003-07-06 Jason Rumney <jasonr@gnu.org>
3997
3998 * alloc.c (struct ablock): Only include padding when there is some.
3999
618b5ae4
SM
40002003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4001
4002 * alloc.c (ALIGN): Add casts to simplify usage.
4003 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4004 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4005 (struct ablock, struct ablocks): New types.
4006 (free_ablock): New global var.
4007 (lisp_align_malloc, lisp_align_free): New functions.
4008 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4009 (struct float_block): Reorder and add gcmarkbits.
4010 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4011 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4012 (init_float, make_float): Use lisp_align_malloc.
4013 (free_float, live_float_p): Don't use `type' any more.
4014 (make_float): Use FLOAT_UNMARK to access to mark bit.
4015 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4016 Use FLOAT_MARKED_P to access the mark bit.
4017 (pure_alloc): Simplify use of ALIGN.
4018 (mark_object): Use FLOAT_MARK to access the mark bit.
4019 (gc_sweep): Use new macros to access the float's mark bit.
4020 (init_alloc_once): Init free_ablock.
4021
4022 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4023
3ef06d12
SM
40242003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4025
4026 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4027 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4028 (allocate_buffer): Move.
4029 (string_bytes): Don't mask markbit of `size_byte'.
4030 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4031 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4032 Use the `size' field of buffers (rather than the `name' field) for
4033 the mark bit, as is done for all other vectorlike objects.
4034 Use the new macros to access the mark bit of vectorlike objects.
4035
e81043aa
RS
40362003-06-26 Richard M. Stallman <rms@gnu.org>
4037
4038 * puresize.h (BASE_PURESIZE): Increment base size.
4039
4040 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4041
4042 * xterm.c (xim_initialize): Undo previous change.
4043
2d0834cc
SM
40442003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4045
4046 * alloc.c (survives_gc_p): Simplify.
4047
4048 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4049
4050 * window.c (Fset_window_dedicated_p): Simplify.
4051 (display_buffer_1): Don't raise the win from which minibuf was entered.
4052 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4053 (Fminibuffer_selected_window): Simplify.
4054
4055 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4056
4057 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4058 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4059
4060 * insdel.c (check_markers, adjust_markers_for_delete)
4061 (adjust_markers_for_insert, adjust_markers_for_replace)
4062 (prepare_to_modify_buffer, RESTORE_VALUE):
4063 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4064 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4065 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4066 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4067 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4068 * editfns.c (save_excursion_restore, transpose_markers):
4069 * window.c (delete_window):
4070 * xdisp.c (message_dolog): Update for new types.
4071
d54ae3d8
JD
40722003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4073
a5f696ac
JD
4074 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4075 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4076 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4077
4078 * frame.c (make_frame): Initialize default_face_done_p.
4079
4080 * frame.h (struct frame): Add default_face_done_p.
4081
d54ae3d8
JD
4082 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4083 will be defined.
4084
2336fe58
SM
40852003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4086
4087 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4088 Initialize the new field `gcmarkbit'.
4089 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4090 (mark_interval_tree): Don't mark the tree separately from the nodes.
4091 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4092 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4093 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4094
4095 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4096 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4097 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4098 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4099 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4100
bcea31c2
DL
41012003-06-24 Dave Love <fx@gnu.org>
4102
4103 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4104
4105 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4106 from gnulib.
4107
2601f59e
RS
41082003-06-21 Richard M. Stallman <rms@gnu.org>
4109
4110 * fileio.c (Fwrite_region): Alternate messages
4111 for append and partial write.
4112
4113 * keyboard.c (read_key_sequence): When converting upcase fn key to
4114 downcase, update fkey and keytran so `backspace' gets translated.
4115
4116 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4117
4118 * process.c (wait_reading_process_input): Don't signal SIGIO
4119 in batch mode.
4120
b5d2c621
KH
41212003-06-17 Kenichi Handa <handa@m17n.org>
4122
4123 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4124 composite.h.
4125
4126 * xselect.c: Don't include charset.h, coding.h, composite.h.
4127 (Qforeign_selection): New variable.
4128 (syms_of_xselect): Intern and static it.
4129 (selection_data_to_lisp_data): Return a unibyte string made from
4130 data with `foreign-selection' text property.
4131
6793bc63
SM
41322003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4133
4134 * termhooks.h (EVENT_INIT): New macro.
4135
4136 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4137
4138 * alloc.c (mark_kboards): Move to keyboard.c.
4139
4140 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4141 * xterm.c (x_dispatch_event):
4142 * xmenu.c (find_and_call_menu_selection):
4143 * xdisp.c (handle_tool_bar_click):
4144 * w32menu.c (menubar_selection_callback):
4145 * sysdep.c (kbd_input_ast, read_input_waiting):
4146 * msdos.c (dos_rawgetc):
4147 * macterm.c (mac_check_for_quit_char):
4148 * macmenu.c (menubar_selection_callback):
4149 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4150 data to kbd_buffer_store_event.
4151
b3ea810c
KS
41522003-06-15 Kim F. Storm <storm@cua.dk>
4153
4154 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4155 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4156
b8f75eda
KG
41572003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4158
4159 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4160
ba92ce48
KH
41612003-06-12 Kenichi Handa <handa@m17n.org>
4162
4163 * fileio.c (Fwrite_region): Save and restore restriction.
4164
b80263be
DL
41652003-06-12 Dave Love <fx@gnu.org>
4166
4167 * alloca.c (alloca): Declare arg as size_t.
4168
6793bc63
SM
4169 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4170 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4171
b23c0a83
DL
41722003-06-11 Dave Love <fx@gnu.org>
4173
4174 * search.c (shrink_regexp_cache): Use xrealloc.
4175 (syms_of_search): Use xmalloc.
4176
700e47c2
KS
41772003-06-10 Kim F. Storm <storm@cua.dk>
4178
4179 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4180 Adjust phys_cursor.x to be relative to window box, rather than
4181 text area before checking -- to ensure cursor is redrawn when
4182 exposing window.
4183 Note: This also fixes a similar (older) bug if display margins
4184 are present.
4185
f11aa0b2
KH
41862003-06-06 Kenichi Handa <handa@m17n.org>
4187
4188 * coding.c (encoding_buffer_size): If coding->type is
4189 coding_type_ccl, double magnification on CRLF encoding.
4190
3d143690
JR
41912003-06-06 Jason Rumney <jasonr@gnu.org>
4192
4193 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4194 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4195
4196 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4197 Mac too.
4198
f16205ca
DL
41992003-06-05 Dave Love <fx@gnu.org>
4200
b23c0a83
DL
4201 * strftime.c: Merge changes from gnulib.
4202
f16205ca
DL
4203 * mktime.c (__mktime_internal): Merge changes from gnulib
4204 involving year 69 and dst2.
4205
4206 Changes to merge with gnulib version and be consistent with the
4207 autoconf test:
4208
6793bc63
SM
4209 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4210 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4211 [HAVE_LOCALE_H]: Include locale.h.
4212 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4213
9b87a0bc
KS
42142003-06-05 Kim F. Storm <storm@cua.dk>
4215
4216 * window.c (coordinates_in_window): Convert X and Y to window
4217 relative coordinates inside mode-line and header-line parts.
4218 Convert X and Y to margin area relative coordinates inside left
4219 and right display margin parts.
4220
5a8a15ec
JR
42212003-06-05 Jason Rumney <jasonr@gnu.org>
4222
4223 * w32fns.c (add_system_logical_colors_to_map): New function.
4224 (Fx_open_connection): Use it.
4225
01ed8ff1
SM
42262003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4227
4228 * process.c (allocate_pty): Revert part of the previous patch.
4229 (Faccept_process_output): Simplify.
4230
b427b65d
JR
42312003-06-04 Jason Rumney <jasonr@gnu.org>
4232
4233 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4234
4235 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4236 (lispy_mouse_wheel_names): Remove.
4237 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4238 Always define drag_and_drop_syms.
4239
4240 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4241 WHEEL_EVENT events.
4242
914a8c47
SM
42432003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4244
01ed8ff1
SM
4245 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4246
914a8c47
SM
4247 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4248
adcb132c
JD
42492003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4250
4251 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4252 menu item label.
4253
be781fa7
RS
42542003-06-03 Richard M. Stallman <rms@gnu.org>
4255
4256 * window.c (Fwindow_edges): Doc fix.
4257 (Fwindow_pixel_edges, Fwindow_inside_edges)
4258 (Fwindow_inside_pixel_edges): New functions.
4259 (syms_of_window): defsubr them.
4260
4261 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4262 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4263
914a8c47
SM
42642003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4265
4266 * dispnew.c (Fsit_for): Don't lie about the number of args.
4267
5b07197a
DL
42682003-06-02 Dave Love <fx@gnu.org>
4269
4270 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4271 (syms_of_callproc) <process-environment>: Doc fix.
4272
4273 * doc.c: Use HAVE_FCNTL_H, not USG5.
4274
4275 * xfaces.c (font_rescale_ratio): Fix for K&R.
4276
4277 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4278
4279 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4280
4281 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4282
4283 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4284 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4285
d7107586 4286 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4287
4288 * xmenu.c (ENCODE_MENU_STRING): New.
4289 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4290 Use it.
4291
4292 * coding.h (ENCODE_UTF_8): New.
4293 (Qutf_8): Declare.
4294
4295 * coding.c (Qutf_8): New.
4296 (syms_of_coding): Intern it.
4297
4298 * fns.c: Doc fixes.
4299
7335b336
KH
43002003-06-02 Kenichi Handa <handa@m17n.org>
4301
4302 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4303
914a8c47
SM
43042003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4305
4306 * lread.c (openp): Make sure STR is a string.
4307
9862c135
JR
43082003-06-01 David Ponce <david@dponce.com>
4309
4310 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4311 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4312
4313 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4314 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4315 (discard_mouse_events): Discard WHEEL_EVENT events too.
4316 (lispy_wheel_names, wheel_syms): New.
4317 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4318 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4319 defined.
914a8c47 4320 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
4321
4322 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4323 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4324 WHEEL_EVENT events.
4325
f984e73e
JPW
43262003-05-31 John Paul Wallington <jpw@gnu.org>
4327
4328 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4329 timer are in lisp/emacs-lisp.
4330
1efcd78f
KH
43312003-05-31 Kenichi Handa <handa@m17n.org>
4332
458c8af4
KH
4333 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4334 region when a buffer is changed to unibyte.
4335
1efcd78f
KH
4336 * charset.h (VALID_LEADING_CODE_P): New macro.
4337 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4338
778e2804
KH
4339 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4340 is nonzero, accept multibyte form of eight-bit-control chars.
4341 (decode_composition_emacs_mule): Likewise.
4342 (decode_coding_emacs_mule): Likewise.
4343 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4344 multibyte form of eight-bit-control chars.
4345
4346 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4347 (Finsert_file_contents): If coding-system-for-read is bound to
4348 Qauto_save_coding, use the coding system emacs-mule with special
4349 setting for recovering a file.
4350 (choose_write_coding_system): On auto saving, use the coding
4351 system emacs-mule with special setting for auto saving.
4352 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4353
034060e4
KH
43542003-05-30 Kenichi Handa <handa@m17n.org>
4355
4356 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4357 properly before calling ccl_driver.
4358
778e2804 4359 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
4360
4361 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4362 nonzero.
4363 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4364 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4365
595f5aa5
GM
43662003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4367
4368 * xfaces.c (realize_default_face): Do not abort if lface is
4369 non-existent - reverts change from 2003-05-19.
4370
103e0180
KH
43712003-05-29 Kenichi Handa <handa@m17n.org>
4372
4373 * coding.c (decode_coding_iso2022): Pay attention to the byte
4374 sequence of CTEXT extended segment, and retain those bytes as is.
4375
43762003-05-28 Kenichi Handa <handa@m17n.org>
4377
4378 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4379 of CODING_REPLACEMENT_CHARACTER.
4380 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4381 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4382 check this flag on encoding.
4383 (encode_coding_sjis_big5): Check
4384 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4385 (Fset_terminal_coding_system_internal): Set
4386 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4387 instead of setting CODING_FLAG_ISO_SAFE flag in
4388 terminal_coding.flags.
4389
4390 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4391 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4392 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4393
ff6a3bfb 43942003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 4395
ff6a3bfb
RS
4396 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4397
4398 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 4399
1963c428
KS
44002003-05-28 Kim F. Storm <storm@cua.dk>
4401
4402 * xdisp.c (expose_window): Fix error in calculation of
4403 window relative coordinates of area to redisplay.
4404
2b5d4601
JR
44052003-05-27 Jason Rumney <jasonr@gnu.org>
4406
4407 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4408
1c64a4a2
JB
44092003-05-27 David Ponce <david@dponce.com>
4410
4411 Handle W32 mouse wheel events as mouse click events, like in X.
4412
4413 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4414 MOUSE_WHEEL_EVENT anymore.
4415
4416 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4417 Scrolling down/up the mouse wheel is respectively mapped to mouse
4418 button 4 and 5.
4419 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4420 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4421 WM_MOUSEWHEEL events.
4422
2d031b89
AS
44232003-05-27 Andreas Schwab <schwab@suse.de>
4424
20464fdf
AS
4425 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4426
2d031b89
AS
4427 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4428 partially visible line.
4429
4430 * alloc.c (Fgarbage_collect): Fix last change.
4431
97bc76d4
JPW
44322003-05-26 John Paul Wallington <jpw@gnu.org>
4433
4434 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4435
56613f06
SM
44362003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4437
4438 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4439 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4440
4441 * window.h (window_box_text_cols): Declare.
4442
4443 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4444 (x_draw_vertical_border): Remove unused var `f'.
4445
4446 * xfaces.c (build_scalable_font_name): Remove `unused var
4447 pixel_size' warning.
4448
4449 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4450
4451 * unexelf.c (unexec): Remove `unused var n' warning.
4452
4453 * strftime.c (my_strftime_localtime_r): Remove `defined but
4454 unused' warning.
4455
4456 * process.c (allocate_pty): Remove `unused var stb' and
4457 `cp might be used uninitialized' warnings.
4458
4459 * dispnew.c (mode_line_string): Remove unused var `f'.
4460
4461 * coding.c (find_safe_codings): Remove unused var `i'.
4462
4463 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4464
4465 * buffer.c (Fkill_buffer): Remove unused var `list'.
4466
4467 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4468
93421a1f
JD
44692003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4470
4471 * frame.c (make_frame): Condition want_fullscreen with
4472 HAVE_WINDOW_SYSTEM.
4473
c4b8aebc
JB
44742003-05-25 Juanma Barranquero <lektu@terra.es>
4475
4476 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4477 (Fwindow_scroll_bars): Fix typo in docstring.
4478
0416870b
KS
44792003-05-24 Kim F. Storm <storm@cua.dk>
4480
4481 The following changes serve several purposes:
4482
4483 1) Swap the position of fringes and display margins in windows, i.e.
4484 the fringes are now displayed between the margins and the text area
4485 (by default).
4486
4487 2) Allow fringe and scroll bar parameters to be set per-buffer and
4488 per-window (like display margins). Such settings are now stored
4489 in window configurations, preserved when frames are resized, and
9018a88e 4490 copied when windows are split vertically or horizontally.
0416870b
KS
4491 Several bugs related to display margins have been fixed.
4492
4493 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 4494
0416870b
KS
4495 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4496 rather than FRAME_WIDTH (FRAME_FONT (f)).
4497
4498 5) Introduce a consistent naming of variables, members and macros
4499 depending on whether their value is measured in pixels or in
4500 canonical columns/lines. Pixel dimensions are named *_width and
4501 *_height, while canonical columns/lines are named *_cols and
4502 *_lines. Pixel positions are named *_x and *_y, while column/line
4503 positions are named *_col and *_line.
4504
4505 6) Consolidate more of the X, W32, and MAC gui code by moving
4506 common data into struct frame, and generalize it for the non-gui
4507 case by using suitable defaults.
4508
4509 7) Cleanup and consolidate the macros controlling frame and window
4510 layout into frame.h and window.h, and generalize the use of the
4511 various window_box_* functions (enhanced to handle the new fringe
4512 position and the per-window fringe and scroll bar settings).
4513
4514 * frame.h (struct frame): Rename members height to text_lines,
4515 width to text_cols, window_height to total_lines, window_width to
4516 total_cols, new_height to new_text_lines, new_width to
4517 new_text_cols. All uses changed.
4518 (struct frame): New members which consolidate common members of
4519 x_output, w32_output, and mac_output structures: left_pos,
4520 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4521 win_gravity, size_hint_flags, border_width, internal_border_width,
4522 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4523 want_fullscreen. All uses changed.
4524 (struct frame): New member column_width contaning the canonical
4525 column width, analogue to line_height. All uses changed.
4526 (struct frame): Rename members scroll_bar_pixel_width to
4527 config_scroll_bar_width, and scroll_bar_cols to
4528 config_scroll_bar_cols. All uses changed.
4529 (struct frame): New member scroll_bar_actual_width which
4530 consolidates and renames the vertical_scroll_bar_extra member of
4531 x_output, w32_output, and mac_output structures. All uses changed.
4532 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4533 from x/w32/macterm.h files. All uses changed. Also change code
4534 which referred to f->output_data...->pixel_height.
4535 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 4536 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
4537 which referred to f->output_data...->pixel_width.
4538 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4539 Also change code which referred to f->height.
4540 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4541 Also change code which referred to f->width.
4542 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4543 to update new_text_lines and new_text_cols members directly.
4544 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4545 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4546 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4547 FRAME_SCROLL_BAR_COLS. All uses changed.
4548 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4549 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4550 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4551 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4552 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4553 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4554 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4555 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4556 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4557 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4558 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4559 return line_height member (it now has proper value also for
4560 non-window frames).
4561 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4562 return new column_width member (rather than the default font width).
4563 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4564 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4565 from x/w32/macterm.h files. Unconditionally return corresponding
4566 member of frame structure (they now have proper values also for
4567 non-window frames).
4568 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4569 Calculate return value from left and right widths.
4570 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4571 internal_border_width member (has proper value for non-window frame).
4572 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4573 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4574 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4575 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4576 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4577 consolidated from xterm.h, macterm.h, and w32term.h.
4578 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4579 consolidated from xterm.h, macterm.h, and w32term.h.
4580 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4581 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4582 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4583 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4584 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4585 consolidated from x/mac/w32term.h.
4586 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4587 consolidated from x/mac/w32term.h.
4588 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4589 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4590 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4591 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4592
4593 * window.h (struct window): Rename members left to left_col,
4594 top to top_line, height to total_lines, width to total_cols,
4595 left_margin_width to left_margin_cols, right_margin_width to
4596 right_margin_cols, orig_height to orig_total_lines, orig_top to
4597 orig_top_line. All uses changed.
4598 (struct window): New members left_fringe_width, right_fringe_width,
4599 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4600 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4601 New macros primarily used to simplify other macros.
4602 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4603 referred to XINT (w->width).
4604 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4605 referred to XINT (w->height).
4606 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4607 referred to XINT (w->width) * canon_x_unit.
4608 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4609 referred to XINT (w->height) * canon_y_unit.
4610 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4611 referred to XINT (w->left).
4612 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4613 all uses and code that referred to XINT (w->left) + XINT (w->width).
4614 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4615 referred to XINT (w->top).
4616 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4617 referred to XINT (w->top) + XINT (w->height).
4618 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4619 referred to XINT (w->left) * canon_x_unit.
4620 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4621 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4622 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4623 referred to XINT (w->top) * canon_y_unit.
4624 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4625 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4626 (WINDOW_LEFTMOST_P): New macro.
4627 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4628 All uses changed.
4629 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4630 All uses changed.
4631 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4632 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4633 Do not exclude left fringe width.
4634 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4635 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4636 Do not exclude fringe widths.
4637 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4638 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4639 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4640 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4641 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4642 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4643 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4644 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4645 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4646 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4647 New macros. Change code which referenced corresponding
4648 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4649 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4650 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4651 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4652 allow per-window scroll-bar settings.
4653 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4654 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4655 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4656 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4657 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4658 FRAME_SCROLL_BAR_WIDTH.
4659 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 4660 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
4661 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4662 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4663 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4664 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4665 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4666 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4667 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4668 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4669 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4670 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4671 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4672 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4673 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4674 (window_from_coordinates): Update prototype.
4675 (Fset_window_buffer): Update EXFUN.
4676 (set_window_buffer): Update prototype.
9018a88e 4677
0416870b 4678 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 4679 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
4680 changed.
4681 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4682 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4683 internal_border_width is now set to 0 for non-window frames.
4684 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4685 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4686 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4687 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4688 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4689 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4690 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4691 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4692 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 4693 Move to window.h and renamed [see window.h changes].
0416870b
KS
4694 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4695 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
4696 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4697 Use WINDOW_TOTAL_LINES.
0416870b
KS
4698 (frame_update_line_height): Remove prototype.
4699
4700 * buffer.h (struct buffer): Rename members measured in columns:
4701 left_margin_width to left_margin_cols, right_margin_width to
4702 right_margin_cols. All uses changed.
4703 New members left_fringe_width, right_fringe_width,
4704 fringes_outside_margins for per-buffer fringe settings.
4705 New members scroll_bar_width and vertical_scroll_bar_type for
4706 per-buffer scroll bar settings.
4707
4708 * buffer.c (init_buffer_once): Set buffer_defaults and
4709 buffer_local_flags for new buffer-local variables
4710 left_fringe_width, right_fringe_width, fringes_outside_margins,
4711 scroll_bar_width, and vertical_scroll_bar_type.
4712 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4713 default-* variables for them.
4714
4715 * dispnew.c: Make (many) trivial substitutions for renamed and
4716 new macros in dispextern.h, frame.h and window.h.
4717 (mode_line_string): No need to adjust width for mode lines, as it
4718 is already adjusted by the caller.
4719 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 4720
0416870b
KS
4721 * frame.c: Make (many) trivial substitutions for renamed and
4722 new macros in dispextern.h, frame.h and window.h.
4723 (make_frame): Initialize left_fringe_width, right_fringe_width,
4724 fringe_cols, scroll_bar_actual_width, border_width,
4725 internal_border_width, column_width, line_height, x_pixels_diff,
4726 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4727 members with values suitable for a non-window frames.
4728
4729 * gtkutil.c: Make (many) trivial substitutions for renamed and
4730 new macros in dispextern.h, frame.h and window.h.
9018a88e 4731
0416870b
KS
4732 * indent.c: Make (few) trivial substitutions for renamed and
4733 new macros in dispextern.h, frame.h and window.h.
4734
4735 * keyboard.c: Make (many) trivial substitutions for renamed and
4736 new macros in dispextern.h, frame.h and window.h.
4737 (make_lispy_event): Use window positions returned from
4738 window_from_coordinates when constructing the lisp event for
4739 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4740 (incorrect) values locally.
4741 (make_lispy_movement): Use window positions returned from
4742 window_from_coordinates when constructing the lisp event, rather
4743 than calculating (incorrect) values locally.
4744
4745 * scroll.c: Make (some) trivial substitutions for renamed and
4746 new macros in dispextern.h, frame.h and window.h.
4747
4748 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4749 scroll-bars.
4750
4751 * sysdep.c: Make (few) trivial substitutions for renamed and
4752 new macros in dispextern.h, frame.h and window.h.
4753
4754 * term.c: Make (some) trivial substitutions for renamed and
4755 new macros in dispextern.h, frame.h and window.h.
4756
4757 * widget.c: Make (few) trivial substitutions for renamed and
4758 new macros in dispextern.h, frame.h and window.h.
4759
4760 * window.c: Make (many) trivial substitutions for renamed and
4761 new macros in dispextern.h, frame.h and window.h.
4762 (make_window): Initialize new members
4763 left_margin_cols, right_margin_cols, left_fringe_width,
4764 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4765 and vertical_scroll_bar_type.
4766 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 4767 and per-window fringes and scroll-bars.
0416870b 4768 Fix bug related to incorrectly adjusting coordinates by
9018a88e 4769 frame's internal_border_width (the effect normally negible since
0416870b
KS
4770 the internal_border_width is typically 0 or 1 pixel, but very
4771 noticeable for an internal_border_width of e.g. 25 pixels).
4772 Upon successful return (other than ON_NOTHING), the coordinates
4773 are now always properly converted to window relative for the
4774 given display element.
4775 (window_from_coordinates): Add new parameters wx and wy to
4776 return the window relative x and y position in the returned
4777 window and part. A null arg means, don't return the position.
4778 All callers changed.
4779 (adjust_window_margins): New function which may reduce the width
4780 of the display margins if a window's text area is too small after
4781 resizing or splitting windows.
4782 (size_window): Fix bug that did not account for display margin
4783 widths when checking the minimum width of a window; use
4784 adjust_window_margins.
4785 (set_window_buffer): Call Fset_window_fringes and
4786 Fset_window_scroll_bars to setup per-window elements.
4787 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4788 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
4789 (e.g. after splitting a window or resizing the frame).
4790 All callers changed.
0416870b
KS
4791 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4792 (Fsplit_window): Duplicate original window's display margin,
4793 fringe, and scroll-bar settings; then call Fset_window_buffer with
4794 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4795 window to only preserve the display margins in one of the windows.
c4b8aebc 4796 When splitting horizontally, call adjust_window_margins on both
0416870b 4797 windows to ensure that the text area of the new windows is non too
f9711de4 4798 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
4799 width of the split window was less than the width of the display
4800 margins.
9018a88e
SM
4801 (window_box_text_cols): Renamed from window_internal_width.
4802 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
4803 Fix bug that caused vertical separator to be subtracted also on
4804 window frames. Fix another bug that did not reduce the returned
4805 value by the columns used for display margins.
4806 (window_scroll_line_based): Fix bug related to scrolling too much
4807 when display margins are present (implicitly fixed by the fix to
4808 window_box_text_cols).
4809 (scroll_left, scroll_right): Fix bug related to scrolling too far
4810 by default when display margins are present (implicitly fixed by
4811 the fix to window_box_text_cols).
4812 (struct saved_window): Rename members left to left_col, top to
4813 top_line, width to total_cols, height to total_lines, orig_top to
4814 orig_top_line, orig_height to orig_total_lines. All uses changed.
4815 New members left_margin_cols, right_margin_cols,
4816 left_fringe_width, right_fringe_width, fringes_outside_margins,
4817 scroll_bar_width, and vertical_scroll_bar_type for saving
4818 per-window display elements.
4819 (Fset_window_configuration): Restore display margins, fringes,
4820 and scroll bar settings. This fixes a bug which caused display
4821 margins to be discarded when saving and restoring a window
4822 configuration.
4823 (save_window_save): Save display margins, fringes, and scroll bar
4824 settings. This fixes a bug which caused display margins to be
4825 discarded when saving and restoring a window configuration.
4826 (Fset_window_margins): Do nothing if display margins are not
4827 really changed. Otherwise, call adjust_window_margins to ensure
4828 the text area doesn't get too narrow. This fixes a bug which
f9711de4 4829 could cause Emacs to trap if setting display margins wider than
0416870b
KS
4830 the width of the window.
4831 (Fset_window_fringes): New defun to allow user to specifically set
4832 this window's fringe widths and position vs. display margins.
4833 (Fwindow_fringes): New defun to return window's actual fringe
4834 settings.
4835 (Fset_window_scroll_bars): New defun to allow user to specifically
4836 set this window's scroll bar width and position.
4837 (Fwindow_scroll_bars): New defun to return window's actual scroll
4838 bar settings.
4839 (compare_window_configurations): Also compare display margins,
4840 fringes, and scroll bar settings.
4841 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4842
4843 * xdisp.c: Make (many) trivial substitutions for renamed and
4844 new macros in dispextern.h, frame.h and window.h.
4845 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 4846 and new fringe vs. display margin position. Note that returned
0416870b
KS
4847 value is no longer guaranteed to be a whole multiple of the frame
4848 column width, since per-window fringes may now be any width.
4849 (window_box_left_offset): New function like window_box_left, but
4850 value is relative to left border of window (rather than frame).
4851 (window_box_right_offset): New function like window_box_right,
4852 but value is relative to left border of window.
4853 (window_box_left): Adapt to per-window fringes and scroll bars,
4854 and new fringe vs. display margin position. Simplify by using
4855 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4856 (window_box): Allow null args for unnecessary return values;
4857 change/simplify relevant callers.
4858 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
4859 and new fringe vs. display margin position.
4860 Use window_box_left_offset and window_box_right_offset
0416870b 4861 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
4862 scroll bars, and new fringe vs. display margin position.
4863 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
4864 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4865 fringe vs. display margin position.
4866 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
4867 (redisplay_window): Adapt to per-window scroll bars.
4868 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
4869 bars, and new fringe vs. display margin position.
4870 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 4871 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
4872 bars, and new fringe vs. display margin position. Fix bug which
4873 increased total width of full_width rows by width of scroll bars
4874 although window's total width already includes that.
4875 (x_fix_overlapping_area): Simplify using window_box_left_offset.
4876 (expose_area): Simplify using window_box_left_offset.
4877 (x_draw_vertical_border): Handle per-window scroll bar settings,
4878 mixing windows with left, right and no scroll bars.
4879
4880 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
4881 where it's used in x_list_fonts (for clarity).
4882 (frame_update_line_height): Remove unused function; functionality
4883 is now done directly when setting the default font in x_set_font.
4884
4885 * xfns.c: Make (many) trivial substitutions for renamed and
4886 new macros in dispextern.h, frame.h and window.h.
4887
4888 * xmenu.c: Make (some) trivial substitutions for renamed and
4889 new macros in dispextern.h, frame.h and window.h.
4890
4891 * xterm.h (struct x_output): Move members left_pos, top_pos,
4892 border_width, pixel_height, pixel_width, line_height,
4893 internal_border_width, vertical_scroll_bar_extra,
4894 left_fringe_width, right_fringe_width, fringe_cols,
4895 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4896 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4897 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4898 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4899 (PIXEL_WIDTH, PIXEL_HEIGHT)
4900 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4901 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4902 frame.h and renamed [see frame.h changes].
4903 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4904 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4905 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4906 and renamed [see frame.h changes].
9018a88e 4907
0416870b
KS
4908 * xterm.c: Make (several) trivial substitutions for renamed and
4909 new macros in dispextern.h, frame.h and window.h.
4910 (x_draw_glyph_string_box): Adapt to per-window fringes and
4911 scroll-bars.
4912 (scroll_run): Adapt to new fringe position.
4913 (glyph_rect): Use window coordinates returned from
4914 window_from_coordinates rather than frame_to_window_pixel_xy.
4915 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4916 scroll-bars.
4917 (handle_one_xevent): Simplify a USE_GTK conditional.
4918 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4919 (fringes are now inside margins, i.e. always in the clipping area).
4920 All callers changed.
4921 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4922 directly, then call compute_fringe_widths. Don't call
4923 frame_update_line_height.
4924
4925 * w32term.h (struct w32_output): Move members left_pos, top_pos,
4926 border_width, pixel_height, pixel_width, line_height,
4927 internal_border_width, vertical_scroll_bar_extra,
4928 left_fringe_width, right_fringe_width, fringe_cols,
4929 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4930 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4931 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4932 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4933 (PIXEL_WIDTH, PIXEL_HEIGHT)
4934 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4935 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4936 frame.h and renamed [see frame.h changes].
4937 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4938 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4939 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4940 and renamed [see frame.h changes].
9018a88e 4941
0416870b
KS
4942 * w32term.c: Make (several) trivial substitutions for renamed and
4943 new macros in dispextern.h, frame.h and window.h.
4944 (x_draw_glyph_string_box): Adapt to per-window fringes and
4945 scroll-bars.
4946 (glyph_rect): Use window coordinates returned from
4947 window_from_coordinates rather than frame_to_window_pixel_xy.
4948 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4949 scroll-bars.
4950 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
4951 (fringes are now inside margins, i.e. always in the clipping area).
4952 All callers changed.
4953 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4954 directly, then call compute_fringe_widths. Don't call
4955 frame_update_line_height.
4956
4957 * w32console.c: Make (few) trivial substitutions for renamed and
4958 new macros in dispextern.h, frame.h and window.h.
4959
4960 * w32fns.c: Make (many) trivial substitutions for renamed and
4961 new macros in dispextern.h, frame.h and window.h.
4962
4963 * w32menu.c: Make (few) trivial substitutions for renamed and
4964 new macros in dispextern.h, frame.h and window.h.
4965
4966 * macterm.h (struct mac_output): Move members left_pos, top_pos,
4967 border_width, pixel_height, pixel_width, line_height,
4968 internal_border_width, vertical_scroll_bar_extra,
4969 left_fringe_width, right_fringe_width, fringe_cols,
4970 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4971 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
4972 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4973 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4974 (PIXEL_WIDTH, PIXEL_HEIGHT)
4975 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4976 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4977 frame.h and renamed [see frame.h changes].
4978 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4979 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4980 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4981 and renamed [see frame.h changes].
9018a88e 4982
0416870b
KS
4983 * macterm.c: Make (several) trivial substitutions for renamed and
4984 new macros in dispextern.h, frame.h and window.h.
4985 (x_draw_glyph_string_box): Adapt to per-window fringes and
4986 scroll-bars.
4987 (glyph_rect): Use window coordinates returned from
4988 window_from_coordinates rather than frame_to_window_pixel_xy.
4989 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4990 scroll-bars.
4991 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4992 (fringes are now inside margins, i.e. always in the clipping area).
4993 All callers changed.
4994 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4995 directly, then call compute_fringe_widths. Don't call
4996 frame_update_line_height.
4997
4998 * macfns.c: Make (several) trivial substitutions for renamed and
4999 new macros in dispextern.h, frame.h and window.h.
9018a88e 5000 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5001
5002 * macmenu.c: Make (few) trivial substitutions for renamed and
5003 new macros in dispextern.h, frame.h and window.h.
5004
5005 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5006 and line_height, and use corresponding new members in struct
5007 frame. All uses changed.
5008 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5009 superseeded by corresponding macros in frame.h.
5010
5011 * msdos.c: Make (several) trivial substitutions for renamed and
5012 new macros in dispextern.h, frame.h and window.h.
5013 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5014 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5015 (internal_terminal_init): No need to initialize line_height here;
5016 it now defaults to 1.
5017
9018a88e
SM
50182003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5019
5020 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5021 dropping `down' events.
5022
016bd3c0
AS
50232003-05-24 Andreas Schwab <schwab@suse.de>
5024
5025 * coding.c (find_safe_codings): Fix last change.
5026
4dacadcc
TTN
50272003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5028
5029 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5030
319830ce
SM
50312003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5032
9018a88e
SM
5033 * xdisp.c (display_mode_element): Increase max depth.
5034 Simplify the error handling code. Use a different error string
5035 for the case where we hit the depth limit.
5036
319830ce
SM
5037 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5038
5039 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5040
50412003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5042
5043 * intervals.c (get_local_map): Don't get char-property of previous
5044 point any more: get_pos_property already does it and better.
5045
c67de8ba
DL
50462003-05-21 Dave Love <fx@gnu.org>
5047
5048 [Merged from unicode branch.]
5049
5050 * xfns.c (x_window, x_window): Use use_xim.
5051
5052 * xterm.c (use_xim): Initialize.
5053 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5054 (x_term_init): Maybe set use_xim.
5055
5056 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5057
edd3ff1d
JR
50582003-05-21 Jason Rumney <jasonr@gnu.org>
5059
5060 * unexw32.c (_start): Remove _fmode initialization.
5061
5062 * emacs.c (main) [WINDOWSNT]: Move it here.
5063
463f55ee
DL
50642003-05-20 Dave Love <fx@gnu.org>
5065
5066 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5067
af253914
RS
50682003-05-19 Richard M. Stallman <rms@gnu.org>
5069
5070 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5071 as value for QCfont attribute.
5072 (realize_default_face): lface should already exist; crash if not.
5073 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5074
5075 * frame.c (Fignore_event): Doc fix.
5076
1d211019
KH
50772003-05-19 Kenichi Handa <handa@m17n.org>
5078
5079 * coding.c (decode_coding_string): Handle post-read-conversion
5080 even if the coding doesn't require decoding.
5081
4dd68254
RS
50822003-05-18 Richard M. Stallman <rms@gnu.org>
5083
5084 * callproc.c (Fcall_process_region): Doc fix.
5085
14d87dc9
SM
50862003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5087
deca5d96
SM
5088 * lread.c (Fload): Print a message if package is obsolete.
5089
14d87dc9
SM
5090 * window.c (Fselect_window): Add optional `norecord' arg.
5091 (select_window_1): Fold into Fselect_window.
5092 (select_window_norecord): New function.
5093 (temp_output_buffer_show): Use it. Preserve current buffer.
5094
5095 * window.h (Fselect_window): Update declaration.
5096
5097 * window.c (delete_window, Fother_window, Fset_window_configuration):
5098 * minibuf.c (read_minibuf):
5099 * macterm.c (x_new_focus_frame):
5100 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5101 * callint.c (Fcall_interactively):
5102 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5103
5104 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5105
78f52183
DK
51062003-05-17 David Kastrup <dak@gnu.org>
5107
5108 * process.c (read_process_output): Back out change from 2003-03-09.
5109
14d87dc9
SM
51102003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5111
5112 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5113
5114 * textprop.c (text_property_stickiness): New arg `buffer'.
5115
5116 * intervals.h (text_property_stickiness): New arg `buffer'.
5117 (get_pos_property): Declare.
5118
5119 * intervals.c (get_local_map): Use get_pos_property, to obey
5120 stickiness and empty overlays.
5121 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5122 (merge_properties, intervals_equal, merge_properties_sticky):
5123 Use XCAR, XCDR.
5124 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5125
1fd1cc2f
RS
51262003-05-17 Richard M. Stallman <rms@gnu.org>
5127
4f9f637a
RS
5128 * minibuf.c (read_minibuf): If buffer is empty, record the default
5129 in the history.
5130 (Fminibuffer_complete_word): When deleting the overlap, take account
5131 of its real position.
5132
5133 * fns.c (map_char_table): Fix previous change.
5134
1fd1cc2f
RS
5135 * syntax.c (find_defun_start):
5136 When open_paren_in_column_0_is_defun_start,
5137 return beginning of buffer.
5138
5139 * lisp.h (map_char_table): Declare added arg.
5140
5141 * fns.c (map_char_table): New arg TABLE gets the master table.
5142 All calls changed.
5143 Process default and inheritance, resorting to Faref if necessary.
5144
5145 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5146 (Faccessible_keymaps): Pass new arg to map_char_table.
5147
5148 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5149
5150 * casetab.c (set_case_table): Pass new arg to map_char_table.
5151
5152 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5153
5154 * lisp.h (specbinding_func): New typedef.
5155 (struct specbinding): Use specbinding_func, to put the `volatile'
5156 in the right place.
5157
5158 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5159 to avoid GCC warning.
14d87dc9 5160
b4bd27c5
RS
51612003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5162
14d87dc9 5163 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5164
35fb885d
SM
51652003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5166
5167 * keyboard.c (apply_modifiers): Don't fill the other cache.
5168
9a274fbd
SM
51692003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5170
c55b5fad
SM
5171 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5172
9a274fbd
SM
5173 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5174 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5175 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5176 (Fset_window_configuration, Fcurrent_window_configuration)
5177 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5178 (Fpos_visible_in_window_p, mark_window_cursors_off)
5179 (window_internal_height, window_internal_width, Frecenter)
5180 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5181 (replace_buffer_in_all_windows, init_window_once, init_window)
5182 (syms_of_window, keys_of_window): Move from lisp.h.
5183 * lisp.h: Move window.c declarations to window.h.
5184
5185 * bytecode.c: Include window.h.
5186 * emacs.c: Include window.h.
5187
14d87dc9 5188 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5189 (keyremap): Add `parent' field.
5190 (keyremap_step): Use it. Remove `parent' argument.
5191 (read_key_sequence): Setup and use the new `parent' field.
5192
fd93e331
SM
51932003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5194
5195 * keyboard.c (adjust_point_for_property): Ensure termination.
5196
1c4001a1
SM
51972003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5198
5199 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5200 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5201 duplicated handling of function-key-map and key-translation-map
5202 in read_key_sequence.
5203 (read_key_sequence): Use them.
5204
5205 * keyboard.c (adjust_point_for_property): Try harder to move point
5206 to the non-sticky end of an invisible property.
5207
5208 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5209 property intangible as well.
5210
780379b1
AS
52112003-05-10 Andreas Schwab <schwab@suse.de>
5212
5213 * xmenu.c (single_menu_item): Change last parameter to void* to
5214 avoid warning.
5215
ca2de342
RS
52162003-05-09 Richard M. Stallman <rms@gnu.org>
5217
5218 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5219 Bind Qinhibit_modification_hooks to t so there will be no GC.
5220 Rename local `tem' to `save_deactivate_mark'.
5221
5222 * eval.c (specpdl_ptr): Declare volatile.
5223 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5224 before doing the work of unbinding it.
5225
5226 * lisp.h (struct specbinding): Declare elements volatile.
5227 (specpdl_ptr): Declare volatile.
5228
5229 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5230
5231 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5232 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5233
347003be
DL
52342003-05-08 Dave Love <fx@gnu.org>
5235
5236 * coding.c (Vlast_coding_system_used): Doc fix.
5237
5adcec23
JR
52382003-05-07 Jason Rumney <jasonr@gnu.org>
5239
5240 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5241 when system does not support them.
5242
5fe3b8a4
SM
52432003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5244
5245 * fileio.c (Qwrite_region_annotate_functions): New var.
5246 (build_annotations): Use it to process the global part of the hook.
5247 (syms_of_fileio): Init and staticpro it.
5248
5249 * keyboard.c (safe_run_hooks_error): Display a message instead of
5250 silently ignoring the error.
5251
52522003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5253
5254 * keyboard.c (input_available_signal): Mark static.
5255 (menu_bar_items): Use map_keymap.
5256 (menu_bar_one_keymap): Remove.
5257 (menu_bar_item): Adjust arglist (for use in map_keymap).
5258 Properly hide a second binding when not both are keymaps.
5259
5260 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5261 (single_keymap_panes): Use it and map_keymap.
5262 (single_menu_item): Use skp as well.
5263
5264 * keymap.h (map_keymap_function_t): New type.
5265 (map_keymap): Declare.
5266
5267 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5268 (map_keymap_call, Fmap_keymap): New functions.
5269 (syms_of_keymap): Defsubr map-keymap.
5270
4b1b4443
JD
52712003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5272
5273 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5274 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5275 ..._with_mnemonic functions for menu items.
5276
1f816871
KH
52772003-05-01 Kenichi Handa <handa@m17n.org>
5278
5279 * coding.c (coding_system_accept_latin_extra_p): Delete this
5280 function.
5281 (find_safe_codings): Pay attention to
5282 the property tranlsation-table-for-encode of each codings.
5283 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5284
5ed6ba5b
SM
52852003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5286
5287 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5288
32c06229
SM
52892003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5290
5291 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5292
5293 * lisp.h (CHECK): Wrap args in parenthesis.
5294 (specbind): Fix doc: symbol = Qnil is not supported any more.
5295
5296 * bytecode.c (Fbyte_code) <unwind-protect>:
5297 Use Fprogn rather than 0 and Qnil.
5298
5299 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5300 `double', and `triple' modifiers as well.
5301
ed3c3314
RS
53022003-04-30 Richard M. Stallman <rms@gnu.org>
5303
5304 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5305
5306 * alloc.c (abort_on_gc): New variable.
5307 (Fgarbage_collect): Abort if abort_on_gc is set.
5308
5309 * lisp.h (abort_on_gc): Add decl.
5310
5311 * eval.c (Fsignal): Clear abort_on_gc.
5312
5313 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 5314 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
5315
5316 * xdisp.c (move_it_vertically_backward): Do the final big else
5317 even if nlines is 0.
5318
5319 * xdisp.c (redisplay_internal): Finish the per-frame loop
5320 even if redisplay is suspended by input.
5321
0b325c12
AC
53222003-04-24 Andrew Choi <akochoi@shaw.ca>
5323
5324 * macterm.c (x_list_fonts): Return all fonts that match if
5325 maxnames = -1.
5326
4e837cd0
KH
53272003-04-25 Kenichi Handa <handa@m17n.org>
5328
5329 * syntax.c (skip_chars): Fix previous change.
5330
9af7511a
KH
53312003-04-24 Kenichi Handa <handa@m17n.org>
5332
5333 * syntax.c (skip_chars): Make the code faster by using the common
5334 technique of *p, *stop, and *endp.
5335
e3b2c21f
JD
53362003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5337
5338 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 5339 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
5340 being updated.
5341
32c06229
SM
53422003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5343
5344 * eval.c (Fapply): Undo last change and add a comment about why.
5345
c6464167
MB
53462003-04-18 Miles Bader <miles@gnu.org>
5347
5348 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5349 pickier PARSE_MULTIBYTE_SEQ.
5350
e509f168
SM
53512003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5352
5353 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5354 Use XCDR, XCAR, CONSP.
5355 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5356 (Fapply): Remove unnecessary GCPRO.
5357
5358 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5359
5360 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5361
5362 * buffer.h: Don't hardcode BEG==1.
5363
5364 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5365
5ceea398
RS
53662003-04-16 Richard M. Stallman <rms@gnu.org>
5367
5368 * xdisp.c (try_window, try_window_reusing_current_matrix):
5369 When at end of window, set window_end_pos to Z-ZV.
5370
5371 * buffer.c (Foverlay_recenter): Doc fix.
5372
e509f168
SM
53732003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5374
5375 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5376
d243e605
AC
53772003-04-14 Andrew Choi <akochoi@shaw.ca>
5378
5379 * macterm.c (mac_check_for_quit_char): Don't check more often than
5380 once a second.
5381
6901b111
SM
53822003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5383
5384 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5385 specially, so that they can't hide an implicit switch-frame event.
5386 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5387 (head_table): Use switch-frame as event_kind for select-window.
5388 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5389
5390 * editfns.c (Fformat): Lisp_Object/int mixup.
5391 (format2): Remove unused var numargs.
5392
e301806f 53932003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 5394
6901b111 5395 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
5396 (Qafter_insert_file_set_coding): New variable.
5397 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5398 for after-insert-file-adjust-coding-function.
5399 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5400 instead of Vafter_insert_file_adjust_coding_function.
5401
38914424
KH
54022003-04-11 Kenichi Handa <handa@m17n.org>
5403
5404 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5405
5406 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5407 string. Callers changed.
5408
54092003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 5410
6901b111 5411 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 5412 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
5413 (Finsert_file_contents):
5414 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
5415 decode-format.
5416
f979dc05
JD
54172003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5418
5419 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5420 get GtkAdjustment as widget now is a GtkRange.
5421
5422 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5423 GtkRange to avoid memory leak.
5424
f8c6b4c2 54252003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 5426
50ebc53d
KH
5427 * xfaces.c (Vface_font_rescale_alist): New variable.
5428 (struct font_name): New member rescale_ratio.
5429 (font_rescale_ratio): New function.
6901b111 5430 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
5431 (better_font_p): On comparing point sized, pay attention to
5432 recale_ratio member of fonts.
5433 (build_scalable_font_name): Reflect font->rescale_ratio in the
5434 font name.
6901b111 5435 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 5436
cb98871c
KH
5437 * lread.c (read1): Before calling index, check if the 2nd
5438 arguemnt is in ASCII range.
5439
4773b8ca
RS
54402003-04-08 Richard M. Stallman <rms@gnu.org>
5441
b0ada147
RS
5442 * fileio.c (Ffile_symlink_p): Doc fix.
5443
5444 * editfns.c (Fformat): Translate positions of text properties
5445 in the format string to apply them to the result.
5446
4773b8ca
RS
5447 * fileio.c (Finsert_file_contents): Doc fix.
5448 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5449
54502003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 5451
4773b8ca
RS
5452 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5453
e8f25745 54542003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 5455
e8f25745
ST
5456 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5457 that self-contained application finds libexec files.
5458
f8c6b4c2 54592003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 5460
6901b111
SM
5461 * coding.c (code_convert_region_unwind):
5462 Set Vlast_coding_system_used to the argument.
2310d84c
KH
5463 (code_convert_region): If post-read-conversion function changed
5464 the value of last-coding-sytem, keep the new value in
5465 coding->symbol so that it won't be overridden.
5466 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
5467 (coding_system_accept_latin_extra_p): New function.
5468 (find_safe_codings): Pay attention to characters registered in
5469 latin-extra-code-table.
2310d84c 5470
39c9a034
TTN
54712003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5472
5473 * Makefile.in (md5.o): Add missing dependency info.
5474
eb67c5d6
RS
54752003-04-06 Richard M. Stallman <rms@gnu.org>
5476
5477 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5478
5479 * marker.c (verify_bytepos): New function.
5480
5481 * intervals.c (set_intervals_multibyte_1): When becoming
5482 multibyte, adjust right and left child sizes to a whole set of
5483 characters. If an interval gets zero total-length, delete it.
5484 If an interval consists of just its children, delete one of them.
5485
5486 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5487 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 5488
eb67c5d6
RS
5489 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5490 All calls deleted.
5491 (lisp_malloc): Do the work here directly.
5492
b1f81fc5
JB
54932003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5494
5495 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5496 char tables.
5497
54982003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
5499
5500 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5501 destructively change "%S" to "%s".
5502
774666fb
MB
55032003-04-03 Miles Bader <miles@gnu.org>
5504
5505 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5506 always set.
5507
19c37f01
DL
55082003-04-01 Dave Love <fx@gnu.org>
5509
5510 * xfns.c (xpm_lookup_color): Grok "opaque".
5511
2f4b24c3
AC
55122003-03-31 Andrew Choi <akochoi@shaw.ca>
5513
5514 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5515 parent window ID.
5516
5517 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5518
5519 * macterm.h (struct mac_output): Define x_pixels_diff and
5520 y_pixels_diff.
b1f81fc5 5521
9443fcf6
JB
55222003-03-31 Juanma Barranquero <lektu@terra.es>
5523
5524 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5525 blockinput.h and files included from it.
5526
e072891b
KS
55272003-03-31 Kim F. Storm <storm@cua.dk>
5528
5529 The following changes consolidates the common code related to
5530 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5531 files into frame.c.
9443fcf6 5532
e072891b
KS
5533 * frame.c: Include blockinput.h.
5534 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5535 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5536 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5537 related vars here.
5538 (struct frame_parm_table, frame_parms): New table for describing
5539 frame parameters and their associated Q-variable.
5540 The order of the parameters corresponds to the sequence of the
5541 frame_parm_handlers table in redisplay_interface.
5542 (x_fullscreen_move, x_set_frame_parameters)
5543 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5544 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5545 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5546 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5547 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5548 Generic functions for processing of frame parameters.
5549 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5550 (display_x_get_resource, x_get_resource_string): Functions for
5551 generic access to X resources.
5552 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5553 (x_default_parameter, Fx_parse_geometry): Functions for generic
5554 access to frame parameters.
6901b111
SM
5555 (x_figure_window_size): Generic calculation of frame size.
5556 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
5557 (syms_of_frame): Intern and staticpro frame parameter variables.
5558 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5559 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 5560
e072891b
KS
5561 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5562 parameter related vars defined in frame.c.
5563 (EMACS_CLASS): Define here.
5564 (enum FULLSCREEN_*): Define here.
5565 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5566 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5567 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5568 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5569 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5570 (x_set_visibility, x_set_autoraise, x_set_autolower)
5571 (x_set_unsplittable, x_set_vertical_scroll_bars)
5572 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5573 (x_figure_window_size): Add prototypes.
5574
5575 * dispextern.h (frame_parm_handler): New typedef.
5576 (struct redisplay_interface): New member frame_parm_handlers.
5577 (enum resource_types): Move declaration here.
5578 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5579 (x_default_parameter): Add prototypes.
5580
5581 * window.c: Remove extern decl for frame parameter vars.
5582 (change_window_heights): New generic function;
5583 replaces x_change_window_heights. All users changed.
5584
5585 * window.h (change_window_heights): Add prototype.
5586
5587 * xfaces.c: Remove extern decl for frame parameter vars.
5588
5589 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5590 (struct w32_display_info): Fix type of xrdb member.
5591 (enum FULLSCREEN_*): Remove.
5592 Remove prototypes for generic functions (in frame.h).
5593
5594 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5595 parameters now defined in frame.h and frame.c.
f63fd14e 5596 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5597 (enum x_frame_parms): Remove (bogus, unused enum).
5598 (check_x_display_info): Make non-static (for frame.c).
5599 (struct x_frame_parm_table, x_frame_parms): Remove.
5600 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5601 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5602 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5603 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5604 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5605 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5606 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5607 Remove. Use generic functions instead.
5608 (enum resource_types): Remove.
5609 (x_set_scroll_bar_default_width): New global function (for frame.c).
5610 (Fx_create_frame): Depend on x_figure_window_size to add space for
5611 toolbar and setup size_hint_flags.
5612 (x_frame_parm_handlers): New table for redisplay_interface.
5613 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 5614
e072891b 5615 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 5616 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
5617 (x_redisplay_interface): Add x_frame_parm_handlers member.
5618
5619 * w32gui.h (XrmDatabase): New (dummy) typedef.
5620
5621 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5622 (struct w32_display_info): Fix type of xrdb member.
5623 (enum FULLSCREEN_*): Remove.
5624 (x_fullscreen_adjust): Remove prototype.
5625
5626 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5627 parameters now defined in frame.h and frame.c.
f63fd14e 5628 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5629 (enum x_frame_parms): Remove (bogus, unused enum).
5630 (check_x_display_info): Make non-static (for frame.c).
5631 (struct x_frame_parm_table, x_frame_parms): Remove.
5632 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5633 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5634 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5635 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5636 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5637 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5638 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5639 Remove. Use generic functions instead.
5640 (enum resource_types): Remove.
5641 (x_set_scroll_bar_default_width): New global function (for frame.c).
5642 (Fx_create_frame): Depend on x_figure_window_size to add space for
5643 toolbar and setup size_hint_flags.
5644 (w32_frame_parm_handlers): New table for redisplay_interface.
5645 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 5646
e072891b
KS
5647 * w32term.c: Remove unnecessary extern declarations.
5648 (x_fullscreen_adjust): Remove. Use generic instead.
5649 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5650
5651 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5652
5653 * macgui.h (XrmDatabase): New (dummy) typedef.
5654
5655 * macterm.h (EMACS_CLASS): Remove.
5656 (struct mac_display_info): Add xrdb member.
5657 (struct mac_output): Add want_fullscreen member.
5658
5659 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5660 parameters now defined in frame.h and frame.c.
f63fd14e 5661 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5662 (check_x_display_info): Make non-static (for frame.c).
5663 (struct x_frame_parm_table, x_frame_parms): Remove.
5664 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5665 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5666 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5667 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5668 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5669 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5670 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5671 Remove. Use generic functions instead.
5672 (enum resource_types): Remove.
5673 (x_set_scroll_bar_default_width): New global function (for frame.c).
5674 (mac_frame_parm_handlers): New table for redisplay_interface.
5675 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 5676
e072891b
KS
5677 * macterm.c: Remove unnecessary extern declarations.
5678 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5679
3e6a560b
KS
5680 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5681 included from it (atimer.h and systime.h).
5682
7b7b454e
AS
56832003-03-30 Andreas Schwab <schwab@suse.de>
5684
5685 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5686 parameters for shift_glyphs_for_insert.
5687
5688 * macterm.c (x_redisplay_interface): Add missing entry for
5689 draw_vertical_window_border.
5690
beb402de
KG
56912003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5692
5693 * fileio.c (Fexpand_file_name): In the no-handler case, after
5694 expanding, look again for a handler and invoke it. This is needed
5695 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5696 expansion produces "/user@host:/bar/../baz" which needs to be
5697 expanded again for the finame result "/user@host:/baz".
5698
b676f356
JD
56992003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5700
5701 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5702 of area to be redrawn for better performance.
5703
3c671a56
SM
57042003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5705
5706 * xterm.c (take_vertical_position_into_account): Remove.
5707 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5708 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5709 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5710 (x_set_toolkit_scroll_bar_thumb): Simplify.
5711 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5712 (XTread_socket): Remove unused var.
5713 (x_make_frame_invisible): Replace goto with else.
5714
5715 * xdisp.c (set_vertical_scroll_bar): New fun.
5716 (redisplay_window): Use it.
5717
84f2e615
RS
57182003-03-26 Richard M. Stallman <rms@gnu.org>
5719
5720 * xdisp.c (update_tool_bar): Recompute tool bar if
5721 update_mode_lines is set. Set w->update_mode_line
5722 only if the tool bar contents actually change.
5723 (update_menu_bar): Undo previous change.
5724
70b6104c
JD
57252003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5726
5fd6f727
JD
5727 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5728 (xg_frame_set_char_size): Calculate scroll bar width before frame
5729 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5730 (xg_separator_p): Check for all documented separator types.
5731 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5732 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5733
70b6104c
JD
5734 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5735 so tool bar gets updated.
5736
d9b36d19
SM
57372003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5738
5739 * data.c (store_symval_forwarding): Re-instate part of the code
5740 that was deleted with too much enthusiasm.
5741
57422003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5743
5744 * data.c (store_symval_forwarding): Delete special read-only
5745 hack for type == -1, since we now use ->constant instead.
5746 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5747
5748 * buffer.c (overlays_in): Declare static.
5749 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5750 `constant' field rather than the variable's `type' field.
5751
365fa1b3
AC
57522003-03-24 Andrew Choi <akochoi@shaw.ca>
5753
5754 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5755
5756 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5757
5758 * fns.c [MAC_OSX]: Do not redefine vector.
5759
5760 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5761
5762 * macgui.h: Remove definition of No_Cursor.
5763
d9b36d19 5764 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
5765
5766 * xdisp.c: Define No_Cursor.
5767 (x_write_glyphs, notice_overwritten_cursor)
5768 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5769 (note_mouse_highlight): Remove Mac-specific code.
5770 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 5771
c0bcce6f
JPW
57722003-03-24 John Paul Wallington <jpw@gnu.org>
5773
5774 * xdisp.c (redisplay_window): If mini window's buffer is not
5775 empty, then redisplay it like other windows.
5776
a526b96c
KS
57772003-03-23 Kim F. Storm <storm@cua.dk>
5778
5779 * w32term.c (w32_draw_window_cursor): Fix last change.
5780
37ab321e
KH
57812003-03-23 Kenichi Handa <handa@m17n.org>
5782
a526b96c
KS
5783 * alloc.c (make_string_from_bytes, make_specified_string):
5784 Add `const' for the arg CONTENTS.
37ab321e
KH
5785
5786 * lisp.h (make_string_from_bytes, make_specified_string):
5787 Prototypes adjusted.
5788
7863d625
JD
57892003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5790
a526b96c 5791 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 5792
7863d625
JD
5793 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5794 (XG_SB_RANGE): New define.
5795
5796 * gtkutil.c (xg_fixed_handle_expose): New function.
5797 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5798 expose events.
5799 (xg_update_scrollbar_pos): Take two more arguments, left and width
5800 of scroll bar including borders.
5801 Clear left and right part outside scroll bar separately as some
5802 themes have bars that are not an even number of pixels.
d9b36d19 5803 Don't set reallocate_redraws, don't call
7863d625
JD
5804 gdk_window_process_all_updates.
5805 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5806 so no need to change it. Calculate size and value with XG_SB_RANGE.
5807
d9b36d19
SM
5808 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5809 Pass left and width of scroll bar including borders to
7863d625
JD
5810 xg_update_scrollbar_pos.
5811
af0ad939
TTN
58122003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5813
5814 * Makefile.in: Make sure space precedes end-of-line backslashes.
5815
b22139fd
KS
58162003-03-22 Kim F. Storm <storm@cua.dk>
5817
5818 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5819 Add generic versions here. Remove system specific versions
5820 defined elsewhere.
5821
5822 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5823 Add prototypes.
5824
6e6410cf
KS
5825 * xterm.h (STORE_NATIVE_RECT): New macro.
5826
5c9cc435
KS
58272003-03-21 Kim F. Storm <storm@cua.dk>
5828
00c64fab
SM
5829 * xdisp.c (get_glyph_string_clip_rect):
5830 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
5831
5832 * dispextern.h (struct redisplay_interface): Add active_p
5833 argument to draw_window_cursor member. All uses changed.
5834
acd37560
KS
58352003-03-21 Kim F. Storm <storm@cua.dk>
5836
5837 The following changes consolidate code related to writing and
5838 inserting glyphs, exposing frame, the tool bar, the mouse face,
5839 the output cursor, and help echo from xterm.c, w32term.c and
5840 macterm.c into xdisp.c. It also generalizes the use of the
5841 window_part enum instead of using numeric values throughout.
af0ad939 5842
acd37560
KS
5843 * xdisp.c: Consolidate gui-independent code here.
5844 Include keymap.h.
5845 (Qhelp_echo): Import.
5846 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5847 (help_echo_string, help_echo_window, help_echo_object)
5848 (previous_help_echo_string, help_echo_pos): Declare here.
5849 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5850 (estimate_mode_line_height): Define here. Handle windowing
5851 systems directly (without using estimate_mode_line_height_hook).
5852 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5853 (update_window_cursor, update_cursor_in_window_tree)
5854 (fast_find_position, fast_find_string_pos)
5855 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5856 (expose_area, expose_line, expose_overlaps, expose_window)
5857 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5858 declared static as they are only used locally in xdisp.c.
5859 (draw_glyphs): Rename from x_draw_glyphs and make static.
5860 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5861 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5862 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 5863 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
5864 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5865 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5866 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5867 (note_mouse_highlight, x_clear_window_mouse_face)
5868 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5869 (x_intersect_rectangles): New generic functions for use by xdisp.c
5870 and GUI front-ends.
5871 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5872 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5873
5874 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5875 (NativeRectangle): Generic typedef for rectangle type.
5876 (enum window_part): Move here from window.c.
5877 (struct redisplay_interface): New members flush_display_optional,
5878 define_frame_cursor, clear_frame_area, draw_window_cursor,
5879 draw_vertical_window_border, shift_glyphs_for_insert.
5880 Rename member clear_mouse_face to clear_window_mouse_face.
5881 (estimate_mode_line_height_hook): Remove hook.
5882 (auto_raise_tool_bar_buttons_p): Don't declare extern.
5883 (tool_bar_item_info): Remove prototype.
5884 (help_echo_string, help_echo_window, help_echo_object)
5885 (previous_help_echo_string, help_echo_pos)
5886 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
5887 (x_stretch_cursor_p, output_cursor): Declare extern.
5888 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
5889 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
5890 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5891 (display_and_set_cursor, set_output_cursor, x_cursor_to)
5892 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
5893 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5894 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
5895 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
5896 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
5897 Add prototypes.
5898 (mode_line_string, marginal_area_string): Fix prototypes.
5899
5900 * window.c (enum window_part): Move to dispextern.h.
5901 (coordinates_in_window): Use enum window_part member names
5902 instead of numbers to describe return value.
5903 (struct check_window_data): Change part member to window_part.
5904 (check_window_containing): Return window_part unaltered.
5905 (window_from_coordinates): Change part arg from int to enum
5906 window_part. Allow part arg to be null. All users changed.
5907
5908 * window.h (window_from_coordinates): Fix prototype.
5909
5910 * term.c (estimate_mode_line_height): Move to xdisp.c.
5911
5912 * keyboard.c (make_lispy_event): Use enum window_part.
5913
5914 * dispnew.c (mode_line_string, marginal_area_string): Use enum
5915 window_part instead of int in arg list. Users changed.
5916
5917 * xterm.h (No_Cursor): Declare as None for X.
5918 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 5919
acd37560
KS
5920 * xterm.c: Remove consolidated defines and code.
5921 (BETWEEN): Remove unused macro.
5922 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
5923 (x_define_frame_cursor, x_clear_frame_area)
5924 (x_draw_window_cursor): New X-specific functions for RIF.
5925 (x_redisplay_interface): Add new members.
5926
5927 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
5928
5929 * w32term.h (struct w32_output): Remove cross_cursor member.
5930
5931 * w32term.c: Remove consolidated defines and code.
5932 (BETWEEN): Remove unused macro.
5933 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
5934 (w32_define_frame_cursor, w32_clear_frame_area)
5935 (w32_draw_window_cursor): New W32-specific functions for RIF.
5936 (w32_redisplay_interface): Add new members.
5937
a64387ee 5938 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
5939 (XRectangle): Add X compatible rectangle type.
5940 (NativeRectangle): Declare as RECT for W32.
5941 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5942
5943 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
5944
5945 * w32console.c: Remove consolidated defines and code.
af0ad939 5946
acd37560
KS
5947 * msdos.h (Display_Info): Add generic typedef.
5948
5949 * msdos.c: Remove consolidated defines and code.
5950 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
5951
5952 * macterm.h (struct mac_output): Replace member cross_cursor by
5953 hand_cursor.
5954 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
5955
5956 * macterm.c: Remove consolidated defines and code.
5957 (BETWEEN): Remove unused macro.
5958 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
5959 (mac_define_frame_cursor, mac_clear_frame_area)
5960 (mac_draw_window_cursor): New Mac-specific functions for RIF.
5961 (x_redisplay_interface): Add new members.
5962
5963 * macgui.h (No_Cursor): Define as 0 for Mac.
5964 (XRectangle): Add X compatible rectangle type.
5965 (NativeRectangle): Declare as Rect for Mac.
5966 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5967
204ccab1
KS
5968 * macfns.c (x_set_mouse_color): Setup hand_cursor.
5969 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 5970
9443fcf6 5971 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
5972 included from it. Add dependency on keymap.h.
5973
5974 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
5975
8ba01a70 59762003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
5977
5978 * fileio.c (Fexpand_file_name): Fix previous change.
5979
8ba01a70 59802003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
5981
5982 * fileio.c (Ffile_name_directory): Reconstruct file name by
5983 make_specified_string.
5984 (Ffile_name_nondirectory, Ffile_name_as_directory)
5985 (Fdirectory_file_name, Fexpand_file_name)
5986 (Fsubstitute_in_file_name): Likewise.
5987 (Fread_file_name): Compare decoded homedir with DIR and
5988 DEFAULT_FILENAME.
5989
5990 * alloc.c (make_specified_string): If NCHARS is negative, count
5991 the number of characters.
5992
19536747
JD
59932003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5994
de38ae5a
JD
5995 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
5996 all widgets.
5997
19536747
JD
5998 * gtkutil.h: Removed xg_ignore_next_thumb.
5999
37ab321e 60002003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6001
6002 * coding.c (Vchar_coding_system_table): Remove this variable.
6003 (Vcoding_system_safe_chars): New variable.
6004 (intersection): Remove this function.
6005 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6006 all codings in SAFE_CODINGS.
00c64fab 6007 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6008 find_safe_codings. Get generic coding systems from
6009 Vcoding_system_safe_chars.
6010 (Fdefine_coding_system_internal): New function.
6011 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6012 Initialize and staticpro Vcoding_system_safe_chars.
6013
17097258
JD
60142003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6015
2a2071c3
JD
6016 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6017 equal old values before updating.
6018
17097258
JD
6019 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6020
6021 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6022
60232003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6024
6025 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6026 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6027 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6028 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6029 (xg_create_scroll_bar): Pass bar to button event callback.
6030 (xg_find_top_left_in_fixed): New function.
6031 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6032 whole scroll bar area. Get old position with
6033 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6034 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6035 dragging is in progress. Calculate whole as for Motif.
6036 Remove code that saved last values. Call gtk_range functions to
6037 set scroll bar sizes.
6038
6039 * gtkutil.h: Removed xg_ignore_next_thumb.
6040
8cb9dfbf
JB
60412003-03-17 Juanma Barranquero <lektu@terra.es>
6042
6043 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6044 and files included from it.
6045
00c64fab
SM
60462003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6047
6048 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6049 multiple occurrences of the same keymap under different prefixes.
6050 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6051
c45bb3b2
JR
60522003-03-16 Jason Rumney <jasonr@gnu.org>
6053
6054 * w32gui.h: Use HDC for Display.
6055
6056 * w32term.c (w32_encode_char): Prevent double-byte chars from
6057 crashing Emacs.
6058
6059 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6060 as binary.
6061
2a6d0874
JB
60622003-03-16 Juanma Barranquero <lektu@terra.es>
6063
6064 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6065
03eb5fab
KS
60662003-03-16 Kim F. Storm <storm@cua.dk>
6067
6068 The following changes consolidate some of the gui-independent
6069 parts of the processing and drawing of "glyph strings" from
6070 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6071
03eb5fab
KS
6072 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6073 21 bits (this reduces number of faces from 4M to 2M).
6074 Replace W32 specific w32_font_type member (2 bits) by generic
6075 font_type member (3 bits) for portability.
6076 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6077 (enum draw_glyphs_face): Define here.
6078 (struct glyph_string): Define here. Merge W32 and X versions.
6079 (struct redisplay_interface): New members per_char_metric,
6080 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6081 (VCENTER_BASELINE_OFFSET): Define here.
6082 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6083 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6084
6085 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6086 (dump_glyph_string): Moved here.
6087 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6088 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6089 (fill_composite_glyph_string, fill_glyph_string)
6090 (fill_image_glyph_string, fill_stretch_glyph_string)
6091 (left_overwritten, left_overwriting, right_overwritten)
6092 (right_overwriting, get_char_face_and_encoding)
6093 (set_glyph_string_background_width, compute_overhangs_and_x)
6094 (append_glyph, append_composite_glyph, produce_image_glyph)
6095 (take_vertical_position_into_account, append_stretch_glyph)
6096 (produce_stretch_glyph): New generic functions (based on X version).
6097 Call platform specific functions through rif.
6098 (INIT_GLYPH_STRING): New macro, hides W32 details.
6099 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6100 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6101 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6102 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6103 (notice_overwritten_cursor):
6104 Generic functions exported to platform modules. Users changed.
6105
6106 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6107 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6108 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6109 New macros for consolidated code.
2a6d0874 6110
03eb5fab
KS
6111 * xterm.c: Remove consolidated defines and code.
6112 (x_per_char_metric, x_encode_char)
6113 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6114 (x_redisplay_interface): Add new members.
6115
6116 * w32gui.h (Display): Add dummy typedef for consolidation.
6117 (XChar2b): Define alias for wchar_t for consolidation.
6118 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6119
6120 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6121 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6122 New macros for consolidation.
6123
fad49844 6124 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6125 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6126 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6127 (w32_per_char_metric): Change font_type arg to int for RIF.
6128 (w32_encode_char): Return int according to RIF requirements.
6129 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6130 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6131 x_get_glyph_overhangs.
6132 (w32_redisplay_interface): Add new members.
6133
6134 * macgui.h (XChar2b): Move typedef here for consolidation.
6135 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6136
6137 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6138 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6139 consolidation.
6140
6141 * macterm.c: Remove consolidated defines and code.
6142 (mac_per_char_metric): New function for RIF.
00c64fab 6143 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6144 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6145 (x_redisplay_interface): Add new members.
6146
00c64fab
SM
61472003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6148
6149 * keymap.c (Vmenu_events): New var.
6150 (syms_of_keymap): Initialize it.
6151 (where_is_internal): Check more carefully what is a menu event.
6152
225c7a07
RS
61532003-03-14 Richard M. Stallman <rms@gnu.org>
6154
6155 * lread.c (read1): After #!, exit loop on eof.
6156
cea9be54
JD
61572003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6158
9ea0e54d
JD
6159 * gtkutil.h: Add declaration for xg_frame_cleared.
6160
0cb35f4e
JD
6161 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6162
cea9be54
JD
6163 * gtkutil.c (struct xg_last_sb_pos): New structure.
6164 (handle_fixed_child): New function.
6165 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6166 and force a redraw on them.
6167 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6168 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6169 so we can avoid unneeded redraws.
6170 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6171 and force a redraw on the scroll bar.
6172 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6173 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6174 (xg_frame_cleared): New function.
cea9be54 6175
20b853f3
KH
61762003-03-13 Kenichi Handa <handa@m17n.org>
6177
6178 * coding.c (Fdetect_coding_region): Fix docstring.
6179 (Fdetect_coding_string): Fix docstring.
6180
7a555aff
AS
61812003-03-13 Andreas Schwab <schwab@suse.de>
6182
25cc0080
AS
6183 * gtkutil.c: Add prototype for create_menus.
6184
30225431
AS
6185 * data.c (long_to_cons): Fix type of top.
6186
6187 * xselect.c (selection_data_to_lisp_data): Use int instead of
6188 long for an integer of size 4.
6189
7a555aff 6190 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6191 (xg_tool_bar_help_callback): Likewise.
7a555aff 6192
a3e4741f
AS
61932003-03-12 Andreas Schwab <schwab@suse.de>
6194
6195 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6196
9668be7c
KS
61972003-03-12 Kim F. Storm <storm@cua.dk>
6198
03eb5fab 6199 The following changes consolidate the fringe handling from
9668be7c 6200 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6201
9668be7c
KS
6202 * xdisp.c: Consolidate fringe handling code here.
6203 (left_bits, right_bits, continued_bits, continuation_bits)
6204 (ov_bits, zv_bits): Define fringe bitmaps.
6205 (fringe_bitmaps): New array holding fringe bitmaps.
6206 (draw_fringe_bitmap): Draw a specific bitmap; call display
6207 specific drawing routine via rif->draw_fringe_bitmap.
6208 (draw_row_fringe_bitmaps): Generic replacement for
6209 x_draw_row_fringe_bitmaps; all callers changed.
6210 (compute_fringe_widths): Generic replacement for
6211 x_compute_fringe_widths; all callers changed.
6212
6213 * dispextern.h (enum fringe_bitmap_type): Define here.
6214 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6215 (fringe_bitmaps): Declare extern.
6216 (struct redisplay_interface): New member draw_fringe_bitmap.
6217 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6218
6219 * xterm.c: Remove generic fringe code.
6220 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6221 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6222
6223 * w32term.c: Remove generic fringe code.
6224 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6225 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6226
9668be7c
KS
6227 * macterm.c: Remove generic fringe code.
6228 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6229 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6230
00a88f32
SM
62312003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6232
6233 * print.c (Fprin1_to_string): Return unibyte string if possible.
6234
1d1de695
DK
62352003-03-09 David Kastrup <dak@gnu.org>
6236
6237 * process.c (read_process_output): We have allocated enough space
6238 for readmax and carryover, so actually use the alloted space.
6239
257f40f2
JD
62402003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6241
6242 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6243 toolkit scrollbar click.
6244
6245 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6246 for USE_GTK.
6247 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6248 also.
6249 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6250 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6251
257f40f2
JD
6252 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6253
6254 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6255 (xg_tool_bar_item_expose_callback): New function.
6256 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6257 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6258 on the tool bar widget.
6259 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6260 to expose on the tool bar item widgets.
6261
15213141
JD
62622003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6263
26b74a0b 6264 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6265 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6266 deleted from the image cache).
6267
15213141
JD
6268 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6269 the event isn't for a frame (i.e. for dialogs).
6270
20b853f3 62712003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6272
6273 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6274 composition components reaches the limit, terminate composing.
6275 (COMPOSITION_OK): New macro.
00a88f32 6276 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6277 composition is found.
6278 (coding_restore_composition): Adjust the number of composition
6279 components if it is not sane.
6280
c9029fe5
JB
62812003-03-06 Juanma Barranquero <lektu@terra.es>
6282
6283 * w32term.h (struct w32_display_info): Add xrdb member to support
6284 passing resources via -xrm on Windows.
6285
6286 * w32term.c (w32_make_rdb): New function.
6287 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6288 struct. Delete leftover code.
6289
6290 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6291 for resources passed on the command line.
6292
6293 * w32reg.c (w32_get_rdb_resource): New function.
6294 (x_get_string_resource): Use it, so resources passed with -xrm
6295 supercede the ones in the registry.
6296
9d00001f
JD
62972003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6298
6299 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6300 instead of x_top_window_to_frame.
6301
ca2417b9
JD
63022003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6303
6304 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6305 when restarting Emacs.
6306
5b20caf0
RS
63072003-03-03 Richard M. Stallman <rms@gnu.org>
6308
6309 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6310 to run kill-buffer-query-functions.
6311 (Qkill_buffer_query_functions): New var.
6312 (syms_of_buffer): Init and staticpro it.
6313
58e91b77
JD
63142003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6315
6316 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6317
932357b4
KS
63182003-02-25 Kim F. Storm <storm@cua.dk>
6319
6320 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6321 If centering point failed to make whole line visible and vscroll
6322 is non-zero, disable vscroll and try centering point again.
6323
6324 * lread.c (read1): Accept `single space' syntax like (? x).
6325
bb8db7e1
JD
63262003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6327
6328 * keyboard.c (cancel_hourglass_unwind): Surround with
6329 #ifdef HAVE_X_WINDOWS
6330
47d77aab
KH
63312003-02-25 Kenichi Handa <handa@m17n.org>
6332
6333 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6334 process only when "subprocesses" is defined.
6335
6a097c0c
SM
63362003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6337
6338 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6339
0b063c27
JB
63402003-02-24 Juanma Barranquero <lektu@terra.es>
6341
d1135afc
JB
6342 * callint.c (fix_command): Declare as static void and move before
6343 Fcall_interactively.
6344
0b063c27
JB
6345 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6346 (syms_of_xdisp): Don't initialize Qwhen.
6347
0af912f0
JD
63482003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6349
6350 * keyboard.c (cancel_hourglass_unwind): New function.
6351 (command_loop_1): Cancel hourglass with unwind-protect.
6352
120d0a23
RS
63532003-02-23 Richard M. Stallman <rms@gnu.org>
6354
6355 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6356 Detect (when ... (region-beginning)) etc.
6357 (Fcall_interactively): Call fix_command.
6358 (Qif, Qwhen): New variables.
6359 (syms_of_callint): Init and staticpro them.
0b063c27 6360
120d0a23
RS
6361 * regex.c (print_partial_compiled_pattern): Output to stderr.
6362
4ece81a6
KG
63632003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6364
6365 * dired.c (directory_files_internal): Don't expand directory.
6366 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6367 instead. From Lars Hansen <larsh@math.ku.dk>.
6368
e52bd6b7
SM
63692003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6370
6371 * fns.c (string_to_multibyte): Remove unused var i.
6372 (Flanginfo): Fix int/Lisp_Object mixup.
6373 (void_call2): New fun.
6374 (Fmap_char_table): Use it in place of call2.
6375
6376 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6377
6378 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6379
6380 * keymap.c (copy_keymap_1): Make it static.
6381
6382 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6383
c33ef7c4
JB
63842003-02-22 David Ponce <david@dponce.com>
6385
6386 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6387
16782258
JD
63882003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6389
6390 * process.h: Removed subtty field from struct Lisp_Process.
6391
6392 * process.c (create_process): Remove setting of subtty.
6393 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
6394 (Fprocess_running_child_p, process_send_signal):
6395 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
6396 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6397
3abeca61
KG
63982003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6399
6400 * keymap.c (Fdefine_key): Doc fix.
6401
92a8ce63
JB
64022003-02-21 Juanma Barranquero <lektu@terra.es>
6403
6404 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6405
6406 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6407 POLLING_PROBLEM_IN_SELECT.
6408
6409 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6410 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6411
6412 * s/hpux10-20.h: New file.
6413
e52bd6b7
SM
6414 * process.c (wait_reading_process_input):
6415 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 6416
20f1ef2e
KH
64172003-02-20 Kenichi Handa <handa@m17n.org>
6418
32d0a9dc
KH
6419 * fontset.c (check_fontset_name): If NAME is nil, return the
6420 default fontset.
6421 (override_font_info): New function.
e52bd6b7 6422 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
6423 (Ffontset_info): If FONTSET is not the default fontset, merge
6424 FONTSET onto the copy of the default fontset, and work on that
6425 copy. Document that NAME nil means the default fontset.
6426 (Ffontset_font): Document that NAME nil means the default fontset.
6427
20f1ef2e
KH
6428 * process.c (setup_process_coding_systems): If the process's
6429 in/out descriptor is -1, do nothing.
6430
77d1daf2
AS
64312003-02-19 Andreas Schwab <schwab@suse.de>
6432
e52bd6b7
SM
6433 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6434 Add prototypes.
77d1daf2 6435
f9a45bb3
KH
64362003-02-19 Kenichi Handa <handa@m17n.org>
6437
6438 * xfaces.c (try_alternative_families): Try all scalable fonts if
6439 Vscalable_fonts_allowed is not Qt.
6440
72ecb43c
JD
64412003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6442
6443 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6444
ee5be7c3
JD
64452003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6446
6447 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6448 names.
6449
6450 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 6451 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
6452 x_face_list_fonts.
6453 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6454 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6455
4cd519a7
KS
64562003-02-18 Kim F. Storm <storm@cua.dk>
6457
068f9882
KS
6458 * lread.c (read1): Fix last change.
6459 "`" is not always special. Allow "?" after a character constant.
4cd519a7 6460
7290a344
AC
64612003-02-18 Andrew Choi <akochoi@shaw.ca>
6462
6463 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6464
1f7fa69b
AS
64652003-02-18 Andreas Schwab <schwab@suse.de>
6466
6467 * window.c (window_scroll_pixel_based): Move outside a
6468 multi-glyph character before setting new window start.
6469
6470 * xdisp.c (in_display_vector_p): New function.
6471 * dispextern.h (in_display_vector_p): Declare.
6472
23e21195
KS
64732003-02-18 Kim F. Storm <storm@cua.dk>
6474
6475 * lread.c (read1): Fix and relax read syntax.
6476 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6477 Only recognize "," after dotted-pair dot if inside backquote.
6478 Never include "`" or "," (inside backquote) in a symbol.
6479 Allow dotted-pair dot after a character constant.
6480 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 6481
f098b121
JD
64822003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6483
6484 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6485 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6486 icons. Set name of tool bar to emacs-toolbar.
6487 (update_frame_tool_bar): Connect expose event to
6488 xg_tool_bar_expose_callback.
6489
63020c46
RS
64902003-02-17 Richard M. Stallman <rms@gnu.org>
6491
6492 * keyboard.c (this_command_key_count_reset): New variable.
6493 Initiatize to 0 where this_command_key_count is set.
6494 (read_char): Save and restore this_command_key_count_reset
6495 around input method code.
6496 (read_char): If this_command_key_count_reset, echo reread commands.
6497 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6498
fb4452cc
KH
64992003-02-17 Kenichi Handa <handa@m17n.org>
6500
6501 * fns.c (string_to_multibyte): Always return a multibyte string.
6502
bd11cc09
JR
65032003-02-16 Jason Rumney <jasonr@gnu.org>
6504
e52bd6b7
SM
6505 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6506 Negative max_fonts parameter means list all.
bd11cc09 6507
4cdf4bde
DL
65082003-02-14 Dave Love <fx@gnu.org>
6509
6510 * fns.c (Flanginfo): Doc fix.
6511
023b93f6
KS
65122003-02-13 Kim F. Storm <storm@cua.dk>
6513
37cd4238
KS
6514 * lread.c (read_escape): Interpret \s as a SPACE character, except
6515 for \s-X in a character constant which still is the super modifier.
6516 (read1): Signal an `invalid read syntax' error if a character
6517 constant is immediately followed by a digit or symbol character.
6518
140a6b7e
KS
6519 * search.c (Fmatch_data): Doc fix. Explicitly state that
6520 match-data is undefined if last search failed.
6521
023b93f6
KS
6522 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6523 All uses changed.
6524
7d5c86e5
JB
65252003-02-12 Juanma Barranquero <lektu@terra.es>
6526
6527 * eval.c (Fdefmacro): Fix typo.
6528
295fff2c
KS
65292003-02-12 Kim F. Storm <storm@cua.dk>
6530
6531 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6532 macro is a string, convert meta modifiers in string when copying
6533 the string into a vector.
6534
60f3202d
KS
65352003-02-11 Kim F. Storm <storm@cua.dk>
6536
6537 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6538
61cb0b53
KH
65392003-02-11 Kenichi Handa <handa@m17n.org>
6540
6541 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6542
7392e23c
KS
65432003-02-10 Kim F. Storm <storm@cua.dk>
6544
6545 * process.c: Doc fixes.
6546 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6547
ce4254bd
KH
65482003-02-10 Kenichi Handa <handa@m17n.org>
6549
9c7a329a
KH
6550 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6551
ce4254bd
KH
6552 * process.c (QCfilter_multibyte): New variable.
6553 (setup_process_coding_systems): New function.
e52bd6b7
SM
6554 (Fset_process_buffer, Fset_process_filter):
6555 Call setup_process_coding_systems.
ce4254bd
KH
6556 (Fstart_process): Initialize the member `filter_multibyte' of
6557 struct Lisp_Process.
6558 (create_process): Call setup_process_coding_systems.
6559 (Fmake_network_process): New keyward `:filter-multibyte'.
6560 Initialize the member `filter_multibyte' of struct Lisp_Process.
6561 Call setup_process_coding_systems.
6562 (server_accept_connection): Call setup_process_coding_systems.
6563 (read_process_output): If the process has a filter, decide the
6564 multibyteness of a string to given to the filter by
6565 `filter_multibyte' member of the process. If the process doesn't
6566 have a filter and the result of conversion is unibyte, use
6567 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6568 multibyte form.
6569 (Fset_process_coding_system): Call setup_process_coding_systems.
6570 (Fset_process_filter_multibyte): New function.
6571 (Fprocess_filter_multibyte_p): New function.
6572 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6573 Defsubr Sset_process_filter_multibyte and
6574 Sprocess_filter_multibyte_p.
6575
6576 * process.h (struct Lisp_Process): New member filter_multibyte.
6577
6578 * lisp.h (setup_process_coding_systems): Add prototype.
6579
6580 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6581 process, update coding systems for the process.
6582
b08d5f59
KH
65832003-02-09 Kenichi Handa <handa@m17n.org>
6584
6585 * fns.c (string_to_multibyte): New function.
6586 (Fstring_to_multibyte): New function.
6587 (syms_of_fns): Defsubr it.
6588
0dfd93c0
AS
65892003-02-08 Andreas Schwab <schwab@suse.de>
6590
6591 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6592 instead of the substitution.
6593
7b76ca1c
JD
65942003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6595
6596 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6597
6598 * xmenu.c (menu_position_func): Adjust menu popup position so that
6599 the menu is fully visible.
7b76ca1c 6600
2436a4e4
JD
66012003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6602
6603 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
6604 (x_make_frame_invisible, x_wm_set_icon_position):
6605 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
6606
6607 * xfns.c (x_set_name, x_set_title): Ditto.
6608
37d1e680
RS
66092003-02-04 Richard M. Stallman <rms@gnu.org>
6610
6611 * keyboard.c (echo_now): Update before_command_echo_length.
6612 (Freset_this_command_lengths): Reset this_command_key_count etc.
6613 immediately rather than arranging to do it later.
6614 (before_command_key_count_1, before_command_echo_length_1)
6615 (before_command_restore_flag): Vars deleted.
6616 (add_command_key): Don't handle before_command_restore_flag.
6617 (read_char, record_menu_key): Don't update before_command_key_count or
6618 before_command_echo_length.
6619 (read_char): Don't handle before_command_restore_flag.
6620
6621 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6622 in direct-output clauses if it wouldn't be called in the ordinary case.
6623
578846a3
KS
66242003-02-04 Kim F. Storm <storm@cua.dk>
6625
6626 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6627
49853a4d
JD
66282003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6629
6630 * gtkutil.c (remove_from_container): Copying list is not needed.
6631 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6632 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6633 on list returned from gtk_container_get_children to avoid memory leak.
6634
8b53dc06
JR
66352003-02-01 Jason Rumney <jasonr@gnu.org>
6636
5d54d177
JR
6637 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6638 local malloc.
6639 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6640 definitions in xpm.h.
6641 (init_xpm_functions): New function.
f63fd14e 6642 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
6643 (init_external_image_libraries): Try to load libXpm.dll.
6644
8b53dc06
JR
6645 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6646 timestamp.
6647
b222e415
DL
66482003-01-31 Dave Love <fx@gnu.org>
6649
6650 * syntax.c (Fskip_chars_forward)
6651 (open-paren-in-column-0-is-defun-start): Doc fix.
6652
c60ee5e7
JB
66532003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6654
6655 * fileio.c: Support // at start of name for Cygwin (just added proper
6656 preprocessor tests).
6657
6658 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6659
6660 * Makefile.in: Use @EXEEXT@ for Cygwin.
6661
6662 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6663
6664 * s/cygwin.h: Added for Cygwin port.
6665
53b37591
JB
66662003-01-31 Juanma Barranquero <lektu@terra.es>
6667
6668 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6669 when including gif_lib.h.
fe929957 6670 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
6671 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6672 Windows. Disable color table lookups. Call library functions
53b37591 6673 through pointers determined at runtime.
fe929957
JB
6674 (init_external_image_libraries): Try to load libungif.dll and
6675 libtiff.dll.
53b37591 6676
45415a8f
KH
66772003-01-31 Kenichi Handa <handa@m17n.org>
6678
6679 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 6680 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 6681
a97e4138
JD
66822003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6683
e52bd6b7 6684 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 6685
6eed9bed
DL
66862003-01-30 Dave Love <fx@gnu.org>
6687
6688 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6689 (Fgarbage_collect): Use them.
6690 (init_alloc, syms_of_alloc): Set them up.
6691
100dcd40
JB
66922003-01-30 Juanma Barranquero <lektu@terra.es>
6693
6694 * w32fns.c (init_external_image_libraries): Add missing operator.
6695
fbd852af
JR
66962003-01-29 Jason Rumney <jasonr@gnu.org>
6697
6698 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6699 an alternative name for jpeg.dll.
6700
8a2d8020
KH
67012003-01-29 Kenichi Handa <handa@m17n.org>
6702
6703 * xdisp.c (set_cursor_from_row): Pay attention to string display
6704 properties.
6705
058c18c7
AC
67062003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6707
6708 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6709 <escape>.
6710 (keycode_to_xkeysym_table): Reformat and add more comments.
6711 (XTread_socket): Drop special case for backspace.
6712
385f11cf
AC
67132003-01-28 Andrew Choi <akochoi@shaw.ca>
6714
6715 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6716 values in old-style RGB specs.
6717
c922a224
JB
67182003-01-27 Juanma Barranquero <lektu@terra.es>
6719
6720 * w32fns.c (init_external_image_libraries): Try alternate names for the
6721 jpeg dll.
6722
0a1d6de0
JD
67232003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6724
6725 * gtkutil.c (create_dialog, xg_separator_p)
6726 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6727 before calling strcmp or strlen.
6728
a97e4138 67292003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
6730
6731 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6732 and handle image load failure.
6733
28908312
JR
67342003-01-26 Jason Rumney <jasonr@gnu.org>
6735
6736 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6737 New functions.
f63fd14e
JB
6738 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6739 Disable color table lookups. Call jpeg library functions
28908312
JR
6740 through pointers determined at runtime.
6741 (init_external_image_libraries): Try to load jpeg.dll.
6742
84e47416
RS
67432003-01-25 Richard M. Stallman <rms@gnu.org>
6744
6745 * lisp.h: Declare format2 instead of format1.
6746
6747 * fileio.c (barf_or_query_if_file_exists):
6748 Call format2 instead of format1.
6749
6750 * editfns.c (format2): New function, replaces format1
6751 but takes exactly two Lisp Objects as format args.
6752
6753 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6754
a97e4138 67552003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
6756
6757 * xterm.h: Change to return value of x_dispatch_event to int.
6758
6759 * xterm.c (x_filter_event): New function.
6760 (event_handler_gdk, XTread_socket): Call x_filter_event.
6761 (x_dispatch_event): Change to return value of finish.
6762 (event_handler_gdk): Use return value from x_dispatch_event.
6763
6764 * xfns.c (x_window): Call create_frame_xic for GTK version to
6765 initialize input methods.
6766
6767 * gtkutil.h: Add (void) prototypes.
6768
6769 * gtkutil.c (create_menus): Remove code that puts the help menu to
6770 the right.
6771
54eefef1
JR
67722003-01-25 Jason Rumney <jasonr@gnu.org>
6773
6774 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6775 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
6776 (png_load): Adjust colors for Windows. Use Windows
6777 bitmaps. Disable color table lookups.
c262430d
JR
6778 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6779 (init_png_functions): New function.
6780 (png_read_from_memory, png_load): Call png library functions
6781 through pointers determined at runtime.
6782 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6783 (init_external_image_libraries): New function.
6784 (init_xfns): Call it.
54eefef1 6785
1a9e275b
AS
67862003-01-24 Andreas Schwab <schwab@suse.de>
6787
6788 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6789
a97e4138 67902003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
6791
6792 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6793 of static initializer.
6794
422eec7e
DL
67952003-01-24 Dave Love <fx@gnu.org>
6796
6797 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6798 architectures.
6799
6800 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6801 Use __alignof__.
6802
2a026b04
KH
68032003-01-24 Kenichi Handa <handa@m17n.org>
6804
6805 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 6806 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
6807 (command_loop_1): Call adjust_point_for_property with proper
6808 second arg.
6809
a18bb28d
JR
68102003-01-22 Jason Rumney <jasonr@gnu.org>
6811
6812 Sync changes with xterm.c and xfns.c.
6813
6814 * w32term.c (x_draw_glyph_string_foreground)
6815 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6816
6817 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6818 phys_cursor's hpos is overwritten. This is still not completely
6819 correct, as it doesn't really make sense to use hpos at all to
6820 get the cursor glyph (as that is relative to the width of the
6821 characters on the line, which may have changed during the update).
6822
6823 * w32term.c (notice_overwritten_cursor): Handle the special case
6824 of the cursor being in the first blank non-text line at the
6825 end of a window.
6826
6827 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6828 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6829 Compute from the x position returned by x_draw_glyphs.
6830
6831 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6832 except for NO_CURSOR and system caret, to make phys_cursor_width
6833 contain what its name suggests.
6834 (notice_overwritten_cursor): Consider the cursor image erased if
6835 the output area intersects the cursor image in y-direction.
6836
6a097c0c
SM
6837 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6838 note_mode_line_highlight and extend.
a18bb28d
JR
6839
6840 * w32term.c (last_window): New variable.
6841 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6842 (note_mouse_movement): Remove reimplemented code in #if 0.
6843
6844 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6845 not update_mode_lines, and always set it to 1.
6846
ac6e47ef
JR
68472003-01-21 Jason Rumney <jasonr@gnu.org>
6848
6849 * w32fns.c (IDC_HAND): Define it if system headers don't.
6850
68512003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6852
6853 * w32term.h (struct w32_output): New member hand_cursor.
6854 (WM_EMACS_SETCURSOR): New message definition.
6855
6856 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6857 function w32_define_cursor.
6858 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6859 position, change member name output_data.x to output_data.w32 and
6860 add function w32_define_cursor.
6861 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6862 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
6863 (w32_initialize_display_info):
6864 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
6865
6866 * w32fns.c (Vx_hand_shape): New variable.
6867 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6868 WM_EMACS_SETCURSOR.
6869 (x-create-frame): Setup Cursor types.
6870
ceb39a17
JB
68712003-01-21 David Ponce <david@dponce.com>
6872
ac6e47ef 6873 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 6874 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 6875 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 6876 2002-09-30.)
ac6e47ef
JR
6877 (w32_draw_relief_rect): Declare all args.
6878 (w32_define_cursor): New.
6879
6880 * w32fns.c (w32_load_cursor): New function.
6881 (w32_init_class): Use it.
6882 (x_put_x_image): Declare all args.
6883
46cf0bed
JB
68842003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6885
6886 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
6887
a97e4138 68882003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
6889
6890 * gtkutil.c: Must include stdio.h before termhooks.h
6891
83fc9c63
DL
68922003-01-21 Dave Love <fx@gnu.org>
6893
6894 * alloc.c (Fgc_status): Print zombie list.
6895 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6896 Fix assignment of zombies.
6897 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6898 Don't take car of non-cons.
6899
6900 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6901
6902 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6903
fe04b8c8
JR
69042003-01-20 David Ponce <david@dponce.com>
6905
6906 * w32menu.c (digest_single_submenu): Declare all args.
6907
6908 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
6909 changes in xmenu.c:
6910
6911 (parse_single_submenu): Use individual keymap's prompt
6912 string as pane name, if there is one.
6913 (set_frame_menubar): Save menu_items_n_panes from each call to
6914 parse_single_submenu and use it when calling digest_single_submenu.
6915
539e69a9
ST
69162003-01-20 Steven Tamm <steventamm@mac.com>
6917
6918 * macterm.c (XTread_socket): Checks for valid, visible window
6919 before sending a scroll-wheel event.
6920
675d000f
RS
69212003-01-20 Richard M. Stallman <rms@gnu.org>
6922
6923 * xdisp.c (redisplay_window): If mini window's buffer is not
6924 a minibuffer, then redisplay it like other windows.
6925
a97e4138 69262003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
6927
6928 * gtkutil.c (xg_create_frame_widgets): Check if there is an
6929 external tool bar before setting tool bar height.
6930
048addec
JD
69312003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6932
6933 * xterm.c (handle_one_xevent): Surround popup_activated
6934 with #ifdef:s for non-toolkit version.
6935
6936 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
6937 (gtkutil.o): New file.
6938 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
6939 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
6940
6941 * gtkutil.c: New file for GTK version.
6942
6943 * gtkutil.h: New file for GTK version.
6944
6945 * xterm.h: Add xt_or_gtk_widget.
6946 Include gtk files for USE_GTK.
6947 (struct x_output): Add toolbar_height.
6948 (struct x_output): Add GTK widgets and Gdk size_hints.
6949 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
6950 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
6951 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
6952
6953 * xterm.c: Include gtkutil.h for USE_GTK.
6954 Declare extern void free_frame_menubar for USE_GTK.
6955 (note_mouse_highlight): Check popup_activated for USE_GTK.
6956 (xt_action_hook): Don't compile if USE_GTK.
6957 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
6958 (xg_scroll_callback): New function.
6959 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
6960 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
6961 for USE_GTK.
6962 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
6963 xg_show_scroll_bar for USE_GTK.
6964 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
6965 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
6966 (event_handler_gdk): New function for USE_GTK.
6967 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
6968 (handle_one_xevent): Make sure widget is mapped before
6969 calling x_real_positions for USE_GTK.
6970 (XTread_socket): Add GTK event loop for USE_GTK.
6971 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
6972 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
6973 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
6974 (x_iconify_frame): Add code for USE_GTK.
6975 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
6976 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
6977 is in gtkutil.c.
6978 (x_term_init): Add initialization for GTK.
6979 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
6980
6981 * xmenu.c: Include gtkutil.h for USE_GTK.
6982 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
6983 (single_menu_item, single_menu_item, Fx_popup_dialog):
6984 Check for USE_GTK.
048addec
JD
6985 (popup_widget_loop): New function for USE_GTK.
6986 (x_activate_menubar): Add code for USE_GTK.
6987 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
6988 (menu_highlight_callback, menubar_selection_callback):
6989 Add USE_GTK versions.
048addec
JD
6990 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
6991 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
6992 (free_frame_menubar): Only compile if not USE_GTK. GTK version
6993 is in gtkutil.c.
6994 (popup_selection_callback): New version for USE_GTK.
6995 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 6996 one USE_X_TOOLKIT version.
048addec
JD
6997 (xmenu_show): Call create_and_show_popup_menu.
6998 (dialog_selection_callback): New version for USE_GTK.
6999 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7000 one USE_X_TOOLKIT version.
048addec
JD
7001 (xdialog_show): Call create_and_show_dialog.
7002
7003 * xfns.c: Include gtkutil for USE_GTK.
7004 (x_window_to_frame, x_any_window_to_frame)
7005 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7006 (x_top_window_to_frame): Add code for USE_GTK.
7007 (x_set_background_color): Call xg_set_background_color for GTK.
7008 (x_set_menu_bar_lines): Check for USE_GTK.
7009 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7010 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7011 (x_window): Call xg_create_frame_widgets for USE_GTK.
7012 (Fx_create_frame): Check for USE_GTK
7013 (Fx_file_dialog): New implementation for USE_GTK.
7014
7015 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7016 (update_menu_bar): Add check for USE_GTK.
7017 (update_tool_bar): Add check for USE_GTK and external tool bar.
7018 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7019 (redisplay_internal): Add check for USE_GTK and popup_activated.
7020 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7021 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7022 (display_menu_bar): Add check for USE_GTK
7023
7024 * lisp.h: Declare Vx_resource_name extern.
7025
a64387ee 7026 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7027 for USE_GTK.
7028 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7029
7030 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7031 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7032 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7033
7034 * fileio.c (Fread_file_name): Add check for USE_GTK.
7035
6bdb309a
SM
7036 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7037 Add check for USE_GTK.
048addec
JD
7038
7039 * config.in: Added HAVE_GTK
7040
7041 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7042
70432003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7044
7045 * charset.h (Funibyte_char_to_multibyte): Export.
7046
70472003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7048
7049 * xmenu.c (mouse_position_for_popup): New function.
7050 (Fx_popup_menu): Call mouse_position_for_popup for X and
7051 mouse_position_hook for others.
7052
70532003-01-17 Kim F. Storm <storm@cua.dk>
7054
7055 * editfns.c (Finsert): Mention `string-make-multibyte' and
7056 `string-as-multibyte' in doc string.
7057
70582003-01-17 Kenichi Handa <handa@m17n.org>
7059
7060 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7061
048addec
JD
7062 * editfns.c (Fformat): Convert an unibyte char argument that is
7063 formatted by "%c" to multibyte if the total result must be a
7064 multibyte string.
cd7df9c0 7065
048addec 70662003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7067
048addec
JD
7068 * process.c (set-process-filter): Document unibyte/multibyte-ness
7069 of string argument.
56210ecd 7070
048addec 70712003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7072
048addec 7073 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7074
048addec
JD
7075 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7076 (re_search_2): Likewise.
6df8b9fe 7077
048addec 70782003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7079
048addec
JD
7080 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7081 buffer is unibyte.
292ddc31 7082
048addec 70832003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7084
048addec 7085 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7086
048addec
JD
7087 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7088 (Fprevious_char_property_change)
7089 (Fnext_single_char_property_change)
7090 (Fprevious_single_char_property_change, Fnext_property_change)
7091 (Fnext_single_property_change, Fprevious_property_change)
7092 (Fprevious_single_property_change, Fadd_text_properties)
7093 (Fput_text_property, Fset_text_properties)
7094 (Fremove_text_properties, Fremove_list_of_text_properties)
7095 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7096
048addec 70972003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7098
048addec
JD
7099 * process.h (struct Lisp_Process): New member plist replaces old
7100 member private_vars. All uses changed.
63e4e4c6 7101
048addec 7102 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7103 (QCplist): Rename from QCvars. Change all uses.
048addec 7104 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7105 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7106 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7107 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7108
048addec 71092003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7110
6bdb309a 7111 * m/delta.h: Remove (obsolete).
e833850f 7112
048addec 71132003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7114
048addec
JD
7115 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7116 behaviour in front of symlinks.
7117 (Fdelete_file): Raise an error on directories.
817cb127 7118
048addec 71192003-01-13 Dave Love <fx@gnu.org>
817cb127 7120
048addec 7121 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7122
048addec 71232003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7124
048addec
JD
7125 * minibuf.c (minibuffer_completion_contents):
7126 Error if point is inside prompt.
3e8cf2ea 7127
048addec
JD
7128 * keyboard.c (command_loop_1): Don't redisplay directly
7129 if there's a post-command-hook.
3e8cf2ea 7130
048addec
JD
7131 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7132 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7133
048addec 71342003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7135
048addec 7136 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7137
048addec
JD
7138 * process.c (QCvars): New variable.
7139 (syms_of_process): Intern and staticpro it.
7140 (Fset_process_contact): Removed function.
7141 (Fprocess_variable, Fset_process_variable): New functions.
7142 (syms_of_process): Defsubr them.
7143 (Fstart_process): Initialize private_vars plist to nil.
7144 (Fmake_network_process): New arg :vars to setup the private
7145 variables for new network process.
7146 (server_accept_connection): Copy server's private variables to
7147 client process.
2c10f029 7148
048addec
JD
7149 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7150 crashes). Code rewritten and simplified. Now directly aligns the
7151 pointer and recalculates pure_bytes_used, rather than aligning the
7152 size and adjusting the pointer.
b8a76c6c 7153
048addec 71542003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7155
048addec
JD
7156 * process.c (Fset_process_contact): New function.
7157 (syms_of_process): defsubr it.
7158 (make-network-process): Update doc.
3a8d0899 7159
048addec 71602003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7161
048addec
JD
7162 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7163 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7164
048addec 71652003-01-10 Dave Love <fx@gnu.org>
4abc7470 7166
048addec 7167 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7168
048addec 71692003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7170
048addec
JD
7171 * process.c (Fmake_network_process): Convert new port number
7172 to host byte order for `:service t' case. From Mario Lang.
bf338245 7173
048addec 71742003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7175
048addec
JD
7176 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7177 instead of XtAppProcessEvent.
bf338245 7178
048addec
JD
7179 * xterm.c (handle_one_xevent): New function.
7180 (x_dispatch_event): New function.
7181 (XTread_socket): Call handle_one_xevent.
bf338245 7182
048addec 7183 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7184
048addec
JD
7185 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7186 call XQueryPointer to get coordinates.
7187 (popup_get_selection): Do not set popup_activated_flag to zero,
7188 let popup_deactivate_callback do that. Needed for Motif.
7189 Call x_dispatch_event instead of XtDispatchEvent.
7190 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7191
048addec 71922003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7193
6bdb309a 7194 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7195 connection's local address in :local property of contact info.
7196 (Fmake_network_process): Record local network address for new
7197 client processes in :local property of contact info.
6bdb309a 7198 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7199
048addec 72002003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7201
048addec 7202 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7203
048addec 72042003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7205
048addec 7206 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7207
048addec
JD
7208 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7209 use the same test as for custom-variable-p.
8c6d74c6 7210
048addec 72112003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7212
048addec
JD
7213 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7214 Count LAST_LINE_MISFIT in scroll margin for end of window.
7215 Move label too_near_end before setting SCROLL_MARGIN_POS.
7216 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7217
048addec
JD
7218 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7219 scroll_conservatively case. If scrolling that much doesn't change
7220 STARTP, move it down one line.
e833850f 7221
048addec
JD
7222 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7223 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7224
048addec
JD
7225 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7226 selected frame.
8c6d74c6 7227
048addec
JD
7228 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7229 (syms_of_keymap): staticpro them.
7230 (Fapropos_internal): Initialize them and clear them out.
7231 Don't GCPRO them.
8c6d74c6 7232
048addec
JD
7233 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7234 Doc fixes.
8c6d74c6 7235
048addec
JD
7236 * lisp.h: New misc type Lisp_Save_Value.
7237 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7238 (XSAVE_VALUE): New macro.
7239 (struct Lisp_Save_Value): New data type.
7240 (union Lisp_Misc): Add u_save_value alternative.
7241 (make_save_value): Declared.
8c6d74c6 7242
048addec 7243 * alloc.c (make_save_value): New function.
8c6d74c6 7244
048addec
JD
7245 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7246 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7247
048addec 72482003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7249
048addec 7250 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7251
048addec
JD
7252 * keyboard.c (command_loop_1): Call adjust_point_for_property
7253 in direct action cases for Qforward_char and Qbackward_char.
7254 Set already_adjusted so it won't be done twice.
8c6d74c6 7255
048addec 72562002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7257
048addec
JD
7258 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7259 type definition of size_t.
8c609cff 7260
048addec 72612003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7262
048addec
JD
7263 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7264 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7265
048addec 72662002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7267
048addec
JD
7268 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7269 to default to t.
fa634a5e 7270
048addec 72712002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7272
048addec 7273 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7274
048addec 72752002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7276
048addec
JD
7277 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7278 allow building in a different directory than source. Uses some
7279 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7280
048addec 72812002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7282
048addec
JD
7283 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7284 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7285 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7286 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7287
048addec 72882002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7289
048addec
JD
7290 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7291 <scroll-down-aggressively>: Doc fix.
2155ecf3 7292
048addec
JD
7293 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7294 string as pane name, if there is one.
7295 (set_frame_menubar): Save menu_items_n_panes from each call to
7296 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 7297
048addec
JD
7298 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7299 Don't try to make last line fully visible if it is past end of window.
61f1d295 7300
048addec 73012002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 7302
048addec
JD
7303 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7304 (mac_menu_show): Add support for hierarchical popup menus.
7305 (add_menu_item): Remove indentation support.
7306 (fill_submenu, fill_menu): Create hierarchical menus
7307 instead of using indentation.
0b17a217 7308
048addec 73092002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 7310
048addec
JD
7311 * xdisp.c (try_cursor_movement): Don't call try_window here.
7312 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 7313
048addec 7314 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 7315
048addec 73162002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 7317
048addec
JD
7318 * macterm.c (XTread_socket): Call KeyTranslate for control and
7319 meta to deal correctly shifted non-alpha characters, like C-S-5
7320 being treated like C-%. Does not look for shift key to deal
7321 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 7322
048addec 73232002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 7324
048addec
JD
7325 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7326 If it is non-nil, run timers. Use an unwind-protect to requeue
7327 the events that were read ahead.
7328 (popup_get_selection_unwind): New subroutine.
7329 (popup_get_selection_queue): File-scope variable now holds that queue.
7330 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7331 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7332 Use an unwind-protect to pop down the dialog box.
7333 (xdialog_show_unwind): New subroutine implements that.
f02cac82 7334
048addec
JD
7335 * xdisp.c (row_containing_pos): Change exit test using last_y.
7336 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 7337
048addec
JD
7338 * lread.c (load_error_handler): New function.
7339 (Fload): Handle errors in Fsubstitute_in_file_name.
7340 Don't expect Fsignal to return.
f02cac82 7341
048addec
JD
7342 * eval.c: Errors and throws work right with interrupt blocking.
7343 (struct catchtag): New elt interrupt_input_blocked.
7344 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7345 (internal_catch, Fcondition_case, internal_condition_case)
7346 (internal_condition_case_1, internal_condition_case_2): Save it.
7347 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 7348
048addec 7349 * editfns.c (Fformat): Add parens.
f02cac82 7350
048addec
JD
7351 * dired.c (file_name_completion): Fix that change.
7352 Delete special quit-handling code; just use QUIT.
f02cac82 7353
048addec 73542002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 7355
048addec
JD
7356 * dired.c (file_name_completion): Close directory on error
7357 just as in directory_files_internal.
1a590729 7358
048addec 73592002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 7360
048addec
JD
7361 * window.c (Fset_window_configuration): Set old_point to correct
7362 value when new_current_buffer == current_buffer.
f02cac82 7363
048addec 73642002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 7365
048addec
JD
7366 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7367 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7368 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 7369
048addec
JD
7370 These changes were in part based upon suggestions made by Peter
7371 'Luna' Runestig [peter@runestig.com].
9785d95b 7372
048addec
JD
7373 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7374 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 7375 g_b_init_get_sid_identifier_authority ): Add several static
048addec 7376 global variables.
9785d95b 7377
048addec
JD
7378 * w32.c (globals_of_w32): New function. Used to initialize those
7379 global variables that must always be initialized on startup even
7380 when the global variable initialized is non zero. Its primary
7381 purpose at this time is to set the global variables
7382 g_b_init_is_windows_9x, g_b_init_open_process_token,
7383 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7384 g_b_init_get_sid_identifier_authority to 0 on startup.
7385 Called from main.
9785d95b 7386
048addec
JD
7387 * w32.c (is_windows_9x): Perform initialization only if
7388 g_b_init_is_windows_9x is equal to 0. On initialization set
7389 g_b_init_is_windows_9x equal to 1.
2308af15 7390
048addec
JD
7391 * w32.c (open_process_token): Perform initialization only if
7392 g_b_init_open_process_token is equal to 0. On initialization set
7393 g_b_init_open_process_token equal to 1.
2308af15 7394
048addec
JD
7395 * w32.c (get_token_information): Perform initialization only if
7396 g_b_init_get_token_information is equal to 0. On initialization
7397 set g_b_init_get_token_information equal to 1.
9785d95b 7398
048addec
JD
7399 * w32.c (lookup_account_sid): Perform initialization only if
7400 g_b_init_lookup_account_sid is equal to 0. On initialization
7401 set g_b_init_lookup_account_sid equal to 1.
9785d95b 7402
048addec
JD
7403 * w32.c (get_sid_identifier_authority): Perform initialization
7404 only if g_b_init_get_sid_identifier_authority is equal to 0.
7405 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 7406
f63fd14e 7407 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
7408 those global variables that must always be initialized on startup
7409 even when the global variable initialized is non zero.
7410 Its primary purpose at this time is to initialize the global variable
7411 track_mouse_event_fn.
9785d95b 7412
a64387ee 7413 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 7414 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 7415
048addec 7416 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 7417
f63fd14e 7418 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
7419 initialize those global variables that must always be initialized
7420 on startup even when the global variable initialized is non zero.
7421 Its primary purpose at this time is to initialize the global
7422 variables get_menu_item_info and set_menu_item_info.
9785d95b 7423
048addec
JD
7424 * w32menu.c (initialize_frame_menubar): Remove initialization of
7425 get_menu_item_info and set_menu_item_info.
9785d95b 7426
048addec 7427 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 7428
048addec
JD
7429 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7430 Declare them.
9785d95b 7431
048addec
JD
7432 * emacs.c (main): Call globals_of_w32 prior to calling
7433 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7434 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7435 is defined.
9785d95b 7436
048addec
JD
7437 * w32term.c (x_update_window_begin): Fix Windows API error
7438 detected by BoundsChecker. Test to determine if
7439 w32_system_caret_hwnd is NULL prior to attempting to use
7440 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 7441
048addec
JD
7442 * w32term.c (x_update_window_end): Fix Windows API error
7443 detected by BoundsChecker. Test to determine if
7444 w32_system_caret_hwnd is NULL prior to attempting to use
7445 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 7446
048addec 74472002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 7448
048addec
JD
7449 * coding.c (coding_system_require_warning): New variable.
7450 (syms_of_coding): DEFVAR it.
b6da19ef 7451
048addec 7452 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 7453
048addec
JD
7454 * fileio.c (choose_write_coding_system): Even if
7455 Vcoding_system_for_write is non-nil, if
7456 coding_system_require_warning is nonzero, call
7457 Vselect_safe_coding_system_function.
bfcf6dbe 7458
048addec 74592002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 7460
048addec
JD
7461 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7462 (lisp): Add font-core.
2c568af5 7463
048addec 74642002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 7465
048addec
JD
7466 * textprop.c (text_read_only): New arg `propval'.
7467 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7468 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 7469
048addec 74702002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 7471
048addec 7472 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 7473
048addec 74742002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 7475
048addec
JD
7476 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7477 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7478 Be more careful about when help_events are generated.
96720f09 7479
048addec 74802002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 7481
048addec
JD
7482 * macterm.c (mac_check_for_quit_char): Correctly set the
7483 modifiers of the event to 0.
7484 * mac.c (sys_select): Duplicate rfds before calling select to
7485 ensure that rfds survive the while loop.
e5ae1c49 7486
048addec 74872002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 7488
048addec
JD
7489 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7490 row_containing_pos returned NULL.
2eb46b2d 7491
048addec 74922002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 7493
6bdb309a 7494 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 7495 non-blocking.
6bdb309a 7496 (sys_select): Fix sys_select to not use a timeout larger than
048addec 7497 the one given.
b11f1d8a 7498
048addec 74992002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 7500
048addec 7501 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 7502
048addec 75032002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 7504
048addec
JD
7505 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7506 as the last thing.
a4ac5b17 7507
048addec 75082002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 7509
048addec 7510 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 7511
048addec 75122002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 7513
048addec
JD
7514 * editfns.c (Fformat): Handle precision in string conversion
7515 specifiers like libc functions do (ie, print at most that many
7516 characters).
85cce843 7517
048addec 75182002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 7519
048addec
JD
7520 * xdisp.c (row_containing_pos): Check more carefully
7521 whether charpos is really in the row before returning it.
0d4d26a7 7522
048addec 75232002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 7524
048addec 7525 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 7526
048addec
JD
7527 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7528 each stack frame. This may change as it could be time consuming.
0d4d26a7 7529
048addec
JD
7530 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7531 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 7532 (mac_initialize): Add code to check for pressing of quit_char
048addec 7533 in the OS event queue.
b11f1d8a 7534
048addec
JD
7535 * mac.c (sys_select): Call mac_check_for_quit_char every second
7536 while blocking on select.
0d4d26a7 7537
048addec
JD
7538 * mac.c (sys_read): Use sys_select to test for input first
7539 before calling read, to allow C-g to break.
9252f7bc 7540
048addec 75412002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 7542
048addec 7543 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 7544
048addec 7545 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 7546
048addec 7547 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 7548
048addec
JD
7549 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7550 autoload.
9252f7bc 7551
048addec 7552 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 7553
048addec 7554 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 7555
048addec 75562002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 7557
048addec 7558 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 7559
048addec 75602002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 7561
048addec 7562 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7563
048addec 7564 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7565
048addec 7566 * alloca.c: Don't use #error.
02d588e2 7567
048addec 75682002-12-03 Dave Love <fx@gnu.org>
02d588e2 7569
048addec
JD
7570 * buffer.c (Qucs_set_table_for_input): New.
7571 (Fget_buffer_create): Use it.
7572 (Qset_buffer_major_mode_hook): Deleted.
7573 (Fset_buffer_major_mode): Revert previous change.
7574 (init_buffer_once): Intern ucs-set-table-for-input.
7575 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7576 Add &Qucs_set_table_for_input.
451e2697 7577
048addec 75782002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 7579
048addec
JD
7580 * callint.c (Fcall_interactively): Use next_event only if less
7581 than key_count.
72742a99 7582
048addec 75832002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 7584
048addec
JD
7585 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7586 names to 255 characters.
72742a99 7587
048addec
JD
7588 * macterm.c (XTread_socket): If all frames have been collapsed,
7589 expand the first one before handling drag-and-drop events.
72742a99 7590
048addec
JD
7591 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7592 which is detected by autoconf.
40e6ff95 7593
048addec 75942002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 7595
048addec
JD
7596 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7597 offset in two hints table to allow prebinding to be redone and
7598 allow the executable to be stripped.
c02138c6 7599
048addec 76002002-11-29 Dave Love <fx@gnu.org>
c02138c6 7601
048addec
JD
7602 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7603 already provided.
0e47bbf7 7604
048addec 76052002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 7606
048addec
JD
7607 * xdisp.c (start_display): Check more intelligently for
7608 whether the line is continued.
7609 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 7610
048addec 76112002-11-28 Dave Love <fx@gnu.org>
44129dcb 7612
048addec
JD
7613 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7614 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 7615
048addec 76162002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 7617
048addec
JD
7618 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7619 more descriptive error output from lread.c:Fload upon most require
7620 cycles during boostrapping.
1637fd2c 7621
048addec 76222002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 7623
048addec
JD
7624 * fileio.c (Finsert_file_contents): Give a more appropriate error
7625 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 7626
048addec
JD
7627 * dired.c (Ffile_attributes): Don't return negative file sizes for
7628 files bigger than 2Gb when off_t is 32 bit.
540c2788 7629
048addec 76302002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 7631
048addec 7632 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 7633
048addec
JD
7634 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7635 Test GETPGRP_VOID instead.
7636 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 7637
048addec
JD
7638 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7639 Don't define.
7640 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 7641
048addec 7642 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 7643
048addec 76442002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 7645
048addec
JD
7646 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7647 supported.
4042a81a 7648
048addec 76492002-11-25 Dave Love <fx@gnu.org>
4042a81a 7650
048addec 7651 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 7652
048addec 7653 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 7654
048addec 76552002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 7656
048addec 7657 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 7658
048addec 76592002-11-24 Steven Tamm <steventamm@mac.com>
82122254 7660
048addec
JD
7661 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7662 determine the size of pointers alloced in unexed space instead
7663 of using possibly invalid emacs_zone pointers. This fixes the
7664 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 7665
048addec 76662002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 7667
048addec 7668 * search.c (Fstring_match): Doc fix.
c1ee53bc 7669
048addec
JD
7670 * callint.c (Fcall_interactively): If a command fails because
7671 `*' detects a read-only buffer, but RECORD_FLAG is set,
7672 record it anyway if the args don't actually do tty input.
5598c32e 7673
048addec 76742002-11-22 Dave Love <fx@gnu.org>
5598c32e 7675
048addec 7676 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 7677
048addec
JD
7678 * keyboard.c (interrupt_signal): Provide forward declaration.
7679 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 7680
048addec 7681 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 7682
048addec 76832002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 7684
048addec
JD
7685 * eval.c (interactive_p): Skip any number of bytecode
7686 and special form frames, in any order.
516eea8e 7687
048addec 76882002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 7689
048addec
JD
7690 * w32fns.c (convert_mono_to_color_image): New function.
7691 (xbm_load, xbm_load_image): Use it when foreground or background
7692 is explicitly set.
04dbfa08 7693
048addec 76942002-11-19 Dave Love <fx@gnu.org>
04dbfa08 7695
048addec 7696 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 7697
048addec 76982002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 7699
048addec
JD
7700 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7701 (XPutPixel): Swap blue and red.
7702 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7703 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7704 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7705 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 7706
048addec 77072002-11-18 Dave Love <fx@gnu.org>
d824beee 7708
048addec 7709 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 7710
048addec 7711 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 7712
048addec 7713 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 7714
048addec
JD
7715 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7716 malloc, realloc, calloc.
d824beee 7717
048addec
JD
7718 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7719 (bcmp): Don't define.
d824beee 7720
048addec 7721 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 7722
048addec 7723 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 7724
048addec 7725 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 7726
048addec 7727 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 7728
048addec
JD
7729 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7730 Don't include alloca.h.
d824beee 7731
048addec 7732 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 7733
048addec 7734 * regex.c (_GNU_SOURCE): Don't define.
1998560a 7735
048addec 7736 * process.c (_GNU_SOURCE): Don't define.
1998560a 7737
048addec 7738 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 7739
048addec 77402002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 7741
048addec 7742 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 7743
048addec 77442002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 7745
048addec
JD
7746 * dispextern.h (struct face): Add `overstrike' field.
7747 * xterm.c (x_draw_glyph_string_foreground)
7748 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7749 * xfaces.c (load_face_font): Set `face->overstrike' based on
7750 result from choose_face_font.
7751 (best_matching_font, choose_face_font): Add `needs_overstrike'
7752 argument, and use it to return whether overstriking is desirable
7753 for this face/font combo.
7754 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 7755
048addec 77562002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 7757
048addec
JD
7758 This change is my fix for the following entry in etc/PROBLEMS:
7759 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7760 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 7761
048addec
JD
7762 * w32.c: Added wrapper functions around the win32 API functions
7763 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7764 GetSidIdentifierAuthority. These wrapper functions serve two
7765 purposes:
7766 1. They ensure that the wrapped function can never be called
7767 when Emacs is running on an operating system on which they are
7768 not supported (Microsoft Windows 95 / 98 / ME).
7769 2. They call the wrapped functions via function pointers rather
7770 than calling them directly. This avoids taking advantage of the
7771 undocumented fact that although these functions are not supported
7772 in the 9x branch of Microsoft Windows, the functions do exist in
7773 the version of advapi32.dll that is found in the 9x branch of
7774 Microsoft Windows.
f60ae425 7775
6bdb309a 7776 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
7777 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7778 and GetSidIdentifierAuthority with calls to the newly added
7779 wrapper functions.
f60ae425 7780
048addec
JD
7781 * w32.h: Added extern declarations for the following functions:
7782 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7783 syms_of_w32menu, and void syms_of_fontset.
f60ae425 7784
6bdb309a 7785 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
7786 function pointer track_mouse_event_fn in the handler for the
7787 WM_SETFOCUS message.
3582b6a3 7788
6bdb309a 7789 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
7790 reinitialize the function pointers set_menu_item_info and
7791 get_menu_item_info.
f60ae425 7792
048addec 77932002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 7794
048addec
JD
7795 * sound.c: Added a partial implementation of play-sound-internal
7796 for Microsoft Windows. Added various #ifdef / #else / #endif
7797 code blocks to separate the code that will compile under
7798 Microsoft Windows from the code that is specific to Gnu/Linux.
7799 Moved several blocks of code around to make this separation of code
7800 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 7801
048addec 7802 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 7803
048addec
JD
7804 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7805 added support for play-sound-internal under Windows would be
7806 included in the build of Emacs.
517f42a0 7807
048addec 78082002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 7809
048addec 7810 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 7811
048addec 7812 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 7813
048addec 78142002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 7815
048addec
JD
7816 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7817 (adjust_point_for_property): Move out of display and invisible even if
7818 we were already inside before (in case a property was added while
7819 we weren't looking). Be more careful when handling invisible props.
7820 Skip invisible text as if it really wasn't there at all.
aab83f91 7821
048addec 78222002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 7823
048addec
JD
7824 * w32term.c (x_draw_image_foreground)
7825 (w32_draw_image_foreground_1): Use standard copy and invert
7826 operations to draw images.
aab83f91 7827
048addec
JD
7828 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7829 depth of 1.
7830 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7831 (XPutPixel): Don't invert bits here.
a4478a76 7832
048addec 78332002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 7834
048addec
JD
7835 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7836 (w32_draw_image_foreground_1): Handle image masks.
7837 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 7838
048addec
JD
7839 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7840 (x_from_xcolors): Adjust RGB values for W32.
7841 (image_background, image_background_transparent)
7842 (postprocess_image, x_to_xcolors, x_disable_image)
7843 (x_build_heuristic_mask): Adapt for W32 and enable.
7844 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7845 (xbm_load): Remove unused variable.
03670a65 7846
048addec 78472002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 7848
048addec 7849 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 7850
048addec 78512002-11-14 Dave Love <fx@gnu.org>
59daa29a 7852
048addec 7853 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 7854
048addec
JD
7855 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7856 * xmenu.c (unuse_menu_items, digest_single_submenu):
7857 * xfns.c (x_put_x_image):
7858 * xdisp.c (message2_nolog, set_message):
7859 * undo.c (record_point):
7860 * terminfo.c (tparam):
7861 * syntax.c (scan_sexps_forward):
7862 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7863 * composite.c (update_compositions):
7864 * cm.c (calccost, cmgoto):
7865 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 7866
048addec 7867 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 7868
048addec
JD
7869 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7870 Don't declare.
59daa29a 7871
048addec 7872 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 7873
048addec
JD
7874 * fns.c (Fcopy_sequence): Doc fix.
7875 (Fmap_char_table): Cast `call2'.
3947677c 7876
048addec
JD
78772002-11-14 Francesco Potorti` <pot@gnu.org>
7878
7879 * s/sol2-8.h: New file.
7880
78812002-11-14 Kim F. Storm <storm@cua.dk>
7882
7883 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
7884 dependency on `risky-local-variable' and the :propertize form.
7885
78862002-11-12 Stefan Monnier <monnier@cs.yale.edu>
7887
7888 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
7889
7890 * syntax.c (scan_sexps_forward): Undo last patch.
7891 Use a more obvious fix: check eob before updating the syntax table.
7892
78932002-11-09 Stefan Monnier <monnier@cs.yale.edu>
7894
7895 * syntax.c (scan_sexps_forward): Update syntax table before reading
7896 a char rather than after so we don't update the table past eob.
7897
78982002-11-09 Dave Love <fx@gnu.org>
7899
7900 * buffer.c (Fset_buffer_major_mode): Fix last change.
7901
7902 * regex.c (regexec): Fix pmatch declaration.
7903
7904 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
7905
7906 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
7907 to self-inserting characters.
7908 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
7909
7910 * coding.c (Vtranslation_table_for_input): New.
7911 (syms_of_coding): DEFVAR it.
7912
79132002-11-08 Juanma Barranquero <lektu@terra.es>
7914
7915 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
7916 window.
7917
79182002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7919
6bdb309a 7920 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
7921 cp, and i.
7922
79232002-11-06 Dave Love <fx@gnu.org>
7924
7925 * buffer.c (Qset_buffer_major_mode_hook): New.
7926 (Fset_buffer_major_mode): Use it.
7927
79282002-11-06 Richard M. Stallman <rms@gnu.org>
7929
7930 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
7931 and stop_polling.
7932
7933 * process.c (wait_reading_process_input):
7934 Test POLLING_PROBLEM_IN_SELECT, not hpux.
7935 Avoid initialization for auto Lisp_Object var.
7936
7937 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
7938
7939 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
7940
79412002-11-05 Richard M. Stallman <rms@gnu.org>
7942
7943 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
7944
7945 * callint.c (Fcall_interactively): New local filter_specs.
7946 (Fcall_interactively): Check for progn as well as let.
7947 Add a gcpro.
7948 (Qprogn): New variable.
7949 (syms_of_callint): Staticpro and init Qprogn.
7950
79512002-11-04 John Paul Wallington <jpw@shootybangbang.com>
7952
7953 * lread.c (Feval_buffer): Doc fix.
7954
79552002-11-04 Dave Love <fx@gnu.org>
7956
7957 * keyboard.c (read_char): Always translate iff
7958 Vkeyboard_translate_table is a char table and c is valid.
7959
7960 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
7961 and fix C types.
7962
79632002-11-03 Stefan Monnier <monnier@cs.yale.edu>
7964
7965 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
7966
7967 * editfns.c (get_pos_property): Don't hardcode Qfield.
7968
7969 * keyboard.c (adjust_point_for_property): Handle `display' prop on
7970 overlays. Also handle `invisible' prop.
7971
79722002-11-02 Stefan Monnier <monnier@cs.yale.edu>
7973
7974 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
7975 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
7976
79772002-11-01 Andreas Schwab <schwab@suse.de>
7978
7979 * editfns.c (Fmessage): Revert last change to properly handle %%.
7980
79812002-11-01 Stefan Monnier <monnier@cs.yale.edu>
7982
7983 * xmenu.c (unuse_menu_items): New fun.
7984 (menu_items_inuse): New var.
7985 (syms_of_xmenu): Initialize it.
7986 (init_menu_items): Use it to detect re-entrance.
7987 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
7988 (Fx_popup_menu): Remove spurious XSETFRAME.
7989
7990 * editfns.c (find_field): Make an exception for nil fields.
7991
79922002-11-01 Dave Love <fx@gnu.org>
7993
7994 * m/gec63.h: Deleted.
7995
79962002-10-31 Dave Love <fx@gnu.org>
7997
7998 * xterm.c (XTread_socket): Fix last change.
7999 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8000
80012002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8002
8003 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8004
80052002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8006
8007 * editfns.c (overlays_around, get_pos_property): New funs.
8008 (find_field): Use them.
8009 Also be careful not to modify POS before its last use.
8010 (Fmessage): Don't Fformat if there's nothing to format.
8011
80122002-10-30 Dave Love <fx@gnu.org>
8013
8014 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8015 [HAVE_PTY_H]; Include pty.h.
8016
8017 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8018
8019 * xterm.c (Qeql): Declare.
8020 (Vx_keysym_table): New.
8021 (syms_of_xterm): Initialize it.
8022 (XTread_socket): Use it. Deal with ASCII keysyms.
8023 (XSetIMValues) [HAVE_X11R6]: Prototype.
8024
8025 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8026 (lispy_kana_keys): Comment out.
8027 (make_lispy_event) [XK_kana_A]: Comment out.
8028 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8029 Fix sprintf call.
8030
8031 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8032 regexp.h change).
8033 (TERMINFO, LIBS_TERMCAP): Define.
8034
8035 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8036 (bcmp): Define conditional on HAVE_BCMP.
8037 (NO_SIOCTL_H): Don't define.
8038 (TIOCSIGSEND): Don't make conditional on IRIX6.
8039
8040 * s/sol2-5.h: Don't include strings.h.
8041 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8042
8043 * s/irix6-0.h (IRIX6): Don't define.
8044 (bcopy, bcmp, bzero): Don't undef.
8045
8046 * s/irix6-5.h: Don't include strings.h.
8047 (IRIX6): Don't define.
8048 (bcopy, bcmp, bzero): Don't undef.
8049
8050 * syntax.c (Fforward_comment): Doc fix.
8051
80522002-10-29 Kim F. Storm <storm@cua.dk>
8053
8054 * process.c (Fsignal_process): Allow PROCESS to be specified by
8055 name in addition to pid (as integer or string).
8056
80572002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8058
8059 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8060 environments.
8061
80622002-10-27 Kim F. Storm <storm@cua.dk>
8063
8064 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8065
8066 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8067
8068 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8069
8070 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8071
80722002-10-26 Richard M. Stallman <rms@gnu.org>
8073
8074 * editfns.c (Fformat): Detect invalid format letters for floats.
8075
80762002-10-25 Kenichi Handa <handa@m17n.org>
8077
8078 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8079 (x_set_title): Likewise.
8080
80812002-10-25 Juanma Barranquero <lektu@terra.es>
8082
8083 * macgui.h:
8084 * w32gui.h: Remove definition of XColor.
8085
8086 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8087
80882002-10-24 Kim F. Storm <storm@cua.dk>
8089
8090 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8091 Callers changed (supply dummy arg).
8092
8093 * lisp.h (get_window_cursor_type): Update prototype.
8094
8095 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8096 get_window_cursor_type to track system caret.
8097
80982002-10-24 Kim F. Storm <storm@cua.dk>
8099
8100 * process.c (Fformat_network_address): New function.
8101 (syms_of_process): Defsubr it.
8102 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8103 service/host is not set; before Emacs would crash in that case.
048addec
JD
8104 (Fmake_network_process): Don't use Ffind_operation_coding_system
8105 to setup coding system if host or service is not set.
8106
81072002-10-23 Juanma Barranquero <lektu@terra.es>
8108
8109 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8110
8111 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8112 COLORREF.
8113
8114 * macgui.h:
8115 * w32gui.h: Add definition of XColor.
8116
8117 * macfns.c:
8118 * w32fns.c:
8119 * xfaces.c: Remove definition of XColor.
8120
81212002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8122
8123 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8124
8125 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8126 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8127 window if it is dedicated.
8128 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8129 (Vspecial_display_function): Update docstring.
8130
8131 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8132 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8133 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8134
81352002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8136
8137 * casefiddle.c (casify_region): Don't treat a prefix char as part
8138 of a word when at the beginning.
8139
81402002-10-17 Juanma Barranquero <lektu@terra.es>
8141
8142 * lread.c (syms_of_lread): Fix typos.
8143
81442002-10-17 Dave Love <fx@gnu.org>
8145
8146 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8147
81482002-10-16 Richard M. Stallman <rms@gnu.org>
8149
8150 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8151
81522002-10-14 Juanma Barranquero <lektu@terra.es>
8153
8154 * w16select.c (syms_of_win16select): Fix docstring for
8155 `selection-coding-system'.
8156
8157 * w32select.c (syms_of_w32select): Likewise.
8158
81592002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8160
8161 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8162 a backslash-quoted char.
8163 (scan_lists, scan_sexps_forward): Pacify the compiler.
8164
81652002-10-13 Richard M. Stallman <rms@gnu.org>
8166
8167 * window.c (window_scroll): Set immediate_quit.
8168
8169 * print.c (print): When backquote form is the car of a list,
8170 output in old style. Use old_backquote_output to output all
8171 comma forms inside it in old style too.
8172
8173 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8174
81752002-10-11 Markus Rost <rost@math.ohio-state.edu>
8176
8177 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8178 batch mode).
8179
8180 * lread.c (Fload): Doc fix (load-suffixes).
8181
81822002-10-10 Steven Tamm <steventamm@mac.com>
8183
8184 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8185 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8186 Also switch the default to Qnil from Qt.
8187
81882002-10-08 Kenichi Handa <handa@m17n.org>
8189
8190 * coding.c (code_convert_region): When we need more GAP for
8191 conversion, pay attention to the case that coding->produced is not
8192 greater than coding->consumed.
8193
81942002-10-07 Richard M. Stallman <rms@gnu.org>
8195
8196 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8197
81982002-10-06 Andrew Choi <akochoi@shaw.ca>
8199
8200 * macmenu.c (mac_menu_show): Add j to count menu items; match
8201 menu_item_selection to it to find selected item.
8202
82032002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8204
8205 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8206 cases. The correct fix is to pass ReparentNotify to Xt.
8207 The shell widget interprets ConfigureNotify differently depending
8208 on if it has been reparented or not.
8209
82102002-10-05 Markus Rost <rost@math.ohio-state.edu>
8211
8212 * editfns.c (Fformat_time_string): Doc fix.
8213
82142002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8215
8216 * fns.c (Flength): Doc fix.
8217
82182002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8219
8220 * keyboard.c (keyremap): New struct.
8221 (read_key_sequence): Use it: globally replace keytran_foo with
8222 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8223 keytran_next and fkey_next to just `next'.
8224
82252002-10-04 Steven Tamm <steventamm@mac.com>
8226
8227 * macterm.c (keycode_to_xkeysym_table): Change return to be
8228 treated like an X keysym.
8229
82302002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8231
8232 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8233 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8234 This is to also handle x/y changes that occur because of a resize.
8235
82362002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8237
8238 * frame.c (Vdelete_frame_functions): New variable.
8239 (syms_of_frame): Initialize and defvar it.
8240 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8241 it when frame's `tooltip' parameter is non-nil.
8242
8243 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8244
8245 * w32fns.c (x_create_tip_frame): Likewise.
8246
8247 * macfns.c (x_create_tip_frame): Likewise.
8248
82492002-09-30 Kenichi Handa <handa@m17n.org>
8250
8251 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8252 -1 before calling ccl_driver.
8253
8254 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8255 Only when it is non-nil, handle composition sequence.
8256 (setup_coding_system) <0>: Don't force composition handling.
8257
8258 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8259
82602002-09-29 Richard M. Stallman <rms@gnu.org>
8261
8262 * search.c (Freplace_match): Adjust match data for the substitution
8263 just made in the buffer.
8264
8265 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8266 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8267
82682002-09-27 Richard M. Stallman <rms@gnu.org>
8269
8270 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8271 (read_char): Use them. Do all exits thru the end of the function.
8272
82732002-09-27 Kenichi Handa <handa@etl.go.jp>
8274
8275 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8276 is nil.
8277
82782002-09-26 Richard M. Stallman <rms@gnu.org>
8279
8280 * regex.h (__restrict_arr): Don't define if already defined.
8281
8282 * coding.c (run_pre_post_conversion_on_str):
8283 Save and restore Vdeactivate_mark.
8284
82852002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8286
8287 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8288
82892002-09-26 Kenichi Handa <handa@etl.go.jp>
8290
8291 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8292 nonzero, try face's family at first. Otherwise try FAMILY at first.
8293 (choose_face_font): If C is a single byte char or latin-1, call
8294 try_font_list with PREFER_FACE_FAMILY 1.
8295
82962002-09-21 Richard M. Stallman <rms@gnu.org>
8297
8298 * window.c (select_window_1): Don't select frame.
8299 Set frame's selected window only when frame itself is selected.
8300 (Fselect_window): Doc fix.
8301
83022002-09-18 Kim F. Storm <storm@cua.dk>
8303
8304 * process.c (make-network-process): Doc fix (there is no
8305 network-server-log-function hook).
8306
83072002-09-18 Richard M. Stallman <rms@gnu.org>
8308
8309 * print.c (print): Clear out the unused parts of Vprint_number_table.
8310 (syms_of_print): Doc fix for `print-number-table'.
8311
8312 * unexelf.c (unexec): Undo previous change.
8313
83142002-09-17 Andreas Schwab <schwab@suse.de>
8315
8316 * m/alpha.h [LINUX]: Don't define DATA_START.
8317
83182002-09-16 Dave Love <fx@gnu.org>
8319
8320 * unexelf.c (unexec): Deal with .got, reinstating change from
8321 25-08-1999.
8322
83232002-09-13 Richard M. Stallman <rms@gnu.org>
8324
8325 * s/sol2-6.h (UNEXEC): Comment out definition.
8326
8327 * unexsol.c (unexec): Don't downcase first letter of error msg.
8328
8329 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8330
83312002-09-12 Markus Rost <rost@math.ohio-state.edu>
8332
8333 * unexsol.c: Include buffer.h, charset.h, coding.h.
8334
83352002-09-11 Richard M. Stallman <rms@gnu.org>
8336
8337 * unexsol.c: Don't use report_file_error; do it by hand
8338 using dlerror.
8339
8340 * process.c (wait_reading_process_input, both versions):
8341 Before calling turn_on_atimers, call stop_polling.
8342
8343 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8344
8345 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8346 we go to too_near_end, call clear_glyph_matrix.
8347 (redisplay_window): After make_cursor_line_fully_visible,
8348 call clear_glyph_matrix and bypass `goto done'.
8349
8350 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8351 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8352
83532002-09-10 Richard M. Stallman <rms@gnu.org>
8354
8355 * fileio.c (Fdo_auto_save): Catch error making directory.
8356 Only call push_message if we need to.
8357 At the same time, make an unwind-protect to pop it.
8358 Rename local message_p to old_message_p.
8359 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8360 (do_auto_save_unwind): Don't call pop_message.
8361
8362 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8363
8364 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8365
8366 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8367
8368 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8369
83702002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8371
8372 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8373 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8374 (re_match_2_internal): Be more careful with infinite loops.
8375
83762002-09-10 Kim F. Storm <storm@cua.dk>
8377
8378 * macros.c (end_kbd_macro): New function.
8379 (Fend_kbd_macro): Use it.
8380
8381 * macros.h (end_kbd_macro): Declare extern.
8382
8383 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8384 end and save it instead of discarding it.
8385
83862002-09-09 Markus Rost <rost@math.ohio-state.edu>
8387
8388 * s/sol2-6.h: Fix typo. Add comment.
8389
83902002-09-09 Richard M. Stallman <rms@gnu.org>
8391
8392 * regex.c (regnum_t): Use signed int, not unsigned int.
8393
8394 * s/sol2-6.h: New file.
8395
8396 * s/sol2-5.h (UNEXEC): Definition deleted.
8397
83982002-09-08 Kim F. Storm <storm@cua.dk>
8399
8400 * macros.c (executing_macro_index): Change type to EMACS_INT.
8401 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8402
8403 * macros.h (executing_macro_index): Change type to EMACS_INT.
8404
84052002-09-06 Richard M. Stallman <rms@gnu.org>
8406
8407 * casetab.c (set_case_table): Make canon table point to eqv table.
8408
84092002-09-06 Juanma Barranquero <lektu@terra.es>
8410
8411 * coding.c (syms_of_coding): Fix spacing.
8412
8413 * composite.c (Fcompose_region_internal)
8414 (Fcompose_string_internal): Likewise.
8415
8416 * data.c (Flsh): Likewise.
8417
8418 * fontset.c (Fset_fontset_font): Likewise.
8419
8420 * macfns.c (Fx_server_max_request_size): Likewise.
8421
8422 * w16select.c (syms_of_win16select): Likewise.
8423
8424 * w32select.c (syms_of_w32select): Likewise.
8425
8426 * xselect.c (syms_of_xselect): Likewise.
8427
84282002-09-05 Richard M. Stallman <rms@gnu.org>
8429
8430 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8431 call EXTEND_RANGE_TABLE and return a proper value.
8432 (set_image_of_range): Don't call set_image_of_range_1
8433 if no TRANSLATE or if range includes all of Latin-1.
8434 Only call it for the Latin-1 part of the range.
8435 For other cases, make two separate ranges,
8436 one for the original specified characters and one for
8437 their case-conversions.
8438
84392002-09-04 Richard M. Stallman <rms@gnu.org>
8440
8441 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8442
8443 * window.c (displayed_window_lines): Correct for one-off bug
8444 in HEIGHT on non-window displays.
8445
8446 * regex.c (set_image_of_range_1): New function.
8447 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8448 Return a value to indicate running out of memory.
8449 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8450 (extend_range_table_work_area): New subroutine.
8451 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8452 Different calling conventions, and used from set_image_of_range{,_1}.
8453 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8454
84552002-09-04 Juanma Barranquero <lektu@terra.es>
8456
8457 * makefile.w32-in: All dependencies updated.
8458
84592002-09-01 Richard M. Stallman <rms@gnu.org>
8460
8461 * unexsol.c: New file.
8462
8463 * xfns.c (Qbox): Declare external, don't define.
8464
8465 * xdisp.c (redisplay_window) <force-start case>:
8466 If point is on semi-visible last line, reposition
8467 it at previous line.
8468
8469 * alloc.c (display_malloc_warning): Use display-warning.
8470 (malloc_warning_1): Function deleted.
8471
8472 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8473
8474 * lread.c (read1): Handle #! by skipping the line.
8475
84762002-08-31 Richard M. Stallman <rms@gnu.org>
8477
8478 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8479 Don't include LDFLAGS.
8480 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8481
84822002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8483
8484 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8485 member of x_display_info unless we compile for some window system.
8486
84872002-08-31 Kim F. Storm <storm@cua.dk>
8488
8489 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8490 (get_window_cursor_type): Don't use them.
8491 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8492
84932002-08-30 Kenichi Handa <handa@etl.go.jp>
8494
8495 * xdisp.c (get_next_display_element): Fix previous change.
8496
84972002-08-30 Andrew Choi <akochoi@shaw.ca>
8498
8499 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8500 (expose_window): Use it to fix the display of overlapping
8501 rows (merge code from xterm.c).
8502
8503 * macfns.c (Qbox): Add extern declaration.
8504
85052002-08-30 Juanma Barranquero <lektu@terra.es>
8506
8507 * w32fns.c (Qbox): Make extern.
8508 (syms_of_w32fns): Remove initialization of Qbox.
8509
85102002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8511
8512 * xfns.c (Fx_open_connection): Fix error message.
8513
85142002-08-30 Kim F. Storm <storm@cua.dk>
8515
8516 The following changes consolidates the handling of the cursor
8517 type in xdisp.c, moving duplicate code and functionality from
8518 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8519
8520 * frame.h (enum text_cursor_kinds): Consolidated here.
8521 Added DEFAULT_CURSOR value.
8522 (struct frame) <desired_cursor, cursor_width>
8523 <blink_off_cursor, blink_off_cursor_width>: New fields.
8524 Consolidated from output_x, output_w32 and output_mac structs.
8525 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8526 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8527
8528 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8529 Variables consolidated here.
8530 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8531 (Vcursor_in_non_selected_windows): Renamed from
8532 cursor_in_non_selected_windows and changed to Lisp_Object.
8533 (syms_of_xdisp): Define and staticpro new and moved variables.
8534 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8535 consolidated here. Recognize Qhollow setting.
8536 (set_frame_cursor_types): New function to set frame cursor types
8537 based on the frame parameters.
8538 (get_window_cursor_type): New function to calculate new cursor
8539 type and width for the specified window. Based on duplicated
8540 code consolidated here.
8541 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8542 check buffer-local alternate-cursor-type and blink-cursor-alist
8543 before using built-in blink off methods.
8544
8545 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8546
8547 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8548 (get_specified_cursor_type, get_window_cursor_type)
8549 (set_frame_cursor_types): Added prototypes.
8550
8551 * macfns.c (x_specified_cursor_type): Removed.
8552 (x_set_cursor_type): Use set_frame_cursor_types.
8553 (Qbar, Qbox): Removed.
8554 (syms_of_macfns): Don't intern or staticpro them.
8555
8556 * macterm.c (x_specified_cursor_type): Remove prototype.
8557 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8558 (x_display_and_set_cursor): Use get_window_cursor_type.
8559 Remove unused local variables cursor_non_selected, active_cursor.
8560 Redraw cursor if hbar cursor width changes.
8561 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8562
8563 * macterm.h (enum text_cursor_kinds): Removed.
8564 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8565 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8566 (FRAME_DESIRED_CURSOR): Macro removed.
8567
8568 * w32fns.c (Vblink_cursor_alist): Removed.
8569 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8570 (syms_of_w32fns): Don't intern, staticpro, or define them.
8571 (x_specified_cursor_type): Removed.
8572 (x_set_cursor_type): Use set_frame_cursor_types.
8573
8574 * w32term.c (x_specified_cursor_type): Remove prototype.
8575 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8576 (x_display_and_set_cursor): Use get_window_cursor_type.
8577 Remove unused local variables cursor_off_state.
8578 Redraw cursor if hbar cursor width changes.
8579 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8580
8581 * w32term.h (enum text_cursor_kinds): Removed.
8582 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8583 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8584 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8585 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8586 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8587 w32_highlight_frame.
8588
8589 * xfns.c (Vblink_cursor_alist): Removed.
8590 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8591 (syms_of_xfns): Don't intern, staticpro, or define them.
8592 (x_specified_cursor_type): Removed.
8593 (x_set_cursor_type): Use set_frame_cursor_types.
8594
8595 * xterm.c (x_specified_cursor_type): Remove prototype.
8596 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8597 (x_display_and_set_cursor): Use get_window_cursor_type.
8598 Remove unused local variables cursor_off_state.
8599 Redraw cursor if hbar cursor width changes.
8600
8601 * xterm.h (enum text_cursor_kinds): Removed.
8602 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8603 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8604 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8605 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8606 (x_specified_cursor_type): Remove prototype.
8607
86082002-08-28 Richard M. Stallman <rms@gnu.org>
8609
8610 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8611 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8612 (Vblink_cursor_alist): New variable.
8613 (syms_of_w32fns): Initialize and defvar it.
8614 (x_specified_cursor_type): Recognize Qbox for filled box.
8615 Exceptions are hollow boxes.
8616 (Qbox, Qhollow): New variables.
8617 (syms_of_w32fns): Initialize and staticpro them.
8618
8619 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8620 New macros.
8621 (struct w32_output): New fields blink_off_cursor,
8622 blink_off_cursor_width.
8623 (FRAME_CURSOR_WIDTH): New macro.
8624
8625 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8626 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8627
8628 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8629 for bar cursor.
8630
8631 * w32term.c (expose_overlaps): New function.
8632 (expose_window): Use it to fix the display of overlapping rows.
8633
86342002-08-28 Simon Josefsson <jas@extundo.com>
8635
8636 * xfns.c (Fx_open_connection): Improve help when X connection
8637 fails, xhost is insecure and xauth is better.
8638
86392002-08-28 Juanma Barranquero <lektu@terra.es>
8640
8641 * makefile.w32-in: Add missing dependencies on w32term.h and
8642 composite.h.
8643
8644 * emacs.c (USAGE1): Add missing newline.
8645
86462002-08-27 Andrew Choi <akochoi@shaw.ca>
8647
8648 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8649
86502002-08-27 Richard M. Stallman <rms@gnu.org>
8651
8652 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8653 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8654 (Vblink_cursor_alist): New variable.
8655 (syms_of_xfns): Initialize and defvar it.
8656 (x_specified_cursor_type): Recognize Qbox for filled box.
8657 Exceptions are hollow boxes.
8658 (Qbox, Qhollow): New variables.
8659 (syms_of_xfns): Initialize and staticpro them.
8660
8661 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8662 New macros.
8663 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8664
8665 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8666 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8667
8668 * emacs.c (main): Handle --script.
8669 (USAGE1): Mention --script.
8670 (standard_args): Define sort order for --script.
8671
86722002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8673
8674 * xdisp.c (redisplay_updating_p): Variable removed.
8675 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8676 New variables.
8677 (init_iterator): Don't free realized faces if
8678 inhibit_free_realized_faces is set.
8679 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8680 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8681 initialize Qinhibit_free_realized_faces.
8682
8683 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8684 when iterator is adding glyphs to a glyph matrix.
8685
86862002-08-27 Kenichi Handa <handa@etl.go.jp>
8687
8688 * xdisp.c (get_next_display_element): In unibyte case, don't use
8689 octal form for such eight-bit characters that can be converted to
8690 multibyte char.
8691
86922002-08-26 Kim F. Storm <storm@cua.dk>
8693
8694 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8695 and background colors. From Joe Buehler (tiny change).
8696
86972002-08-26 Miles Bader <miles@gnu.org>
8698
8699 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8700
87012002-08-25 Andrew Choi <akochoi@shaw.ca>
8702
8703 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8704 defined instead of MAC_OSX.
8705
8706 * s/darwin.h (select): Define select to sys_select only if
8707 HAVE_CARBON is defined.
8708 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8709 (DONT_REOPEN_PTY): #def it.
8710
8711 * macterm.c (XTread_socket): Remove code to call
8712 SendEventToEventTarget for keys with command modifiers when
8713 mac_command_key_is_meta is nil.
8714
87152002-08-24 Andreas Schwab <schwab@suse.de>
8716
8717 * eval.c (Fdefvar): Fix last change.
8718
87192002-08-23 Richard M. Stallman <rms@gnu.org>
8720
8721 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8722 Record variables in load history as (defvar . VAR).
8723 (Fdefvar): Don't record in load history if no initial value.
8724 (Qdefvar): New variable.
8725 (syms_of_eval): Init and staticpro it.
8726
8727 * lread.c (syms_of_lread): Doc fix.
8728 (build_load_history): Use Fmember to see if a definition
8729 is already in the Vload_history element.
8730
8731 * process.c (Fstart_process): Remove /: from program name.
8732
8733 * emacs.c (decode_env_path): Don't add /: if file name handler
8734 has a `safe-magic' property.
8735
8736 * callproc.c (Fcall_process): Remove /: from program name.
8737
87382002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8739
8740 * regex.c (PATFETCH): Remove the translating fetch.
8741 (PATFETCH_RAW): Rename to PATFETCH.
8742 (set_image_of_range): New fun.
8743 (SET_RANGE_TABLE_WORK_AREA): Use it.
8744 (regex_compile): Don't translate the pattern chars so eagerly.
8745 Only do it when inserting an `exactn' bytecode or when handling
8746 a char-range.
8747 (mutually_exclusive_p): Avoid empty statement.
8748
87492002-08-22 Kim F. Storm <storm@cua.dk>
8750
8751 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8752 end up on a partially visible line; this reverts a specific part
8753 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8754 display error which has been reported several times now.
8755 However it introduces the problem that changes was supposed to fix.
8756 See my comments in the source if you want to debug this further.
8757
87582002-08-20 Kenichi Handa <handa@etl.go.jp>
8759
8760 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8761
87622002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8763
8764 * msdos.c (croak): Add `void' to definition.
8765
c1380aa6 8766 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
8767 Don't define them, they are defined in msdos.c.
8768
8769 * mem-limits.h [MSDOS]: Declare etext.
8770
8771 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8772 `const' since CORRECT_DIR_SEPS modifies its target.
8773
87742002-08-19 Kim F. Storm <storm@cua.dk>
8775
2fb0ce67 8776 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
8777 KEEP-RECORD to avoid clearing lossage when we just want to clear
8778 the current key sequence (kmacro needs this).
8779
87802002-08-19 Kenichi Handa <handa@localhost>
8781
8782 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8783
8784 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8785 cons, return Qnil.
8786
87872002-08-17 Richard M. Stallman <rms@gnu.org>
8788
8789 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8790
8791 * sysdep.c [!VMS]: Include sys/files.h.
8792
8793 * editfns.c (save_restriction_restore): Defend from unchained marker.
8794
8795 * buffer.c (overlays_at): Handle extending vec uniformly.
8796 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8797
87982002-08-15 Andrew Choi <akochoi@shaw.ca>
8799
8800 * mac.c (init_mac_osx_environment): New function.
8801
8802 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8803
88042002-08-14 Kim F. Storm <storm@cua.dk>
8805
8806 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8807 executing macro before appending to it (when used from Lisp).
8808 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8809 which is called prior to each iteration of macro (for kmacro.el).
8810 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8811
8812 * lisp.h (Fexecute_kbd_macro): Update prototype.
8813
8814 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8815
88162002-08-14 Kenichi Handa <handa@etl.go.jp>
8817
8818 * xselect.c (QUTF8_STRING): New variable.
8819 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8820 (x_atom_to_symbol): Likewise.
8821 (x_get_local_selection): New argument local_request. If it is
8822 nonzero, call handler_fn with the second arg nil.
8823 (x_handle_selection_request): Call x_get_local_selection with
8824 local_request 0.
8825 (lisp_data_to_selection_data): Don't encode the string here.
8826 (Fx_get_selection_internal): Call x_get_local_selection with
8827 local_request 1.
8828 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8829
8830 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8831
8832 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8833
88342002-08-13 Richard M. Stallman <rms@gnu.org>
8835
8836 * minibuf.c (Fminibufferp): New function.
8837 (syms_of_minibuf): Defsubr it.
8838 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8839
88402002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8841
8842 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8843
88442002-08-12 Richard M. Stallman <rms@gnu.org>
8845
8846 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8847 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8848 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8849 already.
8850
8851 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8852
88532002-08-11 Andrew Choi <akochoi@shaw.ca>
8854
8855 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8856 (Vmac_pass_command_to_system): New variable.
8857 (Vmac_pass_control_to_system): New variable.
8858 (do_mouse_moved): Check wp with is_emacs_window.
8859 (XTread_socket): Check window_ptr with is_emacs_window.
8860 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8861 events back to Mac Toolbox for processing, depending on values of
8862 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8863 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8864 Vmac_pass_control_to_system.
8865
88662002-08-10 Kenichi Handa <handa@etl.go.jp>
8867
8868 * coding.c (unencodable_char_position): New function.
8869 (Funencodable_char_position): New function.
8870 (syms_of_coding): Defsubr Funencodable_char_position.
8871
88722002-08-10 Andrew Choi <akochoi@shaw.ca>
8873
8874 * mac.c (sys_select) [MAC_OSX]: New function.
8875
8876 * macterm.c (MakeMeTheFrontProcess): New function.
8877 (mac_initialize): Call MakeMeTheFrontProcess.
8878
8879 * s/darwin.h: Define select to sys_select.
8880
88812002-08-09 Richard M. Stallman <rms@gnu.org>
8882
8883 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
8884
88852002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
8886
8887 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
8888 end of the buffer.
8889
88902002-08-08 Ken Raeburn <raeburn@mit.edu>
8891
8892 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
8893
8894 * puresize.h (BASE_PURESIZE): Increase to 910000.
8895
88962002-08-08 Kenichi Handa <handa@etl.go.jp>
8897
8898 * coding.c (Ffind_operation_coding_system): For write-region, if
8899 VISIT is a filename, make it the target.
8900
89012002-08-07 Richard M. Stallman <rms@gnu.org>
8902
8903 * alloc.c (mark_object): Detect long lists for debugging.
8904 (mark_object_loop_halt): New variable.
8905
8906 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
8907
8908 * data.c (Fmake_variable_frame_local): Doc fix.
8909
89102002-08-01 David Ponce <david@dponce.com>
8911
8912 * w32menu.c (local_heap, local_alloc, local_free): New macros.
8913 (malloc_widget_value, free_widget_value)
8914 (w32_free_submenu_strings): Use them.
8915
8916 (push_submenu_start, push_submenu_end, push_left_right_boundary)
8917 (push_menu_pane, push_menu_item, single_keymap_panes)
8918 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
8919 (single_submenu, set_frame_menubar)
8920 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
8921
8922 (Fx_popup_menu): Don't show pop up menu until preceding one is
8923 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
8924
8925 * w32menu.c: Changes adapted from xmenu.c
8926 (set_frame_menubar): First parse all submenus,
8927 then make widget_value trees from them.
8928 Don't allocate any widget_value objects
8929 until we are done with the parsing.
8930 (parse_single_submenu): New function.
8931 (digest_single_submenu): New function.
8932 (single_submenu): Function deleted, replaced by those two.
8933
89342002-08-04 Andrew Choi <akochoi@shaw.ca>
8935
8936 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
8937 returns a valid window pointer before proceeding for keyDown and
8938 autoKey events.
8939
89402002-08-03 Andrew Choi <akochoi@shaw.ca>
8941
8942 * macterm.c (USE_CARBON_EVENTS): New macro.
8943 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
8944 (x_iconify_frame): Call CollapseWindow.
8945 (Vmac_reverse_ctrl_meta): New variable.
8946 (Vmac_wheel_button_is_mouse_2): New variable.
8947 (init_mac_drag_n_drop): New function.
8948 (mac_do_receive_drag): New function.
8949 (mac_handle_service_event): New function.
8950 (init_service_handler): New function.
8951 (mac_to_emacs_modifiers): New function.
8952 (mac_event_to_emacs_modifiers): New function.
8953 (mac_get_mouse_btn): New function.
8954 (mac_convert_event_ref): New function.
8955 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
8956 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
8957 mac_get_mouse_btn.
8958 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
8959
8960 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
8961 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
8962 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
8963 TOOL_BAR_EVENT for MAC_OS as well.
8964 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
8965 as for WINDOWS_NT.
8966 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
8967
8968 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
8969
89702002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
8971
8972 * xdisp.c (forward_to_next_line_start): Fix a condition that
8973 lead to a newline being skipped.
8974
89752002-08-02 Andrew Choi <akochoi@shaw.ca>
8976
8977 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
8978
89792002-08-01 Richard M. Stallman <rms@gnu.org>
8980
8981 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
8982
89832002-07-31 Andrew Choi <akochoi@shaw.ca>
8984
8985 * macfns.c: #undef init_process before #define-ing it.
8986
8987 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
8988 HAVE_CARBON is defined.
8989
89902002-07-31 Richard M. Stallman <rms@gnu.org>
8991
8992 * xmenu.c (set_frame_menubar): First parse all submenus,
8993 then make widget_value trees from them.
8994 Don't allocate any widget_value objects
8995 until we are done with the parsing.
8996 (parse_single_submenu): New function.
8997 (digest_single_submenu): New function.
8998 (single_submenu): Function deleted, replaced by those two.
8999
90002002-07-30 Juanma Barranquero <lektu@terra.es>
9001
9002 * w32proc.c (syms_of_ntproc): Fix docstring of
9003 `w32-get-true-file-attributes'.
9004
90052002-07-28 Richard M. Stallman <rms@gnu.org>
9006
9007 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9008 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9009
9010 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9011
9012 * keyboard.c (make_lispy_event):
9013 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9014 Explicitly clear up_modifier in event->modifiers.
9015
90162002-07-27 Richard M. Stallman <rms@gnu.org>
9017
9018 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9019
9020 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9021 for bar cursor.
9022
90232002-07-26 Kenichi Handa <handa@etl.go.jp>
9024
9025 * coding.c (detect_coding_iso2022): While checking a byte sequence
9026 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9027 it in the normal loop.
9028
90292002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9030
9031 * xterm.c (expose_overlaps): New function.
9032 (expose_window): Use it to fix the display of overlapping rows.
9033
9034 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9035
90362002-07-23 Ken Raeburn <raeburn@gnu.org>
9037
9038 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9039 since it only depends on XUINT.
9040
9041 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9042 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9043 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9044 Macros deleted.
3947677c 9045
77d1daf2
AS
9046 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9047 its value over other approaches.
9048 * sysdep.c (start_of_data): Don't define the function if a macro
9049 form has been defined.
8a8e19a3 9050
048addec
JD
90512002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9052
9053 * xdisp.c (redisplay_updating_p): New variable.
9054 (init_iterator): Don't free realized faces when
9055 redisplay_updating_p is set.
9056 (redisplay_internal): Set redisplay_updating_p while updating
9057 the display.
9058
90592002-07-23 Richard M. Stallman <rms@gnu.org>
9060
9061 * editfns.c (Fmessage): Treat "" like nil.
9062
90632002-07-23 Kenichi Handa <handa@etl.go.jp>
9064
9065 * xdisp.c (face_before_or_after_it_pos):
9066 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9067
90682002-07-22 Juanma Barranquero <lektu@terra.es>
9069
9070 * callproc.c (init_callproc) [DOS_NT]:
9071 Initialize Vshared_game_score_directory to nil.
9072 (syms_of_callproc) [DOS_NT]: Likewise.
9073
90742002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9075
9076 * xdisp.c (display_line): Replace an abort with xassert.
9077
90782002-07-21 Richard M. Stallman <rms@gnu.org>
9079
9080 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9081 and END_UNCHANGED when setting buffer_unchanged_p.
9082 Use current_matrix_up_to_date_p to decide whether to use
9083 try_cursor_movement.
9084
9085 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9086
9087 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9088
9089 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9090 Set to nil if dir does not exist.
9091 (syms_of_callproc): Init unconditionally and simply.
9092
9093 * buffer.c (Fbuffer_list): Doc fix.
9094
90952002-07-21 Ken Raeburn <raeburn@gnu.org>
9096
9097 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9098
9099 * buffer.c (mmap_realloc): When shrinking, make sure number of
9100 pages to unmap is rounded towards zero.
9101
9102 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9103 (XSETINT): Deleted.
9104
9105 * m/att3b.h (XINT): Don't define.
9106 (VALBITS, VALMASK, XTYPE): Deleted.
9107 (DATA_SEG_BITS): Define.
9108 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9109 ARRAY_MARK_FLAG): Deleted.
9110 (DATA_SEG_BITS): Define.
9111 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9112 (DATA_SEG_BITS): Define.
9113
91142002-07-20 Richard M. Stallman <rms@gnu.org>
9115
9116 * print.c (print_error_message): New args CONTEXT and CALLER.
9117 Calls changed.
9118
9119 * lisp.h (print_error_message): Declare new args.
9120
9121 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9122 and CONTEXT to print_error_message, don't print them here.
9123 For a Quit, don't use Vsignaling_function.
9124 Call message_log_maybe_newline.
9125
9126 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9127
91282002-07-20 Kim F. Storm <storm@cua.dk>
9129
9130 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9131
91322002-07-19 Ken Raeburn <raeburn@gnu.org>
9133
9134 * bytecode.c (struct byte_stack): Pointers into byte string now
9135 point to const.
9136 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9137 const.
9138 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9139 * coding.c (encode_eol, detect_coding, detect_eol):
9140 (decode_coding, encode_coding, detect_coding_system):
9141 Source strings now treated as const.
9142 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9143 modify Lisp string contents.
9144 * coding.h (decode_coding, encode_coding, detect_coding,
9145 detect_eol): Declarations updated.
9146 * composite.c (compose_chars_in_text): Treat Lisp string contents
9147 as const.
9148 * dispnew.c (safe_bcopy): Source pointer now points to const.
9149 * lisp.h (STRING_COPYIN): New macro.
9150 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9151 (internal_with_output_to_temp_buffer): Declarations updated.
9152 * print.c (temp_output_buffer_setup):
9153 (internal_with_output_to_temp_buffer): Buffer name argument is now
9154 pointer to const.
9155 * sound.c (struct sound_device): Function pointer field "write"
9156 buffer argument now points to const.
9157 (vox_write): Buffer argument points to const.
9158 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9159 contents as const.
9160 * sysdep.c (emacs_write): Buffer pointer now const.
9161 * term.c (encode_terminal_code): Buffer pointer now const.
9162 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9163 (x_face_list_fonts, x_update_menu_appearance):
9164 (hash_string_case_insensitive): Treat Lisp string contents as const.
9165
91662002-07-19 Juanma Barranquero <lektu@terra.es>
9167
048addec
JD
9168 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9169
9170 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9171 (Ffile_name_as_directory): Fix argument name in docstring.
9172 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9173
91742002-07-18 Richard M. Stallman <rms@gnu.org>
9175
9176 * data.c (Fdefalias): Doc fix.
9177
91782002-07-17 Dave Love <fx@gnu.org>
9179
9180 * intervals.h (text_property_stickiness): Use P_.
9181
9182 * ccl.c: Remove `emacs' conditionals.
9183 (ccl_backtrace_table): Fix size spec.
9184 (ccl_driver): Fix type errors.
9185
91862002-07-16 Ken Raeburn <raeburn@gnu.org>
9187
9188 * alloc.c (xstrdup, make_string, make_unibyte_string)
9189 (make_multibyte_string, build_string): String pointer args now
9190 point to const.
9191 * charset.c (find_charset_in_text, c_string_width):
9192 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9193 * fileio.c (report_file_error):
9194 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9195 (count_combining_before, count_combining_after, insert_1_both):
9196 (insert, insert_and_inherit, insert_string):
9197 (insert_before_markers, insert_before_markers_and_inherit):
9198 * lread.c (intern, oblookup, hash_string):
9199 * minibuf.c (temp_echo_area_glyphs):
9200 * search.c (fast_c_string_match_ignore_case):
9201 * sysdep.c (emacs_open, set_file_times):
9202 * xfaces.c (xstricmp):
9203 * xdisp.c (store_frame_title, string_char_and_length):
9204 (message_dolog, message2, message2_nolog, set_message): Likewise.
9205 (set_message_1): Cast message string argument to const pointer.
9206 * editfns.c (general_insert_function): Insertion function now
9207 takes pointer to const for input data.
9208 * charset.h (find_charset_in_text, c_string_width):
9209 (parse_str_as_multibyte): Declarations updated.
9210 * dispextern.h (xstricmp): Declaration updated.
9211 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9212 (count_size_as_multibyte, count_combining_before):
9213 (count_combining_after, insert_1, insert_1_both, message_dolog):
9214 (insert, insert_and_inherit, insert_before_markers)
9215 (insert_before_markers_and_inherit, set_message, message2):
9216 (message2_dolog, build_string, make_string, make_unibyte_string):
9217 (make_multibyte_string, intern, oblookup, report_file_error):
9218 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9219 (emacs_open, xstrdup): Declarations updated.
9220 * systime.h (set_file_times): Declaration updated.
9221
9222 * charset.c (find_charset_in_text, lisp_string_width): Use const
9223 for pointer to lisp string data.
9224 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9225 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9226 * coding.c (Ffind_coding_systems_region_interval):
9227 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9228 (Fmake_directory_internal, Fdelete_directory):
9229 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9230 * fontset.c (font_family_registry, fs_query_fontset):
9231 (list_fontsets):
9232 * frame.c (Fframe_parameter):
9233 * keyboard.c (cmd_error_internal):
9234 * keymap.c (Fdescribe_buffer_bindings):
9235 * lread.c (complete_filename_p, openp):
9236 * minibuf.c (Fminibuffer_complete_word):
9237 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9238 (face_before_or_after_it_pos, next_element_from_string):
9239 (get_overlay_arrow_glyph_row, display_mode_element):
9240 (decode_mode_spec_coding):
9241 * xterm.c (same_x_server): Likewise.
9242
9243 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9244 settings of non-existent fields.
9245
9246 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9247 copy a lisp value.
9248
9249 * lread.c (Fintern_soft): Use string macros instead of
9250 Lisp_String fields.
9251 * keyboard.c (echo_char, parse_modifiers_uncached):
9252 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9253 * textprop.c (validate_interval_range, interval_of): Likewise.
9254
9255 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9256
9257 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9258 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9259 XSTRING()->size_byte.
9260
9261 * lisp.h (SDATA, SREF): Produce rvalue.
9262 (SSET): New macro.
9263 * alloc.c (make_event_array): Use SSET for storing into a string.
9264 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9265 a string.
9266 * casefiddle.c (casify_object): Use SSET.
9267 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9268 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9269 address of string contents.
9270 * data.c (Faref): Use SDATA.
9271 (Faset): Use SDATA, SSET.
9272 * dired.c (directory_files_internal): Use SSET.
9273 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9274 (Fread_file_name): Use SREF, SSET.
9275 * fns.c (concat): Use SSET.
9276 (concat, Fdelete): Use SDATA.
9277 * insdel.c (insert_from_string_1): Use SDATA.
9278 * keyboard.c (Fevent_convert_list): Use SREF.
9279 * lread.c (Fload): Use SDATA, SSET.
9280 * macfns.c (validate_x_resource_name): Use SSET.
9281 * process.c (status_message): Use SSET.
9282 * search.c (wordify): Use SDATA.
9283 (Freplace_match): Use SREF.
9284 * w32fns.c (validate_x_resource_name): Use SSET.
9285 * xfns.c (validate_x_resource_name): Use SSET.
9286 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9287
92882002-07-16 Richard M. Stallman <rms@gnu.org>
9289
9290 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9291
9292 * xdisp.c (reconsider_clip_changes):
9293 Don't test prevent_redisplay_optimizations_p.
9294 (redisplay_internal): Test prevent_redisplay_optimizations_p
9295 along with clip_changed in some cases.
9296 (try_window_id): Likewise.
9297 (redisplay_window): New local var buffer_unchanged_p.
9298
9299 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9300
9301 * process.c (create_process): Test USG_SUBTTY_WORKS.
9302 (process_send_signal): Clean up handling of GID.
9303 Detect errors in ioctls meant to set GID.
9304
9305 * window.c (temp_output_buffer_show):
9306 Don't set prevent_redisplay_optimizations_p.
9307
93082002-07-15 Juanma Barranquero <lektu@terra.es>
9309
9310 * eval.c (Fdefvaralias): Add docstring argument.
9311
93122002-07-15 Ken Raeburn <raeburn@gnu.org>
9313
9314 * lisp.h (STRING_INTERVALS): Produce rvalue.
9315 (STRING_SET_INTERVALS): New macro.
9316 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9317 * fns.c (Fstring_as_multibyte): Likewise.
9318 * intervals.c (balance_possible_root_interval, delete_interval)
9319 (create_root_interval, copy_intervals_to_string): Likewise.
9320 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9321 instead of 0.
9322
93232002-07-14 Ken Raeburn <raeburn@gnu.org>
9324
9325 * lisp.h (STRING_SET_CHARS): New macro.
9326 (SCHARS, SBYTES): Produce rvalues.
9327 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9328 * fns.c (concat): Likewise.
9329 * lread.c (read_vector): Likewise.
9330
9331 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9332 (STRING_SET_UNIBYTE): New macro.
9333 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9334 length of -1) changed to use STRING_SET_UNIBYTE.
9335 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9336 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9337 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9338 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9339 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9340 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9341 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9342 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9343 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9344 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9345 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9346 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9347 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9348 unchanged for now.
9349
93502002-07-13 Kim F. Storm <storm@cua.dk>
9351
9352 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9353
93542002-07-12 Richard M. Stallman <rms@gnu.org>
9355
9356 * fileio.c (Fwrite_region): Doc fix.
9357
9358 * print.c (print_error_message): Don't handle Vsignaling_function here.
9359
9360 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9361 (command_loop_1): Avoid certain actions after memory-full error.
9362
9363 * eval.c (Fsignal): Don't call cancel_hourglass.
9364 For a memory-full error, don't call Vsignal_hook_function
9365 and don't set Vsignaling_function.
9366
9367 * process.c (process_send_signal): Add abort call.
9368
93692002-07-11 Markus Rost <rost@math.ohio-state.edu>
9370
9371 * keymap.c (Fkey_binding): Fix typo.
9372
93732002-07-11 Richard M. Stallman <rms@gnu.org>
9374
9375 * alloc.c (Vmemory_full): New variable.
9376 (Vmemory_signal_data): Renamed from memory_signal_data.
9377 Uses changed.
9378 (syms_of_alloc): Defvar them.
9379 (memory_full, buffer_memory_full): Set Vmemory_full.
9380
9381 * lisp.h (Vmemory_full): Add declaration.
9382 (current_column, indented_beyond_p): Change declaration.
9383
9384 * indent.c (last_known_column): Declare as double, not float.
9385 (current_column, current_column_1, string_display_width)
9386 (position_indentation): Return `double'.
9387 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9388
9389 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9390 (back_to_previous_visible_line_start)
9391 (reseat_at_next_visible_line_start, next_element_from_buffer):
9392 Use `double', not `float', when calling indented_beyond_p.
9393
9394 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9395
9396 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9397
93982002-07-11 Juanma Barranquero <lektu@terra.es>
9399
9400 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
9401 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9402 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9403 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9404 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9405 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
9406
94072002-07-10 Juanma Barranquero <lektu@terra.es>
9408
d814862a
JB
9409 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9410 All callers changed.
048addec
JD
9411
94122002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9413
9414 * data.c (Fdefalias): Add an optional `docstring' argument.
9415 (set_internal, Fsetq_default): Use XCAR/XCDR.
9416
9417 * composite.c (HASH_VALUE, HASH_KEY):
9418 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9419
94202002-07-09 Kenichi Handa <handa@etl.go.jp>
9421
9422 * callproc.c (Fcall_process): Fix previous change.
9423
94242002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9425
9426 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9427 Add support for hash-tables.
9428 (Ftry_completion): Return t even if the string appears multiple times.
9429
9430 * fns.c (Fnconc): Use XCDR.
9431 (Fprovide): Use CONSP and XCDR.
9432 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9433 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9434 (Fmake_hash_table): Accept `:size nil'.
9435 (Fmakehash): Delete: moved to subr.el.
9436 (syms_of_fns): Don't defsubr makehash.
9437
9438 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9439 (HASH_TABLE_SIZE): Move from fns.c.
9440
94412002-07-07 Richard M. Stallman <rms@gnu.org>
9442
9443 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9444 Instead just return 0 when there is something to be done.
9445 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9446 retry scrolling as if cursor were off the bottom.
9447 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9448 return CURSOR_MOVEMENT_MUST_SCROLL.
9449 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9450 go to try_to_scroll.
9451
9452 * buffer.c (Fbuffer_local_value): Store current value into its binding
9453 so we get the up-to-date value for the binding that is loaded.
9454
9455 * eval.c (Fdefmacro): Doc fix.
9456
94572002-07-05 Dave Love <fx@gnu.org>
9458
9459 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9460 correctly.
9461
9462 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9463 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9464 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9465 CCL_LookupCharConstTbl.
9466 (syms_of_ccl): Defvar translation-hash-table-vector.
9467
94682002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9469
9470 * xdisp.c: Remove unused variable `face'.
9471
94722002-07-04 Juanma Barranquero <lektu@terra.es>
9473
9474 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9475 obsolescence information.
9476
94772002-07-03 Andrew Choi <akochoi@shaw.ca>
9478
9479 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9480 pattern. Search cache first.
9481 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9482 for Japanese font.
9483 (XLoadQueryFont): Use it.
9484
94852002-07-02 Richard M. Stallman <rms@gnu.org>
9486
9487 * keymap.c (Fdefine_key): Doc fix.
9488
9489 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9490
94912002-07-02 Juanma Barranquero <lektu@terra.es>
9492
9493 * keymap.c (syms_of_keymap): Fix typo.
9494
94952002-07-01 Andrew Choi <akochoi@shaw.ca>
9496
9497 * s/darwin.h: Define POSIX_SIGNALS.
9498
9499 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9500 and FSRefMakePath to convert FSSpec returned with Apple Event to
9501 Posix pathname.
9502 (mac_initialize) [TARGET_API_MAC_CARBON]:
9503 Call init_required_apple_events and disable the `Quit' menu item
9504 provided automatically by the Carbon Toolbox.
9505
95062002-07-01 Dave Love <fx@gnu.org>
9507
9508 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9509 for K&R.
9510
9511 * xterm.c: Fix prototype for K&R.
9512
9513 * term.c (costs_set): Declare static, non-initialized for pcc.
9514
95152002-07-01 Richard M. Stallman <rms@gnu.org>
9516
9517 * keyboard.c (timer_last_idleness_start_time): New variable.
9518 (timer_start_idle): Set that.
9519 (read_key_sequence): Use that to reset timer_idleness_start_time
9520 to previous value.
9521
9522 * window.c (Frecenter): With arg, set optional_new_start.
9523
9524 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9525
9526 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9527 buffer for completion.
9528
95292002-06-29 Ken Raeburn <raeburn@gnu.org>
9530
9531 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9532
95332002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9534
9535 * keyboard.c (readable_filtered_events): New function that filters
9536 FOCUS_IN_EVENT depending on parameter.
9537 (readable_events): Calls readable_filtered_events, not filtering
9538 FOCUS_IN_EVENT.
9539 (get_filtered_input_pending): New function, filtering parameter passed
9540 to readable_filtered_events.
9541 (get_input_pending): Calls get_filtered_input_pending, not filtering
9542 FOCUS_IN_EVENT.
9543 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9544 FOCUS_IN_EVENT.
9545
9546 * xterm.h (struct x_output): Add focus_state.
9547
9548 * xterm.c (x_focus_changed): New function.
9549 (x_detect_focus_change): New function.
9550 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9551 EnterNotify and LeaveNotify to track X focus changes.
9552
95532002-06-28 Andreas Schwab <schwab@suse.de>
9554
9555 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9556
95572002-06-27 Kim F. Storm <storm@cua.dk>
9558
9559 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9560 (mode_line_string_face_prop): New variables.
9561 (store_mode_line_string): New function.
9562 (display_mode_element): Use store_mode_line_string to
9563 add mode-line string elements to mode_line_string_list
9564 when mode_line_string_list is non-nil.
9565 (Fformat_mode_line): Now returns propertized string by
9566 default. New arg NO-PROPS to ignore properties.
9567 (decode_mode_spec): Only add two dashes for %- in propertized
9568 mode-line string.
9569 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9570
95712002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9572
9573 * minibuf.c (minibuffer_completion_contents): Add return type.
9574
95752002-06-27 Juanma Barranquero <lektu@terra.es>
9576
9577 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9578
95792002-06-26 Juanma Barranquero <lektu@terra.es>
9580
9581 * fileio.c (read_file_name_cleanup): Add missing return.
9582
95832002-06-26 Richard M. Stallman <rms@gnu.org>
9584
9585 * window.c (Frecenter): Don't set force_start flag.
9586
9587 * minibuf.c (do_completion, Fminibuffer_complete_word)
9588 (Fminibuffer_completion_help): Complete just the text before point.
9589 (minibuffer_completion_contents): New function.
9590
9591 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9592
9593 * frame.c (frames_bury_buffer): Function deleted.
9594
95952002-06-25 Miles Bader <miles@gnu.org>
9596
9597 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9598 the end of callint_message, allow for a terminating '\0'.
9599
96002002-06-24 Juanma Barranquero <lektu@terra.es>
9601
9602 * w32select.c: Include composite.h
9603
9604 * w16select.c: Likewise.
9605
96062002-06-24 Kenichi Handa <handa@etl.go.jp>
9607
9608 * callproc.c (Fcall_process): If code detection is necessary,
9609 call detect_coding directly here.
9610
9611 * coding.c (detect_eol): Preserve coding->cmp_data.
9612
9613 * w16select.c (Fw16_get_clipboard_data):
9614 * w32fns.c (w32_to_x_font):
9615 * w32select.c (Fw32_get_clipboard_data):
9616 * xselect.c (selection_data_to_lisp_data):
9617 * xterm.c (XTread_socket): Disable composition handling.
9618
96192002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9620
9621 * print.c (temp_output_buffer_setup): Kill all local variables.
9622
96232002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9624
9625 * lread.c (Fread): Remove redundant and imprecise declaration.
9626
9627 * xfns.c (check_x_display_info): Use check_x_frame.
9628
9629 * .gdbinit (xprintsym): Use the new `xname' field.
9630 (xsymbol): Use it.
9631
96322002-06-22 Jason Rumney <jasonr@gnu.org>
9633
9634 * w32fns.c (file_dialog_callback): New function.
9635 (Fx_file_dialog): Allow selecting directories as well as files.
9636
96372002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9638
9639 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 9640 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
9641
96422002-06-17 Andrew Choi <akochoi@shaw.ca>
9643
9644 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9645 black and white before scrolling. Restore frame background and
9646 foreground color after scrolling.
9647 (do_window_update): Call XClearWindow before calling expose_frame.
9648 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9649 FRAME_FOREGROUND_PIXEL of frame.
9650
9651 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9652 test Mac command key as <ALT> key.
9653
96542002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9655
9656 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9657
9658 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9659 Lookup keys in function-key-map immediately so that key-translation-map
9660 can be applied earlier.
9661 Remove function_key_possible and key_translation_possible, replaced
9662 by checking `keytran_start < t'.
9663
9664 * .gdbinit (xsymbol): Use the new `xname' field.
9665
96662002-06-17 Andrew Choi <akochoi@shaw.ca>
9667
9668 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9669 test Mac command key as <ALT> key.
9670
9671 * mac.c (do_applescript): Call initialize_applescript if necessary
9672 when first called. Dispose of result_desc only when there is no error.
9673 (Fdo_applescript): Use %d format specifier instead of %ld.
9674
96752002-06-16 Andrew Choi <akochoi@shaw.ca>
9676
9677 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9678 of FrontWindow for cases keyDown and autoKey.
9679
9680 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9681 Vdefault_fontset to Monaco with mac-roman coding.
9682
9683 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9684 init_process before and after inclusion of Carbon/Carbon.h, resp.
9685
9686 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9687 cursor_gc.
9688 (add_font_name_table_entry): New function.
9689 (init_font_name_table): Use add_font_name_table_entry; add italic,
9690 bold, and bold-italic entries for truetype fonts.
9691
9692 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9693 for Mac too.
9694 (try_font_list) [MAC_OS]: If no font matches given registry, try
9695 fonts with any registry matching face_family.
9696 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9697
9698 * s/darwin.h: If autoconf detects the Ncurses library, define
9699 LIBS_TERMCAP to -lncurses to use it.
9700
97012002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9702
9703 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9704
97052002-06-15 Richard M. Stallman <rms@gnu.org>
9706
9707 * window.c (Fset_window_configuration): Explicitly preserve
9708 the point value that new_current_buffer had at the start.
9709
97102002-06-14 Juanma Barranquero <lektu@terra.es>
9711
9712 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9713 Fix typos.
9714
97152002-06-14 Kim F. Storm <storm@cua.dk>
9716
9717 * insdel.c (insert_1_both, insert_from_string_1)
9718 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9719 insert happened in the end_unchanged region. Otherwise, the
9720 redisplay may be confused and duplicate the last line in the
9721 buffer [seen after save-buffer when require-final-newline==t].
9722
97232002-06-13 Jason Rumney <jasonr@gnu.org>
9724
9725 * w32.c (init_environment): Remove EMACSLOCKDIR.
9726 (stat): Swap _S_IFDIR and _S_IFREG.
9727
97282002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9729
9730 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9731 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9732 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9733 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9734 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9735 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9736 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9737 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9738 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9739 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9740 SELECTION_REQUEST_EVENT, selection_clear_event to
9741 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9742 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9743 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9744 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9745 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9746 no_event to NO_EVENT.
9747
97482002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9749
9750 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9751
97522002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9753
9754 * intervals.c (textget): Don't forget to `return'.
9755 (lookup_char_property): Use XCAR/XCDR.
9756
97572002-06-12 Juanma Barranquero <lektu@terra.es>
9758
9759 * xdisp.c (Fformat_mode_line): Fix typo.
9760
97612002-06-12 Kim F. Storm <storm@cua.dk>
9762
9763 * xdisp.c (Fformat_mode_line): New function.
9764 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9765 (store_frame_title_char, store_frame_title): Use unconditionally.
9766 (init_xdisp): Defsubr Fformat_mode_line.
9767 Initialize frame_title_buf etc. unconditionally.
9768
97692002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9770
9771 * keyboard.c (read_key_sequence):
9772 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9773 things through those maps after downcasing events.
9774 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9775 applies after function-key-map.
9776 Make sure that keytran can be done in the middle in the sequence.
9777 Be careful not to throw away events past the one we downcase.
9778
9779 * lread.c (read_integer): Remove unused var `tem'.
9780 (read1): Fix int/Lisp_Object mixup.
9781
9782 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9783
97842002-06-11 Richard M. Stallman <rms@gnu.org>
9785
9786 * keyboard.c (readable_events): Ignore any number of
9787 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9788
97892002-06-09 Miles Bader <miles@gnu.org>
9790
9791 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9792 (parse_rgb_list, tty_lookup_color): New functions.
9793 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9794 (color_distance, Fcolor_distance): New functions.
9795 (TTY_SAME_COLOR_THRESHOLD): New macro.
9796 (Qtty_color_standard_values): New variable.
9797 (syms_of_xfaces): Initialize new vars & functions.
9798
97992002-06-08 Colin Walters <walters@verbum.org>
9800
9801 * textprop.c (Vchar_property_alias_alist): New variable.
9802 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9803
9804 * intervals.c (lookup_char_property): New function for looking up
9805 overlay and text properties, created from textget.
9806 (textget): Use it.
9807
9808 * intervals.h (lookup_char_property): Declare.
9809 (Vchar_property_alias_alist): Declare.
9810
9811 * buffer.c (Foverlay_get): Use lookup_char_property.
9812
98132002-06-07 Sam Steingold <sds@gnu.org>
9814
9815 * xselect.c (lisp_data_to_selection_data): Fix last change:
9816 *data_ret is not a Lisp string, while unibyte_string is.
9817
98182002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9819
9820 * xselect.c (lisp_data_to_selection_data): Fix last change:
9821 set size_ret.
9822
98232002-06-07 Andreas Schwab <schwab@suse.de>
9824
9825 * m/amdx86-64.h: New file.
9826
98272002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9828
9829 * fns.c (Fstring_make_unibyte): Doc fix.
9830
9831 * xselect.c (lisp_data_to_selection_data): If the requested type
9832 is STRING, call string_make_unibyte to encode the selected text
9833 as a string.
9834
9835 * window.c (Fset_window_hscroll): Doc fix.
9836
98372002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9838
9839 * fileio.c (choose_write_coding_system):
9840 Call select-safe-coding-system properly.
9841
98422002-06-03 Richard M. Stallman <rms@gnu.org>
9843
9844 * xdisp.c (message_with_string): Error if STRING is not a string.
9845
9846 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9847
9848 * fileio.c (choose_write_coding_system): Pass FILE arg to
9849 Vselect_safe_coding_system_function.
9850
98512002-06-03 Ken Raeburn <raeburn@gnu.org>
9852
9853 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9854
98552002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9856
9857 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9858 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9859 * keymap.c (describe_command): Likewise.
9860 * minibuf.c (read_minibuf): Likewise.
9861
9862 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9863 Cast `current_column' return value to int.
9864 (back_to_previous_visible_line_start)
9865 (reseat_at_next_visible_line_start, next_element_from_buffer):
9866 Cast `indented_beyond_p' 3rd arg to float.
9867
9868 * indent.c (last_known_column): Now a float.
9869 (current_column_1, position_indentation, current_column)
9870 (string_display_width): Return float.
9871 (Fcurrent_column): Cast `current_column' return value to int.
9872 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9873 (indented_beyond_p): Third arg now a float.
9874 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9875
9876 * lisp.h (current_column): Now returns float.
9877 (indented_beyond_p): 3rd arg now a float.
9878
98792002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
9880
9881 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
9882 is Qcompound_text_with_extensions.
9883
9884 * xselect.c (lisp_data_to_selection_data): Always set selection
9885 type as string if x_encode_text returns streingp non-NULL.
9886
9887 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
9888
98892002-05-30 Richard M. Stallman <rms@gnu.org>
9890
9891 * window.c (Fset_window_configuration): Correct the handling
9892 of point in current buffer, to work with multiple windows.
9893
98942002-05-29 Colin Walters <walters@verbum.org>
9895
9896 * lread.c (Fread_from_string): Don't depend on order of evaluation
9897 for C function parameters.
9898
98992002-05-28 Richard M. Stallman <rms@gnu.org>
9900
9901 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
9902 way for blinked-off state and for a nonselected window.
9903
9904 * window.c (window_scroll_pixel_based): Don't call Fbolp;
9905 instead, see if the new start pos is at beginning of line.
9906
9907 * fileio.c (Fwrite_region): If START is a string, don't
9908 make any annotations.
9909
9910 * eval.c (syms_of_eval): Doc fix.
9911
99122002-05-28 Colin Walters <walters@debian.org>
9913
9914 * emacs.c (USAGE1): Add --no-splash.
9915 (standard_args): Ditto.
9916
99172002-05-28 Colin Walters <walters@gnu.org>
9918
9919 * lread.c (readchar_count): New variable.
9920 (readchar): Increment it.
9921 (unreadchar): Decrement it.
9922 (read_multibyte): Decrement it.
9923 (Vread_with_symbol_positions): New variable.
9924 (Vread_symbol_positions_list): New variable.
9925 (read_internal_start): New function, created from Fread and
9926 Fread_from_string. Handle Vread_symbol_positions_list and
9927 Vread_with_symbol_positions.
9928 (readevalloop, Fread, Fread_from_string): Use it.
9929 (read1): Use readchar_count to add symbol positions to
9930 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
9931 (syms_of_lread): DEFVAR_LISP and initialize them.
9932
9933 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
9934 (substitute_object_recurse, substitute_object_in_subtree)
9935 (substitute_in_interval): Prototype.
9936 (read_multibyte): Return c if it's less than zero.
9937
99382002-05-28 Kim F. Storm <storm@cua.dk>
9939
9940 * fileio.c (Fread_file_name_internal): Added brute-force
9941 speed up for using predicate file-directory-p.
9942
99432002-05-28 Kim F. Storm <storm@cua.dk>
9944
9945 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
9946 New variables.
9947 (syms_of_fileio): DEFVAR_LISP them.
9948 (read_file_name_cleanup): New unwind function.
9949 (Fread_file_name_internal): Only return completions satifying
9950 Vread_file_name_predicate. Temporarily unwind protect and rebind
9951 default-directory while checking completions against the predicate.
9952 (Fread_file_name): Added PREDICATE argument. Specbind it to
9953 Vread_file_name_predicate during completion.
9954 Call Vread_file_name_function to read the file name if non-nil.
9955
9956 * lisp.h (Fread_file_name): Now has 6 args.
9957
9958 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
9959 predicate for Fread_file_name when reading directory name.
9960 Supply Qnil for predicate in other calls to Fread_file_name.
9961
99622002-05-26 Miles Bader <miles@gnu.org>
9963
9964 * term.c (tty_capable_p): New function.
9965 * dispextern.h (tty_capable_p): New function declaration.
9966 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
9967 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
9968
99692002-05-23 Stefan Monnier <monnier@cs.yale.edu>
9970
9971 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
9972 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
9973 (Vwrite_region_annotate_functions): Docstring fix.
9974
99752002-05-23 Kim F. Storm <storm@cua.dk>
9976
9977 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
9978 phys_cursor's hpos is overwritten. This is still not completely
9979 correct, as it doesn't really make sense to use hpos at all to
9980 get the cursor glyph (as that is relative to the width of the
9981 characters on the line, which may have changed during the update).
9982
99832002-05-22 Jason Rumney <jasonr@gnu.org>
9984
9985 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
9986 Lisp_Object.
9987 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
9988 Use modified enumfont_t struct.
9989
9990 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9991
9992 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
9993 Handle the `hbar' cursor type.
9994 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9995
9996 * w32fns.c (Qhbar): New variable.
9997 (x_specified_cursor_type): Use it.
9998
99992002-05-21 Ken Raeburn <raeburn@gnu.org>
10000
10001 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10002 now, when the address is needed.
10003
100042002-05-21 Colin Walters <walters@gnu.org>
10005
10006 * Makefile.in (shortlisp): Add font-core.el.
10007
100082002-05-20 Richard M. Stallman <rms@gnu.org>
10009
10010 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10011
10012 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10013 equivalent key bindings here.
10014
100152002-05-20 Ken Raeburn <raeburn@gnu.org>
10016
10017 Change symbol structure to contain a lisp object for the symbol
10018 name:
10019 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10020 object field named "xname".
10021 (SYMBOL_NAME): New macro.
10022 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10023 name field.
10024 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10025 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10026 instead of name field.
10027 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10028 SYMBOL_NAME instead of XSYMBOL and name field.
10029 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10030 instead of XSYMBOL and name field.
10031 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10032 and SYMBOL_NAME instead of XSYMBOL and name field.
10033 * coding.c (Fread_coding_system, code_convert_region1)
10034 (code_convert_string1, code_convert_string_norecord)
10035 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10036 XSYMBOL and name field.
10037 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10038 (Fmake_variable_buffer_local, Fmake_local_variable)
10039 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10040 of XSYMBOL and name field.
10041 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10042 XSYMBOL and name field.
10043 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10044 instead of XSYMBOL and name field.
10045 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10046 XSYMBOL and name field.
10047 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10048 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10049 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10050 instead of XSYMBOL and name field.
10051 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10052 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10053 (parse_solitary_modifier, Fexecute_extended_command):
10054 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10055 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10056 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10057 of XSYMBOL and name field.
10058 (describe_command, describe_translation): Use SYMBOL_NAME and
10059 assignment instead of XSYMBOL and name field and XSETSTRING.
10060 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10061 instead of XSYMBOL and name field.
10062 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10063 name field and XSETSTRING.
10064 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10065 of XSYMBOL and name field.
10066 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10067 assignment instead of XSYMBOL and name field and XSETSTRING.
10068 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10069 XSTRING instead of XSYMBOL and name field.
10070 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10071 and XSTRING instead of XSYMBOL and name field.
10072 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10073 and XSTRING instead of XSYMBOL and name field.
10074 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10075 XSTRING instead of XSYMBOL and name field.
10076 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10077 of XSYMBOL and name field.
10078 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10079 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10080
100812002-05-19 Ken Raeburn <raeburn@gnu.org>
10082
10083 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10084 and XCDR real rvalues in most configurations.
10085
10086 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10087 Don't take the address of the cdr part of a cons cell; instead, track
10088 the parent cell and call XSETCDR, or set the variable for the head
10089 of the list if we haven't started down the list yet.
10090
100912002-05-19 Richard M. Stallman <rms@gnu.org>
10092
10093 * doc.c (reread_doc_file): Don't ask for confirmation.
10094
100952002-05-18 Jason Rumney <jasonr@gnu.org>
10096
10097 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10098 (xbm_load_image): Use it.
10099 (xbm_load): Ditto.
10100 (xbm_read_bitmap_data): Reverted to xfns.c version.
10101 From David Ponce <david@dponce.com>.
10102
101032002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10104
10105 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10106 2.02 and later.
10107
101082002-05-16 Juanma Barranquero <lektu@terra.es>
10109
10110 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10111
101122002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10113
10114 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10115 meaningful test.
10116 (read_char_minibuf_menu_prompt): Fix typo.
10117
101182002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10119
10120 * eval.c (Fcommandp): Doc fix.
10121
101222002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10123
10124 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10125 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10126 (Fset_keymap_parent): Gcpro a bit more.
10127 (access_keymap): Gcpro around meta_map call and around the main loop.
10128 (get_keyelt): Gcpro when following indirect references.
10129 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10130 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10131 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10132 Remove useless ad-hoc remap code.
10133
101342002-05-13 Richard M. Stallman <rms@gnu.org>
10135
10136 * search.c (search_buffer): Give up boyer moore search if inverse
10137 translation change charset_base.
10138
101392002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10140
10141 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10142 characters is carried over from the previous block of text, adjust
10143 coding->produced to account for the extra character.
10144
101452002-05-11 Andreas Schwab <schwab@suse.de>
10146
10147 * coding.c (intersection): Keep the elements of the returned list
10148 in the same order as in the first list.
10149
101502002-05-11 Kim F. Storm <storm@cua.dk>
10151
10152 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10153 only update cmm_size if realloc actually succeeds.
10154 Testing with initial size of 2 elements revealed that using
10155 realloc on GNU/Linux would cause a random trap in xmalloc
10156 later on, so I rewrote the code to use malloc/bcopy/free instead
10157 of realloc.
10158
101592002-05-10 Jason Rumney <jasonr@gnu.org>
10160
10161 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10162
101632002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10164
10165 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10166 parens, to ensure correct evaluation order.
10167
101682002-05-10 Kim F. Storm <storm@cua.dk>
10169
10170 * keymap.c (Vemulation_mode_map_alists): New variable.
10171 (syms_of_keymap): DEFVAR_LISP it.
10172 (current_minor_maps): Process keymap alists in that list before
10173 minor-mode-overriding-map-alist and minor-mode-map-alist.
10174
101752002-05-09 Richard M. Stallman <rms@gnu.org>
10176
10177 * search.c (Freplace_match): Doc fix.
10178
101792002-05-09 Kim F. Storm <storm@cua.dk>
10180
10181 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10182 Enlarge cursor rectangle drawn around image with non-zero relief.
10183
10184 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10185 Enlarge cursor rectangle drawn around image with non-zero relief.
10186
10187 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10188 Enlarge cursor rectangle drawn around image with non-zero relief.
10189
101902002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10191
10192 * xselect.c (lisp_data_to_selection_data): Don't set selection
10193 type if comes from the Lisp object's car. If the selection
10194 contains a pure ASCII text, always return QSTRING as its type.
10195
101962002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10197
10198 * mac.c (mac-cut-function): Doc fix.
10199
102002002-05-05 Richard M. Stallman <rms@gnu.org>
10201
10202 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10203
102042002-05-04 Jason Rumney <jasonr@gnu.org>
10205
10206 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10207 for event-click-count.
10208
10209 * process.c (init_process): Only add server subfeature if we can
10210 use non-blocking I/O.
10211
102122002-05-04 Andrew Choi <akochoi@shaw.ca>
10213
10214 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10215 repeatedly.
10216
102172002-05-03 Jason Rumney <jasonr@gnu.org>
10218
10219 * process.c (Fmake_network_process): Only support server sockets
10220 when we can make them non-blocking.
10221
10222 * s/ms-w32.h (HAVE_SELECT): Define.
10223
10224 * w32.h (FILE_NDELAY): New flag.
10225
10226 * w32.c (sys_getpeername, fcntl): New functions.
10227 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10228
10229 * w32proc.c: include sys/file.h.
10230
102312002-05-03 Colin Walters <walters@verbum.org>
10232
10233 * callproc.c (Vgame_score_directory): Renamed to
10234 Vshared_game_score_directory.
10235
102362002-04-30 Richard M. Stallman <rms@gnu.org>
10237
10238 * s/gnu.h [emacs]: Include stdio.h.
10239 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10240
10241 * eval.c (do_autoload): Error if called while preparing to dump.
10242
10243 * fns.c (Frequire): Error if need to load while preparing to dump.
10244
102452002-04-28 Colin Walters <walters@verbum.org>
10246
10247 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10248 Default to "~/.emacs.d/games".
10249
102502002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10251
10252 * lread.c (openp): Change arg exec_only to predicate.
10253 (build_load_history): Use XCAR/XCDR.
10254 (Flocate_file_internal): New fun.
10255 (syms_of_lread): Defsubr it.
10256 (Fload): Update call to openp.
10257
10258 * lisp.h (openp): Update prototype.
10259
10260 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10261 * w32proc.c (sys_spawnve):
10262 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10263 * w32.c (check_windows_init_file):
10264 * sound.c (Fplay_sound_internal):
10265 * process.c (Fstart_process):
10266 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10267 * mac.c (run_mac_command):
10268 * emacs.c (init_cmdargs):
10269 * callproc.c (Fcall_process): Update call to openp.
10270
10271 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10272
10273 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10274
102752002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10276
10277 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10278 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10279
102802002-04-28 Richard M. Stallman <rms@gnu.org>
10281
10282 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10283
10284 * eval.c (Fcommandp): New arg for_call_interactively.
10285 * lisp.h (Fcommandp): Declare new arg.
10286
102872002-04-28 Jason Rumney <jasonr@gnu.org>
10288
10289 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10290
10291 * w32.c (stat, fstat): Use file index information to generate
10292 inodes for directories where available.
10293
102942002-04-26 Andrew Choi <akochoi@shaw.ca>
10295
10296 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10297 [HAVE_CARBON]: Include Mac object files.
10298
10299 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10300 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10301 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10302 MAC_OSX, and MAC_OS instead of macintosh.
10303
10304 * editfns.c [MAC_OS8]: Include stdio.h.
10305
10306 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10307
10308 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10309 Apple Monaco.
10310
10311 * process.c: Declare QCfamily and QCfilter as extern.
10312 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10313 calling select.
10314
10315 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10316
10317 * tparam.c [MAC_OSX]: Don't define BC and UP.
10318
10319 * config.in [HAVE_CARBON]: Add.
10320
10321 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10322 Move here from mac/src and mac/inc.
10323
10324 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10325
103262002-04-26 Gerd Moellmann <gerd@gnu.org>
10327
10328 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10329 Compute phys_cursor_width from the x position returned
10330 by x_draw_glyhs, which is cheaper.
10331 (x_display_and_set_cursor): Compute the buffer-local value
10332 of `cursor-in-non-selected-windows' only when needed.
10333
103342002-04-25 Gerd Moellmann <gerd@gnu.org>
10335
10336 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10337 cursor on a stretch glyph has a width that depends on
10338 x_stretch_cursor_p.
10339
103402002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10341
10342 * abbrev.c (abbrev-start-location): Doc fix.
10343
10344 * indent.c (Fvertical_motion): Fix last change.
10345
103462002-04-25 Gerd Moellmann <gerd@gnu.org>
10347
10348 * indent.c (Fvertical_motion): Move to the start of the line
10349 containing PT before moving up or down.
10350
103512002-04-24 Gerd Moellmann <gerd@gnu.org>
10352
10353 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10354 case of writing a whole row, more or less analogous to the case of
10355 writing only parts of a row.
10356
10357 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10358 0 for NO_CURSOR.
10359
10360 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10361
103622002-04-23 Colin Walters <walters@verbum.org>
10363
10364 * buffer.c (syms_of_buffer): Doc fix.
10365
103662002-04-23 Gerd Moellmann <gerd@gnu.org>
10367
10368 * xterm.c (notice_overwritten_cursor): Handle the special case
10369 of the cursor being in the first blank non-text line at the
10370 end of a window.
10371
10372 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10373 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10374 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10375 bar cursors only, to make phys_cursor_width contain what its name
10376 suggests.
10377 (notice_overwritten_cursor): Consider the cursor image erased if
10378 the output area intersects the cursor image in y-direction.
10379
103802002-04-23 Simon Marshall <simon@gnu.org>
10381
10382 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10383 to XC_hand2.
10384
103852002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10386
10387 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10388
103892002-04-22 Kim F. Storm <storm@cua.dk>
10390
10391 * textprop.c (remove_properties): Fixed trap for malformed plist.
10392
103932002-04-22 Richard M. Stallman <rms@gnu.org>
10394
10395 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10396
10397 * window.c (make_window): Initialize height_fixed_p,
10398 last_cursor_off_p, and p->cursor_off_p slots.
10399
104002002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10401
10402 * fns.c (use-dialog-box): Doc fix.
10403
104042002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10405
10406 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10407 variables `row', `i' and `area'.
10408 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10409 toolkit library.
10410
104112002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10412
10413 * xfaces.c (clear_font_table): Don't free the default font of
10414 a frame even if it's on another display.
10415 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10416 that could be Qt.
10417
104182002-04-19 Juanma Barranquero <lektu@terra.es>
10419
10420 * indent.c (Fmove_to_column): Remove unused local variable
10421 `next_boundary_byte'.
10422 (current_column_1): Likewise.
10423
104242002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10425
10426 * msdos.c (Qhbar): New variable.
10427 (syms_of_msdos): Intern and staticpro it.
10428 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10429 cursor type.
10430
104312002-04-19 Dave Lambert <dlambert@acm.org>
10432
10433 Theses change implement an underscore-like (`hbar') cursor.
10434
10435 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10436
10437 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10438 Handle the `hbar' cursor type.
10439 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10440
10441 * xfns.c (Qhbar): New variable.
10442 (syms_of_xfns): Intern and staticpro it.
10443 (x_specified_cursor_type): Handle `hbar' cursor.
10444
10445 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10446 not defined.
10447
104482002-04-18 Richard M. Stallman <rms@gnu.org>
10449
10450 * textprop.c (remove_properties): New arg LIST allows scanning
10451 either a list or a plist.
10452 (interval_has_some_properties_list): New function, like
10453 interval_has_some_properties using list instead of plist.
10454 All callers changed.
10455 (Fremove_list_of_text_properties): New function.
10456 (syms_of_textprop): Defsubr it.
10457
104582002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10459
10460 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10461
104622002-04-17 Juanma Barranquero <lektu@terra.es>
10463
10464 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10465
104662002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10467
10468 * window.c (coordinates_in_window): Don't report on margin area
10469 if its width is zero.
10470
104712002-04-16 Jason Rumney <jasonr@gnu.org>
10472
10473 * w32fns.c (Fx_file_dialog): Decode file name before using.
10474
10475 * w32term.c (construct_drag_n_drop): Likewise.
10476
104772002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10478
10479 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10480 store load-history in pure space.
10481
10482 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10483
104842002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10485
10486 * xterm.c (Qlatin_1, Qutf_8): New vars.
10487 (syms_of_xterm): Initialize them.
10488 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10489 decoding the output of X*LookupString.
10490 Always use latin-1 to decode the output of XLookupString.
10491 Try Xutf8LookupString if XmbLookupString failed.
10492
10493 * region-cache.c (new_region_cache): Use BEG.
10494
104952002-04-16 Gerd Moellmann <gerd@gnu.org>
10496
10497 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10498 configuration files.
10499 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10500 returns 0.
10501
105022002-04-15 Andreas Schwab <schwab@suse.de>
10503
10504 * config.in: Regenerated using autoheader.
10505
10506 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10507 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10508 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10509 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10510 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10511 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10512 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10513 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10514 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10515 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10516 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10517 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10518 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10519 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10520 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10521 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10522 STACK_DIRECTION, now set by autoconf.
10523
105242002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10525
10526 * dispnew.c (marginal_area_string): Sort arguments.
10527
10528 * dispextern.h (marginal_area_string): Add prototype.
10529
105302002-04-13 Richard M. Stallman <rms@gnu.org>
10531
10532 * fileio.c (Finsert_file_contents):
10533 Don't call temp_output_buffer_setup--do just part, by hand.
10534
10535 * coding.c (run_pre_post_conversion_on_str):
10536 Don't call temp_output_buffer_setup--do just part, by hand.
10537
10538 * keyboard.c (command_loop_1): Don't call start_hourglass
10539 or cancel_hourglass when executing a macro.
10540
10541 * marker.c (count_markers): New function.
10542
10543 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10544 grow without limit. Move recently used elements to the front.
10545
105462002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10547
10548 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10549
105502002-04-12 Gerd Moellmann <gerd@gnu.org>
10551
10552 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10553 rows marginal areas.
10554 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10555 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10556
10557 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10558
105592002-04-12 Dave Love <fx@gnu.org>
10560
10561 * dispnew.c (marginal_area_string): New.
10562
10563 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10564 (Qleft_margin, Qright_margin): Declare.
10565 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10566
10567 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10568 note_mode_line_highlight and extended.
10569
10570 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10571 (make_lispy_event): Deal with mouse events in margins.
10572
105732002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10574
10575 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10576
10577 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10578 than deactivating the mark if tmm is set to `lambda'.
10579 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10580 Use a single event for HELP_EVENT.
10581 (Fexecute_extended_command): Save last_point_position.
10582
105832002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10584
10585 * lisp.h (Fpropertize): Add prototype.
10586
10587 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10588
105892002-04-10 Colin Walters <walters@verbum.org>
10590
10591 * config.in: Add HAVE_SHARED_GAME_DIR.
10592
10593 * callproc.c: (Vgame_score_directory): New variable.
10594 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10595
105962002-04-10 Richard M. Stallman <rms@gnu.org>
10597
10598 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10599
106002002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10601
10602 * minibuf.c (read_minibuf): Use empty_string.
10603 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10604 Short-circuit the search as soon as it "failed".
10605 (Fall_completions): Allow lambda forms and lists of strings for alist.
10606 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10607 when require_match is nil.
10608 (Ftest_completion): Rename from `test_completion' and export to elisp.
10609 Call the predicate also when alist is a list.
10610 Obey Vcompletion_regexp_list.
10611 (do_completion, Fminibuffer_complete_and_exit): Use it.
10612 (Fassoc_string): Rename from `assoc_for_completion'.
10613 Allow list of strings as well and export to elisp.
10614
106152002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10616
10617 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10618
106192002-04-08 Juanma Barranquero <lektu@terra.es>
10620
10621 * w32.c (sys_accept): Don't hide variable `s'.
10622
106232002-04-05 Gerd Moellmann <gerd@gnu.org>
10624
10625 * callint.c (Fcall_interactively): Use INTEGERP instead of
10626 NUMBERP for checking Vhistory_length.
10627
106282002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10629
10630 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10631 Doc fix to reflect it.
10632
106332002-04-04 Richard M. Stallman <rms@gnu.org>
10634
10635 * xdisp.c (display_mode_element): New arg RISKY.
10636 Disregard text props found or specified within a variable
10637 that isn't marked risky-local-variable.
10638 (Qrisky_local_variable): New variable.
10639 (syms_of_xdisp): Init and staticpro it.
10640
106412002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10642
10643 * undo.c (record_point): New fun.
10644 (record_delete, record_insert): Use it.
10645
106462002-04-03 Juanma Barranquero <lektu@terra.es>
10647
10648 * doc.c (Fdocumentation): Add missing parentheses.
10649 (Fdocumentation_property): Likewise.
10650
106512002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10652
10653 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10654 data is 0, just return nil.
10655
106562002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10657
10658 * msdos.c (syms_of_msdos): Fix last change with
10659 mouse_autoselect_window.
10660
106612002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10662
10663 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10664 mouse_autoselect_window.
10665
106662002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10667
10668 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10669 with system-specific keysyms. Use it also for unknown function keys.
10670
10671 * doc.c (reread_doc_file): Return whether reload was attempted.
10672 (Fdocumentation, Fdocumentation_property): Don't try to reload
10673 if the doc is 0 and only ask once.
10674
10675 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10676
106772002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10678
10679 * keyboard.c (read_char): If the event was Qselect_window,
10680 restore timer_idleness_start_time to its previous value.
10681
10682 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10683
106842002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10685
10686 * region-cache.c (new_region_cache): Use BEG.
10687
10688 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10689 Use BEG and BEG_BYTE.
10690
10691 * doc.c (get_doc_string): Return nil if the location is wrong.
10692 (reread_doc_file): New fun.
10693 (Fdocumentation, Fdocumentation_property):
10694 Call it if get_doc_string fails.
10695 (Fsnarf_documentation): Make it work for a dumped Emacs.
10696
10697 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10698 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10699
10700 * charset.c (Fstring): Allow 0 arguments.
10701
10702 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10703
10704 * process.c (DATAGRAM_CONN_P, list_processes_1)
10705 (Fprocess_datagram_address, Fset_process_datagram_address)
10706 (Fset_network_process_options, server_accept_connection):
10707 Fix some int/Lisp_Object confusions (thank you union types).
10708
107092002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10710
10711 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10712
10713 * w32term.c: Likewise.
10714 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10715
10716 * keyboard.c (Qselect_window): New symbol.
10717 (head_table): Use it.
10718 (keys_of_keyboard): Bound select-window event to handle-select-window.
10719 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10720
10721 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10722 (last_window): New variable.
10723 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10724 (note_mouse_movement): Remove reimplemented code in #if 0.
10725 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10726 Emacs windows.
10727
10728 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10729
107302002-03-31 Gerd Moellmann <gerd@gnu.org>
10731
10732 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10733 Callers changed.
10734
107352002-03-30 Richard M. Stallman <rms@gnu.org>
10736
10737 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10738 loop whenever it stops making progress.
10739
10740 * widget.c (set_frame_size): Don't call change_frame_size.
10741
107422002-03-30 Gerd Moellmann <gerd@gnu.org>
10743
10744 * dispnew.c (direct_output_for_insert):
10745 Call mark_window_display_accurate.
10746
107472002-03-29 Jason Rumney <jasonr@gnu.org>
10748
10749 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10750
107512002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10752
10753 * Makefile.in (lread.o): Depend on coding.h.
10754
10755 * lread.c (openp, Fload): Encode the file name before passing it
10756 to `stat', `access', and `emacs_open'.
10757 (openp): GCPRO the encoded file name. Don't recompute Lisp
10758 strings unnecessarily.
10759
107602002-03-29 Kim F. Storm <storm@cua.dk>
10761
10762 * fns.c (Flax_plist_put): Doc fix.
10763
107642002-03-28 Miles Bader <miles@gnu.org>
10765
10766 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10767
107682002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10769
10770 * process.c (set-network-process-options): Add usage.
10771 (make-network-process): Doc fix.
10772
107732002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10774
10775 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10776
107772002-03-26 Richard M. Stallman <rms@gnu.org>
10778
10779 * fns.c (Fsubstring_no_properties): New function.
10780 (Flax_plist_get, Flax_plist_put): New functions.
10781 (syms_of_fns): defsubr them.
10782
10783 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10784 don't test or alter w->update_mode_line.
10785
10786 * window.c (Fdisplay_buffer): Doc fix.
10787
107882002-03-24 Richard M. Stallman <rms@gnu.org>
10789
10790 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10791
107922002-03-24 Gerd Moellmann <gerd@gnu.org>
10793
10794 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10795 (Fdefmacro): Handle `(declare ...)'.
10796 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10797 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10798
107992002-03-24 Jason Rumney <jasonr@gnu.org>
10800
10801 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10802 (xbm_file_p): Add prototypes.
10803 (xbm_format, xbm_image_p): Sync with xfns.c.
10804 (reflect_byte): New function.
10805 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10806 (xbm_load_image): Create bitmaps with a depth of 1.
10807 (init_xfns): Enable XBM images.
10808
108092002-03-23 Jason Rumney <jasonr@gnu.org>
10810
10811 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10812 correctly. Do not pass up_modifier to keyboard buffer.
10813
10814 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10815
108162002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10817
10818 * Makefile.in (bootstrapclean): New target.
10819 (bootstrap-temacs, bootstrap-doc): Remove.
10820 (bootstrap-emacs): Use a bog-standard `temacs'.
10821 Don't bother to build a DOC file.
10822
10823 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10824
10825 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10826 in temacs even if !CANNOT_DUMP.
10827 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10828
10829 * alloc.c (check_pure_size): Only output a warning.
10830
108312002-03-22 Jason Rumney <jasonr@gnu.org>
10832
10833 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10834 supported.
10835
10836 * w32term.c (zv_bits): Declare as short, for word alignment.
10837 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10838 (syms_of_w32term): Define x-use-underline-position-properties.
10839
10840 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10841 (clear_image_cache): Block input, fix logic, clear matrices in
10842 all frames that share this cache.
10843
108442002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10845
10846 * emacs.c (main): Update the Copyright year in the blurb printed
10847 by "emacs --version".
10848
10849 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10850
10851 * xterm.c (XTread_socket): If XK_ISO_Lock and
10852 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10853 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10854
108552002-03-21 Kim F. Storm <storm@cua.dk>
10856
10857 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10858 menu-bar bindings in keymap and local-map properties _are_ used.
10859 But try keymap property first in accordance with 2002-01-03 patch.
10860 Added comment describing why this is not always reliable.
10861 (tool_bar_items): Ditto for tool-bar.
10862
108632002-03-21 Jason Rumney <jasonr@gnu.org>
10864
10865 * w32fns.c (x_clear_image_1): Disable color table code.
10866
108672002-03-21 Kim F. Storm <storm@cua.dk>
10868
10869 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10870 removed the wrong version of the DEFUN macro; fixed it.
10871
10872 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10873 Fmember rather than Fmemq).
10874 (Fprovide): Check that subfeatures is a list.
10875
10876 * process.c (QCfeature, QCdatagram): Removed variables.
10877 (QCtype, Qdatagram): New variables.
10878 (network_process_featurep): Removed function.
10879 (Fmake_network_process): Removed :feature check.
10880 Use :type 'datagram instead of :datagram t to create a datagram
10881 socket. This allows us to add other connection types (e.g. raw
10882 sockets) later in a consistent manner.
10883 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
10884 supported subfeatures for feature make-network-process.
10885 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
10886 Intern and staticpro QCtype and Qdatagram.
10887 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
10888
10889 * xfns.c: (QCtype): Remove duplicate declaration and
10890 initialization (is now declared in process.c).
10891
10892 * w32fns.c: (QCtype): Remove duplicate declaration and
10893 initialization (is now declared in process.c).
10894
108952002-03-21 Richard M. Stallman <rms@gnu.org>
10896
10897 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
10898 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
10899 when jumping to `fail' to avoid undoing reg changes in the
10900 last iteration of the loop.
10901 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
10902
10903 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
10904 Depend on process.h.
10905
109062002-03-20 Jason Rumney <jasonr@gnu.org>
10907
10908 Most of the following changes are still conditional on HAVE_IMAGES
10909 which is not set by default on Windows.
10910
10911 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
10912
10913 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
10914 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
10915 (four_corners_best, x_clear_image_1, x_clear_image)
10916 (x_alloc_image_color, postprocess_image)
10917 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
10918 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
10919 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
10920
10921 * w32gui.h (struct XImage): Define.
10922
10923 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
10924 extract mouse co-ordinates.
10925
109262002-03-20 Jason Rumney <jasonr@gnu.org>
10927
10928 * w32.c (init_winsock): Dynamically load new server and UDP
10929 socket functions.
10930 (socket_to_fd): New function.
10931 (sys_socket): Use it.
10932 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
10933 (sys_recvfrom, sys_sendto): New wrapper functions.
10934
10935 * process.c (QCfamily, QCfilter): Remove duplicate declaration
10936 and initialization.
10937
10938 * makefile.w32-in (LIBS): Remove $(WSOCK32).
10939
109402002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
10941
10942 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
10943 Don't use "sun" as a variable, it's a predefined constant on Sun
10944 machines.
10945
109462002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10947
10948 * bytecode.c (Fbyte_code): Revert last change.
10949
109502002-03-19 Kim F. Storm <storm@cua.dk>
10951
10952 * makefile.w32-in (LIBS): Add $(WSOCK32).
10953 From David Ponce <dponce@voila.fr>.
10954
109552002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10956
10957 * process.c (wait_reading_process_input): Move variables `pname'
10958 and `pnamelen' down where they are used.
10959
10960 * bytecode.c (Fbyte_code): Discard unused computed value to
10961 prevent gcc warning.
10962
10963 * lisp.h (Fplist_member): Add prototype.
10964
109652002-03-18 Kim F. Storm <storm@cua.dk>
10966
10967 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
10968 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
10969
10970 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
10971 Remove explicit GNU_LINUX settings for datagram support.
10972
109732002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10974
10975 * process.c (Fmake_network_process): Remove unused variable `sa'.
10976 Doc fix. Add usage:.
10977 (set_socket_options): Remove unused variables `optnum' and `opttype'.
10978
109792002-03-17 Richard M. Stallman <rms@gnu.org>
10980
10981 * xdisp.c (cursor_type_changed): New variable.
10982 (redisplay_internal): Redisplay all windows if cursor_type_changed.
10983 Clear it when clearing windows_or_buffers_changed.
10984 (try_cursor_movement, redisplay_window, try_window_id)
10985 (try_window_reusing_current_matrix): Test cursor_type_changed
10986 along with windows_or_buffers_changed.
10987
10988 * window.h (cursor_type_changed): New variable.
10989
10990 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
10991 not update_mode_lines, and always set it to 1.
10992
10993 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
10994 if no frames needed redrawing.
10995
109962002-03-17 Kim F. Storm <storm@cua.dk>
10997
10998 The following changes add support for network server processes,
10999 datagram connections, and local (unix) sockets.
11000
11001 * process.h (struct Lisp_Process): New member log.
11002 Doc fix: Member command used to indicate stopped network process.
11003 Doc fix: Member childp contains plist for network process.
11004 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11005
11006 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11007 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11008 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11009 New variables.
11010 (NETCONN1_P): New macro.
11011 (DATAGRAM_SOCKETS): New conditional symbol.
11012 (datagram_address): New array.
11013 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11014 (status_message): Use concat3.
11015 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11016 for a stopped network process.
11017 (Fset_process_buffer): Update contact plist for network process.
11018 (Fset_process_filter): Ditto. Don't enable input for stopped
11019 network processes. Server must listen, even if filter is t.
11020 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11021 New functions.
11022 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11023 (Fprocess_contact): Added KEY argument. Handle datagrams.
11024 (list_processes_1): Optionally show only processes with the query
11025 on exit flag set. Dynamically adjust column widths. Omit tty
11026 column if not needed. Report stopped network processes.
11027 Identify server and datagram network processes.
11028 (Flist_processes): New optional arg `query-only'.
11029 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11030 (conv_lisp_to_sockaddr, set_socket_options)
11031 (network_process_featurep, unwind_request_sigio): New helper functions.
11032 (Fprocess_datagram_address, Fset_process_datagram_address):
11033 (Fset_network_process_options): New lisp functions.
11034 (Fopen_network_stream): Removed. Now defined in simple.el.
11035 (Fmake_network_process): New lisp function. Code is based on previous
11036 Fopen_network_stream, but heavily reworked with new property list based
11037 argument list, support for datagrams, server processes, and local
11038 sockets in addition to old client-only functionality.
11039 (server_accept_connection): New function.
11040 (wait_reading_process_input): Use it to handle incoming connects.
11041 Do not enable input on a new connection if process is stopped.
f63fd14e 11042 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11043 (send_process): Handle datagram sockets.
11044 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11045 network process is indicated by setting command field to t .
11046 (Fprocess_send_eof): No-op if datagram connection.
11047 (Fstatus_notify): Don't read input for a stream server socket or a
11048 stopped network process.
11049 (init_process): Initialize datagram_address array.
11050 (syms_of_process): Intern and staticpro new variables, defsubr new
11051 functions.
11052
110532002-03-16 Jason Rumney <jasonr@gnu.org>
11054
11055 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11056 startup case.
11057
110582002-03-16 Richard M. Stallman <rms@gnu.org>
11059
11060 * xdisp.c (redisplay_internal, redisplay_windows):
11061 Use list_of_error to call internal_condition_case_1.
11062 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11063 so as to catch all errors with no possibility of debugger redisplay.
11064 (list_of_error): New variable.
11065 (syms_of_xdisp): Init and staticpro it.
11066
11067 * print.c (print_object): Delete `\ ' from printed rep of frame.
11068
110692002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11070
11071 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11072 until its implementation is fixed.
11073
110742002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11075
11076 * xfns.c (png_load): Remove unused variable `gamma_str'.
11077
110782002-03-14 Richard M. Stallman <rms@gnu.org>
11079
11080 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11081
110822002-03-14 Miles Bader <miles@gnu.org>
11083
11084 * intervals.c (adjust_for_invis_intang): New function.
11085 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11086 work for dealing with invisible+intangible regions. Do so before
11087 and after both forward and backward movements, to handle both
11088 front-sticky and rear-sticky cases.
11089 * textprop.c (text_property_stickiness): Function moved here from
11090 `editfns.c'.
11091 * intervals.h (text_property_stickiness): New declaration.
11092 * editfns.c (char_property_eq): Function removed.
11093 (text_property_stickiness): Function moved to `textprop.c'.
11094
110952002-03-13 Jason Rumney <jasonr@gnu.org>
11096
11097 * config.in: Add STRFTIME_NO_POSIX2.
11098
11099 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11100 and %OX when underlying strftime does not.
11101
111022002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11103
11104 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11105 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11106 line) to avoid annoying flicker.
11107 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11108 (XTread_socket): Mark it static.
11109
11110 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11111
111122002-03-13 Kim F. Storm <storm@cua.dk>
11113
11114 * puresize.h (BASE_PURESIZE): Increase to 775000.
11115
111162002-03-12 Juanma Barranquero <lektu@terra.es>
11117
11118 * editfns.c (syms_of_editfns): Fix typo.
11119
111202002-03-12 Gerd Moellmann <gerd@gnu.org>
11121
11122 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11123 Include termopt.h for interrupt_input.
11124
111252002-03-11 Andreas Schwab <schwab@suse.de>
11126
11127 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11128
111292002-03-11 Gerd Moellmann <gerd@gnu.org>
11130
11131 * xterm.c (note_mouse_movement): Put code for
11132 x_autoselect_window_p in #if 0.
11133
11134 * lread.c (Fload): Don't assume that message_with_string uses the
11135 string it is given like a C string.
11136
111372002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11138
11139 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11140
11141 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11142 x_session_have_connection.
11143 (x_initialize): Add call to x_session_initialize.
11144
11145 * termhooks.h (enum event_kind): Add save_session_event.
11146
11147 * keyboard.c: Add Emacs event save_session_event.
11148
11149 * emacs.c (main): Add call to syms_of_xsmfns.
11150
11151 * lisp.h: Declare syms_of_xsmfns as extern.
11152
11153 * config.in: Add HAVE_X_SM.
11154
11155 * Makefile.in (LIBXT): Add -lSM -lICE
11156 if HAVE_X_SM and not USE_X_TOOLKIT.
11157 (XOBJ): New file xsmfns.c added.
11158
11159 * xsmfns.c: New file for X session management.
11160
111612002-03-09 Jason Rumney <jasonr@gnu.org>
11162
11163 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11164 read-only when setting modified time.
11165
111662002-03-08 Gerd Moellmann <gerd@gnu.org>
11167
11168 * xdisp.c (move_it_vertically_backward): At the end of the function,
11169 when moving forward by lines, treat terminal frames specially.
11170
11171 * keyboard.c (echo_char): Make sure to add a separator between
11172 keys even if echo_dash hasn't been called.
11173
11174 * xdisp.c: Use new string macros.
11175 (update_echo_area): Pass number of bytes to message3 instead of
11176 number of chars.
11177 (set_message_1): Don't access a string's size_byte directly.
11178 (decode_mode_spec_coding): Use number of bytes of eoltype string
11179 instead number of chars.
11180
11181 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11182
111832002-03-08 Juanma Barranquero <lektu@terra.es>
11184
11185 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11186 24-bit.
11187
111882002-03-06 Jason Rumney <jasonr@gnu.org>
11189
11190 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11191
111922002-03-06 Gerd Moellmann <gerd@gnu.org>
11193
11194 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11195 (cancel_echoing, echo_length, echo_truncate): Changed to
11196 work with new kboard definition.
11197 (echo_now): Use message3_nolog instead of message2_nolog.
11198
11199 * alloc.c (mark_kboards): Mark echo_string.
11200
11201 * keyboard.h (ECHOBUFSIZE): Removed.
11202 (struct kboard): Member echoptr removed, member echobuf renamed
11203 to echo_string.
11204
11205 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11206 message3 instead of message2 to display the message using STRING's
11207 text properties.
11208
112092002-03-05 Andreas Schwab <schwab@suse.de>
11210
11211 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11212
112132002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11214
11215 * frame.c (default-frame-alist): Explain that setting it doesn't
11216 affect existing frames.
11217
112182002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11219
11220 * indent.c (skip_invisible): Fix my brain fart.
11221
11222 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11223
112242002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11225
11226 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11227 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11228 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11229 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11230 and variables to use EMACS_INT instead of just int.
11231
11232 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11233
112342002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11235
11236 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11237 environment, pass it down with corrected value.
11238
112392002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11240
11241 * lread.c (read_filtered_event): Do not call start_hourglass
11242 before returning.
11243
112442002-03-04 Juanma Barranquero <lektu@terra.es>
11245
11246 * w32term.c (x_display_and_set_cursor): Fix typo.
11247
112482002-03-03 Richard M. Stallman <rms@gnu.org>
11249
11250 * fileio.c (Fmake_temp_name): Doc fix.
11251
112522002-03-03 Gary Wong <gtw@gnu.org>
11253
11254 * termcap.c [!emacs]: Replace ospeed for building standalone
11255 libtermcap, for binary compatibility.
11256
11257 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11258
112592002-03-03 Richard M. Stallman <rms@gnu.org>
11260
11261 * xrdb.c (file_p): Rename arg `path' to `filename'.
11262
11263 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11264 only if it is an integer.
11265
11266 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11267 If png_get_sRGB gives an answer, call png_set_gamma
11268 using the default image gamma value.
11269
11270 * lread.c (read1): When reading from a file, default string to
11271 multibyte only if it has some multibyte characters.
11272
11273 * print.c (print_object): Output multibyte chars 128...255
11274 using \x even if ! print_escape_multibyte.
11275
11276 * xdisp.c (display_mode_element): Move the places where
11277 bytepos, charpos, this, and lisp_string are set.
11278 Use lisp_string to set bytepos.
11279
11280 * xdisp.c (redisplay_internal):
11281 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11282
11283 * xdisp.c (display_mode_element): Merge properties specified with
11284 :propertize onto those that come with the string.
11285
112862002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11287
11288 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11289 automatic-hscrolling. Users changed.
11290 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11291 Users changed.
11292 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11293
112942002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11295
11296 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11297
112982002-03-02 Kim F. Storm <storm@cua.dk>
11299
11300 * window.c (Fminibuffer_selected_window): New function.
11301 (syms_of_window): Defsubr it.
11302
113032002-03-01 Kim F. Storm <storm@cua.dk>
11304
11305 * window.h (struct window): New member phys_cursor_width.
11306
11307 * window.c (make_window, replace_window): Init phys_cursor_width.
11308
11309 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11310 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11311
11312 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11313 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11314
11315 * lisp.h (GCPRO6): New macro.
11316
11317 * process.c (Fopen_network_stream): Use GCPRO6.
11318
113192002-03-01 Kim F. Storm <storm@cua.dk>
11320
11321 * process.c (Qconnect, Qfailed): New variables.
11322 (syms_of_process): Intern and staticpro them.
11323 (Fprocess_status): Document connect and failed return values.
11324 [NON_BLOCKING_CONNECT]: New conditional.
11325 (connect_wait_mask, num_pending_connects): New variables.
11326 (status_message): Convert Qfailed status.
11327 (Fopen_network_stream): Added support for non-blocking connect.
11328 New optional args: filter, sentinel, non_blocking. Doc updated.
11329 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11330 (deactivate_process): Handle pending non-blocking connect.
11331 (wait_reading_process_input): Poll for status of non-blocking
11332 connects. Exec sentinel directly when connect succeeds.
11333 (status_notify): Don't read process output if not yet connected.
11334
113352002-02-28 Kim F. Storm <storm@cua.dk>
11336
11337 * window.c: (minibuf_selected_window): Renamed from
11338 Vminibuf_selected_window. Users changed.
11339 (syms_of_window): Staticpro it.
11340
113412002-02-26 Kim F. Storm <storm@cua.dk>
11342
11343 The following changes add a new Vminibuf_selected_window variable
11344 which is similar to Vminibuf_scroll_window, but which is only set
11345 on entry to the minibuffer (from a non-minibuffer window):
11346
11347 * window.c: (Vminibuf_selected_window): New variable.
11348 (struct save_window_data): New member minibuf_selected_window.
11349 (Fset_window_configuration): Restore Vminibuf_selected_window.
11350 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11351 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11352 (compare_window_configurations): Compare minibuf_selected_window.
11353
11354 * window.h: (Vminibuf_selected_window): Declare extern.
11355
11356 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11357 entry to minibuffer or on entry from a non-minibuffer window.
11358
11359 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11360 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11361
11362 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11363 instead of Vminibuf_scroll_window when deciding in which window
11364 the region should be highlighted. Consequently, the region remains
11365 highlighteded even when a completion buffer is also displayed.
11366
113672002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11368
11369 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11370
11371 * xselect.c (Qcompound_text_with_extensions): Renamed from
11372 Qcompound_text_no_extensions.
11373 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11374
113752002-02-26 Juanma Barranquero <lektu@terra.es>
11376
11377 * w32proc.c (syms_of_ntproc): Doc fix.
11378
113792002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11380
11381 * intervals.h: Include "dispextern.h" unconditionally.
11382
113832002-02-24 Jason Rumney <jasonr@gnu.org>
11384
11385 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11386 and disp-table.elc.
11387 (lisp): Add emacs-lisp/backquote.elc.
11388
113892002-02-24 Kim F. Storm <storm@cua.dk>
11390
11391 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11392 The validation of the event type was too strict as it didn't
11393 allow string events; buffer names are used in bindings for
11394 menu-bar-select-buffer (see `menu-bar-update-buffers').
11395
113962002-02-23 Kim F. Storm <storm@cua.dk>
11397
11398 The following changes rework my patch of 2002-02-06 which
11399 added command remapping by entering the commands directly into
11400 the keymaps. Now, command remapping uses an explicit `remap'
11401 prefix in the keymaps, i.e. [remap COMMAND].
11402
11403 * keymap.c (Qremap, remap_command_vector): New variables.
11404 (is_command_symbol): Removed function.
11405 (Fdefine_key): No longer accept a symbol for KEY.
11406 Added validation of [remap COMMAND] argument for KEY.
11407 The DEF is no longer required to be a symbol when remapping a command.
11408 (Fremap_command): New function to remap command through keymaps.
11409 (Flookup_key): Perform command remapping initiated by
11410 Fremap_command directly for speed.
11411 (Fkey_binding): Use Fremap_command for command remapping.
11412 (where_is_internal): Handle new command remapping representation.
11413 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11414 staticpro them. Defsubr Fremap_command.
11415
11416 * keymap.h (Fremap_command): Declare extern.
11417 (is_command_symbol): Remove extern.
11418
11419 * keyboard.c (command_loop_1): Use Fremap_command for command
11420 remapping; now try command remapping for all symbols.
11421
114222002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11423
11424 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11425
114262002-02-23 Jason Rumney <jasonr@gnu.org>
11427
11428 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11429 on the string before encoding it.
11430 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11431 after decoding it.
11432
11433 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11434
114352002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11436
11437 * w32term.c (enter_timestamp): Remove unused static variable to
11438 prevent warning.
11439
11440 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11441
114422002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11443
11444 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11445
11446 * xselect.c (selection_data_to_lisp_data): Fix last change.
11447
114482002-02-22 Jason Rumney <jasonr@gnu.org>
11449
11450 * w32term.h (struct w32_output): New member menu_command_in_progress.
11451
11452 * w32menu.c (menubar_selection_callback): Free the menu and
11453 clear the menu_command_in_progress flag.
11454
11455 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11456 (menu_free_timer): New variable.
11457 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11458 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11459 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11460 menu command is in progress.
11461 <WM_COMMAND>: Set the menu_command_in_progress flag.
11462 Kill any menu_free_timer that is running.
11463
11464 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11465 Call ExtTextOutA rather than ExtTextOut.
11466
114672002-02-22 Eli Zaretskii <eliz@gnu.org>
11468
11469 * puresize.h (BASE_PURESIZE): Increase to 755000.
11470
114712002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11472
11473 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11474 on the string before encoding it.
11475 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11476 after decoding it.
11477
114782002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11479
11480 Support for ICCCM Extended Segments in X selections:
11481
11482 * xselect.c <Qcompound_text_no_extensions>: New variable.
11483 (syms_of_xselect): Intern and staticpro it.
11484 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11485 selection text.
11486 (lisp_data_to_selection_data): If next-selection-coding-system is
11487 compound-text-no-extensions, set the type of selection to be
11488 compound-text.
11489
11490 * xterm.h (x_encode_text): Update prototype.
11491
11492 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11493 callers changed. If SELECTIONP is non-zero, run the
11494 pre-write-conversion function before encoding the selection text.
11495
114962002-02-21 Kim F. Storm <storm@cua.dk>
11497
11498 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11499
11500 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11501 Correct composing of language-change event.
11502
115032002-02-20 Kim F. Storm <storm@cua.dk>
11504
11505 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11506 bindings at PT when building menu (the menu is not updated often
11507 enough for this to work reliable).
11508 (tool_bar_items): Likewise.
11509 (current_active_maps): Removed unused (and buggy) function.
11510
115112002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11512
11513 * xfns.c (gif_load): Use correct width and height for GIF images.
11514
115152002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11516
11517 * floatfns.c (Fatan): Accept an optional second arg and call
11518 atan2 if passed 2 args.
11519
115202002-02-18 Jason Rumney <jasonr@gnu.org>
11521
11522 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11523
115242002-02-17 Jason Rumney <jasonr@gnu.org>
11525
11526 * w32term.c (x_autoselect_window_p): New variable.
11527 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11528 (note_mouse_movement): Use it.
11529
11530 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11531
11532 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11533
11534 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11535 New variables.
11536 (syms_of_w32fns): Intern and staticpro them.
11537 (x_frame_parms) <"fullscreen">: New parameter.
11538 (x_fullscreen_move, x_set_fullscreen): New functions.
11539 (x_set_frame_parameters): Support Qfullscreen.
11540 (x_real_positions): Save x/y_pixels_diff frame params.
11541 (x_figure_window_size): Support full-screen frames.
11542 (Fx_create_frame): Default the fullscreen parameter.
11543
11544 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11545 (x_fullscreen_adjust): New functions.
11546 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11547 fullscreen. Call x_check_fullscreen_move, and set the
11548 want_fullscreen member of output_data.w32
11549 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11550
11551 * w32term.h: New enum for FULLSCREEN_* constants.
11552 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11553 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11554 (x-fullscreen-adjust): New prototype.
11555
115562002-02-17 Kim F. Storm <storm@cua.dk>
11557
11558 * frame.c: (Vmouse_highlight): New variable.
11559 (syms_of_frame): DEFVAR_LISP it.
11560
11561 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 11562
048addec 11563 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 11564
048addec
JD
11565 * xterm.c (disable_mouse_highlight): Removed variable.
11566 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11567 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11568 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11569 and on after keyboard input.
11570 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 11571
048addec 11572 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 11573
048addec
JD
11574 * msdos.c (disable_mouse_highlight): Removed variable.
11575 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11576 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11577 (internal_terminal_init): Initialize mouse_face_hidden.
11578 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11579 and on after keyboard input.
4f1b1854 11580
048addec 11581 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 11582
048addec
JD
11583 * w32term.c (disable_mouse_highlight): Removed variable.
11584 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11585 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11586 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11587 and on after keyboard input.
11588 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 11589
048addec 115902002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 11591
048addec
JD
11592 * msdos.c (last_mouse_window): New variable.
11593 (dos_rawgetc): Fix last change--if the mouse is in the same window
11594 as recorded in last_mouse_window, don't select this window.
5cb6905d 11595
048addec 11596 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 11597
048addec
JD
11598 * msdos.c (x_autoselect_window_p): New variable.
11599 (syms_of_msdos): Defvar it.
11600 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11601 which the last mouse movement occured, unless it is already selected.
437dfb9f 11602
048addec
JD
11603 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11604 New variables.
11605 (syms_of_xdisp): DEVFAR them.
11606 (hscroll_window_tree): Use automatic_hscroll_margin and
11607 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 11608
048addec 116092002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 11610
048addec
JD
11611 * xterm.c (x-autoselect-window): New variable.
11612 (note_mouse_movement): Use it.
9f696a00 11613
048addec 11614 * keyboard.c: Do not include "systime.h" twice.
d57966d7 11615
048addec 116162002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 11617
048addec 11618 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 11619
048addec 11620 * alloc.c (NSTATICS): Increase to 1280.
74779f52 11621
048addec 116222002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 11623
048addec 11624 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 11625
048addec
JD
11626 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11627 (Vx_super_keysym): New variables.
11628 (syms_of_xterm): DEFVAR_LISP them.
11629 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11630 variables to determine which keys to use for the various modifiers.
a474d59c 11631
048addec 116322002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 11633
048addec
JD
11634 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11635 (mode_line_in_non_selected_windows): New variable.
11636 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 11637
048addec
JD
11638 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11639 Use mode_line_in_non_selected_windows.
11640 (mode_line_in_non_selected_windows): Declare extern.
11641 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 11642
048addec 116432002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 11644
048addec
JD
11645 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11646 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11647 (Fclear_this_command_keys): Doc fixes.
2d10309f 11648
048addec
JD
11649 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11650 (update_face_from_frame_parameter): Increment face_change_count
11651 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 11652
048addec
JD
11653 * xdisp.c (QCpropertize): New variable.
11654 (mode_line_proptrans_alist): New variable.
11655 (display_mode_element): New arg PROPS; all calls changed.
11656 Implement this, for strings.
11657 Handle literal output of strings by sharing the
11658 main-line code for strings, using local var `literal'.
11659 Handle :propertize feature.
11660 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11661 mode_line_proptrans_alist.
0b1e6b54 11662
048addec 116632002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 11664
048addec
JD
11665 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11666 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 11667
048addec
JD
11668 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11669 (CURRENT_MODE_LINE_FACE_ID): Use it.
11670 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 11671
048addec
JD
11672 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11673 to get mode line face.
e17144de 11674
048addec 116752002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11676
048addec
JD
11677 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11678 variables; cus-start.el doesn't need them anymore.
44368f8f 11679
048addec 116802002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 11681
048addec
JD
11682 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11683 reduction. This fixes a display problem where stray newlines were
11684 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 11685
048addec 116862002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11687
048addec 11688 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 11689
048addec 11690 * xdisp.c (display_mode_lines): Fix last change.
453c5510 11691
048addec 116922002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 11693
048addec
JD
11694 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11695 match each other.
11696 (w32_load_system_font): Prevent Cleartype fonts from loading.
11697 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 11698
048addec 116992002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 11700
048addec
JD
11701 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11702 (CURRENT_MODE_LINE_HEIGHT): Use it.
11703 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11704
048addec
JD
11705 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11706 (pos_visible_p, handle_face_prop): Likewise.
11707 (display_mode_lines): Likewise, but for the real selected window.
11708 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11709
048addec
JD
11710 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11711 in non-selected windows.
11712 (realize_basic_faces): Realize it.
11713 (syms_of_term): Intern and staticpro it.
308dd672 11714
048addec 117152002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 11716
048addec
JD
11717 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11718 Changed mail addresses to emacs-devel@gnu.org.
308dd672 11719
048addec 117202002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 11721
048addec
JD
11722 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11723 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 11724
048addec 11725 * floatfns.c (Fround): Doc fix.
3c1e6b46 11726
048addec 117272002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 11728
048addec 11729 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 11730
048addec 117312002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 11732
048addec 11733 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 11734
048addec 117352002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 11736
048addec
JD
11737 * keymap.c (where_is_internal): Only check whether definition is
11738 remapped if it fulfills is_command_symbol.
0065bb74 11739
048addec 117402002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 11741
048addec 11742 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 11743
048addec 11744 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 11745
048addec 117462002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 11747
048addec
JD
11748 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11749 defining command remapping. Doc updated.
11750 (Flookup_key): Remap command through keymap if KEY is a symbol.
11751 (is_command_symbol): New function.
11752 (Fkey_binding): Use it. New optional argument NO-REMAP.
11753 Doc updated. Callers changed. Perform command remapping via
11754 recursive call unless that arg is non-nil.
11755 (where_is_internal): New argument no_remap. Callers changed.
11756 Call recursively to find original key bindings for a remapped
11757 comand unless that arg is non-nil.
11758 (Fwhere_is_internal): New optional argument NO-REMAP.
11759 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 11760
048addec
JD
11761 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11762 (is_command_symbol): Added prototype.
0d8466cc 11763
048addec
JD
11764 * keyboard.c (Vthis_original_command): New variable.
11765 (syms_of_keyboard): DEFVAR_LISP it.
11766 (command_loop_1): Set it, and perform command remapping.
15fff01d 11767
048addec 117682002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 11769
048addec 11770 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 11771
048addec 117722002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 11773
048addec 11774 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 11775
048addec 117762002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 11777
048addec 11778 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 11779
048addec 117802002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 11781
048addec 11782 * filelock.c (S_ISLNK): Define if not defined.
3a232704 11783
048addec 117842002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 11785
048addec 11786 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 11787
048addec
JD
11788 * lread.c (read1): Redesign strategy for force_multibyte and
11789 force_singlebyte. Now is_multibyte records whether read_buffer
11790 is multibyte. Encountering any multibyte character makes it so.
4e02881b 11791
048addec 117922002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 11793
048addec
JD
11794 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11795 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 11796
048addec 117972002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 11798
048addec
JD
11799 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11800 latter never being defined on GNU/Linux.
749f499f 11801
048addec 118022002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 11803
048addec
JD
11804 * xfaces.c (realize_default_face): Don't set the weight and slant of
11805 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 11806
048addec 118072002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 11808
048addec
JD
11809 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11810 Call cancel_hourglass unconditionally.
d0fd26dd 11811
048addec
JD
11812 * eval.c (Fsignal): Remove duplicated declaration of
11813 the variable `display_hourglass_p'.
b4c45162 11814
048addec 118152002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 11816
048addec 11817 * editfns.c (region_limit): Nicer error message.
c95eaa61 11818
048addec
JD
11819 * coding.c (decode_composition_emacs_mule):
11820 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 11821
048addec
JD
11822 * callint.c (check_mark): New arg to specify clearer error message.
11823 Callers changed.
c95eaa61 11824
048addec 118252002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 11826
048addec 11827 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 11828
048addec 118292002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 11830
048addec
JD
11831 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11832 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11833 Fix doc-strings.
c95eaa61 11834
048addec 118352002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 11836
048addec 11837 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 11838
048addec
JD
11839 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11840 and scroll_up_aggressively.
c95eaa61 11841
048addec 118422002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 11843
048addec 11844 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 11845
048addec 118462002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 11847
048addec
JD
11848 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11849 (Fprevious_property_change, Fprevious_single_property_change):
11850 Stay within the narrowed-buffer boundaries.
e2c3786a 11851
048addec 118522002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 11853
048addec
JD
11854 * term.c (Ftty_display_color_cells): New function.
11855 (syms_of_term): Defsubr it.
11856 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11857 argument name to DISPLAY. Doc fix.
bf794306 11858
048addec
JD
11859 * dispextern.h: Add prototype for set_tty_color_mode and
11860 tty_setup_colors.
bf794306 11861
048addec 118622002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 11863
048addec
JD
11864 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11865 If region left to draw is not what was expected, mark the frame as
11866 garbaged.
62582985 11867
048addec
JD
11868 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11869 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 11870
048addec 118712002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 11872
048addec
JD
11873 * w32term.c (x_update_window_begin): Only hide caret if
11874 w32_use_visible_system_caret is set.
11875 (x_update_window_end): Only show caret if
11876 w32_use_visible_system_caret is set.
11877 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 11878
048addec 11879 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 11880
048addec 118812002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 11882
048addec
JD
11883 * unexelf.c (unexec): Define n so as to cause compilation error
11884 for the code where people have often written n instead of nn.
1e9a6186 11885
048addec 11886 * .gdbinit (hookpost-run): Defined.
1e9a6186 11887
048addec 118882002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 11889
048addec 11890 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 11891
048addec 118922002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 11893
048addec
JD
11894 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
11895 if fullscreen is being set.
7c75be36 11896
048addec 118972002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 11898
048addec
JD
11899 * minibuf.c (Fminibuffer_contents)
11900 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
11901 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 11902
048addec 119032002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 11904
048addec 11905 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 11906
048addec 119072002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 11908
048addec
JD
11909 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
11910 height before comparison.
11911 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 11912
048addec 119132002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 11914
048addec
JD
11915 * w32term.c (w32_system_caret_width): Remove.
11916 (w32_use_visible_system_caret): New user flag.
11917 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
11918 Windows reports a screen reader running.
11919 (x_update_window_begin): Hide the system caret.
11920 (x_update_window_end): Show the system caret.
11921 (x_display_and_set_cursor): Don't draw a cursor when
11922 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 11923
048addec
JD
11924 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
11925 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
11926 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
11927 the user requests it. Use system default width when creating.
11928 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 11929
048addec
JD
11930 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
11931 New window messages.
905cc05a 11932
048addec 119332002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 11934
048addec 11935 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 11936
048addec 119372002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 11938
048addec 11939 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 11940
048addec 119412002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 11942
048addec 11943 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 11944
048addec 119452002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 11946
048addec
JD
11947 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
11948 that Windows returns. If a double check fails, try to guess how
11949 ExtTextOut is going to act.
4d0fa4f3 11950
048addec
JD
11951 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
11952 in place of stricmp.
11953 (w32_list_synthesized_fonts): Removed.
11954 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
11955 (struct enumfont_t): New element; list.
11956 (enum_font_cb2): List all style and charset variations of a font.
11957 (Fw32_select_font): New optional argument; include_proportional.
11958 Exclude vertical fonts. Exclude proportional fonts unless
11959 include_proportional is non-nil.
11960 (w32_enable_synthesized_fonts): Change to a boolean.
11961 (Fw32_send_sys_command): Doc fix.
493faf20 11962
048addec 119632002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 11964
048addec
JD
11965 * dispnew.c (update_frame): Move the variable `tem' to the block
11966 where it is used.
4971e491 11967
048addec 119682002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 11969
048addec
JD
11970 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
11971 call to face-set-after-frame-default.
4971e491 11972
048addec 119732002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 11974
048addec
JD
11975 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
11976 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 11977
048addec 119782002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 11979
048addec
JD
11980 * window.c (enlarge_window): When exceeding size of parent,
11981 directly delete all the siblings instead of trying to resize it.
201c831a 11982
048addec 119832002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 11984
048addec 11985 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 11986
048addec 119872002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 11988
048addec 11989 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 11990
048addec 119912002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 11992
048addec
JD
11993 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
11994 is invisible. This can happen if cursor is on top line of a
11995 window, and we switch to a buffer with a header line.
d77fbc16 11996
048addec 11997 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 11998
048addec 119992002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12000
048addec
JD
12001 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12002 `dont_resize' only when used.
61e3b944 12003
048addec 12004 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12005
048addec 120062002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12007
048addec
JD
12008 * xdisp.c (display_mode_element): When computing charpos, depend
12009 on multibyteness of elt, not the text in field.
8af01033 12010
048addec 120112002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12012
048addec
JD
12013 * buffer.c (Fkill_all_local_variables):
12014 Increment `update_mode_lines' only once.
7363986a 12015
048addec 120162002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12017
048addec
JD
12018 * lisp.h (adjust_after_replace_noundo)
12019 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12020
048addec 12021 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12022
048addec 120232002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12024
048addec
JD
12025 Support for the --color command-line argument and tty-color-mode
12026 frame parameter:
f1a85b89 12027
048addec
JD
12028 * term.c (tty_default_color_capabilities, tty_setup_colors)
12029 (set_tty_color_mode): New functions.
12030 (term_init): Call tty_default_color_capabilities.
12031 (Qtty_color_mode_alist): New variable.
12032 (syms_of_term): Intern and staticpro it.
f1a85b89 12033
048addec
JD
12034 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12035 frames.
12036 (do_switch_frame): For termcap frames, switch the tty
12037 color mode as specified by the frame's parameters.
12038 (Qtty_color_mode): New variable.
12039 (syms_of_frame): Intern and staticpro it.
3a62677f 12040
048addec
JD
12041 * emacs.c (USAGE2): Add the --color option.
12042 (standard_args): Ditto.
72244db2 12043
048addec
JD
120442002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12045
12046 * xterm.h (struct x_output): New members want_fullscreen,
12047 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12048 y_pixels_outer_diff.
12049 New enum for FULLSCREEN_* constants.
12050 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12051 is NULL.
12052 (x_fullscreen_adjust): Add prototype.
3a62677f 12053
048addec
JD
12054 * emacs.c (USAGE2): Add the new full-screen arguments.
12055 (standard_args): Ditto.
3a62677f 12056
048addec
JD
12057 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12058 New variables.
12059 (syms_of_xfns): Intern and staticpro them.
12060 (x_frame_parms) <"fullscreen">: New parameter.
12061 (x_fullscreen_move, x_set_fullscreen): New functions.
12062 (x_set_frame_parameters): Support for Qfullscreen.
12063 (x_real_positions): More accurate computation of the frame position.
12064 (x_figure_window_size): Support full-screen frames.
12065 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12066
048addec
JD
12067 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12068 (XTread_socket) <Expose>: Call x_check_fullscreen.
12069 <ConfigureNotify>: Don't resize to fullscreen.
12070 Call x_check_fullscreen_move, and set the want_fullscreen member of
12071 output_data.x.
3a62677f 12072
048addec 120732002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12074
048addec
JD
12075 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12076 for mice with more than 3 buttons.
b8523839 12077
048addec
JD
12078 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12079 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12080
048addec
JD
12081 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12082 (syms_of_w32fns): DEFVAR_BOOL it.
12083 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12084
048addec 120852002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12086
048addec 12087 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12088
048addec 120892002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12090
048addec 12091 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12092
048addec 120932002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12094
048addec
JD
12095 * .gdbinit (xbuffer): Remove address operator since data is now a
12096 pointer.
c93674bb 12097
048addec 120982002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12099
048addec 12100 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12101
048addec 12102 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12103
048addec 121042002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12105
048addec
JD
12106 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12107 when checking for multiple frames.
91175673 12108
048addec 121092002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12110
048addec
JD
12111 * window.c (delete_window): Rewrite the code for changing the
12112 selected window to handle the case where WINDOW is not a leaf.
91175673 12113
048addec 121142002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12115
048addec
JD
12116 * process.c (send_process): Set src_multibyte to 1 after the call
12117 top setup_coding_system, not before the call.
e0fead5d 12118
048addec 121192002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12120
048addec
JD
12121 * xmenu.c (set_frame_menubar, xmenu_show):
12122 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12123
048addec
JD
12124 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12125 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12126
048addec 121272002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12128
048addec 12129 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12130
048addec 12131 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12132
048addec 12133 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12134
048addec 121352002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12136
048addec
JD
12137 * insdel.c (make_gap_larger): Make sure buffer size does not
12138 overflow range of int.
62854fe2 12139
048addec 121402002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12141
048addec
JD
12142 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12143 OVERLAPS_P.
656f46bb 12144
048addec 12145 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12146
048addec
JD
12147 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12148 to the left or to the right of the pointer, put it against
12149 the left screen edge.
12150 (x_frame_parms): Add missing braces around initializer.
036e218d 12151
048addec
JD
12152 * w32term.c (x_setup_relief_colors): Don't compute an image's
12153 background color if it doesn't have a Pixmap.
12154 (notice_overwritten_cursor): Don't depend on
12155 output_cursor and updated_area. Compare pixel coordinates with
12156 window's cursor pixel coordinates.
12157 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12158 Call notice_overwritten_cursor with new arg list.
12159 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12160 unconditionally.
12161 (x_draw_image_relief): Use predefined macro instead of
12162 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12163
048addec 12164 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12165
048addec 121662002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12167
048addec 12168 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12169
048addec 121702002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12171
048addec
JD
12172 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12173 (Fkey_binding): Try the `keymap' property map first.
12174 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12175 minor mode bindings.
90647b07 12176
048addec 121772002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12178
048addec 12179 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12180
048addec 121812002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12182
048addec
JD
12183 * keyboard.c (read_key_sequence): Handle the keymap property
12184 before minor mode maps.
9fbc32aa 12185
048addec
JD
12186 * editfns.c (Fformat): Update thissize from field_width
12187 based on the actual width, in the string case.
036e218d 12188
048addec 121892002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12190
048addec
JD
12191 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12192 when used as truth value to prevent gcc warnings.
9fbc32aa 12193
048addec
JD
12194 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12195 * w32proc.c: Include <config.h>.
9fbc32aa 12196
048addec 121972002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12198
048addec
JD
12199 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12200 not EMACS_INT, to make them compatible with DEFVAR_INT.
12201 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12202
048addec 122032002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12204
048addec
JD
12205 * print.c (print_object): Test print_escape_nonascii only for
12206 unibyte strings.
12207 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12208 when outputting to a multibyte buffer.
9fbc32aa 12209
048addec 122102001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12211
048addec
JD
12212 * print.c (print_object): In multibyte string, use hex escapes.
12213 Use octal only for unibyte strings.
12214 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12215
048addec
JD
12216 * lread.c (read_escape): New arg BYTEREP for reporting whether
12217 escape forces unibyte or multibyte.
12218 (read1): When reading a string, take note of that info.
0142178a 12219
048addec 122202001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12221
048addec
JD
12222 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12223 comparison to test lisp value returned by Fget.
d4824a5d 12224
048addec 122252001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12226
048addec 12227 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12228
048addec 12229 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12230
048addec
JD
12231 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12232 Handle modifier bits. Correct typo in error message.
99e380ee 12233
048addec 122342001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12235
048addec
JD
12236 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12237 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12238 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12239 Update calls to Fdefine_abbrev.
12240 (write_abbrev): Update for changed data format.
12241 Don't list "system" abbrevs.
12242 (Fexpand_abbrev): Update use count with new data format.
12243 (describe_abbrev): Update for changed data format.
12244 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12245
048addec 12246 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12247
048addec 12248 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12249
048addec
JD
12250 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12251 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12252
048addec
JD
12253 * keymap.c (Flookup_key): Error message if key has wrong data type.
12254 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12255 (exclude_key): New variable.
59a86c99 12256
048addec 122572001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12258
048addec
JD
12259 * xterm.c (x_setup_relief_colors): Don't compute an image's
12260 background color if it doesn't have a Pixmap.
eb77a5f4 12261
048addec
JD
12262 * xterm.c (notice_overwritten_cursor): Don't depend on
12263 output_cursor and updated_area. Compare pixel coordinates with
12264 window's cursor pixel coordinates.
12265 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12266 Call notice_overwritten_cursor with new arg list.
12267 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12268 unconditionally.
eb77a5f4 12269
048addec
JD
12270 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12271 height of the cursor line to the amount to scroll.
eb77a5f4 12272
048addec 122732001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12274
048addec
JD
12275 * intervals.c (set_point_both): The position after an invisible,
12276 intangible character is not an acceptable stopping point.
bb313871 12277
048addec 122782001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12279
048addec
JD
12280 * window.c (enlarge_window): In new preserve_before code, convert
12281 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12282
048addec 122832001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12284
048addec 12285 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12286
048addec 122872001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12288
048addec
JD
12289 * keyboard.c (record_char): Ignore duplicate help-echo events only
12290 separated by mouse-movement. When tracking mouse, only record
12291 first and last mouse-movement event in same window.
12292 Don't record mouse-movement events in keyboard macros.
3ce081f5 12293
048addec 122942001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12295
048addec
JD
12296 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12297 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 12298
048addec
JD
12299 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12300 instead of Fstring_as_unibyte.
9fabb2f5 12301
048addec 123022001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 12303
048addec 12304 The following changes remove mocklisp support:
9fabb2f5 12305
048addec 12306 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 12307
048addec
JD
12308 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12309 `Qmocklisp' and `Qmocklisp_arguments'.
12310 Remove prototype of syms_of_mocklisp.
2fa0eedf 12311
048addec 12312 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 12313
048addec
JD
12314 * callint.c: Do not include mocklisp.h.
12315 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 12316
048addec
JD
12317 * eval.c: Remove variables `Qmocklisp_arguments',
12318 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12319 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12320 Do not test for mocklisp case.
12321 (Fwhile): Remove unused variable `tem'.
12322 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 12323
048addec 12324 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 12325
048addec 12326 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 12327
048addec 12328 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 12329
048addec 123302001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 12331
048addec
JD
12332 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12333 to the left or to the right of the pointer, put it against
12334 the left screen edge.
6108b49c 12335
048addec 123362001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 12337
048addec
JD
12338 * Makefile.in (distclean): Remove .gdbinit if we are building
12339 outside the source tree.
5eea19a4 12340
048addec 123412001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 12342
048addec 12343 * w32.c (emacs_root_dir): New function.
5eea19a4 12344
048addec 12345 * msdos.c (emacs_root_dir): New function.
5eea19a4 12346
048addec
JD
12347 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12348 of the current drive as the fallback for default_directory.
438e57dd 12349
048addec
JD
12350 * dired.c (file_name_completion): Run the elements of
12351 completion-ignored-extensions through ENCODE_FILE.
438e57dd 12352
048addec
JD
12353 * lisp.h (scmp): Remove prototype, since it's now a static
12354 function private to dired.c.
c88e5347 12355
048addec 123562001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 12357
048addec
JD
12358 * dired.c (scmp): Function moved from minibuf.c.
12359 Delete multibyte handling--used only on encoded strings.
59ce1461 12360
048addec 12361 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 12362
048addec 12363 * fns.c (merge): Add QUIT call.
59ce1461 12364
048addec 123652001-12-18 Dave Love <fx@gnu.org>
8727d588 12366
048addec
JD
12367 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12368 language/georgian.el.
8727d588 12369
048addec 123702001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 12371
048addec
JD
12372 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12373 lisp/Makefile.in:DONTCOMPILE.
cc63037e 12374
048addec 123752001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 12376
048addec
JD
12377 * xdisp.c (window_box_height): Do not return negative values.
12378 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 12379
048addec 12380 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 12381
048addec 12382 * term.c (keys): Likewise.
deece6f5 12383
048addec 12384 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 12385
048addec 123862001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 12387
048addec
JD
12388 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12389 patch (COMPOSING_P, not COMPOSING).
28ff4293 12390
048addec 123912001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 12392
048addec 12393 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 12394
048addec
JD
12395 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12396 before calling decode_coding.
9b46de40 12397
048addec 12398 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 12399
048addec
JD
12400 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12401 instead of only for COMPOSITION_DISABLED.
9b46de40 12402
048addec 124032001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 12404
048addec 12405 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 12406
048addec 12407 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 12408
048addec
JD
12409 * buffer.h (struct buffer): New field `display_error_modiff'.
12410 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 12411
048addec 12412 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 12413
048addec
JD
12414 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12415 Call redisplay_window, but not if display_error_modiff field says no.
12416 (redisplay_window_error): New function.
12417 (displayed_buffer): New variable.
12418 (redisplay_internal, redisplay_windows): Call the new functions
12419 instead of redisplay_window directly.
2cd23960 12420
048addec 124212001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 12422
048addec 12423 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 12424
048addec 124252001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 12426
048addec 12427 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 12428 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 12429 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 12430
048addec 124312001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 12432
048addec
JD
12433 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12434 parameter have a numeric value all the time.
f6fa0866 12435
048addec 12436 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 12437
048addec 124382001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 12439
048addec 12440 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 12441
048addec
JD
12442 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12443 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 12444
048addec 124452001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 12446
048addec
JD
12447 * xdisp.c (move_it_vertically_backward): Change heuristic
12448 for the case that we didn't move far enough initially.
91c153e2 12449
048addec
JD
12450 * window.c (Frecenter): Simplify computation in the case of window
12451 system frames and ARG < 0; use window_box_height.
65b7d3e7 12452
048addec 124532001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 12454
048addec
JD
12455 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12456 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 12457
048addec 124582001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 12459
048addec
JD
12460 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12461 arg is negative.
be676094 12462
048addec 124632001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 12464
048addec
JD
12465 * m/hp800.h: Split the __hpux conditional into the parts
12466 that are right for GNU/Linux too and the parts that are not.
12467 Use the former if GNU_LINUX.
12468 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 12469
048addec 12470 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 12471
048addec 124722001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 12473
048addec
JD
12474 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12475 `new style' [w/`doc:' keyword].
032a857d 12476
048addec 124772001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 12478
048addec
JD
12479 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12480 before using.
b6270150 12481
048addec 124822001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 12483
048addec
JD
12484 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12485 keyword].
98cbb9fa 12486
048addec 124872001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 12488
048addec 12489 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 12490
048addec 12491 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 12492
048addec 124932001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 12494
048addec
JD
12495 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12496 Add comment to explain where the struct came from.
12497 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12498 (add_menu_item): Process pop-up menus first to avoid memory leak.
12499 (add_menu_item, w32_menu_display_help): Use `help' field as
12500 Lisp_Object.
12501 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 12502
048addec 125032001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 12504
048addec 12505 * COPYING: Moved back.
fa336b91 12506
048addec
JD
12507 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12508 Add parentheses around && within ||.
077907d4 12509
048addec 12510 * indent.c (compute_motion): Likewise.
aa2af83a 12511
048addec 12512 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 12513
048addec
JD
12514 * coding.c (setup_coding_system, shrink_encoding_region)
12515 (Fdecode_sjis_char): Likewise.
60a653f1 12516
048addec 125172001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 12518
048addec
JD
12519 * xdisp.c (display_mode_element): Don't read past end of string if
12520 it ends with '%'.
60a653f1 12521
048addec
JD
12522 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12523 can hold.
60a653f1 12524
048addec
JD
12525 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12526 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12527 type changed to Lisp_Object.
12528 (syms_of_data): DEFVAR_LISP them.
60a653f1 12529
048addec 125302001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 12531
048addec
JD
12532 * callproc.c (init_callproc): Set Vdata_directory based on the source
12533 location whenever Emacs was run uninstalled.
60a653f1 12534
048addec 125352001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 12536
048addec
JD
12537 * config.in (HAVE_WORKING_VFORK): New #undefs.
12538 * process.c (create_process):
12539 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12540 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12541 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12542 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12543 * m/intel386.h (HAVE_VFORK): Likewise.
12544 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12545 * m/mips.h (HAVE_VFORK): Likewise.
12546 * s/freebsd.h (vfork): Remove #define.
12547 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12548 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 12549
048addec 125502001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 12551
048addec
JD
12552 * s/hpux10.h (random): Add undef.
12553 (HAVE_RANDOM): Define it just once.
60a653f1 12554
048addec 125552001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12556
048addec 12557 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 12558
048addec 125592001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12560
048addec
JD
12561 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12562 scroll bars of the frame before deleting the frame itself. If the
12563 frame has a widget, delete the frame with XtDestroyWidget, and do
12564 not call XDestroyWindow before that.
60a653f1 12565
048addec 125662001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 12567
048addec 12568 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12569
048addec 12570 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12571
048addec 125722001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 12573
048addec
JD
12574 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12575 excessively large.
60a653f1 12576
048addec
JD
12577 * insdel.c (make_gap_larger): New function.
12578 (make_gap_smaller): New function.
12579 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12580 Call make_gap_smaller if arg is negative.
60a653f1 12581
048addec 125822001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12583
048addec
JD
12584 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12585 Pass a dummy argument when calling interrupt_signal.
12586 (parse_menu_item): Mark disabled items before checking for empty def.
12587 (read_char_minibuf_menu_prompt): Make safety more visible.
12588 (read_key_sequence): Add a `first_unbound' variable.
12589 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12590 unbound prefix as soon as we can detect it.
60a653f1 12591
048addec
JD
12592 * doc.c (Fsnarf_documentation): Add prototype.
12593 (get_doc_string): Handle negative arguments.
12594 (Fdocumentation): Use AREF and ASIZE.
12595 Move the calls to get_doc_string to a single place.
12596 Don't confuse an interactive-spec for a docstring reference.
12597 (Fdocumentation_property): Take advantage of the fact that
12598 get_doc_string now ignores the sign of the docstring position.
60a653f1 12599
048addec 12600 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 12601
048addec 126022001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12603
a64387ee 12604 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 12605
048addec 126062001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12607
048addec
JD
12608 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12609 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 12610
048addec 126112001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 12612
048addec
JD
12613 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12614 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 12615
048addec 12616 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 12617
048addec 126182001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12619
048addec 12620 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 12621
048addec 126222001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 12623
048addec 12624 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 12625
048addec 126262001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 12627
f63fd14e 12628 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 12629
048addec
JD
12630 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12631 [!WM_MOUSELEAVE]: Define.
60a653f1 12632
048addec
JD
12633 * w32menu.c (current_popup_menu, get_menu_item_info):
12634 (set_menu_item_info): New vars.
12635 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12636 (w32_menu_show): Set current_popup_menu.
12637 (add_menu_item): Allocate new strings for owner-drawn menu items
12638 and help strings.
12639 Use owner-draw for disabled menu items again.
12640 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12641 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 12642
048addec
JD
12643 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12644 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12645 <WM_EXITMENULOOP>: Free menu strings.
12646 <WM_MOUSELEAVE>: Stop tracking mouse.
12647 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 12648
048addec
JD
12649 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12650 and mouse face.
60a653f1 12651
048addec 126522001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 12653
048addec
JD
12654 The following changes add left-fringe and right-fringe
12655 frame parameters to adjust fringe widths, or remove one or
12656 both fringes.
60a653f1 12657
048addec
JD
12658 * frame.h (struct frame): Remove trunc_area_pixel_width and
12659 trunc_area_cols fields.
12660 (Qleft_fringe, Qright_fringe): Declare.
12661 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 12662
048addec
JD
12663 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12664 (syms_of_frame): Initialize them.
60a653f1 12665
048addec
JD
12666 * window.c (coordinates_in_window): Handle separate left and right
12667 fringe widths.
60a653f1 12668
048addec
JD
12669 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12670 and fringe_cols fields.
12671 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12672 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12673 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12674 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12675 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12676 (x_compute_fringe_widths): Add prototype.
60a653f1 12677
048addec
JD
12678 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12679 fill fringe evenly with small dashes.
f63fd14e 12680 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
12681 clip the new ZV bitmap to avoid jitter between rows.
12682 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12683 background. Don't draw fringe bitmaps if fringe width is zero.
12684 (x_compute_fringe_widths): New function.
12685 (x_new_font, x_set_window_size_1): Use it.
60a653f1 12686
048addec
JD
12687 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12688 (x_set_frame_parameters): Process `font' parameter before other
12689 parameters as fringe widths depend on it.
12690 (x_set_fringe_width): New function.
12691 (x_figure_window_size): Use x_compute_fringe_widths.
12692 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12693 parameters.
60a653f1 12694
048addec
JD
12695 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12696 (EmacsFrameSetCharSize): Ditto.
60a653f1 12697
048addec
JD
12698 * w32term.h: Merged changes from xterm.h.
12699 * w32term.c: Merged changes from xterm.c.
12700 * w32fns.c: Merged changes from xfns.c.
60a653f1 12701
048addec 127022001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12703
048addec 12704 * COPYING: Removed.
60a653f1 12705
048addec 127062001-11-29 Dave Love <fx@gnu.org>
60a653f1 12707
048addec
JD
12708 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12709 extra extra slot.
12710 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 12711
048addec 127122001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12713
048addec
JD
12714 * fileio.c (file-name-coding-system)
12715 (default-file-name-coding-system): Doc fix (links to referenced
12716 variables added).
60a653f1 12717
048addec 127182001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12719
048addec
JD
12720 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12721 Add dummy uses of gcproN variables.
60a653f1 12722
048addec
JD
12723 * category.c (describe_category, describe_category_1)
12724 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12725 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 12726
048addec 127272001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 12728
048addec 12729 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 12730
048addec
JD
12731 * Makefile.in (lispdir): New variable, referring to build dir.
12732 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 12733
048addec 127342001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 12735
048addec
JD
12736 * w32menu.c (w32_menu_display_help): Actually add the new argument
12737 OWNER.
60a653f1 12738
048addec 127392001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 12740
048addec
JD
12741 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12742 menu items. From David Ponce <dponce@wanadoo.fr>.
12743 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12744 conditionally.
f63fd14e 12745 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 12746 help event in the owner frame's keyboard buffer.
60a653f1 12747
048addec
JD
12748 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12749 (Fx_show_tip): Don't subtract last width from row width.
12750
12751 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12752 (w32_read_socket): Use EQ to compare frames.
60a653f1 12753
048addec 127542001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 12755
048addec
JD
12756 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12757 OVERLAPS_P.
60a653f1 12758
048addec 127592001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12760
048addec
JD
12761 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12762 `gcpro3' and `gcpro4'.
60a653f1 12763
048addec 12764 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 12765
048addec 127662001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12767
048addec 12768 * ccl.c: Use AREF and ASIZE.
60a653f1 12769
048addec 127702001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12771
048addec
JD
12772 * lisp.h (run_hook_list_with_args): Remove.
12773 (LIST_END_P): Fix call to wrong_type_argument.
12774 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 12775
048addec 127762001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12777
048addec
JD
12778 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12779 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 12780
048addec
JD
12781 * eval.c: Use AREF and ASIZE.
12782 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 12783
048addec
JD
12784 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12785 which match the end of the file-name.
12786 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12787 is not a valid env var, but leave it as is instead.
60a653f1 12788
048addec
JD
12789 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12790 Make nil bindings in char-tables transparent.
12791 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 12792
048addec 127932001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 12794
048addec
JD
12795 * textprop.c (set_text_properties_1): Allow START, END in either order.
12796 Do nothing if range is empty.
60a653f1 12797
048addec 12798 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 12799
048addec
JD
12800 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12801 (clean): Not here.
60a653f1 12802
048addec 128032001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12804
048addec
JD
12805 * textprop.c (set_text_properties_1): Clearly mark that the
12806 interval should not be empty.
60a653f1 12807
048addec
JD
12808 * intervals.c (graft_intervals_into_buffer):
12809 Don't call set_text_properties_1 on an empty interval.
60a653f1 12810
048addec 128112001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 12812
048addec 12813 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 12814
048addec
JD
12815 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12816 don't lose the data in it.
60a653f1 12817
048addec 128182001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 12819
048addec 12820 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 12821
c62aec78 12822 * buffer.c (Fkill_buffer): Likewise.
60a653f1 12823
c62aec78 12824 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 12825
048addec 128262001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12827
048addec 12828 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 12829
048addec 128302001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12831
048addec
JD
12832 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12833 Niemitalo <kon@iki.fi>.
60a653f1 12834
048addec 128352001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 12836
048addec 12837 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 12838
048addec
JD
12839 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12840 (Fx_show_tip): Block input during frame creation.
12841 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 12842
048addec 128432001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 12844
048addec
JD
12845 * lread.c (Fload): Detect recursive load error for more than 3
12846 nestings of the same file.
12847 (Vrecursive_load_depth_limit): Variable deleted.
12848 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 12849
048addec 128502001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 12851
048addec
JD
12852 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12853 mouse position if either left or top is not specified.
60a653f1 12854
048addec
JD
12855 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12856 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12857 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12858 (my_create_tip_window): Assign tip_window.
12859 (x_create_tip_frame): Use same defaults as X.
12860 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 12861 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 12862
048addec
JD
12863 * w32term.c (x_after_update_window_line): Doc fix.
12864 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12865 frames.
12866 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 12867
048addec
JD
12868 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12869 for all Windowed systems.
60a653f1 12870
048addec 128712001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12872
048addec
JD
12873 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12874 realized, use the initial screen colors to clear the screen.
60a653f1 12875
048addec 128762001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12877
048addec
JD
12878 * textprop.c (Fset_text_properties): Remove unused variables
12879 `unchanged', `prev_changed', `s' and `len'.
60a653f1 12880
048addec
JD
12881 * search.c (Freplace_match): Remove unused variable `inslen'.
12882
12883 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
12884
128852001-11-22 Jason Rumney <jasonr@gnu.org>
12886
12887 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
12888 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
12889 (my_create_tip_window): New function.
12890 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
12891 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
12892
128932001-11-20 Jason Rumney <jasonr@gnu.org>
12894
12895 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
12896 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
12897
12898 * w32fns.c (Vw32_system_coding_system): Remove.
12899 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
12900
129012001-11-19 Stefan Monnier <monnier@cs.yale.edu>
12902
12903 * fileio.c (Fwrite_region): Move choose_write_coding_system to
12904 after build_annotations.
12905
12906 * syntax.c (describe_syntax): Add dummy arg.
12907 (describe_syntax_1): Update call to describe_vector.
12908
12909 * category.c (describe_category): Add dummy arg.
12910 (describe_category_1): Update call to describe_vector.
12911
12912 * keymap.c (Fdescribe_vector): Add `describer' parameter.
12913 (describe_command, describe_translation): Add dummy second param.
12914 (describe_map): Call elt_describer with two arguments.
12915 (describe_vector_princ): Add `fun' parameter.
12916 Call it instead of the hardcoded `princ'.
12917 (describe_vector): Add arg `args'.
12918 Pass it as a new second argument to elt_describer.
60a653f1 12919
048addec 12920 * keymap.h (describe_vector): Update prototype.
60a653f1 12921
048addec
JD
12922 * frame.c: Don't include keymap.h any more.
12923 (keys_of_frame): Remove.
60a653f1 12924
048addec 12925 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 12926
048addec 12927 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 12928
048addec 129292001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 12930
048addec
JD
12931 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
12932 if defined, 0 otherwise.
12933 (MAP_FAILED): Define if not defined and use it to test mmap failure.
12934 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 12935
048addec 129362001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 12937
048addec 12938 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 12939
048addec 129402001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 12941
048addec
JD
12942 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
12943 (x_draw_bar_cursor): If the background color of the glyph under
12944 the cursor equals the frame's cursor color, use the glyph's
12945 foreground color for drawing the bar cursor.
12946 (x_after_update_window_line): Clear internal border in different
12947 circumstances.
12948 (w32_set_vertical_scroll_bar): Check for width and height > 0.
12949 (w32_draw_relief_rect): Correct relief by 1 pixel.
12950 (x_set_glyph_string_background_width):
12951 Set extends_to_end_of_line_p if the row's fill_line_p is set and
12952 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
12953 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
12954 if cursor_in_non_selected_windows is false.
12955 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
12956 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
12957 Notice if cursor gets overwritten.
12958 (notice_overwritten_cursor): Renamed from
12959 note_overwritten_text_cursor. Rewritten to take glyph widths
12960 into account, and to take X positions as parameters.
12961 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12962 around call to x_draw_glyphs.
12963 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12964 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12965 color to use for image glyph reliefs.
12966 (x_draw_image_relief): Accept zero tool_bar_button_relief.
12967 (glyph_rect): Remove unused variable `area'.
60a653f1 12968
048addec
JD
12969 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
12970 some items.
12971 (x_set_internal_border_width): Set frame garbaged when window
12972 doesn't exist yet.
12973 (Fx_create_frame): Accept zero tool_bar_button_relief.
12974 (x_clear_image_1, four_corners_best, image_background)
12975 (image_background_transparent): New functions.
12976 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12977 (gs_format): Add `:background' entry.
12978 (lookup_image): Set IMG's background color if specified.
12979 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12980 when appropriate.
12981 (x_clear_image_1): Reset `background_valid' and
12982 `background_transparent_valid' fields.
12983 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12984 calculating it here. Set IMG's background_transparent field.
12985 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12986 (enum png_keyword_index): Add PNG_BACKGROUND.
12987 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12988 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12989 (enum gif_keyword_index): Add GIF_BACKGROUND.
12990 (enum gs_keyword_index): Add GS_BACKGROUND.
12991 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12992 Pre-calculate image background color where necessary.
12993 (x_create_x_image_and_pixmap, xbm_load, gs_load):
12994 Use display info's n_cbits entry for screen depth.
12995 (Fx_show_tip): Remove unused variables `buffer', `top',
12996 `left', `max_width' and `max_height'.
60a653f1 12997
048addec 12998 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 12999
048addec 130002001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13001
048addec 13002 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13003
048addec 130042001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13005
048addec 13006 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13007
048addec 130082001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13009
048addec
JD
13010 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13011 (message_dolog_marker3): New static variables hold three markers.
13012 (syms_of_xdisp): Initialize and staticpro them.
13013 (message_dolog): Use message_dolog_marker1..3 instead of
13014 allocating markers each time. Unchain them when done.
60a653f1 13015
048addec 130162001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13017
048addec 13018 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13019
048addec 130202001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13021
048addec 13022 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13023
048addec 130242001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13025
048addec 13026 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13027
048addec 130282001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13029
048addec 13030 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13031
048addec 130322001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13033
048addec
JD
13034 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13035 with invalid position.
60a653f1 13036
048addec 130372001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13038
048addec 13039 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13040
048addec
JD
13041 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13042 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13043 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13044
048addec 13045 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13046
048addec 130472001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13048
048addec
JD
13049 * fileio.c (build_annotations): Split off the tail.
13050 (build_annotations_2): New fun. Extracted from build_annotations.
13051 (Fwrite_region): Split the call to build_annotations into two
13052 calls to build_annotations and build_annotations_2.
077907d4 13053
048addec 130542001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13055
048addec
JD
13056 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13057 clear_waiting_for_input with argument.
1756e2fb 13058
048addec 13059 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13060
048addec 13061 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13062
048addec 13063 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13064
048addec 13065 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13066
048addec 130672001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13068
048addec
JD
13069 * fileio.c (choose_write_coding_system): New fun, extracted
13070 from Fwrite_region.
13071 (Fwrite_region): Use it.
fa336b91 13072
048addec
JD
13073 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13074 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13075 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13076
048addec 130772001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13078
048addec 13079 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13080
048addec
JD
13081 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13082 Required for ISC 4.1.
fa336b91 13083
048addec 130842001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13085
048addec
JD
13086 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13087 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13088
048addec 130892001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13090
048addec
JD
13091 The following changes are made to clean up the various internal
13092 references to the fringes to actually use the term `fringe' for
13093 them. Previously, they were called `flags areas', `bitmap areas',
13094 `left/right side of windows', or implicitly as `flags' or
13095 `bitmaps':
fa336b91 13096
048addec 13097 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13098 Comments fixed. Use renamed symbols.
06e8f738 13099
f63fd14e 13100 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13101
048addec
JD
13102 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13103 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13104 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13105
048addec 13106 * msdos.c: Comment fix.
9ce647f4 13107
048addec 13108 * w32fns.c: Use renamed symbols.
9b784ab8 13109
f63fd14e 13110 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13111 (fringe_bitmap_type): Renamed from bitmap_type.
13112 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13113 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13114 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13115
f63fd14e 13116 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13117 (fringes_extra): Renamed from flags_areas_extra.
13118 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13119 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13120 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13121 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13122 (FRAME_X_LEFT_FRINGE_WIDTH):
13123 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13124 (FRAME_X_RIGHT_FRINGE_WIDTH):
13125 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13126
048addec 13127 * widget.c: Use renamed symbols.
9f7e52b4 13128
f63fd14e 13129 * window.c: Comment fixes. Use renamed symbols.
048addec 13130 (coordinates-in-window-p): Doc fix.
fa336b91 13131
f63fd14e 13132 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13133
048addec 13134 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13135
048addec 13136 * xfns.c: Use renamed symbols.
89512fcd 13137
f63fd14e 13138 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13139 (fringe_bitmap_type): Renamed from bitmap_type.
13140 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13141 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13142 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13143
f63fd14e 13144 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13145 (fringes_extra): Renamed from flags_areas_extra.
13146 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13147 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13148 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13149 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13150 (FRAME_X_LEFT_FRINGE_WIDTH):
13151 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13152 (FRAME_X_RIGHT_FRINGE_WIDTH):
13153 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13154
131552001-11-15 Jason Rumney <jasonr@gnu.org>
13156
13157 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13158 work for most menu items. From David Ponce
13159 <david.ponce@wanadoo.fr>.
13160
131612001-11-15 Gerd Moellmann <gerd@gnu.org>
13162
13163 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13164 Some x_set_* function expect to be called even if old and new
13165 value are equal.
13166
13167 * xdisp.c (build_desired_tool_bar_string): Accept zero
13168 tool_bar_button_relief.
13169
13170 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13171
13172 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13173
13174 * xterm.c (x_draw_bar_cursor): If the background color of the
13175 glyph under the cursor equals the frame's cursor color, use
13176 the glyph's foreground color for drawing the bar cursor.
13177
13178 * dispnew.c (direct_output_forward_char): Fix character/byte
13179 position comparison.
7d18891d 13180
048addec 131812001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13182
048addec
JD
13183 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13184 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13185 Update arguments to find_field.
13186 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13187 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13188 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13189 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13190
048addec 131912001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13192
048addec 13193 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13194
048addec
JD
13195 * dispextern.h (image_background, image_background_transparent):
13196 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13197
048addec 131982001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13199
048addec 13200 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13201
048addec 13202 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13203
048addec 13204 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13205
048addec 13206 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13207
048addec 13208 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13209
048addec 13210 * eval.c (syms_of_eval): Doc fix.
7d18891d 13211
048addec 13212 * coding.c (syms_of_coding): Doc fix.
7d18891d 13213
048addec 13214 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13215
048addec 13216 * dispnew.c (syms_of_display): Doc fix.
9474c847 13217
048addec 13218 * category.c (Fget_unused_category): Doc fix.
9474c847 13219
048addec 13220 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13221
048addec 132222001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13223
048addec 13224 * print.c (prin1, print): Doc fix.
e3059a5d 13225
048addec 132262001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13227
048addec
JD
13228 * fontset.h: Remove declarations of variables
13229 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13230
048addec
JD
13231 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13232 `Vclip_large_size_font'.
eae936e2 13233
048addec 132342001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13235
048addec 13236 * w32fns.c: Doc fix.
ddb67bdc 13237
048addec 132382001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13239
048addec 13240 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13241
048addec 13242 * fns.c: Doc fix.
6e1b91d7 13243
048addec 13244 * emacs.c: Doc fix.
1c1d3d69 13245
048addec 13246 * coding.c: Doc fix.
1c1d3d69 13247
048addec
JD
13248 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13249 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13250 `new style' [w/`doc:' keyword].
b6f4c7ba 13251
048addec 132522001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13253
048addec
JD
13254 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13255 LeaveNotify events. Only FocusIn and FocusOut do that now.
13256 (x_display_and_set_cursor): Do display hollow cursors in active
13257 minibuffer windows when they are not selected.
b6f4c7ba 13258
048addec 132592001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13260
048addec 13261 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13262 * w32term.c: Change doc-string comments to `new style'
13263 [w/`doc:' keyword]. Doc fixes.
a89f435d 13264
048addec
JD
13265 * w32fns.c: Don't define max.
13266 (Fx_open_connection): Only execute once.
a4cd0cd7 13267
048addec 132682001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13269
048addec
JD
13270 * ccl.c: Change macros to use do-while block instead of if-else.
13271 Use braces to follow GNU Coding Standards.
eafb659a 13272
048addec 132732001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13274
048addec 13275 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13276
048addec 13277 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13278
048addec
JD
13279 * insdel.c (replace_range): Use adjust_markers_for_replace
13280 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13281
048addec 13282 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13283
048addec
JD
13284 * textprop.c (set_text_properties_1): New subroutine
13285 broken out of set_text_properties.
13286 (set_text_properties): Use set_text_properties_1.
91823618 13287
048addec
JD
13288 * intervals.c (graft_intervals_into_buffer):
13289 Use set_text_properties_1 to clear out properties.
91823618 13290
048addec
JD
13291 * search.c (Freplace_match): Use replace_range to insert
13292 and delete. Don't request property inheritance from
13293 surrounding text.
86928dfb 13294
048addec 132952001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13296
048addec 13297 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 13298 vertical fonts. Allow them if face name is explicitly specified.
048addec 13299 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 13300
048addec 133012001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 13302
048addec
JD
13303 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13304 instead of malloc/free.
a78e0303 13305
048addec 133062001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 13307
048addec
JD
13308 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13309 Coding Standards.
13310 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 13311
048addec 13312 * buffer.c (Fbury_buffer): Likewise.
0c99b139 13313
048addec 13314 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 13315
048addec
JD
13316 * coding.c (encode_coding): Use precomputed value of `src'.
13317 (encode_coding): Remove unused variable `src_end'.
13318 (code_convert_region): Remove unused variables `count'.
830ddd77 13319
048addec 133202001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 13321
048addec
JD
13322 * w32term.c (x_display_and_set_cursor): Do not move system caret
13323 if cursor_glyph is NULL.
55c6d645 13324
048addec 133252001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 13326
048addec 13327 * keymap.c (access_keymap): Fix compilation error.
5de38842 13328
048addec 133292001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 13330
048addec 13331 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 13332
048addec 133332001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 13334
048addec
JD
13335 * intervals.c (graft_intervals_into_buffer):
13336 Remove #ifdef'd-out code.
13337 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 13338
048addec
JD
13339 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13340 code (eval-current-buffer).
13341 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 13342
048addec 133432001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 13344
048addec 13345 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 13346
048addec 133472001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 13348
048addec 13349 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 13350
048addec
JD
13351 * keyboard.c (make_lispy_event): Check integerness and fix
13352 Lisp_Object/int mixup.
17893c65 13353
048addec 133542001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 13355
048addec 13356 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 13357
048addec
JD
13358 * fontset.c (fontset_font_pattern): Remove unused variable
13359 `family_registry'.
d5360cc7 13360
048addec 13361 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 13362
048addec 133632001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 13364
048addec 13365 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 13366
048addec
JD
13367 * buffer.c (Fkill_buffer): Don't delete auto save file
13368 if buffer is modified.
d9d54213 13369
048addec 133702001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 13371
048addec
JD
13372 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13373 CHECK_NUMBER_CDR.
b116830b 13374
048addec 133752001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 13376
048addec 13377 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 13378
048addec 133792001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 13380
048addec 13381 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 13382
048addec 133832001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 13384
048addec 13385 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 13386
048addec 133872001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 13388
048addec
JD
13389 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13390 the program image directly.
982f6c7e 13391
048addec 133922001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 13393
048addec 13394 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 13395
048addec 133962001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 13397
048addec
JD
13398 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13399 and CHECK_BUFFER.
d31053f9 13400
048addec
JD
13401 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13402 (record_char): Likewise.
d31053f9 13403
048addec
JD
13404 * keyboard.c (make_lispy_event): Don't insist a drag event must
13405 move to a different buffer position. Instead, check for moving at
13406 least double_click_fuzz.
982f6c7e 13407
048addec 13408 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 13409
048addec 13410 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 13411
048addec
JD
13412 * indent.c (current_column_1, Fmove_to_column): Separate the code
13413 for display-table glyphs from the code for buffer text, to fix
13414 bugs in the former.
830047fd 13415
048addec 134162001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 13417
048addec
JD
13418 * buffer.c (Fbuffer_local_value): New function.
13419 (syms_of_buffer): Defsubr it.
2df5238c 13420
048addec
JD
13421 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13422 value of `cursor-in-non-selected-windows'.
4e397688 13423
048addec
JD
13424 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13425 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13426 (syms_of_xdisp): Initialize it.
48b0f3ae 13427
048addec 134282001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 13429
048addec 13430 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 13431
048addec
JD
13432 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13433 keyword].
3ecaf7e5 13434
048addec
JD
13435 * eval.c (top_level_value, top_level_set): Remove commented and
13436 #ifdef'd-out code.
13437 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 13438
048addec 134392001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 13440
048addec 13441 * xfns.c: Include unistd.h, if it exists.
8db2e33b 13442
048addec 13443 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 13444
048addec 13445 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 13446
048addec 134472001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 13448
048addec
JD
13449 * lisp.h (CHECK_STRING_CAR): New macro.
13450 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13451 treating XCAR and XCDR as lvalues.
13452 (openp): Use CHECK_STRING_CAR.
13453 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 13454
048addec 134552001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 13456
048addec
JD
13457 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13458 (SIGMASKTYPE): Define.
1b1acc13 13459
048addec 13460 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 13461
048addec 134622001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 13463
048addec
JD
13464 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13465 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13466 Fix typos in comments.
6cb16f95 13467
048addec
JD
13468 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13469 and #ifdef'd-out code.
13470 Fix and reindent comments.
6cb16f95 13471
048addec 13472 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 13473
048addec
JD
13474 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13475 argument `i' in macros.
6cb16f95 13476
048addec
JD
13477 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13478 `i' in macros.
7e9d3c2f 13479
048addec
JD
13480 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13481 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13482 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13483 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13484 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13485 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13486 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13487 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13488 in macros.
7e9d3c2f 13489
048addec
JD
13490 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13491 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13492 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13493 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13494 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13495 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13496 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13497 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13498 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13499 (remove unused second argument).
7e9d3c2f 13500
048addec 135012001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13502
048addec
JD
13503 * syntax.c (describe_syntax): New wrapper.
13504 (Finternal_describe_syntax_value): Rename from describe_syntax.
13505 Don't insert space at front and \n at the end.
13506 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 13507
048addec
JD
13508 * regex.c (re_wctype): Try to fix some warnings.
13509 (regcomp, regexec): Don't forget the __restrict.
9ba48103 13510
048addec 135112001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 13512
048addec 13513 * textprop.c (Fget_char_property): Doc fix.
9ba48103 13514
048addec 135152001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 13516
048addec 13517 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 13518
048addec 13519 * data.c (Fsetq_default): Ditto.
c22e59e1 13520
048addec 13521 * callint.c (Finteractive): Ditto.
9271ed2c 13522
048addec 135232001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13524
048addec
JD
13525 * macros.c: Don't include keymap.h any more.
13526
135272001-11-01 Richard M. Stallman <rms@gnu.org>
13528
13529 * data.c (Fmake_local_variable): Doc fix.
13530
13531 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13532 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 13533
048addec 13534 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
13535 bindings along with or instead of the buffer local map.
13536 Make the overriding maps override what they should.
13537
f00691a3 135382001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
13539
13540 * window.c (grow_mini_window): Fix typo in comment.
13541
27188d11
GM
135422001-11-01 Gerd Moellmann <gerd@gnu.org>
13543
7b49b9d2
GM
13544 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13545 (XTset_vertical_scroll_bar): Likewise.
13546
43f7c3ea
GM
13547 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13548 instead of IMAGE_BACKGROUND.
c22e59e1 13549
b350c2e5
GM
13550 * xfns.c (four_corners_best): Reindent.
13551
c22e59e1 13552 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
13553 Handle :box so that it is possible to specify sexprs.
13554
bf00d461
EZ
135552001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13556
13557 * s/hpux11.h: New file.
13558
f00691a3 135592001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 13560
2b209b97
PJ
13561 * emacs.c (USAGE1): Show command line option --no-window-system
13562 instead of --no-windows in usage.
13563 (standard_args): Rename --no-windows to --no-window-system.
13564 (bug_reporting_address): Follow Emacs coding conventions.
13565
9dbc9081
PJ
13566 * eval.c (Fcommandp): Doc fix.
13567 Change doc-string comments to `new style' [w/`doc:' keyword].
13568
4e10df59
PJ
13569 * frame.c (Fframe_live_p): Doc fix.
13570
13571 * buffer.c (selective-display-ellipses): Doc fix.
13572
dd387b25
GM
135732001-10-31 Gerd Moellmann <gerd@gnu.org>
13574
fe957e65
GM
13575 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13576
dd387b25
GM
13577 * xfaces.c (realize_x_face): If C is not a single-byte character,
13578 set the face's colors_copied_bitwise_p instead of the defaulted_p
13579 members which have a different meaning.
13580 (free_face_colors): Do nothing for a face whose colors have been
13581 copied bitwise.
13582
c22e59e1 13583 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 13584
f00691a3 135852001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 13586
687784e8
PJ
13587 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13588 [w/`doc:' keyword].
2e1280f8 13589
b9d9a9b9
GM
135902001-10-31 Gerd Moellmann <gerd@gnu.org>
13591
13592 * fns.c (require_unwind): Return Lisp_Object.
13593
f00691a3 135942001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 13595
fa1361cb
PJ
13596 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13597 (last-input-char): Revert doc-string to be the same as the
13598 doc-string of `last-input-event'.
13599
6c465a15 13600 * xdisp.c: Fix typos in comments.
48400103 13601
eafa3196
GM
136022001-10-31 Gerd Moellmann <gerd@gnu.org>
13603
13604 * window.c (grow_mini_window): Handle case that the root
13605 window is already smaller than the nominal mininum height.
13606
747d3f2a
SM
136072001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13608
bf9bb76f
SM
13609 * emacs.c (main): Don't call keys_of_macros any more.
13610
13611 * lisp.h (keys_of_macros): Remove.
13612
13613 * macros.c (keys_of_macros): Remove.
13614
747d3f2a
SM
13615 * xfaces.c (Fface_attribute_relative_p): Declare args.
13616
5e905a57
JR
136172001-10-30 Jason Rumney <jasonr@gnu.org>
13618
13619 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13620 (enum_font_cb2): Ignore fonts with vertical orientation.
13621
3a426197
RS
136222001-10-30 Richard M. Stallman <rms@gnu.org>
13623
13624 * keyboard.c (Finput_pending_p): Doc fix.
13625
a742d646
GM
136262001-10-30 Gerd Moellmann <gerd@gnu.org>
13627
259cf6bc
GM
13628 * xterm.c (x_after_update_window_line): Don't run the code
13629 clearing in borders for rows whose visible height is 0.
13630
3f99f948
GM
13631 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13632 resized_p flag is set. If not set, use the much less flickering
13633 method previously used.
13634
13635 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13636
13637 * frame.h (struct frame) <resized_p>: New member.
13638
b4a3be43
GM
13639 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13640 as large as the number of bytes to convert.
747d3f2a 13641
a742d646
GM
13642 * lread.c (to_multibyte): New function.
13643 (read1): Use it.
13644
cacbb9e9
EZ
136452001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13646
13647 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13648
99cb6b2f
GM
136492001-10-30 Gerd Moellmann <gerd@gnu.org>
13650
327f42ee 13651 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
13652 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13653 if the row's fill_line_p is set and drawing the last glyph with
13654 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 13655
99cb6b2f
GM
13656 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13657
8e8223e2
SM
136582001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13659
13660 * xmenu.c: Include coding.h and charset.h.
13661 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13662 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13663 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13664 Explicitly set wv->help. Use `TRUE' rather than `True'.
13665 (menu_help_callback): Use empty_string.
13666
13667 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13668 (Fx_popup_dialog): Explicitly init f.
13669 (w32_menu_display_help): Use empty_string.
13670
4d083a8f
RS
136712001-10-29 Richard M. Stallman <rms@gnu.org>
13672
b2304472
RS
13673 * fns.c (Frequire): Detect recursive try to require the same
13674 feature 3 or more levels deep, and get error.
13675 (require_unwind): New subroutine.
13676 (require_nesting_list): New variable.
13677 (syms_of_fns): Init and staticpro it.
13678
4d083a8f
RS
13679 * print.c (print_object): Clarify indication of insertion type.
13680
2fe41216
EZ
136812001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13682
90480000
EZ
13683 * coding.c (syms_of_coding): Document that locale-coding-system is
13684 used for decoding input on X.
13685
2fe41216
EZ
13686 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13687
f00691a3 136882001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
13689
13690 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13691 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13692
60ebcfe8
GM
136932001-10-29 Gerd Moellmann <gerd@gnu.org>
13694
9a7bdceb
GM
13695 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13696 use NO_CURSOR if cursor_in_non_selected_windows is false.
13697
3f08fcd2
GM
13698 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13699 the slant attribute if FRAME is t.
13700
0ccfdad2
GM
13701 * xfns.c (x_set_internal_border_width): Set frame garbaged
13702 when X window doesn't exist yet.
13703
ef253080
GM
13704 * xterm.c (x_after_update_window_line): Clear internal border
13705 in different circumstances.
b116830b 13706
60ebcfe8
GM
13707 * xterm.c (XTread_socket) <KeyPress>: Don't use
13708 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13709 <handa@etl.go.jp>.
13710
73d25f9c
EZ
137112001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13712
13713 * m/ibms390.h: New file. From Adam Thornton
13714 <athornton@sinenomine.net>.
13715
cac1daf0
GM
137162001-10-28 Gerd Moellmann <gerd@gnu.org>
13717
053b3256 13718 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 13719
cac1daf0
GM
13720 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13721 a loop counter.
13722
f00691a3 137232001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 13724
f9711de4 13725 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 13726
4707d2d0
PJ
13727 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13728 keyword].
13729 Fix typos in comments.
b116830b 13730
d883731c
PJ
13731 * emacs.c (bug_reporting_address): New function.
13732 Use it when displaying usage message.
13733
04012254
PJ
13734 * minibuf.c (read_minibuf): Remove unused external declaration of
13735 variable `Qread_only'.
13736
13b1a09c
PJ
13737 * keymap.c (access_keymap): Remove unused variable `charset'.
13738
5bbf4378
MB
137392001-10-28 Miles Bader <miles@gnu.org>
13740
13741 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13742 Remove #ifdef'd-out code.
13743 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13744 (syms_of_xfaces): Initialize them.
13745
1ce1e4ee
JR
137462001-10-27 Jason Rumney <jasonr@gnu.org>
13747
13748 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13749 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13750 position using the system caret.
13751
13752 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13753 (w32_system_caret_height, w32_system_caret_x)
13754 (w32_system_caret_y): New variables for tracking system caret.
13755 (w32_initialize): Initialize them.
c2d53558 13756 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 13757
c2d53558
SM
13758 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13759 New messages types.
1ce1e4ee
JR
13760
13761 * w32term.c (note_mouse_highlight): Clear old help_echo.
13762
f00691a3 137632001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 13764
bb4600a4
PJ
13765 * xterm.c: Fix typo in a comment.
13766
7db35a48
PJ
13767 * emacs.c: Fix typos in comments.
13768 Remove unnecessary spaces.
13769 Change doc-string comments to `new style' [w/`doc:' keyword].
13770 (USAGE2): Fix typos in usage string.
13771
a7248e4f
PJ
13772 * xterm.c: Fix typo in a comment.
13773
4e30ce42
PJ
13774 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13775 emacs.c.
13776
62725a92
GM
137772001-10-27 Gerd Moellmann <gerd@gnu.org>
13778
798dbe1f 13779 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 13780 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
13781 farther backward when target_y was not reached.
13782
62725a92
GM
13783 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13784 Display errno only if non-zero.
13785 (sound_warning): New function.
13786 (vox_configure): Don't treat failing to set sample rate as error.
13787 (various places): Improve error messages.
13788
d4e34d24
EZ
137892001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13790
944e6f60
EZ
13791 * fileio.c (Faccess_file): Run the argument filename through
13792 Fexpand_file_name, before using it.
13793
d4e34d24
EZ
13794 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13795 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13796
38d2af0c
GM
137972001-10-26 Gerd Moellmann <gerd@gnu.org>
13798
da80a8d5
GM
13799 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13800
38d2af0c
GM
13801 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13802 Fix clearing in the case of scroll bars on the right.
c2d53558 13803
45de4a6f 138042001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
13805
13806 * w32gui.h (XImage): Add a dummy typedef.
13807
fbd5ceb2
GM
138082001-10-26 Gerd Moellmann <gerd@gnu.org>
13809
c2d53558 13810 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 13811
b23236fb
EZ
138122001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13813
13814 * frame.c (Fframe_parameter): Fix last change.
13815
5d991fc4
EZ
13816 * fileio.c: Revert last change (which removed old commented-out
13817 version of expand-file-name). Add a comment that explains why
13818 this old version should not be removed.
13819
879eadc3
GM
138202001-10-25 Gerd Moellmann <gerd@gnu.org>
13821
75700ff2
GM
13822 * frame.c (Fframe_parameter): Fix a bug whereby some
13823 ``artificial'' frame parameters, like `minibuffer' were not
13824 obtained by calling Fframe_parameters.
13825
dfe92a6a
GM
13826 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13827 cursor differently.
13828
879eadc3
GM
13829 * xdisp.c (move_it_vertically_backward): Compute line height
13830 differently. Add heuristic to try to be more compatible to 20.x.
13831
e1010ebe
SM
138322001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13833
d73a471b
SM
13834 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13835
d6da5a06
GM
13836 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13837 boolean.
e1010ebe 13838
f66bd220
MB
138392001-10-25 Miles Bader <miles@gnu.org>
13840
13841 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13842 BG is a pointer to a structure, not a structure.
13843 (gif_format, png_format): Add missing commas.
13844
d436d538
RS
138452001-10-24 Richard M. Stallman <rms@gnu.org>
13846
13847 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 13848 (syms_of_xfaces): Defsubr it.
d436d538 13849
f00691a3 138502001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
13851
13852 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13853 variable `area'.
13854
f00691a3 138552001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 13856
c2d53558 13857 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 13858
e2a57b34
MB
138592001-10-25 Miles Bader <miles@gnu.org>
13860
13861 * dispextern.h (struct image): Add `background',
13862 `background_valid', and `background_transparent' fields.
13863 (image_background, image_background_transparent): New declarations.
13864 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13865 * xfns.c (image_background, image_background_transparent)
13866 (four_corners_best): New functions.
c2d53558 13867 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
13868 (gs_format): Add `:background' entry.
13869 (lookup_image): Set IMG's background color if specified.
13870 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13871 when appropriate.
13872 (x_clear_image_1): Reset `background_valid' and
13873 `background_transparent_valid' fields.
13874 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13875 calculating it here. Set IMG's background_transparent field.
13876 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13877 (enum png_keyword_index): Add PNG_BACKGROUND.
13878 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13879 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13880 (enum gif_keyword_index): Add GIF_BACKGROUND.
13881 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 13882 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
13883 Pre-calculate image background color where necessary.
13884 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13885 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13886 color to use for image glyph reliefs.
13887
b547b6e8
GM
138882001-10-24 Gerd Moellmann <gerd@gnu.org>
13889
d9e3b8c6
GM
13890 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
13891 in full-width rows.
c2d53558 13892
b547b6e8
GM
13893 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13894 Fix clearing of area not covered by scroll bar.
13895
f00691a3 138962001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
13897
13898 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
13899 and `real_start'.
c2d53558 13900 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
13901 (glyph_rect): Remove unused variable `area'.
13902
76cb5e06
GM
139032001-10-24 Gerd Moellmann <gerd@gnu.org>
13904
bdbdebff 13905 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
13906
13907 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
13908 (row_containing_pos): Take additional argument DY.
13909 Treat rows ending in middle of char differently.
62e33982
GM
13910 (display_line): Handle tabs on window systems differently.
13911
13912 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
13913 with additional argument.
13914
13915 * dispextern.h (row_containing_pos): Adjust prototype.
13916
76cb5e06
GM
13917 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
13918 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
13919 (try_window_id, try_window_reusing_current_matrix)
13920 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 13921 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 13922
f00691a3 139232001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 13924
c9e60620
PJ
13925 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
13926 gnuemacs).
13927 (HAVE_BOXES): Fix typo in comment.
13928 (push_menu_pane): Fix typo in comment.
13929
3b552d56
PJ
13930 * xdisp.c: (display_prop_string_p): Remove unused local declaration
13931 of `Qwhen'.
13932 (single_display_prop_string_p): Remove unused local declarations
13933 of `Qwhen' and `Qmargin'.
13934 (string_buffer_position): Remove unused variable `around'.
13935 (store_frame_title): Remove unused variable `width'.
13936
15c565ac
PJ
13937 * window.c: Don't define max.
13938 (coordinates_in_window): Remove unused variable `uy'.
13939
a8818eb9
PJ
13940 * widget.c: Don't define max.
13941
996fee11
PJ
13942 * process.c: Don't define max.
13943 (create_process): Remove unused variable `buffer'.
13944
496e1a5b
GM
139452001-10-23 Gerd Moellmann <gerd@gnu.org>
13946
c2d53558 13947 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 13948
5905ae8b
EZ
139492001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
13950
13951 * xfaces.c (Finternal_set_lisp_face_attribute)
13952 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
13953 frame is on a windowed display.
13954
24db49fb
GM
139552001-10-23 Gerd Moellmann <gerd@gnu.org>
13956
c2d53558
SM
13957 * dispnew.c (sync_window_with_frame_matrix_rows):
13958 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
13959 of marginal areas.
13960
c2d53558 13961 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 13962
f0487f05
EZ
139632001-10-23 Andreas Schwab <schwab@suse.de>
13964
13965 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
13966 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
13967
f0a48a01
GM
139682001-10-23 Gerd Moellmann <gerd@gnu.org>
13969
c2d53558 13970 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
13971 REAL_END. Notice if cursor gets overwritten.
13972 (notice_overwritten_cursor): Take X positions as parameters.
13973 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13974 around call to x_draw_glyphs.
13975
f00691a3 139762001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 13977
fc11dff0
PJ
13978 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
13979 instead of C) and usage.
a50a10a0 13980
fc11dff0
PJ
13981 * editfns.c (char-to-string): Fix argument names (use CHAR instead
13982 of C) and usage.
a50a10a0
PJ
13983
13984 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
13985 `left', `max_width' and `max_height'.
13986
8738febd
GM
139872001-10-23 Gerd Moellmann <gerd@gnu.org>
13988
13989 * xdisp.c (display_line): For a tab continued to the next line,
13990 set row's ends_in_middle_of_char_p.
13991
653c329b
GM
139922001-10-22 Gerd Moellmann <gerd@gnu.org>
13993
13994 * xdisp.c (display_line): Fix computation of continuation lines
13995 width for TABs.
13996
f00691a3 139972001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 13998
7ba51063
PJ
13999 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14000 `Qlaplace'.
14001
f958c5ac
PJ
14002 * fileio.c: Remove unused code.
14003
eb360291
MB
140042001-10-22 Miles Bader <miles@gnu.org>
14005
14006 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14007 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14008 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14009
98515cf0
JR
140102001-10-21 Jason Rumney <jasonr@gnu.org>
14011
14012 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14013
93026d88
EZ
140142001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14015
14016 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14017 (Finsert_string): Avoid the multi-line string literals warning.
14018
c9a95b79
MB
140192001-10-22 Miles Bader <miles@gnu.org>
14020
14021 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14022 (Fdocumentation): Don't use it.
14023 (syms_of_doc): Don't initialize it.
14024
14025 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14026 * print.c (Fwith_output_to_temp_buffer): Likewise.
14027 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14028 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14029 (Fsave_restriction): Likewise.
c2d53558
SM
14030 * eval.c (Frun_hooks, Frun_hook_with_args)
14031 (Frun_hook_with_args_until_failure)
14032 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14033 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14034 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14035 (Funwind_protect, Fcondition_case): Likewise.
14036 * coding.c (Ffind_operation_coding_system): Likewise.
14037 * keyboard.c (Ftrack_mouse): Likewise.
14038
a3b10252
MB
140392001-10-21 Miles Bader <miles@gnu.org>
14040
c2d53558 14041 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14042 (Fmake_hash_table): Add usage: string to doc string.
14043 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14044 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14045 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14046 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14047 (Fml_prefix_argument_loop): Likewise.
14048
f00691a3 140492001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14050
c2d53558 14051 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14052
c6f73eec
PJ
14053 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14054 style' [w/`doc:' keyword].
14055
14056 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14057 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14058 comments to `new style' [w/`doc:' keyword].
14059
3cf3436e
JR
140602001-10-21 Jason Rumney <jasonr@gnu.org>
14061
14062 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14063
c169b8f1
JR
14064 * w32term.c (remember_mouse_glyph): New function.
14065 (w32_mouse_position): Use it.
14066 (note_mouse_movement): If the mouse moved off the glyph, remember
14067 its new position.
c2d53558 14068
4fdd691b
JR
14069 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14070 (w32_display_info): Add mouse_face_overlay.
14071
c169b8f1
JR
14072 * w32term.c (notice_overwritten_cursor): Renamed from
14073 note_overwritten_text_cursor. Rewritten to take glyph widths into
14074 account.
14075 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14076 (fast_find_string_pos): New function.
14077 (fast_find_position): Return the correct vpos. Add parameter
14078 STOP. In the final row, stop before glyphs having STOP as object.
14079 Don't consider glyphs that are not from a buffer.
14080 (fast_find_position) [0]: Add a presumably more correct version
14081 for after 21.1.
14082 (expose_window_tree, expose_frame): Don't compute intersections here.
14083 (expose_window): Do it here instead.
14084 (expose_window_tree, expose_window, expose_line): Return 1 when
14085 overwriting mouse-face.
14086 (expose_window): If W is the window currently being updated, mark
14087 the frame garbaged.
14088 (expose_frame): If mouse-face was overwritten, redo it.
14089 (x_use_underline_position_properties): New variable.
14090 (syms_of_xterm): DEFVAR_BOOL it.
14091 (x_draw_glyph_string): Add comment to use it in future.
14092 (x_draw_glyph_string): Restore clipping after drawing box.
14093 Fix a computation of the underline position.
14094 (w32_get_glyph_string_clip_rect): Minor cleanup.
14095 (x_fill_stretch_glyph_string): Remove an assertion.
14096 (x_produce_glyphs): Don't convert multibyte characters
14097 to unibyte characters in unibyte buffers.
14098 (cursor_in_mouse_face_p): New function.
14099 (x_draw_stretch_glyph_string): Use it to choose a different GC
14100 when drawing a cursor within highlighted text. Don't draw
14101 background again if it has already been drawn.
14102 (x_draw_glyph_string_box): Don't draw a full-width
14103 box just because the glyph row's full_width_p flag is set.
14104 (x_draw_glyphs): Fix computation of rightmost x for
14105 full-width rows.
14106 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14107 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14108 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14109 (x_update_window_end): Handle overwritten mouse face
14110 also for tool bar windows.
14111 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14112 DRAW is DRAW_IMAGE_RAISED.
14113 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14114 actually redrawn. Make the function static.
14115 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14116 optimize away highlighting if we pass over that same overlay again.
14117 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14118 to detect a case where we have to highlight a different region
14119 despite not having left the currently highlighted region.
14120 Set mouse_face_overlay in the x_display_info. Avoid changing the
14121 mouse pointer shape when show_mouse_face has already done it, or
14122 there is no need. Handle mouse-face and help-echo in strings.
14123 (glyph_rect): New function.
14124 (w32_mouse_position): Use it to raise the threshold for mouse
14125 movement event generation.
14126 (w32_initialize_display_info): Initialize the x_display_info's
14127 mouse_face_overlay.
14128 (w32_set_vertical_scroll_bar): Don't clear a zero height
14129 or width area.
14130 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14131 a widget to zero height.
14132
3cf3436e 14133 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14134 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14135 equivalents in menu_items.
14136 (w32_menu_show): Don't overwrite an item's name with its key
14137 description in case the description is a multibyte string.
14138 (single_submenu): Some cleanup.
14139
14140 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14141 (postprocess_image): New function.
14142 (lookup_image): Call it for all image types except PostScript.
14143 (x_kill_gs_process): Call postprocess_image.
14144 (tiff_error_handler, tiff_warning_handler): New functions.
14145 (tiff_load): Install them as handlers.
14146 (x_kill_gs_process): Recognize if someone has cleared the image
14147 cache under us.
14148 (valid_image_p): Protect better against invalid image
14149 specifications. Previous code could signal an error.
14150 (Fx_hide_tip, Fshow_tip): Doc fix.
14151 (Fv_max_tooltip_size): New variable.
14152 (syns_of_xfns): DEFVAR_LISP it.
14153 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14154 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14155 window_width. Use a maximum tooltip size specified by
14156 Vx_max_tooltip_size, if that has valid contents.
14157 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14158 Make sure the tooltip is completely visible.
14159 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14160 (Fx_create_frame): Adjust the frame's height for presence
14161 of the tool bar before calling x_figure_window_size.
14162 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14163 when the window gets smaller.
14164 (x_set_foreground_color): Set frame's cursor_pixel.
14165 (x_set_foreground_color, x_set_background_color): Cleaned up.
14166 (x_set_font): Handle case of x_new_fontset returning the same name
14167 as before, although there was a change in fontsets.
14168
386ca361
MB
141692001-10-21 Miles Bader <miles@gnu.org>
14170
c2d53558 14171 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14172 (Flogxor): Add usage: string to doc string.
14173 * charset.c (Fstring): Likewise.
14174 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14175 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14176
f00691a3 141772001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14178
03be2694
PJ
14179 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14180
14181 * alloc.c: Reindent DEFUNs with doc: keywords.
14182
14183 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14184
14ff1ee0
PJ
14185 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14186 keyword].
14187
2f147815 14188See ChangeLog.9 for earlier changes.
6922b018
KH
14189
14190;; Local Variables:
49b3bd82 14191;; coding: iso-2022-7bit
6922b018 14192;; End:
2a34a036 14193
2f147815 14194 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14195 Copying and distribution of this file, with or without modification,
14196 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14197
14198;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4